public Response handle(
            AuthleteApi api, AuthorizationRequestHandlerSpi spi,
            MultivaluedMap<String, String> parameters)
    {
        try
        {
            // Create a handler.
            AuthorizationRequestHandler handler = new AuthorizationRequestHandler(api, spi);

            // Delegate the task to the handler.
            return handler.handle(parameters);
        }
        catch (WebApplicationException e)
        {
            // An error occurred in the handler.
            onError(e);

            // Convert the error to a Response.
            return e.getResponse();
        }
    }
public Response handle ( AuthleteApi api , AuthorizationRequestHandlerSpi spi , MultivaluedMap < String , String > parameters ) { try { AuthorizationRequestHandler handler = new AuthorizationRequestHandler ( api , spi ) ; return handler . handle ( parameters ) ; } catch ( WebApplicationException e ) { onError ( e ) ; return e . getResponse ( ) ; } }
Handle an authorization request.

<p>
This method internally creates a {@link AuthorizationRequestHandler} instance and
calls its {@link AuthorizationRequestHandler#handle(MultivaluedMap)} method.
Then, this method uses the value returned from the {@code handle()} method
as a response from this method.
</p>

<p>
When {@code AuthorizationRequestHandler.handle()} method raises a {@link
WebApplicationException}, this method calls {@link #onError(WebApplicationException)
onError()} method with the exception. The default implementation of {@code onError()}
calls {@code printStackTrace()} of the exception and does nothing else. You
can override the method as necessary. After calling {@code onError()} method,
this method calls {@code getResponse()} method of the exception and uses the
returned value as a response from this method.
</p>

@param api
An implementation of {@link AuthleteApi}.

@param spi
An implementation of {@link AuthorizationRequestHandlerSpi}.

@param parameters
Request parameters of the authorization request.

@return
A response that should be returned to the client application.