Class NioDatagramWorker
- java.lang.Object
-
- org.jboss.netty.channel.socket.nio.AbstractNioSelector
-
- org.jboss.netty.channel.socket.nio.AbstractNioWorker
-
- org.jboss.netty.channel.socket.nio.NioDatagramWorker
-
- All Implemented Interfaces:
java.lang.Runnable
,NioSelector
,Worker
public class NioDatagramWorker extends AbstractNioWorker
A class responsible for registering channels withSelector
. It also implements theSelector
loop.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private class
NioDatagramWorker.ChannelRegistionTask
RegisterTask is a task responsible for registering a channel with a selector.
-
Field Summary
Fields Modifier and Type Field Description private SocketReceiveBufferAllocator
bufferAllocator
-
Fields inherited from class org.jboss.netty.channel.socket.nio.AbstractNioWorker
sendBufferPool
-
Fields inherited from class org.jboss.netty.channel.socket.nio.AbstractNioSelector
logger, selector, startupLatch, thread, wakenUp
-
-
Constructor Summary
Constructors Constructor Description NioDatagramWorker(java.util.concurrent.Executor executor)
Sole constructor.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected java.lang.Runnable
createRegisterTask(Channel channel, ChannelFuture future)
(package private) static void
disconnect(NioDatagramChannel channel, ChannelFuture future)
protected boolean
read(java.nio.channels.SelectionKey key)
Read is called when a Selector has been notified that the underlying channel was something to be read.void
run()
protected boolean
scheduleWriteIfNecessary(AbstractNioChannel<?> channel)
protected void
write0(AbstractNioChannel<?> channel)
void
writeFromUserCode(AbstractNioChannel<?> channel)
-
Methods inherited from class org.jboss.netty.channel.socket.nio.AbstractNioWorker
cleanUpWriteBuffer, clearOpWrite, close, close, executeInIoThread, executeInIoThread, isIoThread, newThreadRenamingRunnable, process, setInterestOps, setOpWrite, writeFromSelectorLoop, writeFromTaskLoop
-
Methods inherited from class org.jboss.netty.channel.socket.nio.AbstractNioSelector
cleanUpCancelledKeys, increaseCancelledKeys, isIoThread, rebuildSelector, register, registerTask, select, shutdown
-
-
-
-
Field Detail
-
bufferAllocator
private final SocketReceiveBufferAllocator bufferAllocator
-
-
Constructor Detail
-
NioDatagramWorker
NioDatagramWorker(java.util.concurrent.Executor executor)
Sole constructor.- Parameters:
executor
- theExecutor
used to executeRunnable
s such asNioDatagramWorker.ChannelRegistionTask
-
-
Method Detail
-
read
protected boolean read(java.nio.channels.SelectionKey key)
Description copied from class:AbstractNioWorker
Read is called when a Selector has been notified that the underlying channel was something to be read. The channel would previously have registered its interest in read operations.- Specified by:
read
in classAbstractNioWorker
- Parameters:
key
- The selection key which contains the Selector registration information.
-
scheduleWriteIfNecessary
protected boolean scheduleWriteIfNecessary(AbstractNioChannel<?> channel)
- Specified by:
scheduleWriteIfNecessary
in classAbstractNioWorker
-
disconnect
static void disconnect(NioDatagramChannel channel, ChannelFuture future)
-
createRegisterTask
protected java.lang.Runnable createRegisterTask(Channel channel, ChannelFuture future)
- Specified by:
createRegisterTask
in classAbstractNioSelector
-
writeFromUserCode
public void writeFromUserCode(AbstractNioChannel<?> channel)
- Overrides:
writeFromUserCode
in classAbstractNioWorker
-
write0
protected void write0(AbstractNioChannel<?> channel)
- Overrides:
write0
in classAbstractNioWorker
-
run
public void run()
- Specified by:
run
in interfacejava.lang.Runnable
- Overrides:
run
in classAbstractNioWorker
-
-