void onInterestOp(long now) {
        if (!key.isValid()) {
            this.onConnectionError("remote");
        } else {
            try {
                if (key.isConnectable())
                    this.onReadyToConnect(now);
                if (key.isReadable())
                    this.onReadyToRead(now);
                if (key.isWritable())
                    this.onReadyToWrite(now);
            } catch (IOException exc) {
                this.onConnectionError(exc);
                key.cancel();
            }
        }
    }