com.amazonaws.http.JsonResponseHandler类的使用及代码示例

x33g5p2x  于2022-01-21 转载在 其他  
字(9.3k)|赞(0)|评价(0)|浏览(108)

本文整理了Java中com.amazonaws.http.JsonResponseHandler类的一些代码示例,展示了JsonResponseHandler类的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。JsonResponseHandler类的具体详情如下:
包路径:com.amazonaws.http.JsonResponseHandler
类名称:JsonResponseHandler

JsonResponseHandler介绍

[英]Default implementation of HttpResponseHandler that handles a successful response from an AWS service and unmarshalls the result using a JSON unmarshaller.
[中]HttpResponseHandler的默认实现,它处理来自AWS服务的成功响应,并使用JSON解组器解组结果。

代码示例

代码示例来源:origin: aws/aws-sdk-java

@Override
public <T> JsonResponseHandler<T> createResponseHandler(JsonOperationMetadata operationMetadata,
                            Unmarshaller<T, JsonUnmarshallerContext> responseUnmarshaller) {
  return new JsonResponseHandler(responseUnmarshaller, unmarshallers, customTypeMarshallers, jsonFactory,
                  operationMetadata.isHasStreamingSuccessResponse(),
                  operationMetadata.isPayloadJson());
}

代码示例来源:origin: aws/aws-sdk-java

