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 Details

    • 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.