List of usage examples for io.vertx.core.net SocketAddress inetSocketAddress
static SocketAddress inetSocketAddress(int port, String host)
From source file:io.reactiverse.pgclient.impl.PgConnectionFactory.java
License:Apache License
private void doConnect(boolean ssl, Handler<AsyncResult<SocketConnection>> handler) { if (Vertx.currentContext() != ctx) { throw new IllegalStateException(); }//from www . j a v a2s . c o m SocketAddress socketAddress; if (!isUsingDomainSocket) { socketAddress = SocketAddress.inetSocketAddress(port, host); } else { socketAddress = SocketAddress.domainSocketAddress(host + "/.s.PGSQL." + port); } Future<NetSocket> future = Future.<NetSocket>future().setHandler(ar -> { if (ar.succeeded()) { NetSocketInternal socket = (NetSocketInternal) ar.result(); SocketConnection conn = newSocketConnection(socket); if (ssl && !isUsingDomainSocket) { // upgrade connection to SSL if needed conn.upgradeToSSLConnection(ar2 -> { if (ar2.succeeded()) { handler.handle(Future.succeededFuture(conn)); } else { handler.handle(Future.failedFuture(ar2.cause())); } }); } else { handler.handle(Future.succeededFuture(conn)); } } else { handler.handle(Future.failedFuture(ar.cause())); } }); try { client.connect(socketAddress, null, future); } catch (Exception e) { // Client is closed future.fail(e); } }