List of usage examples for io.vertx.core.net NetSocket closeHandler
@Fluent NetSocket closeHandler(@Nullable Handler<Void> handler);
From source file:com.groupon.vertx.memcache.stream.MemcacheSocketHandler.java
License:Apache License
public void handle(Long time) { final Handler<Long> currentHandler = this; log.trace("handle", "establishSocket", new String[] { "eventBusAddress", "server", "delay" }, eventBusAddress, server.getServer(), currentDelay); netClient.connect(server.getPort(), server.getHost(), new Handler<AsyncResult<NetSocket>>() { public void handle(AsyncResult<NetSocket> socket) { log.trace("establishSocket", "handle", new String[] { "eventBusAddress", "server", "status" }, eventBusAddress, server.getServer(), socket.succeeded()); if (socket.succeeded()) { log.trace("establishSocket", "success"); currentDelay = delayFactor; final NetSocket netSocket = socket.result(); final MemcacheCommandHandler memcacheHandler = new MemcacheCommandHandler(netSocket); final MessageConsumer<MemcacheCommand> consumer = vertx.eventBus().consumer(eventBusAddress, memcacheHandler); netSocket.exceptionHandler(ex -> { log.error("establishSocket", "exception", "unknown", ex); consumer.unregister(); memcacheHandler.finish(); });// w w w .jav a 2s .c o m netSocket.closeHandler(message -> { log.warn("establishSocket", "socketClosed"); consumer.unregister(); memcacheHandler.finish(); vertx.setTimer(currentDelay, currentHandler); }); } else { if (socket.result() != null) { log.warn("establishSocket", "closeSocket"); socket.result().close(); } currentDelay = Math.min(currentDelay * 2, MAXIMUM_DELAY); log.warn("establishSocket", "failed", new String[] { "eventBusAddress", "server" }, eventBusAddress, server.getServer()); vertx.setTimer(currentDelay, currentHandler); } } }); }
From source file:com.groupon.vertx.redis.RedisSocketHandler.java
License:Apache License
public void handle(Long time) { final Handler<Long> currentHandler = this; netClient.connect(port, host, socket -> { if (socket.succeeded()) { log.trace("establishSocket", "success"); currentDelay = delayFactor;/*from ww w . ja v a2 s . c om*/ final NetSocket netSocket = socket.result(); final RedisCommandHandler redisHandler = new RedisCommandHandler(netSocket); final MessageConsumer<JsonObject> consumer = vertx.eventBus().consumer(eventBusAddress, redisHandler); netSocket.exceptionHandler(ex -> { log.error("establishSocket", "exception", "unknown", ex); consumer.unregister(); redisHandler.finish(); }); netSocket.closeHandler(message -> { log.warn("establishSocket", "socketClosed"); consumer.unregister(); redisHandler.finish(); vertx.setTimer(currentDelay, currentHandler); }); } else { if (socket.result() != null) { log.warn("establishSocket", "closeSocket"); socket.result().close(); } currentDelay = Math.min(currentDelay * 2, MAXIMUM_DELAY); log.warn("establishSocket", "failed", new String[] { "eventBusAddress", "server" }, eventBusAddress, host); vertx.setTimer(currentDelay, currentHandler); } }); }
From source file:examples.NetExamples.java
License:Open Source License
public void example9_1(NetSocket socket) { socket.closeHandler(v -> { System.out.println("The socket has been closed"); }); }
From source file:io.servicecomb.foundation.vertx.client.tcp.TcpClientConnection.java
License:Apache License
private void onConnectSuccess(NetSocket socket) { LOGGER.info("connectd to address {} success in thread {}.", socketAddress.toString(), Thread.currentThread().getName()); // currently, socket always be NetSocketImpl this.initNetSocket((NetSocketImpl) socket); socket.handler(new TcpParser(this::onReply)); socket.exceptionHandler(this::onException); socket.closeHandler(this::onClosed); // // w w w. j av a 2 s.c om tryLogin(); }
From source file:io.servicecomb.foundation.vertx.server.TcpServerConnection.java
License:Apache License
public void init(NetSocket netSocket) { // currently, socket always be NetSocketImpl this.initNetSocket((NetSocketImpl) netSocket); String remoteAddress = netSocket.remoteAddress().toString(); LOGGER.info("connect from {}, in thread {}", remoteAddress, Thread.currentThread().getName()); netSocket.exceptionHandler(e -> { LOGGER.error("disconected from {}, in thread {}, cause {}", remoteAddress, Thread.currentThread().getName(), e.getMessage()); });/*from w ww. j a v a2 s .c o m*/ netSocket.closeHandler(Void -> { LOGGER.error("disconected from {}, in thread {}", remoteAddress, Thread.currentThread().getName()); }); netSocket.handler(splitter); }
From source file:org.apache.servicecomb.foundation.vertx.client.tcp.TcpClientConnection.java
License:Apache License
private void onConnectSuccess(NetSocket socket) { LOGGER.info("connected to address {} success in thread {}.", socketAddress.toString(), Thread.currentThread().getName()); // currently, socket always be NetSocketImpl this.initNetSocket((NetSocketImpl) socket); socket.handler(new TcpParser(this::onReply)); socket.exceptionHandler(this::onException); socket.closeHandler(this::onClosed); // /* w ww. j a v a2 s . c o m*/ tryLogin(); }
From source file:org.apache.servicecomb.foundation.vertx.server.TcpServerConnection.java
License:Apache License
public void init(NetSocket netSocket, AtomicInteger connectedCounter) { // currently, socket always be NetSocketImpl this.initNetSocket((NetSocketImpl) netSocket); String remoteAddress = netSocket.remoteAddress().toString(); LOGGER.info("connect from {}, in thread {}", remoteAddress, Thread.currentThread().getName()); netSocket.exceptionHandler(e -> { LOGGER.error("disconected from {}, in thread {}, cause {}", remoteAddress, Thread.currentThread().getName(), e.getMessage()); });// ww w. ja v a2 s . c o m netSocket.closeHandler(Void -> { LOGGER.error("disconected from {}, in thread {}", remoteAddress, Thread.currentThread().getName()); int connectedCount = connectedCounter.decrementAndGet(); EventManager.post( new ClientEvent(remoteAddress, ConnectionEvent.Closed, TransportType.Highway, connectedCount)); }); netSocket.handler(splitter); }
From source file:shadowsocks.vertxio.ClientHandler.java
License:Apache License
private void setFinishHandler(NetSocket socket) { socket.closeHandler(v -> { destory();/*from w w w . java 2 s . c o m*/ }); socket.endHandler(v -> { destory(); }); socket.exceptionHandler(e -> { log.error("Catch Exception.", e); destory(); }); }