public abstract class SequentialAction<I extends InitialRequest,C extends ActionCommand,R extends ActionResponse> extends java.lang.Object implements Action<I,C,R>
| Constructor and Description |
|---|
SequentialAction() |
| Modifier and Type | Method and Description |
|---|---|
protected abstract ActionResult |
invoke(I parameters)
Override this method to provide action functionality.
|
protected abstract R |
send(C actionCommand)
Action Implementations should override this method to provide command sending functionality to client.
|
abstract C |
service(R actionRequest)
Action Implementations should override this method to convert request-response style processing to a continuous instruction flow in execute method.
|
protected abstract ActionResult invoke(I parameters) throws ContextException
ContextExceptionprotected abstract R send(C actionCommand) throws DisconnectionException
java.lang.IllegalStateException - If the method is called not in actionRequest processing phasejava.lang.NullPointerException - If actionCommand is nullDisconnectionExceptionpublic abstract C service(R actionRequest) throws java.lang.IllegalArgumentException
service in interface Action<I extends InitialRequest,C extends ActionCommand,R extends ActionResponse>java.lang.IllegalArgumentException - if actionRequest doesn't match previous actionCommand or first actionRequest received isn't instance of ActionInitParameters