|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.apache.mina.core.service.AbstractIoService
org.apache.mina.core.service.AbstractIoAcceptor
org.apache.mina.core.polling.AbstractPollingIoAcceptor<NioSession,ServerSocketChannel>
org.apache.mina.transport.socket.nio.NioSocketAcceptor
public final class NioSocketAcceptor
IoAcceptor for socket transport (TCP/IP). This class
handles incoming TCP/IP based socket connections.
| Nested Class Summary |
|---|
| Nested classes/interfaces inherited from class org.apache.mina.core.service.AbstractIoAcceptor |
|---|
AbstractIoAcceptor.AcceptorOperationFuture |
| Nested classes/interfaces inherited from class org.apache.mina.core.service.AbstractIoService |
|---|
AbstractIoService.ServiceOperationFuture |
| Field Summary |
|---|
| Fields inherited from class org.apache.mina.core.service.AbstractIoAcceptor |
|---|
bindLock |
| Fields inherited from class org.apache.mina.core.service.AbstractIoService |
|---|
disposalLock |
| Constructor Summary | |
|---|---|
NioSocketAcceptor()
Constructor for NioSocketAcceptor using default parameters (multiple thread model). |
|
NioSocketAcceptor(Executor executor,
IoProcessor<NioSession> processor)
Constructor for NioSocketAcceptor with a given Executor for handling
connection events and a given IoProcessor for handling I/O events, useful for
sharing the same processor and executor over multiple IoService of the same type. |
|
NioSocketAcceptor(int processorCount)
Constructor for NioSocketAcceptor using default parameters, and
given number of NioProcessor for multithreading I/O operations. |
|
NioSocketAcceptor(IoProcessor<NioSession> processor)
Constructor for NioSocketAcceptor with default configuration but a
specific IoProcessor, useful for sharing the same processor over multiple
IoService of the same type. |
|
| Method Summary | |
|---|---|
protected NioSession |
accept(IoProcessor<NioSession> processor,
ServerSocketChannel handle)
Accept a client connection for a server socket and return a new IoSession
associated with the given IoProcessor |
protected void |
close(ServerSocketChannel handle)
Close a server socket. |
protected void |
destroy()
Destroy the polling system, will be called when this IoAcceptor
implementation will be disposed. |
int |
getBacklog()
Returns the size of the backlog. |
InetSocketAddress |
getDefaultLocalAddress()
Returns the default local address to bind when no argument is specified in IoAcceptor.bind() method. |
InetSocketAddress |
getLocalAddress()
Returns the local address which is bound currently. |
SocketSessionConfig |
getSessionConfig()
Returns the default configuration of the new IoSessions
created by this service. |
TransportMetadata |
getTransportMetadata()
Returns the TransportMetadata that this service runs on. |
protected void |
init()
Initialize the polling system, will be called at construction time. |
boolean |
isReuseAddress()
|
protected SocketAddress |
localAddress(ServerSocketChannel handle)
Get the local address associated with a given server socket |
protected ServerSocketChannel |
open(SocketAddress localAddress)
Open a server socket for a given local address. |
protected int |
select()
Check if we have at least one key whose corresponding channels is ready for I/O operations. |
protected Iterator<ServerSocketChannel> |
selectedHandles()
Iterator for the set of server sockets found with acceptable incoming connections
during the last AbstractPollingIoAcceptor.select() call. |
void |
setBacklog(int backlog)
Sets the size of the backlog. |
void |
setDefaultLocalAddress(InetSocketAddress localAddress)
|
void |
setReuseAddress(boolean reuseAddress)
|
protected void |
wakeup()
Interrupt the AbstractPollingIoAcceptor.select() method. |
| Methods inherited from class org.apache.mina.core.polling.AbstractPollingIoAcceptor |
|---|
bindInternal, dispose0, newSession, unbind0 |
| Methods inherited from class org.apache.mina.core.service.AbstractIoAcceptor |
|---|
bind, bind, bind, bind, getDefaultLocalAddresses, getLocalAddresses, isCloseOnDeactivation, setCloseOnDeactivation, setDefaultLocalAddress, setDefaultLocalAddresses, setDefaultLocalAddresses, setDefaultLocalAddresses, toString, unbind, unbind, unbind, unbind |
| Methods inherited from class org.apache.mina.core.service.AbstractIoService |
|---|
addListener, broadcast, dispose, executeWorker, executeWorker, finishSessionInitialization0, getActivationTime, getFilterChain, getFilterChainBuilder, getHandler, getListeners, getManagedSessionCount, getManagedSessions, getScheduledWriteBytes, getScheduledWriteMessages, getSessionDataStructureFactory, getStatistics, initSession, isActive, isDisposed, isDisposing, removeListener, setFilterChainBuilder, setHandler, setSessionDataStructureFactory |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Methods inherited from interface org.apache.mina.core.service.IoAcceptor |
|---|
bind, bind, bind, bind, getDefaultLocalAddresses, getLocalAddresses, isCloseOnDeactivation, newSession, setCloseOnDeactivation, setDefaultLocalAddress, setDefaultLocalAddresses, setDefaultLocalAddresses, setDefaultLocalAddresses, unbind, unbind, unbind, unbind |
| Methods inherited from interface org.apache.mina.core.service.IoService |
|---|
addListener, broadcast, dispose, getActivationTime, getFilterChain, getFilterChainBuilder, getHandler, getManagedSessionCount, getManagedSessions, getScheduledWriteBytes, getScheduledWriteMessages, getSessionDataStructureFactory, getStatistics, isActive, isDisposed, isDisposing, removeListener, setFilterChainBuilder, setHandler, setSessionDataStructureFactory |
| Constructor Detail |
|---|
public NioSocketAcceptor()
NioSocketAcceptor using default parameters (multiple thread model).
public NioSocketAcceptor(int processorCount)
NioSocketAcceptor using default parameters, and
given number of NioProcessor for multithreading I/O operations.
processorCount - the number of processor to create and place in a
SimpleIoProcessorPoolpublic NioSocketAcceptor(IoProcessor<NioSession> processor)
NioSocketAcceptor with default configuration but a
specific IoProcessor, useful for sharing the same processor over multiple
IoService of the same type.
processor - the processor to use for managing I/O events
public NioSocketAcceptor(Executor executor,
IoProcessor<NioSession> processor)
NioSocketAcceptor with a given Executor for handling
connection events and a given IoProcessor for handling I/O events, useful for
sharing the same processor and executor over multiple IoService of the same type.
executor - the executor for connectionprocessor - the processor for I/O operations| Method Detail |
|---|
protected void init()
throws Exception
init in class AbstractPollingIoAcceptor<NioSession,ServerSocketChannel>Exception - any exception thrown by the underlying system calls
protected void destroy()
throws Exception
IoAcceptor
implementation will be disposed.
destroy in class AbstractPollingIoAcceptor<NioSession,ServerSocketChannel>Exception - any exception thrown by the underlying systems callspublic TransportMetadata getTransportMetadata()
TransportMetadata that this service runs on.
getTransportMetadata in interface IoServicepublic SocketSessionConfig getSessionConfig()
IoSessions
created by this service.
getSessionConfig in interface IoServicegetSessionConfig in interface SocketAcceptorgetSessionConfig in class AbstractIoServicepublic InetSocketAddress getLocalAddress()
getLocalAddress in interface IoAcceptorgetLocalAddress in interface SocketAcceptorgetLocalAddress in class AbstractIoAcceptorpublic InetSocketAddress getDefaultLocalAddress()
IoAcceptor.bind() method. Please note that the default will not be
used if any local address is specified. If more than one address are
set, only one of them will be returned, but it's not necessarily the
firstly specified address in IoAcceptor.setDefaultLocalAddresses(List).
getDefaultLocalAddress in interface IoAcceptorgetDefaultLocalAddress in interface SocketAcceptorgetDefaultLocalAddress in class AbstractIoAcceptorpublic void setDefaultLocalAddress(InetSocketAddress localAddress)
setDefaultLocalAddress in interface SocketAcceptorpublic boolean isReuseAddress()
isReuseAddress in interface SocketAcceptorServerSocket.getReuseAddress()public void setReuseAddress(boolean reuseAddress)
setReuseAddress in interface SocketAcceptorServerSocket.setReuseAddress(boolean)public int getBacklog()
getBacklog in interface SocketAcceptorpublic void setBacklog(int backlog)
setBacklog in interface SocketAcceptor
protected NioSession accept(IoProcessor<NioSession> processor,
ServerSocketChannel handle)
throws Exception
IoSession
associated with the given IoProcessor
accept in class AbstractPollingIoAcceptor<NioSession,ServerSocketChannel>processor - the IoProcessor to associate with the IoSessionhandle - the server handle
IoSession
Exception - any exception thrown by the underlying systems calls
protected ServerSocketChannel open(SocketAddress localAddress)
throws Exception
open in class AbstractPollingIoAcceptor<NioSession,ServerSocketChannel>localAddress - the associated local address
Exception - any exception thrown by the underlying systems calls
protected SocketAddress localAddress(ServerSocketChannel handle)
throws Exception
localAddress in class AbstractPollingIoAcceptor<NioSession,ServerSocketChannel>handle - the server socket
SocketAddress associated with this handle
Exception - any exception thrown by the underlying systems calls
protected int select()
throws Exception
select in class AbstractPollingIoAcceptor<NioSession,ServerSocketChannel>IOException - If an I/O error occurs
ClosedSelectorException - If this selector is closed
Exception - any exception thrown by the underlying systems callsprotected Iterator<ServerSocketChannel> selectedHandles()
Iterator for the set of server sockets found with acceptable incoming connections
during the last AbstractPollingIoAcceptor.select() call.
selectedHandles in class AbstractPollingIoAcceptor<NioSession,ServerSocketChannel>
protected void close(ServerSocketChannel handle)
throws Exception
close in class AbstractPollingIoAcceptor<NioSession,ServerSocketChannel>handle - the server socket
Exception - any exception thrown by the underlying systems callsprotected void wakeup()
AbstractPollingIoAcceptor.select() method. Used when the poll set need to be modified.
wakeup in class AbstractPollingIoAcceptor<NioSession,ServerSocketChannel>
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||