Interface ResourceMethodDispatcher


public interface ResourceMethodDispatcher
A resource method dispatcher responsible for consuming a JAX-RS request by invoking the configured resource method on a given resource instance and returning the method invocation result in a form of a JAX-RS response.
Author:
Marek Potociar, Jakub Podlesak
  • Method Details

    • dispatch

      Response dispatch(Object resource, ContainerRequest request) throws ProcessingException
      Reflectively dispatch a request to the underlying invocable resource method via the configured invocation handler using the provided resource class instance.

      In summary, the main job of the dispatcher is to convert a request into an array of the Java method input parameters and subsequently convert the returned response of an arbitrary Java type to a JAX-RS response instance.

      When the method is invoked, the dispatcher will extract the Java method information from the invocable resource method and use the information to retrieve the required input parameters from either the request instance or any other available run-time information. Once the set of input parameter values is computed, the underlying invocation handler instance is invoked to process (invoke) the Java resource method with the computed input parameter values. The returned response is subsequently converted into a JAX-RS Response type and returned from the dispatcher.

      It is assumed that the supplied resource implements the invocable method. Dispatcher implementation should not need to do any additional checks in that respect.

      Parameters:
      resource - the resource class instance.
      request - request to be dispatched.
      Returns:
      response for the dispatched request.
      Throws:
      ProcessingException - (possibly mappable) container exception that will be handled by the Jersey server container.