com.sun.xml.ws.api.pipe
Class ClientTubeAssemblerContext

java.lang.Object
  extended by com.sun.xml.ws.api.pipe.ClientTubeAssemblerContext
Direct Known Subclasses:
ClientPipeAssemblerContext

public class ClientTubeAssemblerContext
extends Object

Factory for well-known Tube implementations that the TubelineAssembler needs to use to satisfy JAX-WS requirements.


Constructor Summary
ClientTubeAssemblerContext(EndpointAddress address, WSDLPort wsdlModel, WSService rootOwner, WSBinding binding)
           
ClientTubeAssemblerContext(EndpointAddress address, WSDLPort wsdlModel, WSService rootOwner, WSBinding binding, Container container)
           
ClientTubeAssemblerContext(EndpointAddress address, WSDLPort wsdlModel, WSService rootOwner, WSBinding binding, Container container, Codec codec)
           
ClientTubeAssemblerContext(EndpointAddress address, WSDLPort wsdlModel, WSService rootOwner, WSBinding binding, Container container, Codec codec, SEIModel seiModel)
           
 
Method Summary
 Tube createClientMUTube(Tube next)
          Creates a Tube that performs SOAP mustUnderstand processing.
 Tube createDumpTube(String name, PrintStream out, Tube next)
          creates a Tube that dumps messages that pass through.
 Tube createHandlerTube(Tube next)
          Creates a Tube that invokes protocol and logical handlers.
 Tube createSecurityTube(Tube next)
          Creates a Tube that adds container specific security
 Tube createTransportTube()
          Creates a transport pipe (for client), which becomes the terminal pipe.
 Tube createValidationTube(Tube next)
          creates a Tube that validates messages against schema
 Tube createWsaTube(Tube next)
          Creates a Tube that invokes protocol and logical handlers.
 EndpointAddress getAddress()
          The endpoint address.
 WSBinding getBinding()
          The binding of the new pipeline to be created.
 Codec getCodec()
          Gets the Codec that is set by setCodec(com.sun.xml.ws.api.pipe.Codec) or the default codec based on the binding.
 Container getContainer()
          Returns the Container in which the client is running
 SEIModel getSEIModel()
          The created pipeline will use seiModel to get java concepts for the endpoint
 WSService getService()
          The pipeline is created for this WSService.
 WSDLPort getWsdlModel()
          The created pipeline will be used to serve this port.
 void setCodec(Codec codec)
          Interception point to change Codec during Tubeline assembly.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ClientTubeAssemblerContext

public ClientTubeAssemblerContext(@NotNull
                                  EndpointAddress address,
                                  @Nullable
                                  WSDLPort wsdlModel,
                                  @NotNull
                                  WSService rootOwner,
                                  @NotNull
                                  WSBinding binding)

ClientTubeAssemblerContext

public ClientTubeAssemblerContext(@NotNull
                                  EndpointAddress address,
                                  @Nullable
                                  WSDLPort wsdlModel,
                                  @NotNull
                                  WSService rootOwner,
                                  @NotNull
                                  WSBinding binding,
                                  @NotNull
                                  Container container)

ClientTubeAssemblerContext

public ClientTubeAssemblerContext(@NotNull
                                  EndpointAddress address,
                                  @Nullable
                                  WSDLPort wsdlModel,
                                  @NotNull
                                  WSService rootOwner,
                                  @NotNull
                                  WSBinding binding,
                                  @NotNull
                                  Container container,
                                  Codec codec)

ClientTubeAssemblerContext

public ClientTubeAssemblerContext(@NotNull
                                  EndpointAddress address,
                                  @Nullable
                                  WSDLPort wsdlModel,
                                  @NotNull
                                  WSService rootOwner,
                                  @NotNull
                                  WSBinding binding,
                                  @NotNull
                                  Container container,
                                  Codec codec,
                                  SEIModel seiModel)
Method Detail

getAddress

@NotNull
public EndpointAddress getAddress()
The endpoint address. Always non-null. This parameter is taken separately from WSDLPort (even though there's WSDLPort.getAddress()) because sometimes WSDL is not available.


getWsdlModel

@Nullable
public WSDLPort getWsdlModel()
The created pipeline will be used to serve this port. Null if the service isn't associated with any port definition in WSDL, and otherwise non-null.


getService

@NotNull
public WSService getService()
The pipeline is created for this WSService. Always non-null. (To be precise, the newly created pipeline is owned by a proxy or a dispatch created from thsi WSService.)


getBinding

@NotNull
public WSBinding getBinding()
The binding of the new pipeline to be created.


getSEIModel

@Nullable
public SEIModel getSEIModel()
The created pipeline will use seiModel to get java concepts for the endpoint

Returns:
Null if the service doesn't have SEI model e.g. Dispatch, and otherwise non-null.

getContainer

public Container getContainer()
Returns the Container in which the client is running

Returns:
Container in which client is running

createDumpTube

public Tube createDumpTube(String name,
                           PrintStream out,
                           Tube next)
creates a Tube that dumps messages that pass through.


createSecurityTube

@NotNull
public Tube createSecurityTube(@NotNull
                                       Tube next)
Creates a Tube that adds container specific security


createWsaTube

public Tube createWsaTube(Tube next)
Creates a Tube that invokes protocol and logical handlers.


createHandlerTube

public Tube createHandlerTube(Tube next)
Creates a Tube that invokes protocol and logical handlers.


createClientMUTube

public Tube createClientMUTube(Tube next)
Creates a Tube that performs SOAP mustUnderstand processing. This pipe should be before HandlerPipes.


createValidationTube

public Tube createValidationTube(Tube next)
creates a Tube that validates messages against schema


createTransportTube

public Tube createTransportTube()
Creates a transport pipe (for client), which becomes the terminal pipe.


getCodec

@NotNull
public Codec getCodec()
Gets the Codec that is set by setCodec(com.sun.xml.ws.api.pipe.Codec) or the default codec based on the binding.

Returns:
codec to be used for web service requests

setCodec

public void setCodec(@NotNull
                     Codec codec)
Interception point to change Codec during Tubeline assembly. The new codec will be used by jax-ws client runtime for encoding/decoding web service request/response messages. The new codec should be used by the transport tubes.

the codec should correctly implement Codec.copy() since it is used while serving requests concurrently.

Parameters:
codec - codec to be used for web service requests