@Override public Stream create(final ServerAddress serverAddress) { Stream stream; if (serverAddress instanceof UnixServerAddress) { if (sslSettings.isEnabled()) { throw new MongoClientException("Socket based connections do not support ssl"); } stream = new UnixSocketChannelStream((UnixServerAddress) serverAddress, settings, sslSettings, bufferProvider); } else { if (socketFactory != null) { stream = new SocketStream(serverAddress, settings, sslSettings, socketFactory, bufferProvider); } else if (sslSettings.isEnabled()) { stream = new SocketStream(serverAddress, settings, sslSettings, getSslContext().getSocketFactory(), bufferProvider); } else { stream = new SocketChannelStream(serverAddress, settings, sslSettings, bufferProvider); } } return stream; }
@Override public Stream create(final ServerAddress serverAddress) { Stream stream; if (serverAddress instanceof UnixServerAddress) { if (sslSettings.isEnabled()) { throw new MongoClientException("Socket based connections do not support ssl"); } stream = new UnixSocketChannelStream((UnixServerAddress) serverAddress, settings, sslSettings, bufferProvider); } else { if (socketFactory != null) { stream = new SocketStream(serverAddress, settings, sslSettings, socketFactory, bufferProvider); } else if (sslSettings.isEnabled()) { stream = new SocketStream(serverAddress, settings, sslSettings, getSslContext().getSocketFactory(), bufferProvider); } else { stream = new SocketChannelStream(serverAddress, settings, sslSettings, bufferProvider); } } return stream; }