public abstract class InvokerTube<T> extends InvokerTube<Invoker> implements EndpointAwareTube
ProviderInvokerTube
and SEIInvokerTube
.
This hides InstanceResolver
and performs a set up
necessary for WebServiceContext
to correctly.
invoker
Modifier | Constructor and Description |
---|---|
protected |
InvokerTube(Invoker invoker) |
Modifier and Type | Method and Description |
---|---|
AbstractTubeImpl |
copy(TubeCloner cloner)
processRequest() and processResponse() do not share any instance variables
while processing the request.
|
static com.sun.xml.ws.api.message.Packet |
getCurrentPacket()
This method can be called while the user service is servicing the request
synchronously, to obtain the current request packet.
|
protected WSEndpoint |
getEndpoint() |
Invoker |
getInvoker(com.sun.xml.ws.api.message.Packet request)
Returns the
Invoker object that serves the request. |
void |
preDestroy()
Invoked before the last copy of the pipeline is about to be discarded,
to give
Tube s a chance to clean up any resources. |
void |
setEndpoint(WSEndpoint endpoint)
Setter for WSEndpoint holding this tube
|
copy, doInvoke, doInvokeAndForget, doReturnWith, doSuspend, doSuspend, doSuspend, doSuspend, doThrow, doThrow, process
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
processException, processRequest, processResponse
protected InvokerTube(Invoker invoker)
public void setEndpoint(WSEndpoint endpoint)
EndpointAwareTube
setEndpoint
in interface EndpointAwareTube
endpoint
- WSEndpoint holding this tubeprotected WSEndpoint getEndpoint()
@NotNull public final Invoker getInvoker(com.sun.xml.ws.api.message.Packet request)
Invoker
object that serves the request.getInvoker
in interface InvokerSource<Invoker>
getInvoker
in class InvokerTube<Invoker>
request
- Packet for requestpublic final AbstractTubeImpl copy(TubeCloner cloner)
InvokerTube
is stateless and terminal,
so no need to create copies.copy
in interface Tube
copy
in class AbstractTubeImpl
cloner
- Use this object (in particular its TubeCloner.copy(Tube)
method
to clone other pipe references you have
in your pipe. See TubeCloner
for more discussion
about why.Tube
.public void preDestroy()
Tube
Tube
s a chance to clean up any resources.
This can be used to invoke PreDestroy
lifecycle methods
on user handler. The invocation of it is optional on the client side,
but mandatory on the server side.
When multiple copies of pipelines are created, this method is called only on one of them.
preDestroy
in interface Pipe
preDestroy
in interface Tube
@NotNull public static com.sun.xml.ws.api.message.Packet getCurrentPacket()
This is primarily designed for StatefulInstanceResolver
. Use with care.
Copyright © 2015 Oracle Corporation. All rights reserved.