if (shouldParsePayloadAsJson()) {
  jsonParser = jsonFactory.createParser(response.getContent());
  JsonUnmarshallerContext unmarshallerContext = new JsonUnmarshallerContextImpl(
      jsonParser, simpleTypeUnmarshallers, customTypeMarshallers, response);
  registerAdditionalMetadataExpressions(unmarshallerContext);
  if (shouldParsePayloadAsJson() && response.getContent() != null) {
    IOUtils.drainInputStream(response.getContent());
  return awsResponse;
} finally {
  if (shouldParsePayloadAsJson()) {
    try {
      jsonParser.close();

代码示例来源:origin: aws-amplify/aws-sdk-android

@Test
public void testHandleWithCRC32() throws Exception {
  ByteArrayInputStream bais = new ByteArrayInputStream(
      "{\"key\" :\"Content\"}".getBytes(StringUtils.UTF8));
  CRC32 crc32 = new CRC32();
  crc32.update("{\"key\" :\"Content\"}".getBytes(StringUtils.UTF8));
  HttpResponse response = new HttpResponse.Builder().statusText("testResponse")
      .statusCode(200).header("testKey", "testValue")
      .header("x-amz-crc32", String.valueOf(crc32.getValue())).content(bais).build();
  Unmarshaller<String, JsonUnmarshallerContext> unmarshaller = new Unmarshaller<String, JsonUnmarshallerContext>() {
    @Override
    public String unmarshall(JsonUnmarshallerContext in) throws Exception {
      in.getReader().beginObject();
      in.getReader().nextName();
      return in.getReader().nextString();
    }
  };
  JsonResponseHandler<String> toTest = new JsonResponseHandler<String>(unmarshaller);
  // Is a no-op. just adding for code coverage of the no-op
  toTest.registerAdditionalMetadataExpressions(null);
  AmazonWebServiceResponse<String> awsResponse = toTest.handle(response);
  assertEquals(awsResponse.getResult(), "Content");
}

代码示例来源:origin: aws-amplify/aws-sdk-android

@Test
  public void testHandleNeedsConnectionLeftOpen() throws Exception {
    ByteArrayInputStream bais = new ByteArrayInputStream(
        "{\"key\" :\"Content\"}".getBytes(StringUtils.UTF8));
    CRC32 crc32 = new CRC32();
    crc32.update("{\"key\" :\"Content\"}".getBytes(StringUtils.UTF8));
    HttpResponse response = new HttpResponse.Builder().statusText("testResponse")
        .statusCode(200).header("testKey", "testValue").content(bais).build();

    final List<InputStream> capture = new ArrayList<InputStream>();

    Unmarshaller<String, JsonUnmarshallerContext> unmarshaller = new Unmarshaller<String, JsonUnmarshallerContext>() {

      @Override
      public String unmarshall(JsonUnmarshallerContext in) throws Exception {
        capture.add(in.getHttpResponse().getContent());
        return "OpenConnection";
      }

    };

    JsonResponseHandler<String> toTest = new JsonResponseHandler<String>(unmarshaller);
    toTest.needsConnectionLeftOpen = true;
    assertTrue(toTest.needsConnectionLeftOpen());

    AmazonWebServiceResponse<String> awsResponse = toTest.handle(response);
    assertEquals(awsResponse.getResult(), "OpenConnection");
    assertSame(capture.get(0), bais);
  }
}

代码示例来源:origin: aws-amplify/aws-sdk-android

@Test
public void testHandleWithNoCRC32() throws Exception {
  ByteArrayInputStream bais = new ByteArrayInputStream(
      "{\"key\" :\"Content\"}".getBytes(StringUtils.UTF8));
  HttpResponse response = new HttpResponse.Builder().statusText("testResponse")
      .statusCode(200).header("testKey", "testValue").content(bais).build();
  Unmarshaller<String, JsonUnmarshallerContext> unmarshaller = new Unmarshaller<String, JsonUnmarshallerContext>() {
    @Override
    public String unmarshall(JsonUnmarshallerContext in) throws Exception {
      in.getReader().beginObject();
      in.getReader().nextName();
      return in.getReader().nextString();
    }
  };
  JsonResponseHandler<String> toTest = new JsonResponseHandler<String>(unmarshaller);
  AmazonWebServiceResponse<String> awsResponse = toTest.handle(response);
  assertEquals(awsResponse.getResult(), "Content");
}

代码示例来源:origin: aws-amplify/aws-sdk-android

@Test
public void testHandleWithNullContent() throws Exception {
  HttpResponse response = new HttpResponse.Builder().statusText("testResponse")
      .statusCode(200).header("testKey", "testValue").content(null).build();
  Unmarshaller<String, JsonUnmarshallerContext> unmarshaller = new Unmarshaller<String, JsonUnmarshallerContext>() {
    @Override
    public String unmarshall(JsonUnmarshallerContext in) throws Exception {
      in.getReader().beginObject();
      assertFalse(in.getReader().hasNext());
      return "NullContent";
    }
  };
  JsonResponseHandler<String> toTest = new JsonResponseHandler<String>(unmarshaller);
  AmazonWebServiceResponse<String> awsResponse = toTest.handle(response);
  assertEquals(awsResponse.getResult(), "NullContent");
}

代码示例来源:origin: com.amazonaws/aws-java-sdk-core

@Override
public <T> JsonResponseHandler<T> createResponseHandler(JsonOperationMetadata operationMetadata,
                            Unmarshaller<T, JsonUnmarshallerContext> responseUnmarshaller) {
  return new JsonResponseHandler(responseUnmarshaller, unmarshallers, customTypeMarshallers, jsonFactory,
                  operationMetadata.isHasStreamingSuccessResponse(),
                  operationMetadata.isPayloadJson());
}

代码示例来源:origin: com.amazonaws/aws-java-sdk-core

if (shouldParsePayloadAsJson()) {
  jsonParser = jsonFactory.createParser(response.getContent());
  JsonUnmarshallerContext unmarshallerContext = new JsonUnmarshallerContextImpl(
      jsonParser, simpleTypeUnmarshallers, customTypeMarshallers, response);
  registerAdditionalMetadataExpressions(unmarshallerContext);
  if (shouldParsePayloadAsJson() && response.getContent() != null) {
    IOUtils.drainInputStream(response.getContent());
  return awsResponse;
} finally {
  if (shouldParsePayloadAsJson()) {
    try {
      jsonParser.close();

代码示例来源:origin: aws-amplify/aws-sdk-android

awsRequestMetrics.endEvent(Field.RequestMarshallTime);
  JsonResponseHandler<Void> responseHandler = new JsonResponseHandler<Void>(null);
  invoke(request, responseHandler, executionContext);
} finally {

代码示例来源:origin: aws-amplify/aws-sdk-android

awsRequestMetrics.endEvent(Field.RequestMarshallTime);
  JsonResponseHandler<Void> responseHandler = new JsonResponseHandler<Void>(null);
  invoke(request, responseHandler, executionContext);
} finally {

代码示例来源:origin: aws-amplify/aws-sdk-android

awsRequestMetrics.endEvent(Field.RequestMarshallTime);
  JsonResponseHandler<Void> responseHandler = new JsonResponseHandler<Void>(null);
  invoke(request, responseHandler, executionContext);
} finally {

代码示例来源:origin: aws-amplify/aws-sdk-android

awsRequestMetrics.endEvent(Field.RequestMarshallTime);
  JsonResponseHandler<Void> responseHandler = new JsonResponseHandler<Void>(null);
  invoke(request, responseHandler, executionContext);
} finally {

代码示例来源:origin: aws-amplify/aws-sdk-android

awsRequestMetrics.endEvent(Field.RequestMarshallTime);
  JsonResponseHandler<Void> responseHandler = new JsonResponseHandler<Void>(null);
  invoke(request, responseHandler, executionContext);
} finally {

代码示例来源:origin: aws-amplify/aws-sdk-android

awsRequestMetrics.endEvent(Field.RequestMarshallTime);
  JsonResponseHandler<Void> responseHandler = new JsonResponseHandler<Void>(null);
  invoke(request, responseHandler, executionContext);
} finally {

代码示例来源:origin: aws-amplify/aws-sdk-android

awsRequestMetrics.endEvent(Field.RequestMarshallTime);
  JsonResponseHandler<Void> responseHandler = new JsonResponseHandler<Void>(null);
  invoke(request, responseHandler, executionContext);
} finally {

代码示例来源:origin: aws-amplify/aws-sdk-android

awsRequestMetrics.endEvent(Field.RequestMarshallTime);
  JsonResponseHandler<Void> responseHandler = new JsonResponseHandler<Void>(null);
  invoke(request, responseHandler, executionContext);
} finally {

代码示例来源:origin: aws-amplify/aws-sdk-android

awsRequestMetrics.endEvent(Field.RequestMarshallTime);
  JsonResponseHandler<Void> responseHandler = new JsonResponseHandler<Void>(null);
  invoke(request, responseHandler, executionContext);
} finally {

代码示例来源:origin: aws-amplify/aws-sdk-android

awsRequestMetrics.endEvent(Field.RequestMarshallTime);
  JsonResponseHandler<Void> responseHandler = new JsonResponseHandler<Void>(null);
  invoke(request, responseHandler, executionContext);
} finally {

代码示例来源:origin: aws-amplify/aws-sdk-android

awsRequestMetrics.endEvent(Field.RequestMarshallTime);
  JsonResponseHandler<Void> responseHandler = new JsonResponseHandler<Void>(null);
  invoke(request, responseHandler, executionContext);
} finally {

代码示例来源:origin: aws-amplify/aws-sdk-android

awsRequestMetrics.endEvent(Field.RequestMarshallTime);
  JsonResponseHandler<Void> responseHandler = new JsonResponseHandler<Void>(null);
  invoke(request, responseHandler, executionContext);
} finally {

相关文章