Interface RestCollectionCreateView<P extends RestResource,​C extends RestResource,​I>

  • Type Parameters:
    P - type of the parent resource
    C - type of the child resource that is created
    I - type of input the JSON parser will parse the input into.
    All Superinterfaces:
    RestCollectionView<P,​C,​I>, RestView<C>

    public interface RestCollectionCreateView<P extends RestResource,​C extends RestResource,​I>
    extends RestCollectionView<P,​C,​I>
    RestView that supports accepting input and creating a resource.

    The input must be supplied as JSON as the body of the HTTP request. Create views can be invoked by the HTTP methods PUT and POST.

    The RestCreateView is only invoked when the parse method of the RestCollection throws ResourceNotFoundException, and hence the resource doesn't exist yet.

    • Method Detail

      • apply

        Object apply​(P parentResource,
                     IdString id,
                     I input)
              throws Exception
        Process the view operation by creating the resource.
        Parameters:
        parentResource - parent resource of the resource that should be created
        input - input after parsing from request.
        Returns:
        result to return to the client. Use BinaryResult to avoid automatic conversion to JSON.
        Throws:
        RestApiException - if the resource creation is rejected
        Exception - the implementation of the view failed. The exception will be logged and HTTP 500 Internal Server Error will be returned to the client.