Interface PipelineAssembler

  • All Known Implementing Classes:
    StandalonePipeAssembler

    public interface PipelineAssembler
    Creates a pipeline.

    This pluggability layer enables the upper layer to control exactly how the pipeline is composed.

    JAX-WS is going to have its own default implementation when used all by itself, but it can be substituted by other implementations.

    See PipelineAssemblerFactory for how PipelineAssemblers are located.

    TODO: the JAX-WS team felt that no Pipe should be relying on the SEIModel, so it is no longer given to the assembler. Talk to us if you need it.

    Author:
    Kohsuke Kawaguchi
    See Also:
    ClientPipeAssemblerContext
    • Method Detail

      • createClient

        @NotNull
        Pipe createClient​(@NotNull
                          ClientPipeAssemblerContext context)
        Creates a new pipeline for clients.

        When a JAX-WS client creates a proxy or a Dispatch from a Service, JAX-WS runtime internally uses this method to create a new pipeline as a part of the initilization.

        Parameters:
        context - Object that captures various contextual information that can be used to determine the pipeline to be assembled.
        Returns:
        non-null freshly created pipeline.
        Throws:
        jakarta.xml.ws.WebServiceException - if there's any configuration error that prevents the pipeline from being constructed. This exception will be propagated into the application, so it must have a descriptive error.
      • createServer

        @NotNull
        Pipe createServer​(@NotNull
                          ServerPipeAssemblerContext context)
        Creates a new pipeline for servers.

        When a JAX-WS server deploys a new endpoint, it internally uses this method to create a new pipeline as a part of the initialization.

        Note that this method is called only once to set up a 'master pipeline', and it gets copied from it.

        Parameters:
        context - Object that captures various contextual information that can be used to determine the pipeline to be assembled.
        Returns:
        non-null freshly created pipeline.
        Throws:
        jakarta.xml.ws.WebServiceException - if there's any configuration error that prevents the pipeline from being constructed. This exception will be propagated into the container, so it must have a descriptive error.