s.getPort()); SocketEntry entry = new SocketEntry(incomingAddress, s); entry.addRegistration(selector, SelectionKey.OP_READ); sockets.put(incomingAddress, entry); timeoutSocket(entry);
entry.addRegistration(selector, SelectionKey.OP_WRITE);
entry.addRegistration(selector, SelectionKey.OP_WRITE);
s.getPort()); SocketEntry entry = new SocketEntry(incomingAddress, s); entry.addRegistration(selector, SelectionKey.OP_READ); sockets.put(incomingAddress, entry); timeoutSocket(entry);
s.getPort()); SocketEntry entry = new SocketEntry(incomingAddress, s); entry.addRegistration(selector, SelectionKey.OP_READ); sockets.put(incomingAddress, entry); timeoutSocket(entry);
readChannel.read(readBuffer); if (readBuffer.hasRemaining()) { entry.addRegistration(selector, SelectionKey.OP_READ); entry.setReadBuffer(newBuffer); entry.addRegistration(selector, SelectionKey.OP_READ); entry.addRegistration(selector, SelectionKey.OP_READ);
(readBuffer.hasRemaining() || (readBuffer.position() < messageLengthDecoder.getMinHeaderLength()))) { entry.addRegistration(selector, SelectionKey.OP_READ); } else if (bytesRead < 0) { socketClosedRemotely(sk, readChannel, incomingAddress); } else if ((entry != null) && (bytesRead > 0)) { addBufferToReadBuffer(entry, byteBuffer); entry.addRegistration(selector, SelectionKey.OP_READ); } else { if (logger.isDebugEnabled()) {
entry.addRegistration(selector, SelectionKey.OP_READ);
entry.addRegistration(selector, SelectionKey.OP_WRITE); entry.addRegistration(selector, SelectionKey.OP_CONNECT);
entry.addRegistration(selector, SelectionKey.OP_READ);
entry.addRegistration(selector, SelectionKey.OP_WRITE); entry.addRegistration(selector, SelectionKey.OP_CONNECT);
entry.addRegistration(selector, SelectionKey.OP_WRITE); } else { entry.addRegistration(selector, SelectionKey.OP_CONNECT);
entry.addRegistration(selector, SelectionKey.OP_READ); entry.addRegistration(selector, SelectionKey.OP_READ);
private void writeMessage(SocketEntry entry, SocketChannel sc) throws IOException { byte[] message = entry.nextMessage(); if (message != null) { ByteBuffer buffer = ByteBuffer.wrap(message); sc.write(buffer); if (logger.isDebugEnabled()) { logger.debug("Sent message with length " + message.length + " to " + entry.getPeerAddress() + ": " + new OctetString(message).toHexString()); } entry.addRegistration(selector, SelectionKey.OP_READ); } else { entry.removeRegistration(selector, SelectionKey.OP_WRITE); // Make sure that we did not clear a selection key that was concurrently // added: if (entry.hasMessage() && !entry.isRegistered(SelectionKey.OP_WRITE)) { entry.addRegistration(selector, SelectionKey.OP_WRITE); logger.debug("Waking up selector"); selector.wakeup(); } } }
private void writeMessage(SocketEntry entry, SocketChannel sc) throws IOException { byte[] message = entry.nextMessage(); if (message != null) { ByteBuffer buffer = ByteBuffer.wrap(message); sc.write(buffer); if (logger.isDebugEnabled()) { logger.debug("Send message with length " + message.length + " to " + entry.getPeerAddress() + ": " + new OctetString(message).toHexString()); } entry.addRegistration(selector, SelectionKey.OP_READ); } else { entry.removeRegistration(selector, SelectionKey.OP_WRITE); // Make sure that we did not clear a selection key that was concurrently // added: if (entry.hasMessage() && !entry.isRegistered(SelectionKey.OP_WRITE)) { entry.addRegistration(selector, SelectionKey.OP_WRITE); logger.debug("Waking up selector"); selector.wakeup(); } } }