| A
IoHandlerCommand encapsulates a unit of processing work to be
performed, whose purpose is to examine and/or modify the state of a
transaction that is represented by custom attributes provided by
IoSession . Individual
IoHandlerCommand s can be assembled into
a
IoHandlerChain , which allows them to either complete the
required processing or delegate further processing to the next
IoHandlerCommand in the
IoHandlerChain .
IoHandlerCommand implementations typically retrieve and store state
information in the
IoSession that is passed as a parameter to
the
IoHandlerCommand.execute(NextCommand,IoSession,Object) method, using custom
session attributes. If you think getting attributes is tedious process,
you can create a bean which contains getters and setters of all properties
and store the bean as a session attribute:
public class MyContext {
public String getPropertyX() { ... };
public void setPropertyX(String propertyX) { ... };
public int getPropertyZ() { ... };
public void setPropertyZ(int propertyZ) { ... };
}
public class MyHandlderCommand implements IoHandlerCommand {
public void execute( NextCommand next, IoSession session, Object message ) throws Exception {
MyContext ctx = session.getAttribute( "mycontext" );
...
}
}
author: Apache Directory Project version: $Rev: 576217 $, $Date: 2007-09-16 17:55:27 -0600 (Sun, 16 Sep 2007) $ |