ODataResponsePart process(ODataRequest partRequest, ServiceHandler serviceHandler) { ODataResponse partResponse = executeSingleRequest(partRequest, serviceHandler); addContentID(partRequest, partResponse); return new ODataResponsePart(partResponse, false); }
private BodyBuilder createBody(final List<ODataResponsePart> batchResponses, final String boundary) throws BatchSerializerException { final BodyBuilder builder = new BodyBuilder(); for (final ODataResponsePart part : batchResponses) { builder.append(getDashBoundary(boundary)); if (part.isChangeSet()) { appendChangeSet(part, builder); } else { appendBodyPart(part.getResponses().get(0), builder, false); } } builder.append(getCloseDelimiter(boundary)); return builder; }
private void appendChangeSet(final ODataResponsePart part, final BodyBuilder builder) throws BatchSerializerException { final String changeSetBoundary = generateBoundary("changeset"); appendChangeSetHeader(builder, changeSetBoundary); builder.append(CRLF); for (final ODataResponse response : part.getResponses()) { builder.append(getDashBoundary(changeSetBoundary)); appendBodyPart(response, builder, true); } builder.append(getCloseDelimiter(changeSetBoundary)); }
private void appendChangeSet(final ODataResponsePart part, final BodyBuilder builder) throws BatchSerializerException { final String changeSetBoundary = generateBoundary("changeset"); appendChangeSetHeader(builder, changeSetBoundary); builder.append(CRLF); for (final ODataResponse response : part.getResponses()) { builder.append(getDashBoundary(changeSetBoundary)); appendBodyPart(response, builder, true); } builder.append(getCloseDelimiter(changeSetBoundary)); }
ODataResponsePart process(ODataRequest partRequest, ServiceHandler serviceHandler) { ODataResponse partResponse = executeSingleRequest(partRequest, serviceHandler); addContentID(partRequest, partResponse); return new ODataResponsePart(partResponse, false); }
private BodyBuilder createBody(final List<ODataResponsePart> batchResponses, final String boundary) throws BatchSerializerException { final BodyBuilder builder = new BodyBuilder(); for (final ODataResponsePart part : batchResponses) { builder.append(getDashBoundary(boundary)); if (part.isChangeSet()) { appendChangeSet(part, builder); } else { appendBodyPart(part.getResponses().get(0), builder, false); } } builder.append(getCloseDelimiter(boundary)); return builder; }
txnId = handler.startTransaction(); partResponse = processChangeSet(part, handler); if (partResponse.getResponses().get(0).getStatusCode() > 400) { handler.rollback(txnId); } else { final int statusCode = partResponse.getResponses().get(0).getStatusCode(); if ((statusCode >= 400 && statusCode <= 600) && !continueOnError) { break;
ODataResponsePart processChangeSet(BatchRequestPart partRequest, ServiceHandler serviceHandler) throws BatchDeserializerException { List<ODataResponse> changeSetResponses = new ArrayList<ODataResponse>(); // change set need to be a in a atomic operation for (ODataRequest changeSetPartRequest : partRequest.getRequests()) { this.rewriter.replaceReference(changeSetPartRequest); ODataResponse partResponse = executeSingleRequest(changeSetPartRequest, serviceHandler); this.rewriter.addMapping(changeSetPartRequest, partResponse); addContentID(changeSetPartRequest, partResponse); if (partResponse.getStatusCode() < 400) { changeSetResponses.add(partResponse); } else { // 11.7.4 Responding to a Batch Request return new ODataResponsePart(partResponse, false); } } return new ODataResponsePart(changeSetResponses, true); }
txnId = handler.startTransaction(); partResponse = processChangeSet(part, handler); if (partResponse.getResponses().get(0).getStatusCode() > 400) { handler.rollback(txnId); } else { final int statusCode = partResponse.getResponses().get(0).getStatusCode(); if ((statusCode >= 400 && statusCode <= 600) && !continueOnError) { break;
ODataResponsePart processChangeSet(BatchRequestPart partRequest, ServiceHandler serviceHandler) throws BatchDeserializerException { List<ODataResponse> changeSetResponses = new ArrayList<ODataResponse>(); // change set need to be a in a atomic operation for (ODataRequest changeSetPartRequest : partRequest.getRequests()) { this.rewriter.replaceReference(changeSetPartRequest); ODataResponse partResponse = executeSingleRequest(changeSetPartRequest, serviceHandler); this.rewriter.addMapping(changeSetPartRequest, partResponse); addContentID(changeSetPartRequest, partResponse); if (partResponse.getStatusCode() < 400) { changeSetResponses.add(partResponse); } else { // 11.7.4 Responding to a Batch Request return new ODataResponsePart(partResponse, false); } } return new ODataResponsePart(changeSetResponses, true); }
public ODataResponsePart handleBatchRequest(final BatchRequestPart request) throws ODataApplicationException, ODataLibraryException { if (request.isChangeSet()) { return handleChangeSet(request); } else { final ODataResponse response = handle(request.getRequests().get(0), false); return new ODataResponsePart(response, false); } }
public ODataResponsePart handleBatchRequest(final BatchRequestPart request) throws ODataApplicationException, ODataLibraryException { if (request.isChangeSet()) { return handleChangeSet(request); } else { final ODataResponse response = handle(request.getRequests().get(0), false); return new ODataResponsePart(response, false); } }
return new ODataResponsePart(response, false); t.commit(); context.getDebugger().stopRuntimeMeasurement(handle); return new ODataResponsePart(responses, true); } catch (ODataApplicationException e) { t.rollback();