@SdkInternalApi final CheckDomainTransferabilityResult executeCheckDomainTransferability(CheckDomainTransferabilityRequest checkDomainTransferabilityRequest) { ExecutionContext executionContext = createExecutionContext(checkDomainTransferabilityRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request<CheckDomainTransferabilityRequest> request = null; Response<CheckDomainTransferabilityResult> response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CheckDomainTransferabilityRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(checkDomainTransferabilityRequest)); // Binds the request metrics to the current request. request.setAWSRequestMetrics(awsRequestMetrics); request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion()); request.addHandlerContext(HandlerContextKey.SERVICE_ID, "Route 53 Domains"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CheckDomainTransferability"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler<AmazonWebServiceResponse<CheckDomainTransferabilityResult>> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new CheckDomainTransferabilityResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } }