Package org.jboss.resteasy.spi

## Interface ConstructorInjector

- All Known Implementing Classes:
    `CdiConstructorInjector`, `ConstructorInjectorImpl`

      public interface ConstructorInjector

  Version:
    $Revision: 1 $
  Author:
    Bill Burke

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `Object` | `construct​(boolean unwrapAsync)` | Construct outside the scope of an HTTP request.
    `Object` | `construct​(HttpRequest request, HttpResponse response, boolean unwrapAsync)` | Construct inside the scope of an HTTP request.
    `Object` | `injectableArguments​(boolean unwrapAsync)` | Create an arguments list from injectable tings outside the scope of an HTTP request.
    `Object` | `injectableArguments​(HttpRequest request, HttpResponse response, boolean unwrapAsync)` | Create an argument list inside the scope of an HTTP request.

- - ### Method Detail

    - #### construct

          Object construct​(boolean unwrapAsync)

      Construct outside the scope of an HTTP request. Useful for singleton factories.
      Parameters:
        `unwrapAsync` - unwrap async
      Returns:
        constructed object or a CompletionStage

    - #### construct

          Object construct​(HttpRequest request,
                           HttpResponse response,
                           boolean unwrapAsync)
                    throws Failure,
                           javax.ws.rs.WebApplicationException,
                           ApplicationException

      Construct inside the scope of an HTTP request.
      Parameters:
        `request` - http request
        `response` - http response
        `unwrapAsync` - unwrap async
      Returns:
        constructed object or a CompletionStage
      Throws:
        `Failure` - if failure occurred
        `javax.ws.rs.WebApplicationException` - if application exception occurred
        `ApplicationException` - if application exception occurred

    - #### injectableArguments

          Object injectableArguments​(boolean unwrapAsync)

      Create an arguments list from injectable tings outside the scope of an HTTP request. Useful for singleton factories in cases where the resource factory wants to allocate the object itself, but wants resteasy to populate the arguments.
      Parameters:
        `unwrapAsync` - unwrap async
      Returns:
        array of arguments or a CompletionStage if args is async

    - #### injectableArguments

          Object injectableArguments​(HttpRequest request,
                                     HttpResponse response,
                                     boolean unwrapAsync)
                              throws Failure

      Create an argument list inside the scope of an HTTP request. Useful in cases where the resource factory wants to allocate the object itself, but wants resteasy to populate the arguments.
      Parameters:
        `request` - http request
        `response` - http response
        `unwrapAsync` - unwrap async
      Returns:
        array of arguments or a CompletionStage if args is async
      Throws:
        `Failure` - if failure occurred