|
18 | 18 |
|
19 | 19 | import com.mongodb.MongoSocketException;
|
20 | 20 | import com.mongodb.ServerAddress;
|
21 |
| -import com.mongodb.internal.async.SingleResultCallback; |
22 | 21 | import com.mongodb.connection.AsyncCompletionHandler;
|
23 | 22 | import com.mongodb.connection.SocketSettings;
|
24 | 23 | import com.mongodb.connection.SslSettings;
|
25 | 24 | import com.mongodb.connection.Stream;
|
26 | 25 | import com.mongodb.connection.StreamFactory;
|
27 | 26 | import com.mongodb.connection.TlsChannelStreamFactoryFactory;
|
28 | 27 | import com.mongodb.crypt.capi.MongoKeyDecryptor;
|
| 28 | +import com.mongodb.internal.async.SingleResultCallback; |
29 | 29 | import com.mongodb.internal.connection.AsynchronousChannelStream;
|
30 | 30 | import org.bson.ByteBuf;
|
31 | 31 | import org.bson.ByteBufNIO;
|
|
40 | 40 |
|
41 | 41 | class KeyManagementService {
|
42 | 42 | private final int defaultPort;
|
| 43 | + private final TlsChannelStreamFactoryFactory tlsChannelStreamFactoryFactory; |
43 | 44 | private final StreamFactory streamFactory;
|
44 | 45 |
|
45 | 46 | KeyManagementService(final SSLContext sslContext, final int defaultPort, final int timeoutMillis) {
|
46 | 47 | this.defaultPort = defaultPort;
|
47 |
| - this.streamFactory = new TlsChannelStreamFactoryFactory().create(SocketSettings.builder() |
| 48 | + this.tlsChannelStreamFactoryFactory = new TlsChannelStreamFactoryFactory(); |
| 49 | + this.streamFactory = tlsChannelStreamFactoryFactory.create(SocketSettings.builder() |
48 | 50 | .connectTimeout(timeoutMillis, TimeUnit.MILLISECONDS)
|
49 | 51 | .readTimeout(timeoutMillis, TimeUnit.MILLISECONDS)
|
50 | 52 | .build(),
|
51 | 53 | SslSettings.builder().enabled(true).context(sslContext).build());
|
52 | 54 | }
|
53 | 55 |
|
| 56 | + |
| 57 | + public void close() { |
| 58 | + tlsChannelStreamFactoryFactory.close(); |
| 59 | + } |
| 60 | + |
54 | 61 | void decryptKey(final MongoKeyDecryptor keyDecryptor, final SingleResultCallback<Void> callback) {
|
55 | 62 | streamOpen(keyDecryptor, callback);
|
56 | 63 | }
|
|
0 commit comments