Skip to content

Commit 461c9b8

Browse files
committed
JAVA-744: Added MongoClient.getMongoClientOptions
1 parent 0d3b964 commit 461c9b8

File tree

2 files changed

+24
-2
lines changed

2 files changed

+24
-2
lines changed

src/main/com/mongodb/MongoClient.java

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,8 @@
7070
*/
7171
public class MongoClient extends Mongo {
7272

73+
private final MongoClientOptions options;
74+
7375
/**
7476
* Creates an instance based on a (single) mongodb node (localhost, default port).
7577
*
@@ -163,6 +165,7 @@ public MongoClient(ServerAddress addr, MongoClientOptions options) {
163165
*/
164166
public MongoClient(ServerAddress addr, List<MongoCredential> credentialsList, MongoClientOptions options) {
165167
super(MongoAuthority.direct(addr, new MongoCredentialsStore(credentialsList)), new MongoOptions(options));
168+
this.options = options;
166169
}
167170

168171
/**
@@ -246,6 +249,7 @@ public MongoClient(List<ServerAddress> seeds, MongoClientOptions options) {
246249
*/
247250
public MongoClient(List<ServerAddress> seeds, List<MongoCredential> credentialsList, MongoClientOptions options) {
248251
super(MongoAuthority.dynamicSet(seeds, new MongoCredentialsStore(credentialsList)), new MongoOptions(options));
252+
this.options = options;
249253
}
250254

251255

@@ -260,6 +264,7 @@ public MongoClient(List<ServerAddress> seeds, List<MongoCredential> credentialsL
260264
*/
261265
public MongoClient(MongoClientURI uri) throws UnknownHostException {
262266
super(new MongoURI(uri));
267+
this.options = uri.getOptions();
263268
}
264269

265270
/**
@@ -271,4 +276,8 @@ public MongoClient(MongoClientURI uri) throws UnknownHostException {
271276
public List<MongoCredential> getCredentialsList() {
272277
return getAuthority().getCredentialsStore().asList();
273278
}
279+
280+
public MongoClientOptions getMongoClientOptions() {
281+
return options;
282+
}
274283
}

src/test/com/mongodb/MongoClientTest.java

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,30 +37,35 @@ public void testConstructors() throws UnknownHostException {
3737
Assert.assertEquals(new ServerAddress(), mc.getAddress());
3838
Assert.assertEquals(defaultOptions, mc.getMongoOptions());
3939
Assert.assertEquals(emptyCredentials, mc.getCredentialsList());
40+
Assert.assertEquals(MongoClientOptions.builder().build(), mc.getMongoClientOptions());
4041
mc.close();
4142

4243
mc = new MongoClient("127.0.0.1");
4344
Assert.assertEquals(new ServerAddress("127.0.0.1"), mc.getAddress());
4445
Assert.assertEquals(defaultOptions, mc.getMongoOptions());
4546
Assert.assertEquals(emptyCredentials, mc.getCredentialsList());
47+
Assert.assertEquals(MongoClientOptions.builder().build(), mc.getMongoClientOptions());
4648
mc.close();
4749

4850
mc = new MongoClient("127.0.0.1", customClientOptions);
4951
Assert.assertEquals(new ServerAddress("127.0.0.1"), mc.getAddress());
5052
Assert.assertEquals(customOptions, mc.getMongoOptions());
5153
Assert.assertEquals(emptyCredentials, mc.getCredentialsList());
54+
Assert.assertEquals(customClientOptions, mc.getMongoClientOptions());
5255
mc.close();
5356

5457
mc = new MongoClient("127.0.0.1", 27018);
5558
Assert.assertEquals(new ServerAddress("127.0.0.1", 27018), mc.getAddress());
5659
Assert.assertEquals(defaultOptions, mc.getMongoOptions());
5760
Assert.assertEquals(emptyCredentials, mc.getCredentialsList());
61+
Assert.assertEquals(MongoClientOptions.builder().build(), mc.getMongoClientOptions());
5862
mc.close();
5963

6064
mc = new MongoClient(new ServerAddress("127.0.0.1"));
6165
Assert.assertEquals(new ServerAddress("127.0.0.1"), mc.getAddress());
6266
Assert.assertEquals(defaultOptions, mc.getMongoOptions());
6367
Assert.assertEquals(emptyCredentials, mc.getCredentialsList());
68+
Assert.assertEquals(MongoClientOptions.builder().build(), mc.getMongoClientOptions());
6469
mc.close();
6570

6671
final List<MongoCredential> credentialsList = Arrays.asList(
@@ -69,48 +74,56 @@ public void testConstructors() throws UnknownHostException {
6974
Assert.assertEquals(new ServerAddress("127.0.0.1"), mc.getAddress());
7075
Assert.assertEquals(defaultOptions, mc.getMongoOptions());
7176
Assert.assertEquals(credentialsList, mc.getCredentialsList());
77+
Assert.assertEquals(MongoClientOptions.builder().build(), mc.getMongoClientOptions());
7278
mc.close();
7379

7480
mc = new MongoClient(new ServerAddress("127.0.0.1"), customClientOptions);
7581
Assert.assertEquals(new ServerAddress("127.0.0.1"), mc.getAddress());
7682
Assert.assertEquals(customOptions, mc.getMongoOptions());
7783
Assert.assertEquals(emptyCredentials, mc.getCredentialsList());
84+
Assert.assertEquals(customClientOptions, mc.getMongoClientOptions());
7885
mc.close();
7986

8087
mc = new MongoClient(new ServerAddress("127.0.0.1"), credentialsList, customClientOptions);
8188
Assert.assertEquals(new ServerAddress("127.0.0.1"), mc.getAddress());
8289
Assert.assertEquals(customOptions, mc.getMongoOptions());
8390
Assert.assertEquals(credentialsList, mc.getCredentialsList());
91+
Assert.assertEquals(customClientOptions, mc.getMongoClientOptions());
8492
mc.close();
8593

8694
mc = new MongoClient(Arrays.asList(new ServerAddress("localhost", 27017), new ServerAddress("127.0.0.1", 27018)));
8795
Assert.assertEquals(Arrays.asList(new ServerAddress("localhost", 27017), new ServerAddress("127.0.0.1", 27018)), mc.getAllAddress());
8896
Assert.assertEquals(defaultOptions, mc.getMongoOptions());
8997
Assert.assertEquals(emptyCredentials, mc.getCredentialsList());
98+
Assert.assertEquals(MongoClientOptions.builder().build(), mc.getMongoClientOptions());
9099
mc.close();
91100

92101
mc = new MongoClient(Arrays.asList(new ServerAddress("localhost", 27017), new ServerAddress("127.0.0.1", 27018)), customClientOptions);
93102
Assert.assertEquals(Arrays.asList(new ServerAddress("localhost", 27017), new ServerAddress("127.0.0.1", 27018)), mc.getAllAddress());
94103
Assert.assertEquals(customOptions, mc.getMongoOptions());
95104
Assert.assertEquals(emptyCredentials, mc.getCredentialsList());
105+
Assert.assertEquals(customClientOptions, mc.getMongoClientOptions());
96106
mc.close();
97107

98108
mc = new MongoClient(Arrays.asList(new ServerAddress("localhost", 27017), new ServerAddress("127.0.0.1", 27018)), credentialsList, customClientOptions);
99109
Assert.assertEquals(Arrays.asList(new ServerAddress("localhost", 27017), new ServerAddress("127.0.0.1", 27018)), mc.getAllAddress());
100110
Assert.assertEquals(customOptions, mc.getMongoOptions());
101111
Assert.assertEquals(credentialsList, mc.getCredentialsList());
112+
Assert.assertEquals(customClientOptions, mc.getMongoClientOptions());
102113
mc.close();
103114

104115
mc = new MongoClient(new MongoClientURI("mongodb://127.0.0.1"));
105116
Assert.assertEquals(new ServerAddress("127.0.0.1"), mc.getAddress());
106117
Assert.assertEquals(defaultOptions, mc.getMongoOptions());
107118
Assert.assertEquals(emptyCredentials, mc.getCredentialsList());
119+
Assert.assertEquals(MongoClientOptions.builder().build(), mc.getMongoClientOptions());
108120
mc.close();
109121

110-
mc = new MongoClient(new MongoClientURI("mongodb://user1:[email protected]/test"));
122+
mc = new MongoClient(new MongoClientURI("mongodb://user1:[email protected]/test?maxPoolSize=500"));
111123
Assert.assertEquals(new ServerAddress("127.0.0.1"), mc.getAddress());
112-
Assert.assertEquals(defaultOptions, mc.getMongoOptions());
124+
Assert.assertEquals(customOptions, mc.getMongoOptions());
113125
Assert.assertEquals(credentialsList, mc.getCredentialsList());
126+
Assert.assertEquals(customClientOptions, mc.getMongoClientOptions());
114127
mc.close();
115128
}
116129
}

0 commit comments

Comments
 (0)