public interface Session
Session provides user-defined attributes. User-defined attributes are application-specific data which is associated with a session. It often contains objects that represents the state of a higher-level protocol and becomes a way to exchange data between filters and handlers.
Modifier and Type | Method and Description |
---|---|
void |
close()
Closes this session immediately.
|
void |
close(boolean wait)
Closes this session immediately.
|
java.lang.Object |
getAttachment()
Returns an attachment of this session.
|
java.lang.Object |
getAttribute(java.lang.String key)
Returns the value of user-defined attribute of this session.
|
java.util.Set |
getAttributeKeys()
Returns the set of keys of all user-defined attributes.
|
SessionConfig |
getConfig()
Returns the configuration of this session.
|
long |
getCreationTime()
Returns the time in millis when this session is created.
|
int |
getIdleCount(IdleStatus status)
Returns the number of the fired continuous sessionIdle events
for the specified
IdleStatus . |
long |
getLastIdleTime(IdleStatus status)
Returns the time in millis when the last sessionIdle event
is fired for the specified
IdleStatus . |
long |
getLastIoTime()
Returns the time in millis when I/O occurred lastly.
|
long |
getLastReadTime()
Returns the time in millis when read operation occurred lastly.
|
long |
getLastWriteTime()
Returns the time in millis when write operation occurred lastly.
|
java.net.SocketAddress |
getLocalAddress()
Returns the socket address of local machine which is associated with this
session.
|
long |
getReadBytes()
Returns the total number of bytes which were read from this session.
|
java.net.SocketAddress |
getRemoteAddress()
Returns the socket address of remote peer.
|
int |
getScheduledWriteRequests()
Returns the number of write requests which are scheduled to be written
to this session.
|
TransportType |
getTransportType()
Returns transport type of this session.
|
long |
getWrittenBytes()
Returns the total number of bytes which were written to this session.
|
long |
getWrittenWriteRequests()
Returns the total number of write requests which were written to this session.
|
boolean |
isConnected()
Returns
true if this session is connected with remote peer. |
boolean |
isIdle(IdleStatus status)
Returns
true if this session is idle for the specified
IdleStatus . |
java.lang.Object |
removeAttribute(java.lang.String key)
Removes a user-defined attribute with the specified key.
|
java.lang.Object |
setAttachment(java.lang.Object attachment)
Sets an attachment of this session.
|
java.lang.Object |
setAttribute(java.lang.String key,
java.lang.Object value)
Sets a user-defined attribute.
|
void close()
void close(boolean wait)
wait
- true if you want to wait until closing process is
complete.java.lang.Object getAttachment()
java.lang.Object setAttachment(java.lang.Object attachment)
java.lang.Object getAttribute(java.lang.String key)
key
- the key of the attributejava.lang.Object setAttribute(java.lang.String key, java.lang.Object value)
key
- the key of the attributevalue
- the value of the attributejava.lang.Object removeAttribute(java.lang.String key)
java.util.Set getAttributeKeys()
TransportType getTransportType()
boolean isConnected()
true
if this session is connected with remote peer.SessionConfig getConfig()
java.net.SocketAddress getRemoteAddress()
java.net.SocketAddress getLocalAddress()
long getReadBytes()
long getWrittenBytes()
long getWrittenWriteRequests()
int getScheduledWriteRequests()
long getCreationTime()
long getLastIoTime()
long getLastReadTime()
long getLastWriteTime()
boolean isIdle(IdleStatus status)
true
if this session is idle for the specified
IdleStatus
.int getIdleCount(IdleStatus status)
IdleStatus
.
If sessionIdle event is fired first after some time after I/O, idleCount becomes 1. idleCount resets to 0 if any I/O occurs again, otherwise it increases to 2 and so on if sessionIdle event is fired again without any I/O between two (or more) sessionIdle events.
long getLastIdleTime(IdleStatus status)
IdleStatus
.