Package com.sun.xml.ws.handler
Class HandlerTube
- java.lang.Object
-
- com.sun.xml.ws.api.pipe.helper.AbstractTubeImpl
-
- com.sun.xml.ws.api.pipe.helper.AbstractFilterTubeImpl
-
- com.sun.xml.ws.handler.HandlerTube
-
- Direct Known Subclasses:
ClientLogicalHandlerTube
,ClientMessageHandlerTube
,ClientSOAPHandlerTube
,ServerLogicalHandlerTube
,ServerMessageHandlerTube
,ServerSOAPHandlerTube
public abstract class HandlerTube extends AbstractFilterTubeImpl
- Author:
- WS Development team
-
-
Constructor Summary
Constructors Modifier Constructor Description HandlerTube(Tube next, WSDLPort port, WSBinding binding)
HandlerTube(Tube next, HandlerTube cousinTube, WSBinding binding)
protected
HandlerTube(HandlerTube that, TubeCloner cloner)
Copy constructor forTube.copy(TubeCloner)
.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
close(jakarta.xml.ws.handler.MessageContext msgContext)
Calls close on previously invoked handlers.protected void
closeClientsideHandlers(jakarta.xml.ws.handler.MessageContext msgContext)
Called by close(MessageContext mc) in a Client Handlertubeprotected void
closeServersideHandlers(jakarta.xml.ws.handler.MessageContext msgContext)
Called by close(MessageContext mc) in a Server Handlertubeprotected WSBinding
getBinding()
protected void
initiateClosing(jakarta.xml.ws.handler.MessageContext mc)
Must be overridden by HandlerTube that drives other handler tubes for processing a message.boolean
isHandlerChainEmpty()
NextAction
processException(Throwable t)
Default no-op implementation.NextAction
processRequest(Packet request)
Default no-op implementation.NextAction
processResponse(Packet response)
Default no-op implementation.protected void
resetProcessor()
-
Methods inherited from class com.sun.xml.ws.api.pipe.helper.AbstractFilterTubeImpl
preDestroy
-
Methods inherited from class com.sun.xml.ws.api.pipe.helper.AbstractTubeImpl
copy, copy, doInvoke, doInvokeAndForget, doReturnWith, doSuspend, doSuspend, doSuspend, doSuspend, doThrow, doThrow, process
-
-
-
-
Constructor Detail
-
HandlerTube
public HandlerTube(Tube next, HandlerTube cousinTube, WSBinding binding)
-
HandlerTube
protected HandlerTube(HandlerTube that, TubeCloner cloner)
Copy constructor forTube.copy(TubeCloner)
.
-
-
Method Detail
-
getBinding
protected WSBinding getBinding()
-
processRequest
public NextAction processRequest(Packet request)
Description copied from class:AbstractFilterTubeImpl
Default no-op implementation.- Specified by:
processRequest
in interfaceTube
- Overrides:
processRequest
in classAbstractFilterTubeImpl
- Parameters:
request
- The packet that represents a request message. If the packet has a non-null message, it must be a valid unconsumedMessage
. This message represents the SOAP message to be sent as a request.The packet is also allowed to carry no message, which indicates that this is an output-only request. (that's called "solicit", right? - KK)
- Returns:
- A
NextAction
object that represents the next action to be taken by the JAX-WS runtime.
-
processResponse
public NextAction processResponse(Packet response)
Description copied from class:AbstractFilterTubeImpl
Default no-op implementation.- Specified by:
processResponse
in interfaceTube
- Overrides:
processResponse
in classAbstractFilterTubeImpl
- Parameters:
response
- If the packet has a non-null message, it must be a valid unconsumedMessage
. This message represents a response to the request message passed toTube.processRequest(Packet)
earlier.The packet is also allowed to carry no message, which indicates that there was no response. This is used for things like one-way message and/or one-way transports. TODO: exception handling semantics need more discussion
- Returns:
- A
NextAction
object that represents the next action to be taken by the JAX-WS runtime.
-
processException
public NextAction processException(Throwable t)
Description copied from class:AbstractFilterTubeImpl
Default no-op implementation.- Specified by:
processException
in interfaceTube
- Overrides:
processException
in classAbstractFilterTubeImpl
- Returns:
- A
NextAction
object that represents the next action to be taken by the JAX-WS runtime.
-
initiateClosing
protected void initiateClosing(jakarta.xml.ws.handler.MessageContext mc)
Must be overridden by HandlerTube that drives other handler tubes for processing a message. On Client-side: ClientLogicalHandlerTube drives the Handler Processing. On Server-side: In case SOAP Binding, ServerMessageHandlerTube drives the Handler Processing. In case XML/HTTP Binding, ServerLogicalHandlerTube drives the Handler Processing. If its a top HandlerTube, should override by calling #close(MessaggeContext);
-
close
public final void close(jakarta.xml.ws.handler.MessageContext msgContext)
Calls close on previously invoked handlers. Also, Cleans up any state left over in the Tube instance from the current invocation, as Tube instances can be reused after the completion of MEP. On Client, SOAPHandlers are closed first and then LogicalHandlers On Server, LogicalHandlers are closed first and then SOAPHandlers
-
closeClientsideHandlers
protected void closeClientsideHandlers(jakarta.xml.ws.handler.MessageContext msgContext)
Called by close(MessageContext mc) in a Client Handlertube
-
closeServersideHandlers
protected void closeServersideHandlers(jakarta.xml.ws.handler.MessageContext msgContext)
Called by close(MessageContext mc) in a Server Handlertube
-
resetProcessor
protected void resetProcessor()
-
isHandlerChainEmpty
public final boolean isHandlerChainEmpty()
-
-