Interface RestModifyView<R extends RestResource,​I>

    • Method Detail

      • apply

        Response<?> apply​(R resource,
                          I input)
                   throws AuthException,
                          BadRequestException,
                          ResourceConflictException,
                          Exception
        Process the view operation by altering the resource.

        The value of the returned response is automatically converted to JSON unless it is a BinaryResult.

        The returned response defines the status code that is returned to the client. For RestModifyViews this is usually 200 OK, but other 2XX or 3XX status codes are also possible (e.g. 202 Accepted if a background task was scheduled, 204 No Content if no content is returned, 302 Found for a redirect).

        Throwing a subclass of RestApiException results in a 4XX response to the client. For any other exception the client will get a 500 Internal Server Error response.

        Parameters:
        resource - resource to modify
        input - input after parsing from request
        Returns:
        response to return to the client
        Throws:
        AuthException - the caller is not permitted to access this view.
        BadRequestException - the request was incorrectly specified and cannot be handled by this view.
        ResourceConflictException - the resource state does not permit this view to make the changes at this time.
        Exception - the implementation of the view failed. The exception will be logged and HTTP 500 Internal Server Error will be returned to the client.