@Override public void connected(Address address) { if (closed) { return; } wrappee.connected(address); }
@Override public void run() { closed = true; if (connecter != null) { connecter.close(); connecter = null; } } });
private ProxyClient(NinioProvider ninioProvider, TcpSocket.Builder proxyConnectorFactory) { proxyExecutor = ninioProvider.executor(); this.ninioProvider = ninioProvider; this.proxyConnectorFactory = proxyConnectorFactory; }
@Override public void run() { connecter.send(address, buffer, callback); } });
@Override public void failed(IOException ioe) { wrappee.failed(ioe); } }
@Override public void received(Address address, ByteBuffer buffer) { wrappee.received(address, buffer); } }
public void bind(byte[] address) throws IOException { int scope_id = getScopeId(address); int result = __bind(socket, family, address, scope_id); if (result != 0) { throwIOException(result); } }
@Override public void failed(IOException ioe) { wrappee.failed(ioe); } @Override
@Override public void failed(IOException e) { listening.failed(e); } }
public NativeRawSocket(int protocolFamily, int protocol) throws IOException { socket = __socket(protocolFamily, protocol); if (socket < 0) { throwIOException(socket); } family = protocolFamily; }
@Override public Connection connecting(Connected connecting) { return wrappee.connecting(connecting); } }
@Override public Connecter create(NinioProvider ninioProvider) { return new RawSocket(family, protocol, bindAddress); } };
@Override public void close() { queue.execute(new Runnable() { @Override public void run() { disconnect(currentServerChannel, currentAcceptSelectionKey, listenCallback, null); } }); }
@Override public void close() { listener.close(); } };
@Override public void run() { connecter.close(); } });
private ReconnectConnecter(NinioProvider ninioProvider, NinioBuilder<Connecter> builder) { this.ninioProvider = ninioProvider; this.builder = builder; executor = ninioProvider.executor(); }
@Override public void failed(IOException ioe) { wrappee.failed(ioe); } @Override
@Override public void run() { if (proxyConnector != null) { proxyConnector.close(); proxyConnector = null; } } });