|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.sun.xml.ws.api.pipe.NextAction
public final class NextAction
Indicates what shall happen after Tube.processRequest(Packet)
or
Tube.processResponse(Packet)
returns.
To allow reuse of this object, this class is mutable.
Field Summary | |
---|---|
(package private) static int |
ABORT_RESPONSE
|
(package private) static int |
INVOKE
|
(package private) static int |
INVOKE_AND_FORGET
|
(package private) static int |
INVOKE_ASYNC
|
(package private) int |
kind
|
(package private) Tube |
next
|
(package private) Runnable |
onExitRunnable
|
(package private) Packet |
packet
|
(package private) static int |
RETURN
|
(package private) static int |
SUSPEND
|
(package private) static int |
THROW
|
(package private) static int |
THROW_ABORT_RESPONSE
|
(package private) Throwable |
throwable
Really either RuntimeException or Error . |
Constructor Summary | |
---|---|
NextAction()
|
Method Summary | |
---|---|
void |
abortResponse(Packet response)
Indicates that the next action is to abort the processResponse chain because of some non-exception condition. |
String |
getKindString()
Returns kind in a human readable string, to assist debugging. |
Tube |
getNext()
Returns the next tube |
Packet |
getPacket()
Returns the last Packet |
Throwable |
getThrowable()
Returns the Throwable generated by the last Tube |
void |
invoke(Tube next,
Packet p)
Indicates that the next action should be to invoke the next tube's Tube.processRequest(Packet) ,
then later invoke the current tube's Tube.processResponse(Packet)
with the response packet. |
void |
invokeAndForget(Tube next,
Packet p)
Indicates that the next action should be to invoke the next tube's Tube.processRequest(Packet) ,
but the current tube doesn't want to receive the response packet to
its Tube.processResponse(Packet) . |
void |
invokeAsync(Tube next,
Packet p)
Indicates that the next action is to invoke the next tube in the tubeline async from the thread that started the tubeline. |
void |
returnWith(Packet response)
Indicates that the next action is to flip the processing direction and starts response processing. |
void |
setNext(Tube next)
Sets the next tube |
void |
suspend()
Indicates that the fiber should be suspended. |
void |
suspend(Runnable onExitRunnable)
Indicates that the fiber should be suspended. |
void |
suspend(Tube next)
Indicates that the fiber should be suspended. |
void |
suspend(Tube next,
Runnable onExitRunnable)
Indicates that the fiber should be suspended. |
void |
throwException(Throwable t)
Indicates that the next action is to flip the processing direction and starts exception processing. |
void |
throwExceptionAbortResponse(Throwable t)
Indicates that the next action is to abort the processResponse chain because of an exception. |
String |
toString()
Dumps the contents to assist debugging. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
int kind
Tube next
Packet packet
Throwable throwable
RuntimeException
or Error
.
Runnable onExitRunnable
static final int INVOKE
static final int INVOKE_AND_FORGET
static final int RETURN
static final int THROW
static final int SUSPEND
static final int THROW_ABORT_RESPONSE
static final int ABORT_RESPONSE
static final int INVOKE_ASYNC
Constructor Detail |
---|
public NextAction()
Method Detail |
---|
public void invoke(Tube next, Packet p)
Tube.processRequest(Packet)
,
then later invoke the current tube's Tube.processResponse(Packet)
with the response packet.
public void invokeAndForget(Tube next, Packet p)
Tube.processRequest(Packet)
,
but the current tube doesn't want to receive the response packet to
its Tube.processResponse(Packet)
.
public void returnWith(Packet response)
public void throwException(Throwable t)
t
- Either RuntimeException
or Error
, but defined to
take Throwable
because Tube.processException(Throwable)
takes Throwable
.public void throwExceptionAbortResponse(Throwable t)
t
- Either RuntimeException
or Error
public void abortResponse(Packet response)
response
- The response that is being abortedpublic void invokeAsync(Tube next, Packet p)
next
- The next tube in the tubelinep
- The request to pass to the next tubepublic void suspend()
resumed
, return the response processing.
public void suspend(Runnable onExitRunnable)
Thread
exits the fiber's control loop, the onExitRunnable will be invoked. This Runnable
may call Fiber.resume(Packet)
; however it is still guaranteed that the current
Thread will return control, therefore, further processing will be handled on a Thread
from the Executor
. For synchronous cases, the Thread invoking this fiber cannot return
until fiber processing is complete; therefore, the guarantee is only that the onExitRunnable
will be invoked prior to completing the suspension.
public void suspend(Tube next)
resumed
, resume with the
Tube.processRequest(Packet)
on the given next tube.
public void suspend(Tube next, Runnable onExitRunnable)
Thread
exits the fiber's control loop, the onExitRunnable will be invoked. This Runnable
may call Fiber.resume(Packet)
; however it is still guaranteed that the current
fiber will return control, therefore, further processing will be handled on a Thread
from the Executor
. For synchronous cases, the Thread invoking this fiber cannot return
until fiber processing is complete; therefore, the guarantee is only that the onExitRunnable
will be invoked prior to completing the suspension.
Once resumed
, resume with the
Tube.processRequest(Packet)
on the given next tube.
public Tube getNext()
public void setNext(Tube next)
next
- Next tubepublic Packet getPacket()
public Throwable getThrowable()
public String toString()
toString
in class Object
public String getKindString()
kind
in a human readable string, to assist debugging.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |