use of javax.net.ssl.SSLContext in project camel by apache.
the class NatsProducer method getConnection.
private Connection getConnection() throws TimeoutException, IOException, GeneralSecurityException {
Properties prop = getEndpoint().getNatsConfiguration().createProperties();
ConnectionFactory factory = new ConnectionFactory(prop);
if (getEndpoint().getNatsConfiguration().getSslContextParameters() != null && getEndpoint().getNatsConfiguration().isSecure()) {
SSLContext sslCtx = getEndpoint().getNatsConfiguration().getSslContextParameters().createSSLContext(getEndpoint().getCamelContext());
factory.setSSLContext(sslCtx);
if (getEndpoint().getNatsConfiguration().isTlsDebug()) {
factory.setTlsDebug(getEndpoint().getNatsConfiguration().isTlsDebug());
}
}
connection = factory.createConnection();
return connection;
}
use of javax.net.ssl.SSLContext in project ratpack by ratpack.
the class DefaultRatpackServer method buildChannel.
protected Channel buildChannel(final ServerConfig serverConfig, final ChannelHandler handlerAdapter) throws InterruptedException {
SSLContext sslContext = serverConfig.getSslContext();
boolean requireClientSslAuth = serverConfig.isRequireClientSslAuth();
this.useSsl = sslContext != null;
ServerBootstrap serverBootstrap = new ServerBootstrap();
serverConfig.getConnectTimeoutMillis().ifPresent(i -> {
serverBootstrap.option(ChannelOption.CONNECT_TIMEOUT_MILLIS, i);
serverBootstrap.childOption(ChannelOption.CONNECT_TIMEOUT_MILLIS, i);
});
serverConfig.getMaxMessagesPerRead().ifPresent(i -> {
FixedRecvByteBufAllocator allocator = new FixedRecvByteBufAllocator(i);
serverBootstrap.option(ChannelOption.RCVBUF_ALLOCATOR, allocator);
serverBootstrap.childOption(ChannelOption.RCVBUF_ALLOCATOR, allocator);
});
serverConfig.getReceiveBufferSize().ifPresent(i -> {
serverBootstrap.option(ChannelOption.SO_RCVBUF, i);
serverBootstrap.childOption(ChannelOption.SO_RCVBUF, i);
});
serverConfig.getWriteSpinCount().ifPresent(i -> {
serverBootstrap.option(ChannelOption.WRITE_SPIN_COUNT, i);
serverBootstrap.childOption(ChannelOption.WRITE_SPIN_COUNT, i);
});
return serverBootstrap.group(execController.getEventLoopGroup()).channel(ChannelImplDetector.getServerSocketChannelImpl()).option(ChannelOption.ALLOCATOR, PooledByteBufAllocator.DEFAULT).childOption(ChannelOption.ALLOCATOR, PooledByteBufAllocator.DEFAULT).childHandler(new ChannelInitializer<SocketChannel>() {
@Override
protected void initChannel(SocketChannel ch) throws Exception {
ChannelPipeline pipeline = ch.pipeline();
if (sslContext != null) {
SSLEngine sslEngine = sslContext.createSSLEngine();
sslEngine.setUseClientMode(false);
sslEngine.setNeedClientAuth(requireClientSslAuth);
pipeline.addLast("ssl", new SslHandler(sslEngine));
}
pipeline.addLast("decoder", new HttpRequestDecoder(serverConfig.getMaxInitialLineLength(), serverConfig.getMaxHeaderSize(), serverConfig.getMaxChunkSize(), false));
pipeline.addLast("encoder", new HttpResponseEncoder());
pipeline.addLast("deflater", new IgnorableHttpContentCompressor());
pipeline.addLast("chunkedWriter", new ChunkedWriteHandler());
pipeline.addLast("adapter", handlerAdapter);
ch.config().setAutoRead(false);
}
}).bind(buildSocketAddress(serverConfig)).sync().channel();
}
use of javax.net.ssl.SSLContext in project okhttp by square.
the class SampleServer method main.
public static void main(String[] args) throws Exception {
if (args.length != 4) {
System.out.println("Usage: SampleServer <keystore> <password> <root file> <port>");
return;
}
String keystoreFile = args[0];
String password = args[1];
String root = args[2];
int port = Integer.parseInt(args[3]);
SSLContext sslContext = sslContext(keystoreFile, password);
SampleServer server = new SampleServer(sslContext, root, port);
server.run();
}
use of javax.net.ssl.SSLContext in project cassandra by apache.
the class SSLFactory method getSocket.
/** Just create a socket */
public static SSLSocket getSocket(EncryptionOptions options) throws IOException {
SSLContext ctx = createSSLContext(options, true);
SSLSocket socket = (SSLSocket) ctx.getSocketFactory().createSocket();
try {
prepareSocket(socket, options);
return socket;
} catch (IllegalArgumentException e) {
socket.close();
throw e;
}
}
use of javax.net.ssl.SSLContext in project cassandra by apache.
the class SSLFactory method getServerSocket.
public static SSLServerSocket getServerSocket(EncryptionOptions options, InetAddress address, int port) throws IOException {
SSLContext ctx = createSSLContext(options, true);
SSLServerSocket serverSocket = (SSLServerSocket) ctx.getServerSocketFactory().createServerSocket();
try {
serverSocket.setReuseAddress(true);
prepareSocket(serverSocket, options);
serverSocket.bind(new InetSocketAddress(address, port), 500);
return serverSocket;
} catch (IllegalArgumentException | SecurityException | IOException e) {
serverSocket.close();
throw e;
}
}
Aggregations