Interface WSEndpoint.PipeHead

  • Enclosing class:
    WSEndpoint<T>

    public static interface WSEndpoint.PipeHead
    Represents a resource local to a thread. See WSEndpoint class javadoc for more discussion about this.
    • Method Detail

      • process

        @NotNull
        Packet process​(@NotNull
                       Packet request,
                       @Nullable
                       WebServiceContextDelegate wscd,
                       @Nullable
                       TransportBackChannel tbc)
        Processes a request and produces a reply.

        This method takes a Packet that represents a request, run it through a Tubeline, eventually pass it to the user implementation code, which produces a reply, then run that through the pipeline again, and eventually return it as a return value.

        Parameters:
        request - Unconsumed Packet that represents a request.
        wscd - WebServiceContextDelegate to be set to Packet. (we didn't have to take this and instead just ask the caller to set to Packet.webServiceContextDelegate, but that felt too error prone.)
        tbc - TransportBackChannel to be set to Packet. See the wscd parameter javadoc for why this is a parameter. Can be null.
        Returns:
        Unconsumed Packet that represents a reply to the request.
        Throws:
        jakarta.xml.ws.WebServiceException - This method does not throw a WebServiceException. The WSEndpoint must always produce a fault Message for it.
        RuntimeException - A RuntimeException thrown from this method, including WebServiceException, must be treated as a bug in the code (including JAX-WS and all the pipe implementations), not an operator error by the user.

        Therefore, it should be recorded by the caller in a way that allows developers to fix a bug.