Example usage for org.springframework.data.rest.webmvc IncomingRequest getBody

List of usage examples for org.springframework.data.rest.webmvc IncomingRequest getBody

Introduction

In this page you can find the example usage for org.springframework.data.rest.webmvc IncomingRequest getBody.

Prototype

public InputStream getBody() throws IOException 

Source Link

Document

Returns the body of the request.

Usage

From source file:org.springframework.data.rest.webmvc.config.JsonPatchHandler.java

/**
 * Applies the body of the given {@link IncomingRequest} as patch on the given target object.
 * /*from w ww. ja v  a2  s.  c om*/
 * @param request must not be {@literal null}.
 * @param target must not be {@literal null}.
 * @return
 * @throws Exception
 */
public <T> T apply(IncomingRequest request, T target) throws Exception {

    Assert.notNull(request, "Request must not be null!");
    Assert.isTrue(request.isPatchRequest(), "Cannot handle non-PATCH request!");
    Assert.notNull(target, "Target must not be null!");

    if (request.isJsonPatchRequest()) {
        return applyPatch(request.getBody(), target);
    } else {
        return applyMergePatch(request.getBody(), target);
    }
}

From source file:org.springframework.data.rest.webmvc.config.PersistentEntityResourceHandlerMethodArgumentResolver.java

private Object readPutForUpdate(IncomingRequest request, ObjectMapper mapper, Object existingObject) {

    try {//from  ww w .j a  va 2 s .com

        JsonPatchHandler handler = new JsonPatchHandler(mapper, reader);
        JsonNode jsonNode = mapper.readTree(request.getBody());

        return handler.applyPut((ObjectNode) jsonNode, existingObject);

    } catch (Exception o_O) {
        throw new HttpMessageNotReadableException(String.format(ERROR_MESSAGE, existingObject.getClass()), o_O);
    }
}