1package eu.siacs.conversations.xmpp.jingle;
2
3import com.google.common.base.Joiner;
4import com.google.common.collect.Multimap;
5
6import java.util.List;
7
8public class MediaBuilder {
9 private String media;
10 private int port;
11 private String protocol;
12 private String format;
13 private String connectionData;
14 private Multimap<String, String> attributes;
15
16 public MediaBuilder setMedia(String media) {
17 this.media = media;
18 return this;
19 }
20
21 public MediaBuilder setPort(int port) {
22 this.port = port;
23 return this;
24 }
25
26 public MediaBuilder setProtocol(String protocol) {
27 this.protocol = protocol;
28 return this;
29 }
30
31 public MediaBuilder setFormats(final List<Integer> formats) {
32 this.format = Joiner.on(' ').join(formats);
33 return this;
34 }
35
36 public MediaBuilder setFormat(final String format) {
37 this.format = format;
38 return this;
39 }
40
41 public MediaBuilder setConnectionData(String connectionData) {
42 this.connectionData = connectionData;
43 return this;
44 }
45
46 public MediaBuilder setAttributes(Multimap<String, String> attributes) {
47 this.attributes = attributes;
48 return this;
49 }
50
51 public SessionDescription.Media createMedia() {
52 return new SessionDescription.Media(
53 media, port, protocol, format, connectionData, attributes);
54 }
55}