Class Stubs
This class provides various methods to create "stub"s,
which are the component that turns a method invocation
into a Message and back into a return value.
This class is meant to serve as the API from JAX-WS to Tango, so that they don't have hard-code dependency on our implementation classes.
Common Parameters and Their Meanings
Pipe next
Stubs turn a method invocation into a Pipe.process(com.sun.xml.ws.api.message.Packet) invocation,
and this pipe passed in as the next parameter will receive a Message
from newly created stub. All the methods taking Tube <<next>> parameter are deprecated. JAX-WS Runtime takes care of
creating the tubeline when the next parameter is not passed. This gives flexibility for the JAX-WS Runtime
to pass extra information during the tube line creation via ClientTubeAssemblerContext.
WSPortInfo portInfo
Gives information about the port for which the "stub" being created. Such information includes Port QName, target endpoint address, and bindingId etc.
BindingImpl binding
Stubs implement BindingProvider, and its BindingProvider.getBinding()
will return this binding object. Stubs often also use this information
to decide which SOAP version a Message should be created in.
WSService service
This object represents a Service that owns the newly created stub.
For example, asynchronous method invocation will use Service.getExecutor().
WSEndpointReference epr
If you want the created Dispatch to talk to the given EPR, specify the parameter.
Otherwise leave it null. Note that the addressing needs to be enabled separately
for this to take effect.
- Author:
- Kohsuke Kawaguchi, Kathy Walsh
-
Method Summary
Modifier and TypeMethodDescriptionstatic Dispatch<jakarta.activation.DataSource>createDataSourceDispatch(WSPortInfo portInfo, WSBinding binding, Service.Mode mode, WSEndpointReference epr) Creates a newDispatchstub forDataSource.static Dispatch<jakarta.activation.DataSource>createDataSourceDispatch(QName portName, WSService owner, WSBinding binding, Service.Mode mode, Tube next, WSEndpointReference epr) Deprecated.static <T> Dispatch<T>createDispatch(WSPortInfo portInfo, WSService owner, WSBinding binding, Class<T> clazz, Service.Mode mode, WSEndpointReference epr) Creates a newDispatchstub that connects to the given pipe.static <T> Dispatch<T>createDispatch(QName portName, WSService owner, WSBinding binding, Class<T> clazz, Service.Mode mode, Tube next, WSEndpointReference epr) Creates a newDispatchstub that connects to the given pipe.createJAXBDispatch(WSPortInfo portInfo, WSBinding binding, jakarta.xml.bind.JAXBContext jaxbContext, Service.Mode mode, WSEndpointReference epr) Creates a new JAXB-basedDispatchstub that connects to the given pipe.createJAXBDispatch(QName portName, WSService owner, WSBinding binding, jakarta.xml.bind.JAXBContext jaxbContext, Service.Mode mode, Tube next, WSEndpointReference epr) Deprecated.createMessageDispatch(WSPortInfo portInfo, WSBinding binding, WSEndpointReference epr) createMessageDispatch(QName portName, WSService owner, WSBinding binding, Tube next, WSEndpointReference epr) Deprecated.createPacketDispatch(WSPortInfo portInfo, WSBinding binding, WSEndpointReference epr) createPacketDispatch(QName portName, WSService owner, WSBinding binding, Tube next, WSEndpointReference epr) <T> TcreatePortProxy(WSPortInfo portInfo, WSBinding binding, SEIModel model, Class<T> portInterface, WSEndpointReference epr) Creates a new strongly-typed proxy object that implements a given port interface.<T> TcreatePortProxy(WSService service, WSBinding binding, SEIModel model, Class<T> portInterface, Tube next, WSEndpointReference epr) Creates a new strongly-typed proxy object that implements a given port interface.static Dispatch<SOAPMessage>createSAAJDispatch(WSPortInfo portInfo, WSBinding binding, Service.Mode mode, WSEndpointReference epr) Creates a newDispatchstub forSOAPMessage.static Dispatch<SOAPMessage>createSAAJDispatch(QName portName, WSService owner, WSBinding binding, Service.Mode mode, Tube next, WSEndpointReference epr) Deprecated.createSourceDispatch(WSPortInfo portInfo, WSBinding binding, Service.Mode mode, WSEndpointReference epr) createSourceDispatch(QName portName, WSService owner, WSBinding binding, Service.Mode mode, Tube next, WSEndpointReference epr) Deprecated.
-
Method Details
-
createSAAJDispatch
@Deprecated public static Dispatch<SOAPMessage> createSAAJDispatch(QName portName, WSService owner, WSBinding binding, Service.Mode mode, Tube next, @Nullable WSEndpointReference epr) Deprecated.Creates a newDispatchstub forSOAPMessage. This is short-cut of callingcreateDispatch(port,owner,binding,SOAPMessage.class,mode,next);
-
createSAAJDispatch
public static Dispatch<SOAPMessage> createSAAJDispatch(WSPortInfo portInfo, WSBinding binding, Service.Mode mode, @Nullable WSEndpointReference epr) Creates a newDispatchstub forSOAPMessage. This is short-cut of callingcreateDispatch(port,owner,binding,SOAPMessage.class,mode,next);
-
createDataSourceDispatch
@Deprecated public static Dispatch<jakarta.activation.DataSource> createDataSourceDispatch(QName portName, WSService owner, WSBinding binding, Service.Mode mode, Tube next, @Nullable WSEndpointReference epr) Deprecated.Creates a newDispatchstub forDataSource. This is short-cut of callingcreateDispatch(port,owner,binding,DataSource.class,mode,next);
-
createDataSourceDispatch
public static Dispatch<jakarta.activation.DataSource> createDataSourceDispatch(WSPortInfo portInfo, WSBinding binding, Service.Mode mode, @Nullable WSEndpointReference epr) Creates a newDispatchstub forDataSource. This is short-cut of callingcreateDispatch(port,owner,binding,DataSource.class,mode,next);
-
createSourceDispatch
@Deprecated public static Dispatch<Source> createSourceDispatch(QName portName, WSService owner, WSBinding binding, Service.Mode mode, Tube next, @Nullable WSEndpointReference epr) Deprecated. -
createSourceDispatch
public static Dispatch<Source> createSourceDispatch(WSPortInfo portInfo, WSBinding binding, Service.Mode mode, @Nullable WSEndpointReference epr) -
createDispatch
public static <T> Dispatch<T> createDispatch(QName portName, WSService owner, WSBinding binding, Class<T> clazz, Service.Mode mode, Tube next, @Nullable WSEndpointReference epr) Creates a newDispatchstub that connects to the given pipe.- Parameters:
portName- seeService.createDispatch(QName, Class, Service.Mode).owner- see common parametersbinding- see common parametersclazz- Type of theDispatchto be created. SeeService.createDispatch(QName, Class, Service.Mode).mode- The mode of the dispatch. SeeService.createDispatch(QName, Class, Service.Mode).next- see common parametersepr- see common parameters TODO: are these parameters making sense?
-
createDispatch
public static <T> Dispatch<T> createDispatch(WSPortInfo portInfo, WSService owner, WSBinding binding, Class<T> clazz, Service.Mode mode, @Nullable WSEndpointReference epr) Creates a newDispatchstub that connects to the given pipe.- Parameters:
portInfo- see common parametersowner- see common parametersbinding- see common parametersclazz- Type of theDispatchto be created. SeeService.createDispatch(QName, Class, Service.Mode).mode- The mode of the dispatch. SeeService.createDispatch(QName, Class, Service.Mode).epr- see common parameters TODO: are these parameters making sense?
-
createJAXBDispatch
@Deprecated public static Dispatch<Object> createJAXBDispatch(QName portName, WSService owner, WSBinding binding, jakarta.xml.bind.JAXBContext jaxbContext, Service.Mode mode, Tube next, @Nullable WSEndpointReference epr) Deprecated.Creates a new JAXB-basedDispatchstub that connects to the given pipe.- Parameters:
portName- seeService.createDispatch(QName, Class, Service.Mode).owner- see common parametersbinding- see common parametersjaxbContext-JAXBContextused to convert between objects and XML.mode- The mode of the dispatch. SeeService.createDispatch(QName, Class, Service.Mode).next- see common parametersepr- see common parameters
-
createJAXBDispatch
public static Dispatch<Object> createJAXBDispatch(WSPortInfo portInfo, WSBinding binding, jakarta.xml.bind.JAXBContext jaxbContext, Service.Mode mode, @Nullable WSEndpointReference epr) Creates a new JAXB-basedDispatchstub that connects to the given pipe.- Parameters:
portInfo- see common parametersbinding- see common parametersjaxbContext-JAXBContextused to convert between objects and XML.mode- The mode of the dispatch. SeeService.createDispatch(QName, Class, Service.Mode).epr- see common parameters
-
createMessageDispatch
@Deprecated public static Dispatch<Message> createMessageDispatch(QName portName, WSService owner, WSBinding binding, Tube next, @Nullable WSEndpointReference epr) Deprecated.Creates a newMessage-basedDispatchstub that connects to the given pipe. The returned dispatch is alwaysService.Mode.MESSAGE.- Parameters:
portName- seeService.createDispatch(QName, Class, Service.Mode).owner- see common parametersbinding- see common parametersnext- see common parametersepr- see common parameters
-
createMessageDispatch
public static Dispatch<Message> createMessageDispatch(WSPortInfo portInfo, WSBinding binding, @Nullable WSEndpointReference epr) Creates a newMessage-basedDispatchstub that connects to the given pipe. The returned dispatch is alwaysService.Mode.MESSAGE.- Parameters:
portInfo- see common parametersbinding- see common parametersepr- see common parameters
-
createPacketDispatch
public static Dispatch<Packet> createPacketDispatch(QName portName, WSService owner, WSBinding binding, Tube next, @Nullable WSEndpointReference epr) - Parameters:
portName- seeService.createDispatch(QName, Class, Service.Mode).owner- see common parametersbinding- see common parametersnext- see common parametersepr- see common parameters
-
createPacketDispatch
public static Dispatch<Packet> createPacketDispatch(WSPortInfo portInfo, WSBinding binding, @Nullable WSEndpointReference epr) Creates a newMessage-basedDispatchstub that connects to the given pipe. The returned dispatch is alwaysService.Mode.MESSAGE.- Parameters:
portInfo- see common parametersbinding- see common parametersepr- see common parameters
-
createPortProxy
public <T> T createPortProxy(WSService service, WSBinding binding, SEIModel model, Class<T> portInterface, Tube next, @Nullable WSEndpointReference epr) Creates a new strongly-typed proxy object that implements a given port interface.- Parameters:
service- see common parametersbinding- see common parametersmodel- This model shall represent a port interface. TODO: can model be constructed from portInterface and binding? Find out and update.portInterface- The port interface that has operations as Java methods.next- see common parametersepr- see common parameters
-
createPortProxy
public <T> T createPortProxy(WSPortInfo portInfo, WSBinding binding, SEIModel model, Class<T> portInterface, @Nullable WSEndpointReference epr) Creates a new strongly-typed proxy object that implements a given port interface.- Parameters:
portInfo- see common parametersbinding- see common parametersmodel- This model shall represent a port interface. TODO: can model be constructed from portInterface and binding? Find out and update.portInterface- The port interface that has operations as Java methods.epr- see common parameters
-