public final class UDPNIOTransport extends NIOTransport implements SocketBinder<UDPNIOServerConnection>, SocketConnectorHandler, AsyncQueueEnabledTransport, FilterChainEnabledTransport, TemporarySelectorsEnabledTransport
| Modifier and Type | Class and Description |
|---|---|
protected class |
UDPNIOTransport.RegisterChannelCompletionHandler |
protected class |
UDPNIOTransport.TransportConnectorHandler
Transport default
UDPNIOConnectorHandler. |
Transport.State| Modifier and Type | Field and Description |
|---|---|
protected AsyncQueueIO<SocketAddress> |
asyncQueueIO
Transport AsyncQueueIO
|
protected int |
connectionTimeout
Default channel connection timeout
|
protected UDPNIOTransport.RegisterChannelCompletionHandler |
registerChannelCompletionHandler |
protected boolean |
reuseAddress
The socket reuseAddress
|
protected Collection<UDPNIOServerConnection> |
serverConnections
The Server connections.
|
protected int |
serverSocketSoTimeout
The server socket time out
|
protected TemporarySelectorIO |
temporarySelectorIO
Server socket backlog.
|
nioChannelDistributor, RANDOM, selectionKeyHandler, selectorHandler, selectorProvider, selectorRunners, selectorRunnersCountattributeBuilder, connectionMonitoringConfig, isBlocking, isStandalone, kernelPool, kernelPoolConfig, managedWorkerPool, memoryManager, name, processor, processorSelector, readBufferSize, state, strategy, threadPoolMonitoringConfig, transportMonitoringConfig, workerPoolConfig, workerThreadPool, writeBufferSizeDEFAULT_READ_BUFFER_SIZE| Constructor and Description |
|---|
UDPNIOTransport() |
UDPNIOTransport(String name) |
| Modifier and Type | Method and Description |
|---|---|
UDPNIOServerConnection |
bind(int port)
Binds Transport to the specific port on localhost.
|
UDPNIOServerConnection |
bind(SocketAddress socketAddress)
Binds Transport to the specific SocketAddress.
|
UDPNIOServerConnection |
bind(SocketAddress socketAddress,
int backlog)
Binds Transport to the specific SocketAddress.
|
UDPNIOServerConnection |
bind(String host,
int port)
Binds Transport to the specific host and port.
|
UDPNIOServerConnection |
bind(String host,
int port,
int backlog)
Binds Transport to the specific host and port.
|
UDPNIOServerConnection |
bind(String host,
PortRange portRange,
int backlog)
Binds Transport to the specific host, and port within a
PortRange. |
UDPNIOServerConnection |
bindToInherited()
Binds the Transport to the channel inherited from the entity that
created this Java virtual machine.
|
protected void |
closeConnection(Connection connection)
Close the connection, managed by Transport
|
protected void |
configureNIOConnection(UDPNIOConnection connection) |
void |
configureStandalone(boolean isStandalone) |
GrizzlyFuture<Connection> |
connect()
Creates non-connected UDP
Connection. |
GrizzlyFuture<Connection> |
connect(SocketAddress remoteAddress)
Creates, initializes and connects socket to the specific
SocketAddress and returns Connection, representing socket. |
void |
connect(SocketAddress remoteAddress,
CompletionHandler<Connection> completionHandler)
Creates, initializes and connects socket to the specific
SocketAddress and returns Connection, representing socket. |
GrizzlyFuture<Connection> |
connect(SocketAddress remoteAddress,
SocketAddress localAddress)
Creates, initializes socket, binds it to the specific local and remote
SocketAddress and returns Connection, representing socket. |
void |
connect(SocketAddress remoteAddress,
SocketAddress localAddress,
CompletionHandler<Connection> completionHandler)
Creates, initializes socket, binds it to the specific local and remote
SocketAddress and returns Connection, representing socket. |
GrizzlyFuture<Connection> |
connect(String host,
int port)
Creates, initializes and connects socket to the specific remote host
and port and returns
Connection, representing socket. |
protected JmxObject |
createJmxManagementObject()
Create the Transport JMX managment object.
|
void |
fireIOEvent(IOEvent ioEvent,
Connection connection,
IOEventProcessingHandler processingHandler)
Fires specific
IOEvent on the Connection |
AsyncQueueIO |
getAsyncQueueIO()
Get asynchronous queue implementation.
|
int |
getConnectionTimeout() |
Reader |
getReader(boolean isBlocking)
Get the
Reader implementation, depending on the requested mode. |
Reader |
getReader(Connection connection)
Get the
Reader to read data from the Connection. |
TemporarySelectorIO |
getTemporarySelectorIO() |
Filter |
getTransportFilter()
Get transport
Filter, which is aware of Transport
specifics; knows how to read/write from/to Transport
specific Connection streams. |
Writer |
getWriter(boolean isBlocking)
Get the
Writer implementation, depending on the requested mode. |
Writer |
getWriter(Connection connection)
Get the
Writer to write data to the Connection. |
boolean |
isReuseAddress() |
void |
pause()
Pauses the transport
|
int |
read(UDPNIOConnection connection,
Buffer buffer) |
int |
read(UDPNIOConnection connection,
Buffer buffer,
ReadResult<Buffer,SocketAddress> currentResult) |
void |
resume()
Resumes the transport after a pause
|
void |
setConnectionTimeout(int connectionTimeout) |
void |
setReuseAddress(boolean reuseAddress) |
void |
start()
Starts the transport
|
void |
stop()
Stops the transport and closes all the connections
|
void |
unbind(UDPNIOServerConnection connection)
Unbinds bound
Transport connection. |
void |
unbindAll()
Unbinds all bound
Transport connections. |
long |
write(UDPNIOConnection connection,
SocketAddress dstAddress,
WritableMessage message) |
long |
write(UDPNIOConnection connection,
SocketAddress dstAddress,
WritableMessage message,
WriteResult<WritableMessage,SocketAddress> currentResult) |
getNIOChannelDistributor, getSelectionKeyHandler, getSelectorHandler, getSelectorProvider, getSelectorRunners, getSelectorRunnersCount, notifyProbesError, notifyProbesPause, notifyProbesResume, notifyProbesStart, notifyProbesStop, notifyTransportError, setNIOChannelDistributor, setSelectionKeyHandler, setSelectorHandler, setSelectorProvider, setSelectorRunnersCount, startSelectorRunners, stopSelectorRunnersconfigureBlocking, getAttributeBuilder, getConnectionMonitoringConfig, getIOStrategy, getKernelThreadPool, getKernelThreadPoolConfig, getMemoryManager, getMonitoringConfig, getName, getProcessor, getProcessorSelector, getReadBufferSize, getState, getThreadPoolMonitoringConfig, getWorkerThreadPool, getWorkerThreadPoolConfig, getWriteBufferSize, isBlocking, isPaused, isStandalone, isStopped, notifyProbesConfigChanged, obtainProcessor, setAttributeBuilder, setIOStrategy, setKernelPool0, setKernelThreadPool, setKernelThreadPoolConfig, setMemoryManager, setName, setProcessor, setProcessorSelector, setReadBufferSize, setWorkerThreadPool, setWorkerThreadPool0, setWorkerThreadPoolConfig, setWriteBufferSizeprotected final int serverSocketSoTimeout
protected boolean reuseAddress
protected int connectionTimeout
protected final Collection<UDPNIOServerConnection> serverConnections
protected final AsyncQueueIO<SocketAddress> asyncQueueIO
protected final TemporarySelectorIO temporarySelectorIO
protected final UDPNIOTransport.RegisterChannelCompletionHandler registerChannelCompletionHandler
public UDPNIOTransport()
public UDPNIOTransport(String name)
public UDPNIOServerConnection bind(int port) throws IOException
bind in interface SocketBinder<UDPNIOServerConnection>ConnectionIOExceptionpublic UDPNIOServerConnection bind(String host, int port) throws IOException
bind in interface SocketBinder<UDPNIOServerConnection>host - the local host the server will bind toConnectionIOExceptionpublic UDPNIOServerConnection bind(String host, int port, int backlog) throws IOException
bind in interface SocketBinder<UDPNIOServerConnection>host - the local host the server will bind tobacklog - the maximum length of the queueConnectionIOExceptionpublic UDPNIOServerConnection bind(SocketAddress socketAddress) throws IOException
bind in interface SocketBinder<UDPNIOServerConnection>socketAddress - the local address the server will bind toConnectionIOExceptionpublic UDPNIOServerConnection bind(SocketAddress socketAddress, int backlog) throws IOException
bind in interface SocketBinder<UDPNIOServerConnection>socketAddress - the local address the server will bind tobacklog - the maximum length of the queueConnectionIOExceptionpublic UDPNIOServerConnection bindToInherited() throws IOException
SocketBinderbindToInherited in interface SocketBinder<UDPNIOServerConnection>ConnectionIOExceptionpublic UDPNIOServerConnection bind(String host, PortRange portRange, int backlog) throws IOException
PortRange.bind in interface SocketBinder<UDPNIOServerConnection>host - the local host the server will bind toportRange - PortRange.backlog - the maximum length of the queueConnectionIOExceptionpublic void unbind(UDPNIOServerConnection connection) throws IOException
Transport connection.unbind in interface SocketBinder<UDPNIOServerConnection>connection - ConnectionIOExceptionpublic void unbindAll()
throws IOException
SocketBinderTransport connections.unbindAll in interface SocketBinder<UDPNIOServerConnection>IOExceptionpublic GrizzlyFuture<Connection> connect() throws IOException
Connection.Connection.IOExceptionpublic GrizzlyFuture<Connection> connect(String host, int port) throws IOException
Connection, representing socket.connect in interface SocketConnectorHandlerhost - remote host to connect to.port - remote port to connect to.GrizzlyFuture of connect operation, which could be used to get
resulting Connection.IOExceptionpublic GrizzlyFuture<Connection> connect(SocketAddress remoteAddress)
SocketAddress and returns Connection, representing socket.connect in interface ConnectorHandler<SocketAddress>remoteAddress - remote address to connect to.GrizzlyFuture of connect operation, which could be used to get
resulting Connection.IOExceptionpublic void connect(SocketAddress remoteAddress, CompletionHandler<Connection> completionHandler)
SocketAddress and returns Connection, representing socket.connect in interface ConnectorHandler<SocketAddress>remoteAddress - remote address to connect to.completionHandler - CompletionHandler.public GrizzlyFuture<Connection> connect(SocketAddress remoteAddress, SocketAddress localAddress)
SocketAddress and returns Connection, representing socket.connect in interface ConnectorHandler<SocketAddress>remoteAddress - remote address to connect to.localAddress - local address to bind socket to.GrizzlyFuture of connect operation, which could be used to get
resulting Connection.public void connect(SocketAddress remoteAddress, SocketAddress localAddress, CompletionHandler<Connection> completionHandler)
SocketAddress and returns Connection, representing socket.connect in interface ConnectorHandler<SocketAddress>remoteAddress - remote address to connect to.localAddress - local address to bind socket to.completionHandler - CompletionHandler.protected void closeConnection(Connection connection) throws IOException
AbstractTransportcloseConnection in class NIOTransportIOExceptionpublic void start()
throws IOException
AbstractTransportstart in interface Transportstart in class NIOTransportIOExceptionpublic void stop()
throws IOException
AbstractTransportstop in interface Transportstop in class AbstractTransportIOExceptionpublic void pause()
throws IOException
AbstractTransportpause in interface Transportpause in class AbstractTransportIOExceptionpublic void resume()
throws IOException
AbstractTransportresume in interface Transportresume in class AbstractTransportIOExceptionpublic void configureStandalone(boolean isStandalone)
configureStandalone in interface Transportpublic Filter getTransportFilter()
FilterChainEnabledTransportFilter, which is aware of Transport
specifics; knows how to read/write from/to Transport
specific Connection streams.
Each Transport should provide transport Filter
implementation.getTransportFilter in interface FilterChainEnabledTransportFilter, which is aware of Transport
specifics; knows how to read/write from/to Transport
specific Connections.public AsyncQueueIO getAsyncQueueIO()
AsyncQueueEnabledTransportgetAsyncQueueIO in interface AsyncQueueEnabledTransportpublic TemporarySelectorIO getTemporarySelectorIO()
getTemporarySelectorIO in interface TemporarySelectorsEnabledTransportpublic int getConnectionTimeout()
public void setConnectionTimeout(int connectionTimeout)
public boolean isReuseAddress()
public void setReuseAddress(boolean reuseAddress)
public void fireIOEvent(IOEvent ioEvent, Connection connection, IOEventProcessingHandler processingHandler)
TransportIOEvent on the ConnectionfireIOEvent in interface TransportioEvent - I/O eventconnection - Connection, on which we fire the event.processingHandler - I/O event processing handler.public Reader getReader(Connection connection)
Reader to read data from the Connection.
The Transport may decide to return blocking or non-blocking Reader
depending on the Connection settings.getReader in interface Transportconnection - Connection.Reader.public Reader getReader(boolean isBlocking)
Reader implementation, depending on the requested mode.public Writer getWriter(Connection connection)
Writer to write data to the Connection.
The Transport may decide to return blocking or non-blocking Writer
depending on the Connection settings.getWriter in interface Transportconnection - Connection.Writer.public Writer getWriter(boolean isBlocking)
Writer implementation, depending on the requested mode.public int read(UDPNIOConnection connection, Buffer buffer) throws IOException
IOExceptionpublic int read(UDPNIOConnection connection, Buffer buffer, ReadResult<Buffer,SocketAddress> currentResult) throws IOException
IOExceptionpublic long write(UDPNIOConnection connection, SocketAddress dstAddress, WritableMessage message) throws IOException
IOExceptionpublic long write(UDPNIOConnection connection, SocketAddress dstAddress, WritableMessage message, WriteResult<WritableMessage,SocketAddress> currentResult) throws IOException
IOExceptionprotected void configureNIOConnection(UDPNIOConnection connection)
protected JmxObject createJmxManagementObject()
createJmxManagementObject in class AbstractTransportCopyright © 2013 Oracle Corporation. All Rights Reserved.