/** * Creates a response handler for handling a error response (non 2xx response). */ public HttpResponseHandler<AmazonServiceException> createErrorResponseHandler( JsonErrorResponseMetadata errorResponsMetadata) { return getSdkFactory().createErrorResponseHandler(errorUnmarshallers, errorResponsMetadata .getCustomErrorCodeFieldName()); }
public <T> ProtocolRequestMarshaller<T> createProtocolMarshaller(OperationInfo operationInfo, T origRequest) { return JsonProtocolMarshallerBuilder.<T>standard() .jsonGenerator(createGenerator(operationInfo)) .contentType(getContentType()) .operationInfo(operationInfo) .originalRequest(origRequest) .sendExplicitNullForPayload(false) .build(); }
/** * Returns the response handler to be used for handling a successful response. * * @param operationMetadata Additional context information about an operation to create the appropriate response handler. */ public <T> HttpResponseHandler<AmazonWebServiceResponse<T>> createResponseHandler( JsonOperationMetadata operationMetadata, Unmarshaller<T, JsonUnmarshallerContext> responseUnmarshaller) { return getSdkFactory().createResponseHandler(operationMetadata, responseUnmarshaller); }
@Override public StructuredJsonGenerator createGenerator() { return getSdkFactory().createWriter(getContentType()); }
@Override public void marshall(Integer val, StructuredJsonGenerator jsonGenerator, JsonMarshallerContext context, MarshallingInfo<Integer> marshallingInfo) { jsonGenerator.writeValue(val); } };
@Override public String getContentType() { return getContentTypeResolver().resolveContentType(metadata); }
@Override public String resolveContentType(JsonClientMetadata metadata) { return metadata.getContentTypeOverride() != null ? metadata.getContentTypeOverride() : prefix + metadata.getProtocolVersion(); } }
/** * If there is not an explicit payload member then we need to start the implicit JSON request object. All * members bound to the payload will be added as fields to this object. */ @Override public void startMarshalling() { if (!hasExplicitPayloadMember) { jsonGenerator.writeStartObject(); } }
@Override protected StructuredJsonGenerator createWriter(JsonFactory jsonFactory, String contentType) { return new SdkJsonGenerator(jsonFactory, contentType); } };
@Override public JsonToken nextToken() throws IOException, JsonParseException { currentToken = doNextToken(); return currentToken; }
@Override public void marshall(T val, StructuredJsonGenerator jsonGenerator, JsonMarshallerContext context, MarshallingInfo<T> marshallingInfo) { toAdapt.marshall(val, jsonGenerator); } };
@Override protected StructuredJsonGenerator createWriter(JsonFactory jsonFactory, String contentType) { return new SdkCborGenerator(jsonFactory, contentType); } };
@Override public void marshall(BigDecimal val, StructuredJsonGenerator jsonGenerator, JsonMarshallerContext context, MarshallingInfo<BigDecimal> marshallingInfo) { jsonGenerator.writeValue(val); } };
@Override public void marshall(Double val, StructuredJsonGenerator jsonGenerator, JsonMarshallerContext context, MarshallingInfo<Double> marshallingInfo) { jsonGenerator.writeValue(val); } };
@Override public void marshall(ByteBuffer val, StructuredJsonGenerator jsonGenerator, JsonMarshallerContext context, MarshallingInfo<ByteBuffer> marshallingInfo) { jsonGenerator.writeValue(val); } };
@Override public void marshall(String val, StructuredJsonGenerator jsonGenerator, JsonMarshallerContext context, MarshallingInfo<String> marshallingInfo) { jsonGenerator.writeValue(val); } };
@Override public void marshall(Long val, StructuredJsonGenerator jsonGenerator, JsonMarshallerContext context, MarshallingInfo<Long> marshallingInfo) { jsonGenerator.writeValue(val); } };
@Override public void marshall(Short val, StructuredJsonGenerator jsonGenerator, JsonMarshallerContext context, MarshallingInfo<Short> marshallingInfo) { jsonGenerator.writeValue(val); } };
@Override public void marshall(Boolean val, StructuredJsonGenerator jsonGenerator, JsonMarshallerContext context, MarshallingInfo<Boolean> marshallingInfo) { jsonGenerator.writeValue(val); } };