本文整理汇总了Java中com.amazonaws.Response.getAwsResponse方法的典型用法代码示例。如果您正苦于以下问题:Java Response.getAwsResponse方法的具体用法?Java Response.getAwsResponse怎么用?Java Response.getAwsResponse使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类com.amazonaws.Response
的用法示例。
在下文中一共展示了Response.getAwsResponse方法的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: populateAndEndSubsegment
import com.amazonaws.Response; //导入方法依赖的package包/类
private void populateAndEndSubsegment(Subsegment currentSubsegment, Request<?> request, Response<?> response) {
if (null != response) {
String requestId = null;
if (response.getAwsResponse() instanceof AmazonWebServiceResult<?>) { // Not all services return responses extending AmazonWebServiceResult (e.g. S3)
ResponseMetadata metadata = ((AmazonWebServiceResult<?>) response.getAwsResponse()).getSdkResponseMetadata();
if (null != metadata) {
requestId = metadata.getRequestId();
if (null != requestId) {
currentSubsegment.putAws(REQUEST_ID_SUBSEGMENT_KEY, requestId);
}
}
} else if (null != response.getHttpResponse()) { // S3 does not follow request id header convention
if (null != response.getHttpResponse().getHeader(S3_REQUEST_ID_HEADER_KEY)) {
currentSubsegment.putAws(REQUEST_ID_SUBSEGMENT_KEY, response.getHttpResponse().getHeader(S3_REQUEST_ID_HEADER_KEY));
}
if (null != response.getHttpResponse().getHeader(S3_EXTENDED_REQUEST_ID_HEADER_KEY)) {
currentSubsegment.putAws(EXTENDED_REQUEST_ID_SUBSEGMENT_KEY, response.getHttpResponse().getHeader(S3_EXTENDED_REQUEST_ID_HEADER_KEY));
}
}
currentSubsegment.putAllAws(extractResponseParameters(request, response.getAwsResponse()));
currentSubsegment.putAllHttp(extractHttpResponseInformation(response.getHttpResponse()));
}
finalizeSubsegment(request);
}
示例2: invoke
import com.amazonaws.Response; //导入方法依赖的package包/类
private <T> T invoke(HttpMethodName httpMethodName, String resourcePath, Object representation,
HttpResponseHandler<AmazonWebServiceResponse<T>> responseHandler)
throws AmazonClientException {
ExecutionContext executionContext = createExecutionContext();
AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
awsRequestMetrics.startEvent(AWSRequestMetrics.Field.RequestMarshallTime.name());
Request request = buildRequest(httpMethodName, resourcePath, representation);
awsRequestMetrics.endEvent(AWSRequestMetrics.Field.RequestMarshallTime.name());
awsRequestMetrics.startEvent(AWSRequestMetrics.Field.CredentialsRequestTime.name());
AWSCredentials credentials = awsCredentialsProvider.getCredentials();
awsRequestMetrics.endEvent(AWSRequestMetrics.Field.CredentialsRequestTime.name());
executionContext.setCredentials(credentials);
awsRequestMetrics.startEvent(AWSRequestMetrics.Field.ClientExecuteTime.name());
Response<T> response = client.execute(request, responseHandler, errorResponseHandler, executionContext);
awsRequestMetrics.endEvent(AWSRequestMetrics.Field.ClientExecuteTime.name());
awsRequestMetrics.log();
return response.getAwsResponse();
}
示例3: execute
import com.amazonaws.Response; //导入方法依赖的package包/类
@Override
public <Input, Output> Output execute(
ClientExecutionParams<Input, Output> executionParams) {
final Input input = executionParams.getInput();
ExecutionContext executionContext = createExecutionContext(
executionParams.getRequestConfig());
AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
awsRequestMetrics.startEvent(AWSRequestMetrics.Field.ClientExecuteTime);
Request<Input> request = null;
Response<Output> response = null;
try {
awsRequestMetrics.startEvent(AWSRequestMetrics.Field.RequestMarshallTime);
try {
request = executionParams.getMarshaller().marshall(input);
request.setAWSRequestMetrics(awsRequestMetrics);
} finally {
awsRequestMetrics.endEvent(AWSRequestMetrics.Field.RequestMarshallTime);
}
response = invoke(request,
executionParams.getRequestConfig(),
executionContext,
executionParams.getResponseHandler(),
executionParams.getErrorResponseHandler());
return response.getAwsResponse();
} finally {
endClientExecution(awsRequestMetrics,
executionParams.getRequestConfig(),
request,
response);
}
}
示例4: afterResponse
import com.amazonaws.Response; //导入方法依赖的package包/类
@SuppressWarnings("deprecation")
@Override
public void afterResponse(Request<?> request, Response<?> response) {
AWSRequestMetrics awsRequestMetrics = request == null ? null : request
.getAWSRequestMetrics();
Object awsResponse = response == null ? null : response
.getAwsResponse();
TimingInfo timingInfo = awsRequestMetrics == null ? null
: awsRequestMetrics.getTimingInfo();
old.afterResponse(request, awsResponse, timingInfo);
}
示例5: perform
import com.amazonaws.Response; //导入方法依赖的package包/类
/**
* Perform this request.
*/
@Override
public T perform() {
final Response<T> rsp = new AmazonHttpClient(new ClientConfiguration())
.requestExecutionBuilder()
.executionContext(new ExecutionContext(true))
.request(this.request)
.errorResponseHandler(this.errHandler)
.execute(this.respHandler);
return rsp.getAwsResponse();
}
示例6: createSpeech
import com.amazonaws.Response; //导入方法依赖的package包/类
@Override
public CreateSpeechResult createSpeech(CreateSpeechRequest createSpeechRequest) throws AmazonServiceException,
AmazonClientException {
ExecutionContext executionContext = createExecutionContext(createSpeechRequest);
Request<CreateSpeechRequest> request = CreateSpeechRequestMarshallerFactory.getMarshaller(
createSpeechRequest.getMethodType()).marshall(createSpeechRequest);
CreateSpeechResultUnmarshaller unmarshaller = new CreateSpeechResultUnmarshaller();
StreamResponseHandler<CreateSpeechResult> responseHandler =
new StreamResponseHandler<CreateSpeechResult>(unmarshaller);
Response<CreateSpeechResult> response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
}
示例7: listVoices
import com.amazonaws.Response; //导入方法依赖的package包/类
@Override
public ListVoicesResult listVoices(ListVoicesRequest listVoicesRequest) throws AmazonServiceException,
AmazonClientException {
ExecutionContext executionContext = createExecutionContext(listVoicesRequest);
Request<ListVoicesRequest> request = ListVoicesRequestMarshallerFactory.getMarshaller(
listVoicesRequest.getMethodType()).marshall(listVoicesRequest);
Unmarshaller<ListVoicesResult, JsonUnmarshallerContext> unmarshaller = new ListVoicesResultJsonUnmarshaller();
JsonResponseHandler<ListVoicesResult> responseHandler =
new JsonResponseHandler<ListVoicesResult>(unmarshaller);
Response<ListVoicesResult> response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
}
示例8: getLexicon
import com.amazonaws.Response; //导入方法依赖的package包/类
@Override
public GetLexiconResult getLexicon(GetLexiconRequest getLexiconRequest)
throws AmazonServiceException, AmazonClientException {
ExecutionContext executionContext = createExecutionContext(getLexiconRequest);
GetLexiconRequestMarshaller marshaller = new GetLexiconPostRequestMarshaller();
Request<GetLexiconRequest> request = marshaller.marshall(getLexiconRequest);
Unmarshaller<GetLexiconResult, JsonUnmarshallerContext> unmarshaller = new GetLexiconResultJsonUnmarshaller();
JsonResponseHandler<GetLexiconResult> responseHandler = new JsonResponseHandler<GetLexiconResult>(unmarshaller);
Response<GetLexiconResult> response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
}
示例9: listLexicons
import com.amazonaws.Response; //导入方法依赖的package包/类
@Override
public ListLexiconsResult listLexicons() {
ListLexiconsRequest listLexiconsRequest = new ListLexiconsRequest();
ExecutionContext executionContext = createExecutionContext(listLexiconsRequest);
ListLexiconsRequestMarshaller marshaller = new ListLexiconsPostRequestMarshaller();
Request<ListLexiconsRequest> request = marshaller.marshall(listLexiconsRequest);
Unmarshaller<ListLexiconsResult, JsonUnmarshallerContext> unmarshaller =
new ListLexiconsResultJsonUnmarshaller();
JsonResponseHandler<ListLexiconsResult> responseHandler =
new JsonResponseHandler<ListLexiconsResult>(unmarshaller);
Response<ListLexiconsResult> response = invoke(request, responseHandler, executionContext);
return response.getAwsResponse();
}
示例10: afterResponse
import com.amazonaws.Response; //导入方法依赖的package包/类
@Override
public void afterResponse(Request<?> request, Response<?> response)
{
/*
* The following is a hit and miss for multi-threaded clients as the
* cache size is only 50 entries
*/
String awsRequestId = dynamoDBClient.getCachedResponseMetadata(request.getOriginalRequest()).getRequestId();
logger.info("AWS RequestID: " + awsRequestId);
/*
* Here you could inspect and alter the response object to see how your
* application behaves for specific data
*/
if (request.getOriginalRequest() instanceof GetItemRequest)
{
GetItemResult result = (GetItemResult) response.getAwsResponse();
Map<String, AttributeValue> item = result.getItem();
if (item.get("name").getS().equals("Airplane"))
{
// Alter the item
item.put("name", new AttributeValue("newAirplane"));
item.put("new attr", new AttributeValue("new attr"));
// Add some delay
try
{
Thread.sleep(500);
}
catch (InterruptedException ie)
{
logger.info(ie);
throw new RuntimeException(ie);
}
}
}
}