@SdkInternalApi
    final GetComputeAccessResult executeGetComputeAccess(GetComputeAccessRequest getComputeAccessRequest) {

        ExecutionContext executionContext = createExecutionContext(getComputeAccessRequest);
        AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
        awsRequestMetrics.startEvent(Field.ClientExecuteTime);
        Request<GetComputeAccessRequest> request = null;
        Response<GetComputeAccessResult> response = null;

        try {
            awsRequestMetrics.startEvent(Field.RequestMarshallTime);
            try {
                request = new GetComputeAccessRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(getComputeAccessRequest));
                // Binds the request metrics to the current request.
                request.setAWSRequestMetrics(awsRequestMetrics);
                request.addHandlerContext(HandlerContextKey.CLIENT_ENDPOINT, endpoint);
                request.addHandlerContext(HandlerContextKey.ENDPOINT_OVERRIDDEN, isEndpointOverridden());
                request.addHandlerContext(HandlerContextKey.SIGNING_REGION, getSigningRegion());
                request.addHandlerContext(HandlerContextKey.SERVICE_ID, "GameLift");
                request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetComputeAccess");
                request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig);

            } finally {
                awsRequestMetrics.endEvent(Field.RequestMarshallTime);
            }

            HttpResponseHandler<AmazonWebServiceResponse<GetComputeAccessResult>> responseHandler = protocolFactory.createResponseHandler(
                    new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new GetComputeAccessResultJsonUnmarshaller());
            response = invoke(request, responseHandler, executionContext);

            return response.getAwsResponse();

        } finally {

            endClientExecution(awsRequestMetrics, request, response);
        }
    }
<p>
<b>This operation has been expanded to use with the Amazon GameLift containers feature, which is currently in
public preview.</b>
</p>
<p>
Requests authorization to remotely connect to a hosting resource in a Amazon GameLift managed fleet. This
operation is not used with Amazon GameLift Anywhere fleets
</p>
<p>
To request access, specify the compute name and the fleet ID. If successful, this operation returns a set of
temporary Amazon Web Services credentials, including a two-part access key and a session token.
</p>
<p>
<b>EC2 fleets</b>
</p>
<p>
With an EC2 fleet (where compute type is <code>EC2</code>), use these credentials with Amazon EC2 Systems Manager
(SSM) to start a session with the compute. For more details, see <a href=
"https://docs.aws.amazon.com/systems-manager/latest/userguide/session-manager-working-with-sessions-start.html#sessions-start-cli"
> Starting a session (CLI)</a> in the <i>Amazon EC2 Systems Manager User Guide</i>.
</p>
<p>
<b>Container fleets</b>
</p>
<p>
With a container fleet (where compute type is <code>CONTAINER</code>), use these credentials and the target value
with SSM to connect to the fleet instance where the container is running. After you're connected to the instance,
use Docker commands to interact with the container.
</p>
<p>
<b>Learn more</b>
</p>
<ul>
<li>
<p>
<a href="https://docs.aws.amazon.com/gamelift/latest/developerguide/fleets-remote-access.html">Remotely connect
to fleet instances</a>
</p>
</li>
<li>
<p>
<a href="https://docs.aws.amazon.com/gamelift/latest/developerguide/fleets-creating-debug.html">Debug fleet
issues</a>
</p>
</li>
<li>
<p>
<a href="https://docs.aws.amazon.com/gamelift/latest/developerguide/containers-remote-access.html"> Remotely
connect to a container fleet</a>
</p>
</li>
</ul>

@param getComputeAccessRequest
@return Result of the GetComputeAccess operation returned by the service.
@throws UnauthorizedException
        The client failed authentication. Clients should not retry such requests.
@throws InvalidRequestException
        One or more parameter values in the request are invalid. Correct the invalid parameter values before
        retrying.
@throws NotFoundException
        THe requested resources was not found. The resource was either not created yet or deleted.
@throws InternalServiceException
        The service encountered an unrecoverable internal failure while processing the request. Clients can retry
        such requests immediately or after a waiting period.
@sample AmazonGameLift.GetComputeAccess
@see <a href="http://docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/GetComputeAccess" target="_top">AWS API
     Documentation</a>
aws-java-sdk-gamelift/src/main/java/com/amazonaws/services/gamelift/AmazonGameLiftClient.java