@Override public void handleClosed() { synchronized (this) { closed = true; } super.handleClosed(); }
@Override public void channelInactive(ChannelHandlerContext chctx) throws Exception { if (removeHandler != null) { removeHandler.handle(conn); } context.executeFromIO(v -> conn.handleClosed()); }
@Override protected void handleClosed() { super.handleClosed(); Handler<Void> handler; DatagramSocketMetrics metrics; synchronized (DatagramSocketImpl.this) { handler = endHandler; metrics = DatagramSocketImpl.this.metrics; } if (metrics != null) { metrics.close(); } if (handler != null) { handler.handle(null); } }
@Override protected void handleClosed() { MessageConsumer consumer; synchronized (this) { if (closed) { return; } closed = true; consumer = registration; registration = null; } checkEnd(); super.handleClosed(); if (consumer != null) { consumer.unregister(); } }
@Override public void handleClosed() { synchronized (this) { closed = true; } super.handleClosed(); }
@Override public void channelInactive(ChannelHandlerContext chctx) throws Exception { if (removeHandler != null) { removeHandler.handle(conn); } context.executeFromIO(v -> conn.handleClosed()); }
@Override protected void handleClosed() { super.handleClosed(); Handler<Void> handler; DatagramSocketMetrics metrics; synchronized (DatagramSocketImpl.this) { handler = endHandler; metrics = DatagramSocketImpl.this.metrics; } if (metrics != null) { metrics.close(); } if (handler != null) { handler.handle(null); } }
@Override protected void handleClosed() { MessageConsumer consumer; synchronized (this) { if (closed) { return; } closed = true; consumer = registration; registration = null; } checkEnd(); super.handleClosed(); if (consumer != null) { consumer.unregister(); } }
/** * Used for calling the close handler when the remote MQTT client closes the connection */ synchronized protected void handleClosed() { super.handleClosed(); if (this.endpoint != null) { this.endpoint.handleClosed(); } }