public interface IoAcceptor extends IoService
IoHandler
s.
Please refer to EchoServer example.
You should bind to the desired socket address to accept incoming
connections, and then events for incoming connections will be sent to
the specified default IoHandler
.
Threads accept incoming connections start automatically when
bind()
is invoked, and stop when unbind()
is invoked.
Modifier and Type | Method and Description |
---|---|
void |
bind()
Binds to the default local address(es) and start to accept incoming
connections.
|
void |
bind(java.lang.Iterable<? extends java.net.SocketAddress> localAddresses)
Binds to the specified local addresses and start to accept incoming
connections.
|
void |
bind(java.net.SocketAddress localAddress)
Binds to the specified local address and start to accept incoming
connections.
|
void |
bind(java.net.SocketAddress firstLocalAddress,
java.net.SocketAddress... addresses)
Binds to the specified local addresses and start to accept incoming
connections.
|
java.net.SocketAddress |
getDefaultLocalAddress()
Returns the default local address to bind when no argument is specified
in
bind() method. |
java.util.List<java.net.SocketAddress> |
getDefaultLocalAddresses()
Returns a
List of the default local addresses to bind when no
argument is specified in bind() method. |
java.net.SocketAddress |
getLocalAddress()
Returns the local address which is bound currently.
|
java.util.Set<java.net.SocketAddress> |
getLocalAddresses()
Returns a
Set of the local addresses which are bound currently. |
boolean |
isCloseOnDeactivation()
Returns true if and only if all clients are closed when this
acceptor unbinds from all the related local address (i.e. when the
service is deactivated).
|
IoSession |
newSession(java.net.SocketAddress remoteAddress,
java.net.SocketAddress localAddress)
(Optional) Returns an
IoSession that is bound to the specified
localAddress and the specified remoteAddress which
reuses the local address that is already bound by this service. |
void |
setCloseOnDeactivation(boolean closeOnDeactivation)
Sets whether all client sessions are closed when this acceptor unbinds
from all the related local addresses (i.e. when the service is
deactivated).
|
void |
setDefaultLocalAddress(java.net.SocketAddress localAddress)
Sets the default local address to bind when no argument is specified in
bind() method. |
void |
setDefaultLocalAddresses(java.lang.Iterable<? extends java.net.SocketAddress> localAddresses)
Sets the default local addresses to bind when no argument is specified
in
bind() method. |
void |
setDefaultLocalAddresses(java.util.List<? extends java.net.SocketAddress> localAddresses)
Sets the default local addresses to bind when no argument is specified
in
bind() method. |
void |
setDefaultLocalAddresses(java.net.SocketAddress firstLocalAddress,
java.net.SocketAddress... otherLocalAddresses)
Sets the default local addresses to bind when no argument is specified
in
bind() method. |
void |
unbind()
Unbinds from all local addresses that this service is bound to and stops
to accept incoming connections.
|
void |
unbind(java.lang.Iterable<? extends java.net.SocketAddress> localAddresses)
Unbinds from the specified local addresses and stop to accept incoming
connections.
|
void |
unbind(java.net.SocketAddress localAddress)
Unbinds from the specified local address and stop to accept incoming
connections.
|
void |
unbind(java.net.SocketAddress firstLocalAddress,
java.net.SocketAddress... otherLocalAddresses)
Unbinds from the specified local addresses and stop to accept incoming
connections.
|
addListener, broadcast, dispose, dispose, getActivationTime, getFilterChain, getFilterChainBuilder, getHandler, getManagedSessionCount, getManagedSessions, getScheduledWriteBytes, getScheduledWriteMessages, getSessionConfig, getSessionDataStructureFactory, getStatistics, getTransportMetadata, isActive, isDisposed, isDisposing, removeListener, setFilterChainBuilder, setHandler, setSessionDataStructureFactory
java.net.SocketAddress getLocalAddress()
java.util.Set<java.net.SocketAddress> getLocalAddresses()
Set
of the local addresses which are bound currently.java.net.SocketAddress getDefaultLocalAddress()
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 setDefaultLocalAddresses(List)
.java.util.List<java.net.SocketAddress> getDefaultLocalAddresses()
List
of the default local addresses to bind when no
argument is specified in bind()
method. Please note that the
default will not be used if any local address is specified.void setDefaultLocalAddress(java.net.SocketAddress localAddress)
bind()
method. Please note that the default will not be used
if any local address is specified.void setDefaultLocalAddresses(java.net.SocketAddress firstLocalAddress, java.net.SocketAddress... otherLocalAddresses)
bind()
method. Please note that the default will not be
used if any local address is specified.void setDefaultLocalAddresses(java.lang.Iterable<? extends java.net.SocketAddress> localAddresses)
bind()
method. Please note that the default will not be
used if any local address is specified.void setDefaultLocalAddresses(java.util.List<? extends java.net.SocketAddress> localAddresses)
bind()
method. Please note that the default will not be
used if any local address is specified.boolean isCloseOnDeactivation()
void setCloseOnDeactivation(boolean closeOnDeactivation)
void bind() throws java.io.IOException
java.io.IOException
- if failed to bindvoid bind(java.net.SocketAddress localAddress) throws java.io.IOException
java.io.IOException
- if failed to bindvoid bind(java.net.SocketAddress firstLocalAddress, java.net.SocketAddress... addresses) throws java.io.IOException
java.io.IOException
- if failed to bindvoid bind(java.lang.Iterable<? extends java.net.SocketAddress> localAddresses) throws java.io.IOException
java.io.IOException
- if failed to bindvoid unbind()
disconnectOnUnbind
property
is true. This method returns silently if no local address is
bound yet.void unbind(java.net.SocketAddress localAddress)
disconnectOnUnbind
property is
true. This method returns silently if the default local
address is not bound yet.void unbind(java.net.SocketAddress firstLocalAddress, java.net.SocketAddress... otherLocalAddresses)
disconnectOnUnbind
property is
true. This method returns silently if the default local
addresses are not bound yet.void unbind(java.lang.Iterable<? extends java.net.SocketAddress> localAddresses)
disconnectOnUnbind
property is
true. This method returns silently if the default local
addresses are not bound yet.IoSession newSession(java.net.SocketAddress remoteAddress, java.net.SocketAddress localAddress)
IoSession
that is bound to the specified
localAddress and the specified remoteAddress which
reuses the local address that is already bound by this service.
This operation is optional. Please throw UnsupportedOperationException
if the transport type doesn't support this operation. This operation is
usually implemented for connectionless transport types.
java.lang.UnsupportedOperationException
- if this operation is not supportedjava.lang.IllegalStateException
- if this service is not running.java.lang.IllegalArgumentException
- if this service is not bound to the
specified localAddress.Copyright © 2004-2019 Apache MINA Project. All Rights Reserved.