Skip to content

Commit 99208ac

Browse files
committed
change p2p to media mode
1 parent 5e71272 commit 99208ac

File tree

3 files changed

+34
-18
lines changed

3 files changed

+34
-18
lines changed
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
package com.opentok;
2+
3+
public enum MediaMode {
4+
ROUTED ("disabled"),
5+
RELAYED ("enabled");
6+
7+
private String serialized;
8+
9+
private MediaMode(String s) {
10+
serialized = s;
11+
}
12+
13+
@Override
14+
public String toString() {
15+
return serialized;
16+
}
17+
}

src/main/java/com/opentok/SessionProperties.java

Lines changed: 12 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -19,11 +19,11 @@ public class SessionProperties {
1919

2020

2121
private String location = null;
22-
private boolean p2p = false;
22+
private MediaMode mediaMode;
2323

2424
private SessionProperties(Builder builder) {
2525
this.location = builder.location;
26-
this.p2p = builder.p2p;
26+
this.mediaMode = builder.mediaMode;
2727
}
2828

2929
/**
@@ -33,7 +33,7 @@ private SessionProperties(Builder builder) {
3333
*/
3434
public static class Builder {
3535
private String location = null;
36-
private boolean p2p = false;
36+
private MediaMode mediaMode = MediaMode.ROUTED;
3737

3838

3939
/**
@@ -78,8 +78,8 @@ public Builder location(String location) throws InvalidArgumentException {
7878
*
7979
* @return The SessionProperties.Builder object with the peer-to-peer setting.
8080
*/
81-
public Builder p2p(boolean p2p) {
82-
this.p2p = p2p;
81+
public Builder mediaMode(MediaMode mediaMode) {
82+
this.mediaMode = mediaMode;
8383
return this;
8484
}
8585

@@ -103,12 +103,12 @@ public String getLocation() {
103103
* Defines whether the session's streams will be transmitted directly between peers or using the
104104
* OpenTok media server. See {@link SessionProperties.Builder#p2p(boolean p2p)}.
105105
*/
106-
public boolean isP2p() {
107-
return p2p;
106+
public MediaMode mediaMode() {
107+
return mediaMode;
108108
}
109109

110110
/**
111-
* Returns the session properites as a Map.
111+
* Returns the session properties as a Map.
112112
*/
113113
public Map<String, Collection<String>> toMap() {
114114
Map<String, Collection<String>> params = new HashMap<String, Collection<String>>();
@@ -117,11 +117,10 @@ public Map<String, Collection<String>> toMap() {
117117
valueList.add(location);
118118
params.put("location", valueList);
119119
}
120-
if (p2p) {
121-
ArrayList<String> valueList = new ArrayList<String>();
122-
valueList.add("enabled");
123-
params.put("p2p.preference", valueList);
124-
}
120+
ArrayList<String> valueList = new ArrayList<String>();
121+
valueList.add(mediaMode.toString());
122+
params.put("p2p.preference", valueList);
123+
125124
return params;
126125
}
127126

src/test/java/com/opentok/test/OpenTokTest.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ public void testCreateDefaultSession() throws OpenTokException {
7171
assertNotNull(session);
7272
assertEquals(this.apiKey, session.getApiKey());
7373
assertEquals(sessionId, session.getSessionId());
74-
assertFalse(session.getProperties().isP2p());
74+
assertEquals(MediaMode.ROUTED, session.getProperties().mediaMode());
7575
assertNull(session.getProperties().getLocation());
7676

7777
verify(postRequestedFor(urlMatching("/session/create"))
@@ -81,7 +81,7 @@ public void testCreateDefaultSession() throws OpenTokException {
8181
}
8282

8383
@Test
84-
public void testCreateP2pSession() throws OpenTokException {
84+
public void testCreateRelayedSession() throws OpenTokException {
8585
String sessionId = "SESSIONID";
8686
stubFor(post(urlEqualTo("/session/create"))
8787
.willReturn(aResponse()
@@ -92,14 +92,14 @@ public void testCreateP2pSession() throws OpenTokException {
9292
"Mon Mar 17 00:41:31 PDT 2014</create_dt></Session></sessions>")));
9393

9494
SessionProperties properties = new SessionProperties.Builder()
95-
.p2p(true)
95+
.mediaMode(MediaMode.RELAYED)
9696
.build();
9797
Session session = sdk.createSession(properties);
9898

9999
assertNotNull(session);
100100
assertEquals(this.apiKey, session.getApiKey());
101101
assertEquals(sessionId, session.getSessionId());
102-
assertTrue(session.getProperties().isP2p());
102+
assertEquals(MediaMode.RELAYED, session.getProperties().mediaMode());
103103
assertNull(session.getProperties().getLocation());
104104

105105
verify(postRequestedFor(urlMatching("/session/create"))
@@ -129,7 +129,7 @@ public void testCreateLocationHintSession() throws OpenTokException {
129129
assertNotNull(session);
130130
assertEquals(this.apiKey, session.getApiKey());
131131
assertEquals(sessionId, session.getSessionId());
132-
assertFalse(session.getProperties().isP2p());
132+
assertEquals(MediaMode.ROUTED, session.getProperties().mediaMode());
133133
assertEquals(locationHint, session.getProperties().getLocation());
134134

135135
verify(postRequestedFor(urlMatching("/session/create"))

0 commit comments

Comments
 (0)