Interface RestCollectionModifyView<P extends RestResource,C extends RestResource,I>
-
- Type Parameters:
P
- type of the parent resourceC
- type of the child resourceI
- type of input the JSON parser will parse the input into.
- All Superinterfaces:
RestCollectionView<P,C,I>
,RestView<C>
- All Known Implementing Classes:
AddSshKey
,ChangeEdits.Post
,CreateChange
,DeleteChangeEdit
,PostCaches
,PostReviewers
,RetryingRestCollectionModifyView
public interface RestCollectionModifyView<P extends RestResource,C extends RestResource,I> extends RestCollectionView<P,C,I>
RestView on a RestCollection that supports accepting input.The input must be supplied as JSON as the body of the HTTP request. RestCollectionModifyViews can be invoked by the HTTP methods
POST
andDELETE
(DELETE
is only supported on child collections).
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description Response<?>
apply(P parentResource, I input)
Process the modification on the collection resource.
-
-
-
Method Detail
-
apply
Response<?> apply(P parentResource, I input) throws Exception
Process the modification on the collection 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 RestCollectionModifyViews this is usually
200 OK
, but other 2XX or 3XX status codes are also possible (e.g.201 Created
if a resource was created,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 a500 Internal Server Error
response.- Parameters:
parentResource
- the collection resource on which the modification is done- Returns:
- response to return to the client
- Throws:
Exception
- the implementation of the view failed. The exception will be logged and HTTP 500 Internal Server Error will be returned to the client.
-
-