List of usage examples for io.vertx.core.net NetClient connect
@Fluent
NetClient connect(SocketAddress remoteAddress, String serverName,
Handler<AsyncResult<NetSocket>> connectHandler);
From source file:examples.NetExamples.java
License:Open Source License
public void example15(Vertx vertx) { NetClientOptions options = new NetClientOptions().setConnectTimeout(10000); NetClient client = vertx.createNetClient(options); client.connect(4321, "localhost", res -> { if (res.succeeded()) { System.out.println("Connected!"); NetSocket socket = res.result(); } else {//w w w.j a v a 2s . com System.out.println("Failed to connect: " + res.cause().getMessage()); } }); }
From source file:examples.NetExamples.java
License:Open Source License
public void example48(Vertx vertx) throws CertificateException { SelfSignedCertificate certificate = SelfSignedCertificate.create(); NetServerOptions serverOptions = new NetServerOptions().setSsl(true) .setKeyCertOptions(certificate.keyCertOptions()).setTrustOptions(certificate.trustOptions()); NetServer server = vertx.createNetServer(serverOptions) .connectHandler(socket -> socket.write("Hello!").end()).listen(1234, "localhost"); NetClientOptions clientOptions = new NetClientOptions().setSsl(true) .setKeyCertOptions(certificate.keyCertOptions()).setTrustOptions(certificate.trustOptions()); NetClient client = vertx.createNetClient(clientOptions); client.connect(1234, "localhost", ar -> { if (ar.succeeded()) { ar.result().handler(buffer -> System.out.println(buffer)); } else {//ww w . j ava 2 s . com System.err.println("Woops: " + ar.cause().getMessage()); } }); }
From source file:io.eventuate.javaclient.stompclient.MyStompClientImpl.java
License:Open Source License
@Override public synchronized StompClient connect(int port, String host, NetClient net, Handler<AsyncResult<StompClientConnection>> resultHandler) { client = net.connect(port, host, ar -> { if (ar.failed()) { if (resultHandler != null) { resultHandler.handle(Future.failedFuture(ar.cause())); } else { log.error(ar.cause());//w w w .j av a 2 s .c o m } } else { // Create the connection, the connection attach a handler on the socket. StompClientConnectionImpl scci = new StompClientConnectionImpl(vertx, ar.result(), this, resultHandler); scci.errorHandler(frame -> { resultHandler.handle(Future.failedFuture(new RuntimeException("Error"))); }); scci.closeHandler(connection -> { handleClose(); }); // Socket connected - send "CONNECT" Frame ar.result().write(getConnectFrame(host)); } }); return this; }
From source file:io.gravitee.gateway.standalone.healthcheck.HttpServerProbe.java
License:Apache License
@Override public CompletableFuture<Result> check() { VertxCompletableFuture<Result> result = new VertxCompletableFuture<>(vertx); NetClientOptions options = new NetClientOptions().setConnectTimeout(500); NetClient client = vertx.createNetClient(options); client.connect(port, host, res -> { if (res.succeeded()) { result.complete(Result.healthy()); } else {//from w w w .j a v a2 s .com result.complete(Result.unhealthy(res.cause())); } client.close(); }); return result; }
From source file:shadowsocks.vertxio.ClientHandler.java
License:Apache License
private void connectToRemote(String addr, int port, Buffer remoteHeader) { // 5s timeout. NetClientOptions options = new NetClientOptions().setConnectTimeout(5000); NetClient client = mVertx.createNetClient(options); client.connect(port, addr, res -> { // connect handler if (!res.succeeded()) { log.error("Failed to connect " + addr + ":" + port + ". Caused by " + res.cause().getMessage()); destory();//w w w .ja v a 2 s. co m return; } mRemoteSocket = res.result(); setFinishHandler(mRemoteSocket); mRemoteSocket.handler(buffer -> { // remote socket data handler try { byte[] data = buffer.getBytes(); byte[] decryptData = mCrypto.decrypt(data, data.length); if (mLocalSocket.writeQueueFull()) { log.warn("-->local write queue full"); } mLocalSocket.write(Buffer.buffer(decryptData)); } catch (CryptoException e) { log.error("Catch exception", e); destory(); } }); // reply to program. byte[] msg = { 0x05, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01 }; mLocalSocket.write(Buffer.buffer(msg)); // send remote header. try { if (mConfig.oneTimeAuth) { byte[] authKey = SSAuth.prepareKey(mCrypto.getIV(true), mCrypto.getKey()); byte[] authData = remoteHeader.getBytes(); byte[] authResult = mAuthor.doAuth(authKey, authData); remoteHeader.appendBytes(authResult); } byte[] header = remoteHeader.getBytes(); byte[] encryptHeader = mCrypto.encrypt(header, header.length); mRemoteSocket.write(Buffer.buffer(encryptHeader)); } catch (CryptoException | AuthException e) { log.error("Catch exception", e); destory(); } }); }
From source file:shadowsocks.vertxio.ServerHandler.java
License:Apache License
private void connectToRemote(String addr, int port) { // 5s timeout. NetClientOptions options = new NetClientOptions().setConnectTimeout(5000); NetClient client = mVertx.createNetClient(options); client.connect(port, addr, res -> { // connect handler if (!res.succeeded()) { log.error("Failed to connect " + addr + ":" + port + ". Caused by " + res.cause().getMessage()); destory();/* ww w . j av a 2 s. c o m*/ return; } mRemoteSocket = res.result(); setFinishHandler(mRemoteSocket); mRemoteSocket.handler(buffer -> { // remote socket data handler try { byte[] data = buffer.getBytes(); byte[] encryptData = mCrypto.encrypt(data, data.length); if (mLocalSocket.writeQueueFull()) { log.warn("-->local write queue full"); } mLocalSocket.write(Buffer.buffer(encryptData)); } catch (CryptoException e) { log.error("Catch exception", e); destory(); } }); if (mBufferQueue.length() > 0) { handleStageData(); } }); }