RestApiServlet: Support Rest{Read,Modify}View on the same class
Change-Id: Ib339c92f1b066c2a25947f1b3cd651f3b194e259
This commit is contained in:
@@ -317,15 +317,16 @@ public class RestApiServlet extends HttpServlet {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (viewData.view instanceof RestModifyView<?, ?>) {
|
if (viewData.view instanceof RestReadView<?>
|
||||||
|
&& "GET".equals(req.getMethod())) {
|
||||||
|
result = ((RestReadView<RestResource>) viewData.view).apply(rsrc);
|
||||||
|
} else if (viewData.view instanceof RestModifyView<?, ?>) {
|
||||||
@SuppressWarnings("unchecked")
|
@SuppressWarnings("unchecked")
|
||||||
RestModifyView<RestResource, Object> m =
|
RestModifyView<RestResource, Object> m =
|
||||||
(RestModifyView<RestResource, Object>) viewData.view;
|
(RestModifyView<RestResource, Object>) viewData.view;
|
||||||
|
|
||||||
inputRequestBody = parseRequest(req, inputType(m));
|
inputRequestBody = parseRequest(req, inputType(m));
|
||||||
result = m.apply(rsrc, inputRequestBody);
|
result = m.apply(rsrc, inputRequestBody);
|
||||||
} else if (viewData.view instanceof RestReadView<?>) {
|
|
||||||
result = ((RestReadView<RestResource>) viewData.view).apply(rsrc);
|
|
||||||
} else {
|
} else {
|
||||||
throw new ResourceNotFoundException();
|
throw new ResourceNotFoundException();
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user