/* * Copyright 2018-2023 Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with * the License. A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions * and limitations under the License. */ package com.amazonaws.services.nimblestudio; import org.w3c.dom.*; import java.net.*; import java.util.*; import javax.annotation.Generated; import org.apache.commons.logging.*; import com.amazonaws.*; import com.amazonaws.annotation.SdkInternalApi; import com.amazonaws.auth.*; import com.amazonaws.handlers.*; import com.amazonaws.http.*; import com.amazonaws.internal.*; import com.amazonaws.internal.auth.*; import com.amazonaws.metrics.*; import com.amazonaws.regions.*; import com.amazonaws.transform.*; import com.amazonaws.util.*; import com.amazonaws.protocol.json.*; import com.amazonaws.util.AWSRequestMetrics.Field; import com.amazonaws.annotation.ThreadSafe; import com.amazonaws.client.AwsSyncClientParams; import com.amazonaws.client.builder.AdvancedConfig; import com.amazonaws.services.nimblestudio.AmazonNimbleStudioClientBuilder; import com.amazonaws.services.nimblestudio.waiters.AmazonNimbleStudioWaiters; import com.amazonaws.AmazonServiceException; import com.amazonaws.services.nimblestudio.model.*; import com.amazonaws.services.nimblestudio.model.transform.*; /** * Client for accessing AmazonNimbleStudio. All service calls made using this client are blocking, and will not return * until the service call completes. *

*

* Welcome to the Amazon Nimble Studio API reference. This API reference provides methods, schema, resources, * parameters, and more to help you get the most out of Nimble Studio. *

*

* Nimble Studio is a virtual studio that empowers visual effects, animation, and interactive content teams to create * content securely within a scalable, private cloud service. *

*/ @ThreadSafe @Generated("com.amazonaws:aws-java-sdk-code-generator") public class AmazonNimbleStudioClient extends AmazonWebServiceClient implements AmazonNimbleStudio { /** Provider for AWS credentials. */ private final AWSCredentialsProvider awsCredentialsProvider; private static final Log log = LogFactory.getLog(AmazonNimbleStudio.class); /** Default signing name for the service. */ private static final String DEFAULT_SIGNING_NAME = "nimble"; private volatile AmazonNimbleStudioWaiters waiters; /** Client configuration factory providing ClientConfigurations tailored to this client */ protected static final ClientConfigurationFactory configFactory = new ClientConfigurationFactory(); private final AdvancedConfig advancedConfig; private static final com.amazonaws.protocol.json.SdkJsonProtocolFactory protocolFactory = new com.amazonaws.protocol.json.SdkJsonProtocolFactory( new JsonClientMetadata() .withProtocolVersion("1.1") .withSupportsCbor(false) .withSupportsIon(false) .withContentTypeOverride("application/json") .addErrorMetadata( new JsonErrorShapeMetadata().withErrorCode("ThrottlingException").withExceptionUnmarshaller( com.amazonaws.services.nimblestudio.model.transform.ThrottlingExceptionUnmarshaller.getInstance())) .addErrorMetadata( new JsonErrorShapeMetadata().withErrorCode("ServiceQuotaExceededException").withExceptionUnmarshaller( com.amazonaws.services.nimblestudio.model.transform.ServiceQuotaExceededExceptionUnmarshaller.getInstance())) .addErrorMetadata( new JsonErrorShapeMetadata().withErrorCode("AccessDeniedException").withExceptionUnmarshaller( com.amazonaws.services.nimblestudio.model.transform.AccessDeniedExceptionUnmarshaller.getInstance())) .addErrorMetadata( new JsonErrorShapeMetadata().withErrorCode("ConflictException").withExceptionUnmarshaller( com.amazonaws.services.nimblestudio.model.transform.ConflictExceptionUnmarshaller.getInstance())) .addErrorMetadata( new JsonErrorShapeMetadata().withErrorCode("ResourceNotFoundException").withExceptionUnmarshaller( com.amazonaws.services.nimblestudio.model.transform.ResourceNotFoundExceptionUnmarshaller.getInstance())) .addErrorMetadata( new JsonErrorShapeMetadata().withErrorCode("ValidationException").withExceptionUnmarshaller( com.amazonaws.services.nimblestudio.model.transform.ValidationExceptionUnmarshaller.getInstance())) .addErrorMetadata( new JsonErrorShapeMetadata().withErrorCode("InternalServerErrorException").withExceptionUnmarshaller( com.amazonaws.services.nimblestudio.model.transform.InternalServerErrorExceptionUnmarshaller.getInstance())) .withBaseServiceExceptionClass(com.amazonaws.services.nimblestudio.model.AmazonNimbleStudioException.class)); public static AmazonNimbleStudioClientBuilder builder() { return AmazonNimbleStudioClientBuilder.standard(); } /** * Constructs a new client to invoke service methods on AmazonNimbleStudio using the specified parameters. * *

* All service calls made using this new client object are blocking, and will not return until the service call * completes. * * @param clientParams * Object providing client parameters. */ AmazonNimbleStudioClient(AwsSyncClientParams clientParams) { this(clientParams, false); } /** * Constructs a new client to invoke service methods on AmazonNimbleStudio using the specified parameters. * *

* All service calls made using this new client object are blocking, and will not return until the service call * completes. * * @param clientParams * Object providing client parameters. */ AmazonNimbleStudioClient(AwsSyncClientParams clientParams, boolean endpointDiscoveryEnabled) { super(clientParams); this.awsCredentialsProvider = clientParams.getCredentialsProvider(); this.advancedConfig = clientParams.getAdvancedConfig(); init(); } private void init() { setServiceNameIntern(DEFAULT_SIGNING_NAME); setEndpointPrefix(ENDPOINT_PREFIX); // calling this.setEndPoint(...) will also modify the signer accordingly setEndpoint("nimble.us-east-1.amazonaws.com"); HandlerChainFactory chainFactory = new HandlerChainFactory(); requestHandler2s.addAll(chainFactory.newRequestHandlerChain("/com/amazonaws/services/nimblestudio/request.handlers")); requestHandler2s.addAll(chainFactory.newRequestHandler2Chain("/com/amazonaws/services/nimblestudio/request.handler2s")); requestHandler2s.addAll(chainFactory.getGlobalHandlers()); } /** *

* Accept EULAs. *

* * @param acceptEulasRequest * @return Result of the AcceptEulas operation returned by the service. * @throws ResourceNotFoundException * The specified resource could not be found. * @throws ConflictException * Another operation is in progress. * @throws ThrottlingException * The request throughput limit was exceeded. * @throws ValidationException * One of the parameters in the request is invalid. * @throws AccessDeniedException * You are not authorized to perform this operation. Check your IAM policies, and ensure that you are using * the correct access keys. * @throws InternalServerErrorException * An internal error has occurred. Please retry your request. * @throws ServiceQuotaExceededException * Your current quota does not allow you to perform the request action. You can request increases for some * quotas, and other quotas cannot be increased.

*

* Please use Amazon Web Services Service Quotas to request an increase. * @sample AmazonNimbleStudio.AcceptEulas * @see AWS API * Documentation */ @Override public AcceptEulasResult acceptEulas(AcceptEulasRequest request) { request = beforeClientExecution(request); return executeAcceptEulas(request); } @SdkInternalApi final AcceptEulasResult executeAcceptEulas(AcceptEulasRequest acceptEulasRequest) { ExecutionContext executionContext = createExecutionContext(acceptEulasRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new AcceptEulasRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(acceptEulasRequest)); // 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, "nimble"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "AcceptEulas"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new AcceptEulasResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Create a launch profile. *

* * @param createLaunchProfileRequest * @return Result of the CreateLaunchProfile operation returned by the service. * @throws ResourceNotFoundException * The specified resource could not be found. * @throws ConflictException * Another operation is in progress. * @throws ThrottlingException * The request throughput limit was exceeded. * @throws ValidationException * One of the parameters in the request is invalid. * @throws AccessDeniedException * You are not authorized to perform this operation. Check your IAM policies, and ensure that you are using * the correct access keys. * @throws InternalServerErrorException * An internal error has occurred. Please retry your request. * @throws ServiceQuotaExceededException * Your current quota does not allow you to perform the request action. You can request increases for some * quotas, and other quotas cannot be increased.

*

* Please use Amazon Web Services Service Quotas to request an increase. * @sample AmazonNimbleStudio.CreateLaunchProfile * @see AWS API * Documentation */ @Override public CreateLaunchProfileResult createLaunchProfile(CreateLaunchProfileRequest request) { request = beforeClientExecution(request); return executeCreateLaunchProfile(request); } @SdkInternalApi final CreateLaunchProfileResult executeCreateLaunchProfile(CreateLaunchProfileRequest createLaunchProfileRequest) { ExecutionContext executionContext = createExecutionContext(createLaunchProfileRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateLaunchProfileRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(createLaunchProfileRequest)); // 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, "nimble"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateLaunchProfile"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new CreateLaunchProfileResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a streaming image resource in a studio. *

* * @param createStreamingImageRequest * @return Result of the CreateStreamingImage operation returned by the service. * @throws ResourceNotFoundException * The specified resource could not be found. * @throws ConflictException * Another operation is in progress. * @throws ThrottlingException * The request throughput limit was exceeded. * @throws ValidationException * One of the parameters in the request is invalid. * @throws AccessDeniedException * You are not authorized to perform this operation. Check your IAM policies, and ensure that you are using * the correct access keys. * @throws InternalServerErrorException * An internal error has occurred. Please retry your request. * @throws ServiceQuotaExceededException * Your current quota does not allow you to perform the request action. You can request increases for some * quotas, and other quotas cannot be increased.

*

* Please use Amazon Web Services Service Quotas to request an increase. * @sample AmazonNimbleStudio.CreateStreamingImage * @see AWS * API Documentation */ @Override public CreateStreamingImageResult createStreamingImage(CreateStreamingImageRequest request) { request = beforeClientExecution(request); return executeCreateStreamingImage(request); } @SdkInternalApi final CreateStreamingImageResult executeCreateStreamingImage(CreateStreamingImageRequest createStreamingImageRequest) { ExecutionContext executionContext = createExecutionContext(createStreamingImageRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateStreamingImageRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(createStreamingImageRequest)); // 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, "nimble"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateStreamingImage"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new CreateStreamingImageResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a streaming session in a studio. *

*

* After invoking this operation, you must poll GetStreamingSession until the streaming session is in the * READY state. *

* * @param createStreamingSessionRequest * @return Result of the CreateStreamingSession operation returned by the service. * @throws ResourceNotFoundException * The specified resource could not be found. * @throws ConflictException * Another operation is in progress. * @throws ThrottlingException * The request throughput limit was exceeded. * @throws ValidationException * One of the parameters in the request is invalid. * @throws AccessDeniedException * You are not authorized to perform this operation. Check your IAM policies, and ensure that you are using * the correct access keys. * @throws InternalServerErrorException * An internal error has occurred. Please retry your request. * @throws ServiceQuotaExceededException * Your current quota does not allow you to perform the request action. You can request increases for some * quotas, and other quotas cannot be increased.

*

* Please use Amazon Web Services Service Quotas to request an increase. * @sample AmazonNimbleStudio.CreateStreamingSession * @see AWS * API Documentation */ @Override public CreateStreamingSessionResult createStreamingSession(CreateStreamingSessionRequest request) { request = beforeClientExecution(request); return executeCreateStreamingSession(request); } @SdkInternalApi final CreateStreamingSessionResult executeCreateStreamingSession(CreateStreamingSessionRequest createStreamingSessionRequest) { ExecutionContext executionContext = createExecutionContext(createStreamingSessionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateStreamingSessionRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(createStreamingSessionRequest)); // 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, "nimble"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateStreamingSession"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new CreateStreamingSessionResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a streaming session stream for a streaming session. *

*

* After invoking this API, invoke GetStreamingSessionStream with the returned streamId to poll the resource until * it is in the READY state. *

* * @param createStreamingSessionStreamRequest * @return Result of the CreateStreamingSessionStream operation returned by the service. * @throws ResourceNotFoundException * The specified resource could not be found. * @throws ConflictException * Another operation is in progress. * @throws ThrottlingException * The request throughput limit was exceeded. * @throws ValidationException * One of the parameters in the request is invalid. * @throws AccessDeniedException * You are not authorized to perform this operation. Check your IAM policies, and ensure that you are using * the correct access keys. * @throws InternalServerErrorException * An internal error has occurred. Please retry your request. * @throws ServiceQuotaExceededException * Your current quota does not allow you to perform the request action. You can request increases for some * quotas, and other quotas cannot be increased.

*

* Please use Amazon Web Services Service Quotas to request an increase. * @sample AmazonNimbleStudio.CreateStreamingSessionStream * @see AWS API Documentation */ @Override public CreateStreamingSessionStreamResult createStreamingSessionStream(CreateStreamingSessionStreamRequest request) { request = beforeClientExecution(request); return executeCreateStreamingSessionStream(request); } @SdkInternalApi final CreateStreamingSessionStreamResult executeCreateStreamingSessionStream(CreateStreamingSessionStreamRequest createStreamingSessionStreamRequest) { ExecutionContext executionContext = createExecutionContext(createStreamingSessionStreamRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateStreamingSessionStreamRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(createStreamingSessionStreamRequest)); // 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, "nimble"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateStreamingSessionStream"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new CreateStreamingSessionStreamResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Create a new studio. *

*

* When creating a studio, two IAM roles must be provided: the admin role and the user role. These roles are assumed * by your users when they log in to the Nimble Studio portal. *

*

* The user role must have the AmazonNimbleStudio-StudioUser managed policy attached for the portal to * function properly. *

*

* The admin role must have the AmazonNimbleStudio-StudioAdmin managed policy attached for the portal * to function properly. *

*

* You may optionally specify a KMS key in the StudioEncryptionConfiguration. *

*

* In Nimble Studio, resource names, descriptions, initialization scripts, and other data you provide are always * encrypted at rest using an KMS key. By default, this key is owned by Amazon Web Services and managed on your * behalf. You may provide your own KMS key when calling CreateStudio to encrypt this data using a key * you own and manage. *

*

* When providing an KMS key during studio creation, Nimble Studio creates KMS grants in your account to provide * your studio user and admin roles access to these KMS keys. *

*

* If you delete this grant, the studio will no longer be accessible to your portal users. *

*

* If you delete the studio KMS key, your studio will no longer be accessible. *

* * @param createStudioRequest * @return Result of the CreateStudio operation returned by the service. * @throws ResourceNotFoundException * The specified resource could not be found. * @throws ConflictException * Another operation is in progress. * @throws ThrottlingException * The request throughput limit was exceeded. * @throws ValidationException * One of the parameters in the request is invalid. * @throws AccessDeniedException * You are not authorized to perform this operation. Check your IAM policies, and ensure that you are using * the correct access keys. * @throws InternalServerErrorException * An internal error has occurred. Please retry your request. * @throws ServiceQuotaExceededException * Your current quota does not allow you to perform the request action. You can request increases for some * quotas, and other quotas cannot be increased.

*

* Please use Amazon Web Services Service Quotas to request an increase. * @sample AmazonNimbleStudio.CreateStudio * @see AWS API * Documentation */ @Override public CreateStudioResult createStudio(CreateStudioRequest request) { request = beforeClientExecution(request); return executeCreateStudio(request); } @SdkInternalApi final CreateStudioResult executeCreateStudio(CreateStudioRequest createStudioRequest) { ExecutionContext executionContext = createExecutionContext(createStudioRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateStudioRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(createStudioRequest)); // 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, "nimble"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateStudio"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new CreateStudioResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates a studio component resource. *

* * @param createStudioComponentRequest * @return Result of the CreateStudioComponent operation returned by the service. * @throws ResourceNotFoundException * The specified resource could not be found. * @throws ConflictException * Another operation is in progress. * @throws ThrottlingException * The request throughput limit was exceeded. * @throws ValidationException * One of the parameters in the request is invalid. * @throws AccessDeniedException * You are not authorized to perform this operation. Check your IAM policies, and ensure that you are using * the correct access keys. * @throws InternalServerErrorException * An internal error has occurred. Please retry your request. * @throws ServiceQuotaExceededException * Your current quota does not allow you to perform the request action. You can request increases for some * quotas, and other quotas cannot be increased.

*

* Please use Amazon Web Services Service Quotas to request an increase. * @sample AmazonNimbleStudio.CreateStudioComponent * @see AWS * API Documentation */ @Override public CreateStudioComponentResult createStudioComponent(CreateStudioComponentRequest request) { request = beforeClientExecution(request); return executeCreateStudioComponent(request); } @SdkInternalApi final CreateStudioComponentResult executeCreateStudioComponent(CreateStudioComponentRequest createStudioComponentRequest) { ExecutionContext executionContext = createExecutionContext(createStudioComponentRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new CreateStudioComponentRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(createStudioComponentRequest)); // 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, "nimble"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "CreateStudioComponent"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory .createResponseHandler(new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new CreateStudioComponentResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Permanently delete a launch profile. *

* * @param deleteLaunchProfileRequest * @return Result of the DeleteLaunchProfile operation returned by the service. * @throws ResourceNotFoundException * The specified resource could not be found. * @throws ConflictException * Another operation is in progress. * @throws ThrottlingException * The request throughput limit was exceeded. * @throws ValidationException * One of the parameters in the request is invalid. * @throws AccessDeniedException * You are not authorized to perform this operation. Check your IAM policies, and ensure that you are using * the correct access keys. * @throws InternalServerErrorException * An internal error has occurred. Please retry your request. * @throws ServiceQuotaExceededException * Your current quota does not allow you to perform the request action. You can request increases for some * quotas, and other quotas cannot be increased.

*

* Please use Amazon Web Services Service Quotas to request an increase. * @sample AmazonNimbleStudio.DeleteLaunchProfile * @see AWS API * Documentation */ @Override public DeleteLaunchProfileResult deleteLaunchProfile(DeleteLaunchProfileRequest request) { request = beforeClientExecution(request); return executeDeleteLaunchProfile(request); } @SdkInternalApi final DeleteLaunchProfileResult executeDeleteLaunchProfile(DeleteLaunchProfileRequest deleteLaunchProfileRequest) { ExecutionContext executionContext = createExecutionContext(deleteLaunchProfileRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteLaunchProfileRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(deleteLaunchProfileRequest)); // 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, "nimble"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteLaunchProfile"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DeleteLaunchProfileResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Delete a user from launch profile membership. *

* * @param deleteLaunchProfileMemberRequest * @return Result of the DeleteLaunchProfileMember operation returned by the service. * @throws ResourceNotFoundException * The specified resource could not be found. * @throws ConflictException * Another operation is in progress. * @throws ThrottlingException * The request throughput limit was exceeded. * @throws ValidationException * One of the parameters in the request is invalid. * @throws AccessDeniedException * You are not authorized to perform this operation. Check your IAM policies, and ensure that you are using * the correct access keys. * @throws InternalServerErrorException * An internal error has occurred. Please retry your request. * @throws ServiceQuotaExceededException * Your current quota does not allow you to perform the request action. You can request increases for some * quotas, and other quotas cannot be increased.

*

* Please use Amazon Web Services Service Quotas to request an increase. * @sample AmazonNimbleStudio.DeleteLaunchProfileMember * @see AWS API Documentation */ @Override public DeleteLaunchProfileMemberResult deleteLaunchProfileMember(DeleteLaunchProfileMemberRequest request) { request = beforeClientExecution(request); return executeDeleteLaunchProfileMember(request); } @SdkInternalApi final DeleteLaunchProfileMemberResult executeDeleteLaunchProfileMember(DeleteLaunchProfileMemberRequest deleteLaunchProfileMemberRequest) { ExecutionContext executionContext = createExecutionContext(deleteLaunchProfileMemberRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteLaunchProfileMemberRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(deleteLaunchProfileMemberRequest)); // 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, "nimble"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteLaunchProfileMember"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DeleteLaunchProfileMemberResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Delete streaming image. *

* * @param deleteStreamingImageRequest * @return Result of the DeleteStreamingImage operation returned by the service. * @throws ResourceNotFoundException * The specified resource could not be found. * @throws ConflictException * Another operation is in progress. * @throws ThrottlingException * The request throughput limit was exceeded. * @throws ValidationException * One of the parameters in the request is invalid. * @throws AccessDeniedException * You are not authorized to perform this operation. Check your IAM policies, and ensure that you are using * the correct access keys. * @throws InternalServerErrorException * An internal error has occurred. Please retry your request. * @throws ServiceQuotaExceededException * Your current quota does not allow you to perform the request action. You can request increases for some * quotas, and other quotas cannot be increased.

*

* Please use Amazon Web Services Service Quotas to request an increase. * @sample AmazonNimbleStudio.DeleteStreamingImage * @see AWS * API Documentation */ @Override public DeleteStreamingImageResult deleteStreamingImage(DeleteStreamingImageRequest request) { request = beforeClientExecution(request); return executeDeleteStreamingImage(request); } @SdkInternalApi final DeleteStreamingImageResult executeDeleteStreamingImage(DeleteStreamingImageRequest deleteStreamingImageRequest) { ExecutionContext executionContext = createExecutionContext(deleteStreamingImageRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteStreamingImageRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(deleteStreamingImageRequest)); // 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, "nimble"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteStreamingImage"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DeleteStreamingImageResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes streaming session resource. *

*

* After invoking this operation, use GetStreamingSession to poll the resource until it transitions to a * DELETED state. *

*

* A streaming session will count against your streaming session quota until it is marked DELETED. *

* * @param deleteStreamingSessionRequest * @return Result of the DeleteStreamingSession operation returned by the service. * @throws ResourceNotFoundException * The specified resource could not be found. * @throws ConflictException * Another operation is in progress. * @throws ThrottlingException * The request throughput limit was exceeded. * @throws ValidationException * One of the parameters in the request is invalid. * @throws AccessDeniedException * You are not authorized to perform this operation. Check your IAM policies, and ensure that you are using * the correct access keys. * @throws InternalServerErrorException * An internal error has occurred. Please retry your request. * @throws ServiceQuotaExceededException * Your current quota does not allow you to perform the request action. You can request increases for some * quotas, and other quotas cannot be increased.

*

* Please use Amazon Web Services Service Quotas to request an increase. * @sample AmazonNimbleStudio.DeleteStreamingSession * @see AWS * API Documentation */ @Override public DeleteStreamingSessionResult deleteStreamingSession(DeleteStreamingSessionRequest request) { request = beforeClientExecution(request); return executeDeleteStreamingSession(request); } @SdkInternalApi final DeleteStreamingSessionResult executeDeleteStreamingSession(DeleteStreamingSessionRequest deleteStreamingSessionRequest) { ExecutionContext executionContext = createExecutionContext(deleteStreamingSessionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteStreamingSessionRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(deleteStreamingSessionRequest)); // 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, "nimble"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteStreamingSession"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DeleteStreamingSessionResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Delete a studio resource. *

* * @param deleteStudioRequest * @return Result of the DeleteStudio operation returned by the service. * @throws ResourceNotFoundException * The specified resource could not be found. * @throws ConflictException * Another operation is in progress. * @throws ThrottlingException * The request throughput limit was exceeded. * @throws ValidationException * One of the parameters in the request is invalid. * @throws AccessDeniedException * You are not authorized to perform this operation. Check your IAM policies, and ensure that you are using * the correct access keys. * @throws InternalServerErrorException * An internal error has occurred. Please retry your request. * @throws ServiceQuotaExceededException * Your current quota does not allow you to perform the request action. You can request increases for some * quotas, and other quotas cannot be increased.

*

* Please use Amazon Web Services Service Quotas to request an increase. * @sample AmazonNimbleStudio.DeleteStudio * @see AWS API * Documentation */ @Override public DeleteStudioResult deleteStudio(DeleteStudioRequest request) { request = beforeClientExecution(request); return executeDeleteStudio(request); } @SdkInternalApi final DeleteStudioResult executeDeleteStudio(DeleteStudioRequest deleteStudioRequest) { ExecutionContext executionContext = createExecutionContext(deleteStudioRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteStudioRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(deleteStudioRequest)); // 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, "nimble"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteStudio"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DeleteStudioResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes a studio component resource. *

* * @param deleteStudioComponentRequest * @return Result of the DeleteStudioComponent operation returned by the service. * @throws ResourceNotFoundException * The specified resource could not be found. * @throws ConflictException * Another operation is in progress. * @throws ThrottlingException * The request throughput limit was exceeded. * @throws ValidationException * One of the parameters in the request is invalid. * @throws AccessDeniedException * You are not authorized to perform this operation. Check your IAM policies, and ensure that you are using * the correct access keys. * @throws InternalServerErrorException * An internal error has occurred. Please retry your request. * @throws ServiceQuotaExceededException * Your current quota does not allow you to perform the request action. You can request increases for some * quotas, and other quotas cannot be increased.

*

* Please use Amazon Web Services Service Quotas to request an increase. * @sample AmazonNimbleStudio.DeleteStudioComponent * @see AWS * API Documentation */ @Override public DeleteStudioComponentResult deleteStudioComponent(DeleteStudioComponentRequest request) { request = beforeClientExecution(request); return executeDeleteStudioComponent(request); } @SdkInternalApi final DeleteStudioComponentResult executeDeleteStudioComponent(DeleteStudioComponentRequest deleteStudioComponentRequest) { ExecutionContext executionContext = createExecutionContext(deleteStudioComponentRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteStudioComponentRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(deleteStudioComponentRequest)); // 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, "nimble"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteStudioComponent"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory .createResponseHandler(new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DeleteStudioComponentResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Delete a user from studio membership. *

* * @param deleteStudioMemberRequest * @return Result of the DeleteStudioMember operation returned by the service. * @throws ResourceNotFoundException * The specified resource could not be found. * @throws ConflictException * Another operation is in progress. * @throws ThrottlingException * The request throughput limit was exceeded. * @throws ValidationException * One of the parameters in the request is invalid. * @throws AccessDeniedException * You are not authorized to perform this operation. Check your IAM policies, and ensure that you are using * the correct access keys. * @throws InternalServerErrorException * An internal error has occurred. Please retry your request. * @throws ServiceQuotaExceededException * Your current quota does not allow you to perform the request action. You can request increases for some * quotas, and other quotas cannot be increased.

*

* Please use Amazon Web Services Service Quotas to request an increase. * @sample AmazonNimbleStudio.DeleteStudioMember * @see AWS API * Documentation */ @Override public DeleteStudioMemberResult deleteStudioMember(DeleteStudioMemberRequest request) { request = beforeClientExecution(request); return executeDeleteStudioMember(request); } @SdkInternalApi final DeleteStudioMemberResult executeDeleteStudioMember(DeleteStudioMemberRequest deleteStudioMemberRequest) { ExecutionContext executionContext = createExecutionContext(deleteStudioMemberRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new DeleteStudioMemberRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(deleteStudioMemberRequest)); // 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, "nimble"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "DeleteStudioMember"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new DeleteStudioMemberResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Get EULA. *

* * @param getEulaRequest * @return Result of the GetEula operation returned by the service. * @throws ResourceNotFoundException * The specified resource could not be found. * @throws ConflictException * Another operation is in progress. * @throws ThrottlingException * The request throughput limit was exceeded. * @throws ValidationException * One of the parameters in the request is invalid. * @throws AccessDeniedException * You are not authorized to perform this operation. Check your IAM policies, and ensure that you are using * the correct access keys. * @throws InternalServerErrorException * An internal error has occurred. Please retry your request. * @throws ServiceQuotaExceededException * Your current quota does not allow you to perform the request action. You can request increases for some * quotas, and other quotas cannot be increased.

*

* Please use Amazon Web Services Service Quotas to request an increase. * @sample AmazonNimbleStudio.GetEula * @see AWS API * Documentation */ @Override public GetEulaResult getEula(GetEulaRequest request) { request = beforeClientExecution(request); return executeGetEula(request); } @SdkInternalApi final GetEulaResult executeGetEula(GetEulaRequest getEulaRequest) { ExecutionContext executionContext = createExecutionContext(getEulaRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetEulaRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(getEulaRequest)); // 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, "nimble"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetEula"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler(new JsonOperationMetadata() .withPayloadJson(true).withHasStreamingSuccessResponse(false), new GetEulaResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Get a launch profile. *

* * @param getLaunchProfileRequest * @return Result of the GetLaunchProfile operation returned by the service. * @throws ResourceNotFoundException * The specified resource could not be found. * @throws ConflictException * Another operation is in progress. * @throws ThrottlingException * The request throughput limit was exceeded. * @throws ValidationException * One of the parameters in the request is invalid. * @throws AccessDeniedException * You are not authorized to perform this operation. Check your IAM policies, and ensure that you are using * the correct access keys. * @throws InternalServerErrorException * An internal error has occurred. Please retry your request. * @throws ServiceQuotaExceededException * Your current quota does not allow you to perform the request action. You can request increases for some * quotas, and other quotas cannot be increased.

*

* Please use Amazon Web Services Service Quotas to request an increase. * @sample AmazonNimbleStudio.GetLaunchProfile * @see AWS API * Documentation */ @Override public GetLaunchProfileResult getLaunchProfile(GetLaunchProfileRequest request) { request = beforeClientExecution(request); return executeGetLaunchProfile(request); } @SdkInternalApi final GetLaunchProfileResult executeGetLaunchProfile(GetLaunchProfileRequest getLaunchProfileRequest) { ExecutionContext executionContext = createExecutionContext(getLaunchProfileRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetLaunchProfileRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(getLaunchProfileRequest)); // 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, "nimble"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetLaunchProfile"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new GetLaunchProfileResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Launch profile details include the launch profile resource and summary information of resources that are used by, * or available to, the launch profile. This includes the name and description of all studio components used by the * launch profiles, and the name and description of streaming images that can be used with this launch profile. *

* * @param getLaunchProfileDetailsRequest * @return Result of the GetLaunchProfileDetails operation returned by the service. * @throws ResourceNotFoundException * The specified resource could not be found. * @throws ConflictException * Another operation is in progress. * @throws ThrottlingException * The request throughput limit was exceeded. * @throws ValidationException * One of the parameters in the request is invalid. * @throws AccessDeniedException * You are not authorized to perform this operation. Check your IAM policies, and ensure that you are using * the correct access keys. * @throws InternalServerErrorException * An internal error has occurred. Please retry your request. * @throws ServiceQuotaExceededException * Your current quota does not allow you to perform the request action. You can request increases for some * quotas, and other quotas cannot be increased.

*

* Please use Amazon Web Services Service Quotas to request an increase. * @sample AmazonNimbleStudio.GetLaunchProfileDetails * @see AWS * API Documentation */ @Override public GetLaunchProfileDetailsResult getLaunchProfileDetails(GetLaunchProfileDetailsRequest request) { request = beforeClientExecution(request); return executeGetLaunchProfileDetails(request); } @SdkInternalApi final GetLaunchProfileDetailsResult executeGetLaunchProfileDetails(GetLaunchProfileDetailsRequest getLaunchProfileDetailsRequest) { ExecutionContext executionContext = createExecutionContext(getLaunchProfileDetailsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetLaunchProfileDetailsRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(getLaunchProfileDetailsRequest)); // 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, "nimble"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetLaunchProfileDetails"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new GetLaunchProfileDetailsResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Get a launch profile initialization. *

* * @param getLaunchProfileInitializationRequest * @return Result of the GetLaunchProfileInitialization operation returned by the service. * @throws ResourceNotFoundException * The specified resource could not be found. * @throws ConflictException * Another operation is in progress. * @throws ThrottlingException * The request throughput limit was exceeded. * @throws ValidationException * One of the parameters in the request is invalid. * @throws AccessDeniedException * You are not authorized to perform this operation. Check your IAM policies, and ensure that you are using * the correct access keys. * @throws InternalServerErrorException * An internal error has occurred. Please retry your request. * @throws ServiceQuotaExceededException * Your current quota does not allow you to perform the request action. You can request increases for some * quotas, and other quotas cannot be increased.

*

* Please use Amazon Web Services Service Quotas to request an increase. * @sample AmazonNimbleStudio.GetLaunchProfileInitialization * @see AWS API Documentation */ @Override public GetLaunchProfileInitializationResult getLaunchProfileInitialization(GetLaunchProfileInitializationRequest request) { request = beforeClientExecution(request); return executeGetLaunchProfileInitialization(request); } @SdkInternalApi final GetLaunchProfileInitializationResult executeGetLaunchProfileInitialization(GetLaunchProfileInitializationRequest getLaunchProfileInitializationRequest) { ExecutionContext executionContext = createExecutionContext(getLaunchProfileInitializationRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetLaunchProfileInitializationRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(getLaunchProfileInitializationRequest)); // 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, "nimble"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetLaunchProfileInitialization"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new GetLaunchProfileInitializationResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Get a user persona in launch profile membership. *

* * @param getLaunchProfileMemberRequest * @return Result of the GetLaunchProfileMember operation returned by the service. * @throws ResourceNotFoundException * The specified resource could not be found. * @throws ConflictException * Another operation is in progress. * @throws ThrottlingException * The request throughput limit was exceeded. * @throws ValidationException * One of the parameters in the request is invalid. * @throws AccessDeniedException * You are not authorized to perform this operation. Check your IAM policies, and ensure that you are using * the correct access keys. * @throws InternalServerErrorException * An internal error has occurred. Please retry your request. * @throws ServiceQuotaExceededException * Your current quota does not allow you to perform the request action. You can request increases for some * quotas, and other quotas cannot be increased.

*

* Please use Amazon Web Services Service Quotas to request an increase. * @sample AmazonNimbleStudio.GetLaunchProfileMember * @see AWS * API Documentation */ @Override public GetLaunchProfileMemberResult getLaunchProfileMember(GetLaunchProfileMemberRequest request) { request = beforeClientExecution(request); return executeGetLaunchProfileMember(request); } @SdkInternalApi final GetLaunchProfileMemberResult executeGetLaunchProfileMember(GetLaunchProfileMemberRequest getLaunchProfileMemberRequest) { ExecutionContext executionContext = createExecutionContext(getLaunchProfileMemberRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetLaunchProfileMemberRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(getLaunchProfileMemberRequest)); // 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, "nimble"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetLaunchProfileMember"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new GetLaunchProfileMemberResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Get streaming image. *

* * @param getStreamingImageRequest * @return Result of the GetStreamingImage operation returned by the service. * @throws ResourceNotFoundException * The specified resource could not be found. * @throws ConflictException * Another operation is in progress. * @throws ThrottlingException * The request throughput limit was exceeded. * @throws ValidationException * One of the parameters in the request is invalid. * @throws AccessDeniedException * You are not authorized to perform this operation. Check your IAM policies, and ensure that you are using * the correct access keys. * @throws InternalServerErrorException * An internal error has occurred. Please retry your request. * @throws ServiceQuotaExceededException * Your current quota does not allow you to perform the request action. You can request increases for some * quotas, and other quotas cannot be increased.

*

* Please use Amazon Web Services Service Quotas to request an increase. * @sample AmazonNimbleStudio.GetStreamingImage * @see AWS API * Documentation */ @Override public GetStreamingImageResult getStreamingImage(GetStreamingImageRequest request) { request = beforeClientExecution(request); return executeGetStreamingImage(request); } @SdkInternalApi final GetStreamingImageResult executeGetStreamingImage(GetStreamingImageRequest getStreamingImageRequest) { ExecutionContext executionContext = createExecutionContext(getStreamingImageRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetStreamingImageRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(getStreamingImageRequest)); // 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, "nimble"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetStreamingImage"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new GetStreamingImageResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets StreamingSession resource. *

*

* Invoke this operation to poll for a streaming session state while creating or deleting a session. *

* * @param getStreamingSessionRequest * @return Result of the GetStreamingSession operation returned by the service. * @throws ResourceNotFoundException * The specified resource could not be found. * @throws ConflictException * Another operation is in progress. * @throws ThrottlingException * The request throughput limit was exceeded. * @throws ValidationException * One of the parameters in the request is invalid. * @throws AccessDeniedException * You are not authorized to perform this operation. Check your IAM policies, and ensure that you are using * the correct access keys. * @throws InternalServerErrorException * An internal error has occurred. Please retry your request. * @throws ServiceQuotaExceededException * Your current quota does not allow you to perform the request action. You can request increases for some * quotas, and other quotas cannot be increased.

*

* Please use Amazon Web Services Service Quotas to request an increase. * @sample AmazonNimbleStudio.GetStreamingSession * @see AWS API * Documentation */ @Override public GetStreamingSessionResult getStreamingSession(GetStreamingSessionRequest request) { request = beforeClientExecution(request); return executeGetStreamingSession(request); } @SdkInternalApi final GetStreamingSessionResult executeGetStreamingSession(GetStreamingSessionRequest getStreamingSessionRequest) { ExecutionContext executionContext = createExecutionContext(getStreamingSessionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetStreamingSessionRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(getStreamingSessionRequest)); // 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, "nimble"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetStreamingSession"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new GetStreamingSessionResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets StreamingSessionBackup resource. *

*

* Invoke this operation to poll for a streaming session backup while stopping a streaming session. *

* * @param getStreamingSessionBackupRequest * @return Result of the GetStreamingSessionBackup operation returned by the service. * @throws ResourceNotFoundException * The specified resource could not be found. * @throws ConflictException * Another operation is in progress. * @throws ThrottlingException * The request throughput limit was exceeded. * @throws ValidationException * One of the parameters in the request is invalid. * @throws AccessDeniedException * You are not authorized to perform this operation. Check your IAM policies, and ensure that you are using * the correct access keys. * @throws InternalServerErrorException * An internal error has occurred. Please retry your request. * @sample AmazonNimbleStudio.GetStreamingSessionBackup * @see AWS API Documentation */ @Override public GetStreamingSessionBackupResult getStreamingSessionBackup(GetStreamingSessionBackupRequest request) { request = beforeClientExecution(request); return executeGetStreamingSessionBackup(request); } @SdkInternalApi final GetStreamingSessionBackupResult executeGetStreamingSessionBackup(GetStreamingSessionBackupRequest getStreamingSessionBackupRequest) { ExecutionContext executionContext = createExecutionContext(getStreamingSessionBackupRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetStreamingSessionBackupRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(getStreamingSessionBackupRequest)); // 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, "nimble"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetStreamingSessionBackup"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new GetStreamingSessionBackupResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets a StreamingSessionStream for a streaming session. *

*

* Invoke this operation to poll the resource after invoking CreateStreamingSessionStream. *

*

* After the StreamingSessionStream changes to the READY state, the url property will * contain a stream to be used with the DCV streaming client. *

* * @param getStreamingSessionStreamRequest * @return Result of the GetStreamingSessionStream operation returned by the service. * @throws ResourceNotFoundException * The specified resource could not be found. * @throws ConflictException * Another operation is in progress. * @throws ThrottlingException * The request throughput limit was exceeded. * @throws ValidationException * One of the parameters in the request is invalid. * @throws AccessDeniedException * You are not authorized to perform this operation. Check your IAM policies, and ensure that you are using * the correct access keys. * @throws InternalServerErrorException * An internal error has occurred. Please retry your request. * @throws ServiceQuotaExceededException * Your current quota does not allow you to perform the request action. You can request increases for some * quotas, and other quotas cannot be increased.

*

* Please use Amazon Web Services Service Quotas to request an increase. * @sample AmazonNimbleStudio.GetStreamingSessionStream * @see AWS API Documentation */ @Override public GetStreamingSessionStreamResult getStreamingSessionStream(GetStreamingSessionStreamRequest request) { request = beforeClientExecution(request); return executeGetStreamingSessionStream(request); } @SdkInternalApi final GetStreamingSessionStreamResult executeGetStreamingSessionStream(GetStreamingSessionStreamRequest getStreamingSessionStreamRequest) { ExecutionContext executionContext = createExecutionContext(getStreamingSessionStreamRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetStreamingSessionStreamRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(getStreamingSessionStreamRequest)); // 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, "nimble"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetStreamingSessionStream"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new GetStreamingSessionStreamResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Get a studio resource. *

* * @param getStudioRequest * @return Result of the GetStudio operation returned by the service. * @throws ResourceNotFoundException * The specified resource could not be found. * @throws ConflictException * Another operation is in progress. * @throws ThrottlingException * The request throughput limit was exceeded. * @throws ValidationException * One of the parameters in the request is invalid. * @throws AccessDeniedException * You are not authorized to perform this operation. Check your IAM policies, and ensure that you are using * the correct access keys. * @throws InternalServerErrorException * An internal error has occurred. Please retry your request. * @throws ServiceQuotaExceededException * Your current quota does not allow you to perform the request action. You can request increases for some * quotas, and other quotas cannot be increased.

*

* Please use Amazon Web Services Service Quotas to request an increase. * @sample AmazonNimbleStudio.GetStudio * @see AWS API * Documentation */ @Override public GetStudioResult getStudio(GetStudioRequest request) { request = beforeClientExecution(request); return executeGetStudio(request); } @SdkInternalApi final GetStudioResult executeGetStudio(GetStudioRequest getStudioRequest) { ExecutionContext executionContext = createExecutionContext(getStudioRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetStudioRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(getStudioRequest)); // 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, "nimble"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetStudio"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler(new JsonOperationMetadata() .withPayloadJson(true).withHasStreamingSuccessResponse(false), new GetStudioResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets a studio component resource. *

* * @param getStudioComponentRequest * @return Result of the GetStudioComponent operation returned by the service. * @throws ResourceNotFoundException * The specified resource could not be found. * @throws ConflictException * Another operation is in progress. * @throws ThrottlingException * The request throughput limit was exceeded. * @throws ValidationException * One of the parameters in the request is invalid. * @throws AccessDeniedException * You are not authorized to perform this operation. Check your IAM policies, and ensure that you are using * the correct access keys. * @throws InternalServerErrorException * An internal error has occurred. Please retry your request. * @throws ServiceQuotaExceededException * Your current quota does not allow you to perform the request action. You can request increases for some * quotas, and other quotas cannot be increased.

*

* Please use Amazon Web Services Service Quotas to request an increase. * @sample AmazonNimbleStudio.GetStudioComponent * @see AWS API * Documentation */ @Override public GetStudioComponentResult getStudioComponent(GetStudioComponentRequest request) { request = beforeClientExecution(request); return executeGetStudioComponent(request); } @SdkInternalApi final GetStudioComponentResult executeGetStudioComponent(GetStudioComponentRequest getStudioComponentRequest) { ExecutionContext executionContext = createExecutionContext(getStudioComponentRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetStudioComponentRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(getStudioComponentRequest)); // 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, "nimble"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetStudioComponent"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new GetStudioComponentResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Get a user's membership in a studio. *

* * @param getStudioMemberRequest * @return Result of the GetStudioMember operation returned by the service. * @throws ResourceNotFoundException * The specified resource could not be found. * @throws ConflictException * Another operation is in progress. * @throws ThrottlingException * The request throughput limit was exceeded. * @throws ValidationException * One of the parameters in the request is invalid. * @throws AccessDeniedException * You are not authorized to perform this operation. Check your IAM policies, and ensure that you are using * the correct access keys. * @throws InternalServerErrorException * An internal error has occurred. Please retry your request. * @throws ServiceQuotaExceededException * Your current quota does not allow you to perform the request action. You can request increases for some * quotas, and other quotas cannot be increased.

*

* Please use Amazon Web Services Service Quotas to request an increase. * @sample AmazonNimbleStudio.GetStudioMember * @see AWS API * Documentation */ @Override public GetStudioMemberResult getStudioMember(GetStudioMemberRequest request) { request = beforeClientExecution(request); return executeGetStudioMember(request); } @SdkInternalApi final GetStudioMemberResult executeGetStudioMember(GetStudioMemberRequest getStudioMemberRequest) { ExecutionContext executionContext = createExecutionContext(getStudioMemberRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new GetStudioMemberRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(getStudioMemberRequest)); // 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, "nimble"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "GetStudioMember"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new GetStudioMemberResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* List EULA acceptances. *

* * @param listEulaAcceptancesRequest * @return Result of the ListEulaAcceptances operation returned by the service. * @throws ResourceNotFoundException * The specified resource could not be found. * @throws ConflictException * Another operation is in progress. * @throws ThrottlingException * The request throughput limit was exceeded. * @throws ValidationException * One of the parameters in the request is invalid. * @throws AccessDeniedException * You are not authorized to perform this operation. Check your IAM policies, and ensure that you are using * the correct access keys. * @throws InternalServerErrorException * An internal error has occurred. Please retry your request. * @throws ServiceQuotaExceededException * Your current quota does not allow you to perform the request action. You can request increases for some * quotas, and other quotas cannot be increased.

*

* Please use Amazon Web Services Service Quotas to request an increase. * @sample AmazonNimbleStudio.ListEulaAcceptances * @see AWS API * Documentation */ @Override public ListEulaAcceptancesResult listEulaAcceptances(ListEulaAcceptancesRequest request) { request = beforeClientExecution(request); return executeListEulaAcceptances(request); } @SdkInternalApi final ListEulaAcceptancesResult executeListEulaAcceptances(ListEulaAcceptancesRequest listEulaAcceptancesRequest) { ExecutionContext executionContext = createExecutionContext(listEulaAcceptancesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListEulaAcceptancesRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(listEulaAcceptancesRequest)); // 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, "nimble"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListEulaAcceptances"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListEulaAcceptancesResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* List EULAs. *

* * @param listEulasRequest * @return Result of the ListEulas operation returned by the service. * @throws ResourceNotFoundException * The specified resource could not be found. * @throws ConflictException * Another operation is in progress. * @throws ThrottlingException * The request throughput limit was exceeded. * @throws ValidationException * One of the parameters in the request is invalid. * @throws AccessDeniedException * You are not authorized to perform this operation. Check your IAM policies, and ensure that you are using * the correct access keys. * @throws InternalServerErrorException * An internal error has occurred. Please retry your request. * @throws ServiceQuotaExceededException * Your current quota does not allow you to perform the request action. You can request increases for some * quotas, and other quotas cannot be increased.

*

* Please use Amazon Web Services Service Quotas to request an increase. * @sample AmazonNimbleStudio.ListEulas * @see AWS API * Documentation */ @Override public ListEulasResult listEulas(ListEulasRequest request) { request = beforeClientExecution(request); return executeListEulas(request); } @SdkInternalApi final ListEulasResult executeListEulas(ListEulasRequest listEulasRequest) { ExecutionContext executionContext = createExecutionContext(listEulasRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListEulasRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(listEulasRequest)); // 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, "nimble"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListEulas"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler(new JsonOperationMetadata() .withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListEulasResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Get all users in a given launch profile membership. *

* * @param listLaunchProfileMembersRequest * @return Result of the ListLaunchProfileMembers operation returned by the service. * @throws ResourceNotFoundException * The specified resource could not be found. * @throws ConflictException * Another operation is in progress. * @throws ThrottlingException * The request throughput limit was exceeded. * @throws ValidationException * One of the parameters in the request is invalid. * @throws AccessDeniedException * You are not authorized to perform this operation. Check your IAM policies, and ensure that you are using * the correct access keys. * @throws InternalServerErrorException * An internal error has occurred. Please retry your request. * @throws ServiceQuotaExceededException * Your current quota does not allow you to perform the request action. You can request increases for some * quotas, and other quotas cannot be increased.

*

* Please use Amazon Web Services Service Quotas to request an increase. * @sample AmazonNimbleStudio.ListLaunchProfileMembers * @see AWS API Documentation */ @Override public ListLaunchProfileMembersResult listLaunchProfileMembers(ListLaunchProfileMembersRequest request) { request = beforeClientExecution(request); return executeListLaunchProfileMembers(request); } @SdkInternalApi final ListLaunchProfileMembersResult executeListLaunchProfileMembers(ListLaunchProfileMembersRequest listLaunchProfileMembersRequest) { ExecutionContext executionContext = createExecutionContext(listLaunchProfileMembersRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListLaunchProfileMembersRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(listLaunchProfileMembersRequest)); // 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, "nimble"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListLaunchProfileMembers"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListLaunchProfileMembersResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* List all the launch profiles a studio. *

* * @param listLaunchProfilesRequest * @return Result of the ListLaunchProfiles operation returned by the service. * @throws ResourceNotFoundException * The specified resource could not be found. * @throws ConflictException * Another operation is in progress. * @throws ThrottlingException * The request throughput limit was exceeded. * @throws ValidationException * One of the parameters in the request is invalid. * @throws AccessDeniedException * You are not authorized to perform this operation. Check your IAM policies, and ensure that you are using * the correct access keys. * @throws InternalServerErrorException * An internal error has occurred. Please retry your request. * @throws ServiceQuotaExceededException * Your current quota does not allow you to perform the request action. You can request increases for some * quotas, and other quotas cannot be increased.

*

* Please use Amazon Web Services Service Quotas to request an increase. * @sample AmazonNimbleStudio.ListLaunchProfiles * @see AWS API * Documentation */ @Override public ListLaunchProfilesResult listLaunchProfiles(ListLaunchProfilesRequest request) { request = beforeClientExecution(request); return executeListLaunchProfiles(request); } @SdkInternalApi final ListLaunchProfilesResult executeListLaunchProfiles(ListLaunchProfilesRequest listLaunchProfilesRequest) { ExecutionContext executionContext = createExecutionContext(listLaunchProfilesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListLaunchProfilesRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(listLaunchProfilesRequest)); // 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, "nimble"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListLaunchProfiles"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListLaunchProfilesResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* List the streaming image resources available to this studio. *

*

* This list will contain both images provided by Amazon Web Services, as well as streaming images that you have * created in your studio. *

* * @param listStreamingImagesRequest * @return Result of the ListStreamingImages operation returned by the service. * @throws ResourceNotFoundException * The specified resource could not be found. * @throws ConflictException * Another operation is in progress. * @throws ThrottlingException * The request throughput limit was exceeded. * @throws ValidationException * One of the parameters in the request is invalid. * @throws AccessDeniedException * You are not authorized to perform this operation. Check your IAM policies, and ensure that you are using * the correct access keys. * @throws InternalServerErrorException * An internal error has occurred. Please retry your request. * @throws ServiceQuotaExceededException * Your current quota does not allow you to perform the request action. You can request increases for some * quotas, and other quotas cannot be increased.

*

* Please use Amazon Web Services Service Quotas to request an increase. * @sample AmazonNimbleStudio.ListStreamingImages * @see AWS API * Documentation */ @Override public ListStreamingImagesResult listStreamingImages(ListStreamingImagesRequest request) { request = beforeClientExecution(request); return executeListStreamingImages(request); } @SdkInternalApi final ListStreamingImagesResult executeListStreamingImages(ListStreamingImagesRequest listStreamingImagesRequest) { ExecutionContext executionContext = createExecutionContext(listStreamingImagesRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListStreamingImagesRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(listStreamingImagesRequest)); // 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, "nimble"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListStreamingImages"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListStreamingImagesResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Lists the backups of a streaming session in a studio. *

* * @param listStreamingSessionBackupsRequest * @return Result of the ListStreamingSessionBackups operation returned by the service. * @throws ResourceNotFoundException * The specified resource could not be found. * @throws ConflictException * Another operation is in progress. * @throws ThrottlingException * The request throughput limit was exceeded. * @throws ValidationException * One of the parameters in the request is invalid. * @throws AccessDeniedException * You are not authorized to perform this operation. Check your IAM policies, and ensure that you are using * the correct access keys. * @throws InternalServerErrorException * An internal error has occurred. Please retry your request. * @sample AmazonNimbleStudio.ListStreamingSessionBackups * @see AWS API Documentation */ @Override public ListStreamingSessionBackupsResult listStreamingSessionBackups(ListStreamingSessionBackupsRequest request) { request = beforeClientExecution(request); return executeListStreamingSessionBackups(request); } @SdkInternalApi final ListStreamingSessionBackupsResult executeListStreamingSessionBackups(ListStreamingSessionBackupsRequest listStreamingSessionBackupsRequest) { ExecutionContext executionContext = createExecutionContext(listStreamingSessionBackupsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListStreamingSessionBackupsRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(listStreamingSessionBackupsRequest)); // 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, "nimble"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListStreamingSessionBackups"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListStreamingSessionBackupsResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Lists the streaming sessions in a studio. *

* * @param listStreamingSessionsRequest * @return Result of the ListStreamingSessions operation returned by the service. * @throws ResourceNotFoundException * The specified resource could not be found. * @throws ConflictException * Another operation is in progress. * @throws ThrottlingException * The request throughput limit was exceeded. * @throws ValidationException * One of the parameters in the request is invalid. * @throws AccessDeniedException * You are not authorized to perform this operation. Check your IAM policies, and ensure that you are using * the correct access keys. * @throws InternalServerErrorException * An internal error has occurred. Please retry your request. * @throws ServiceQuotaExceededException * Your current quota does not allow you to perform the request action. You can request increases for some * quotas, and other quotas cannot be increased.

*

* Please use Amazon Web Services Service Quotas to request an increase. * @sample AmazonNimbleStudio.ListStreamingSessions * @see AWS * API Documentation */ @Override public ListStreamingSessionsResult listStreamingSessions(ListStreamingSessionsRequest request) { request = beforeClientExecution(request); return executeListStreamingSessions(request); } @SdkInternalApi final ListStreamingSessionsResult executeListStreamingSessions(ListStreamingSessionsRequest listStreamingSessionsRequest) { ExecutionContext executionContext = createExecutionContext(listStreamingSessionsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListStreamingSessionsRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(listStreamingSessionsRequest)); // 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, "nimble"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListStreamingSessions"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory .createResponseHandler(new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListStreamingSessionsResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Lists the StudioComponents in a studio. *

* * @param listStudioComponentsRequest * @return Result of the ListStudioComponents operation returned by the service. * @throws ResourceNotFoundException * The specified resource could not be found. * @throws ConflictException * Another operation is in progress. * @throws ThrottlingException * The request throughput limit was exceeded. * @throws ValidationException * One of the parameters in the request is invalid. * @throws AccessDeniedException * You are not authorized to perform this operation. Check your IAM policies, and ensure that you are using * the correct access keys. * @throws InternalServerErrorException * An internal error has occurred. Please retry your request. * @throws ServiceQuotaExceededException * Your current quota does not allow you to perform the request action. You can request increases for some * quotas, and other quotas cannot be increased.

*

* Please use Amazon Web Services Service Quotas to request an increase. * @sample AmazonNimbleStudio.ListStudioComponents * @see AWS * API Documentation */ @Override public ListStudioComponentsResult listStudioComponents(ListStudioComponentsRequest request) { request = beforeClientExecution(request); return executeListStudioComponents(request); } @SdkInternalApi final ListStudioComponentsResult executeListStudioComponents(ListStudioComponentsRequest listStudioComponentsRequest) { ExecutionContext executionContext = createExecutionContext(listStudioComponentsRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListStudioComponentsRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(listStudioComponentsRequest)); // 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, "nimble"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListStudioComponents"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListStudioComponentsResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Get all users in a given studio membership. *

* *

* ListStudioMembers only returns admin members. *

*
* * @param listStudioMembersRequest * @return Result of the ListStudioMembers operation returned by the service. * @throws ResourceNotFoundException * The specified resource could not be found. * @throws ConflictException * Another operation is in progress. * @throws ThrottlingException * The request throughput limit was exceeded. * @throws ValidationException * One of the parameters in the request is invalid. * @throws AccessDeniedException * You are not authorized to perform this operation. Check your IAM policies, and ensure that you are using * the correct access keys. * @throws InternalServerErrorException * An internal error has occurred. Please retry your request. * @throws ServiceQuotaExceededException * Your current quota does not allow you to perform the request action. You can request increases for some * quotas, and other quotas cannot be increased.

*

* Please use Amazon Web Services Service Quotas to request an increase. * @sample AmazonNimbleStudio.ListStudioMembers * @see AWS API * Documentation */ @Override public ListStudioMembersResult listStudioMembers(ListStudioMembersRequest request) { request = beforeClientExecution(request); return executeListStudioMembers(request); } @SdkInternalApi final ListStudioMembersResult executeListStudioMembers(ListStudioMembersRequest listStudioMembersRequest) { ExecutionContext executionContext = createExecutionContext(listStudioMembersRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListStudioMembersRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(listStudioMembersRequest)); // 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, "nimble"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListStudioMembers"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListStudioMembersResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* List studios in your Amazon Web Services accounts in the requested Amazon Web Services Region. *

* * @param listStudiosRequest * @return Result of the ListStudios operation returned by the service. * @throws ResourceNotFoundException * The specified resource could not be found. * @throws ConflictException * Another operation is in progress. * @throws ThrottlingException * The request throughput limit was exceeded. * @throws ValidationException * One of the parameters in the request is invalid. * @throws AccessDeniedException * You are not authorized to perform this operation. Check your IAM policies, and ensure that you are using * the correct access keys. * @throws InternalServerErrorException * An internal error has occurred. Please retry your request. * @throws ServiceQuotaExceededException * Your current quota does not allow you to perform the request action. You can request increases for some * quotas, and other quotas cannot be increased.

*

* Please use Amazon Web Services Service Quotas to request an increase. * @sample AmazonNimbleStudio.ListStudios * @see AWS API * Documentation */ @Override public ListStudiosResult listStudios(ListStudiosRequest request) { request = beforeClientExecution(request); return executeListStudios(request); } @SdkInternalApi final ListStudiosResult executeListStudios(ListStudiosRequest listStudiosRequest) { ExecutionContext executionContext = createExecutionContext(listStudiosRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListStudiosRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(listStudiosRequest)); // 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, "nimble"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListStudios"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListStudiosResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Gets the tags for a resource, given its Amazon Resource Names (ARN). *

*

* This operation supports ARNs for all resource types in Nimble Studio that support tags, including studio, studio * component, launch profile, streaming image, and streaming session. All resources that can be tagged will contain * an ARN property, so you do not have to create this ARN yourself. *

* * @param listTagsForResourceRequest * @return Result of the ListTagsForResource operation returned by the service. * @throws ResourceNotFoundException * The specified resource could not be found. * @throws ConflictException * Another operation is in progress. * @throws ThrottlingException * The request throughput limit was exceeded. * @throws ValidationException * One of the parameters in the request is invalid. * @throws AccessDeniedException * You are not authorized to perform this operation. Check your IAM policies, and ensure that you are using * the correct access keys. * @throws InternalServerErrorException * An internal error has occurred. Please retry your request. * @throws ServiceQuotaExceededException * Your current quota does not allow you to perform the request action. You can request increases for some * quotas, and other quotas cannot be increased.

*

* Please use Amazon Web Services Service Quotas to request an increase. * @sample AmazonNimbleStudio.ListTagsForResource * @see AWS API * Documentation */ @Override public ListTagsForResourceResult listTagsForResource(ListTagsForResourceRequest request) { request = beforeClientExecution(request); return executeListTagsForResource(request); } @SdkInternalApi final ListTagsForResourceResult executeListTagsForResource(ListTagsForResourceRequest listTagsForResourceRequest) { ExecutionContext executionContext = createExecutionContext(listTagsForResourceRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new ListTagsForResourceRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(listTagsForResourceRequest)); // 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, "nimble"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "ListTagsForResource"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new ListTagsForResourceResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Add/update users with given persona to launch profile membership. *

* * @param putLaunchProfileMembersRequest * @return Result of the PutLaunchProfileMembers operation returned by the service. * @throws ResourceNotFoundException * The specified resource could not be found. * @throws ConflictException * Another operation is in progress. * @throws ThrottlingException * The request throughput limit was exceeded. * @throws ValidationException * One of the parameters in the request is invalid. * @throws AccessDeniedException * You are not authorized to perform this operation. Check your IAM policies, and ensure that you are using * the correct access keys. * @throws InternalServerErrorException * An internal error has occurred. Please retry your request. * @throws ServiceQuotaExceededException * Your current quota does not allow you to perform the request action. You can request increases for some * quotas, and other quotas cannot be increased.

*

* Please use Amazon Web Services Service Quotas to request an increase. * @sample AmazonNimbleStudio.PutLaunchProfileMembers * @see AWS * API Documentation */ @Override public PutLaunchProfileMembersResult putLaunchProfileMembers(PutLaunchProfileMembersRequest request) { request = beforeClientExecution(request); return executePutLaunchProfileMembers(request); } @SdkInternalApi final PutLaunchProfileMembersResult executePutLaunchProfileMembers(PutLaunchProfileMembersRequest putLaunchProfileMembersRequest) { ExecutionContext executionContext = createExecutionContext(putLaunchProfileMembersRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new PutLaunchProfileMembersRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(putLaunchProfileMembersRequest)); // 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, "nimble"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "PutLaunchProfileMembers"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new PutLaunchProfileMembersResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Add/update users with given persona to studio membership. *

* * @param putStudioMembersRequest * @return Result of the PutStudioMembers operation returned by the service. * @throws ResourceNotFoundException * The specified resource could not be found. * @throws ConflictException * Another operation is in progress. * @throws ThrottlingException * The request throughput limit was exceeded. * @throws ValidationException * One of the parameters in the request is invalid. * @throws AccessDeniedException * You are not authorized to perform this operation. Check your IAM policies, and ensure that you are using * the correct access keys. * @throws InternalServerErrorException * An internal error has occurred. Please retry your request. * @throws ServiceQuotaExceededException * Your current quota does not allow you to perform the request action. You can request increases for some * quotas, and other quotas cannot be increased.

*

* Please use Amazon Web Services Service Quotas to request an increase. * @sample AmazonNimbleStudio.PutStudioMembers * @see AWS API * Documentation */ @Override public PutStudioMembersResult putStudioMembers(PutStudioMembersRequest request) { request = beforeClientExecution(request); return executePutStudioMembers(request); } @SdkInternalApi final PutStudioMembersResult executePutStudioMembers(PutStudioMembersRequest putStudioMembersRequest) { ExecutionContext executionContext = createExecutionContext(putStudioMembersRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new PutStudioMembersRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(putStudioMembersRequest)); // 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, "nimble"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "PutStudioMembers"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new PutStudioMembersResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Transitions sessions from the STOPPED state into the READY state. The * START_IN_PROGRESS state is the intermediate state between the STOPPED and * READY states. *

* * @param startStreamingSessionRequest * @return Result of the StartStreamingSession operation returned by the service. * @throws ResourceNotFoundException * The specified resource could not be found. * @throws ConflictException * Another operation is in progress. * @throws ThrottlingException * The request throughput limit was exceeded. * @throws ValidationException * One of the parameters in the request is invalid. * @throws AccessDeniedException * You are not authorized to perform this operation. Check your IAM policies, and ensure that you are using * the correct access keys. * @throws InternalServerErrorException * An internal error has occurred. Please retry your request. * @throws ServiceQuotaExceededException * Your current quota does not allow you to perform the request action. You can request increases for some * quotas, and other quotas cannot be increased.

*

* Please use Amazon Web Services Service Quotas to request an increase. * @sample AmazonNimbleStudio.StartStreamingSession * @see AWS * API Documentation */ @Override public StartStreamingSessionResult startStreamingSession(StartStreamingSessionRequest request) { request = beforeClientExecution(request); return executeStartStreamingSession(request); } @SdkInternalApi final StartStreamingSessionResult executeStartStreamingSession(StartStreamingSessionRequest startStreamingSessionRequest) { ExecutionContext executionContext = createExecutionContext(startStreamingSessionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new StartStreamingSessionRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(startStreamingSessionRequest)); // 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, "nimble"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "StartStreamingSession"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory .createResponseHandler(new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new StartStreamingSessionResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Repairs the IAM Identity Center configuration for a given studio. *

*

* If the studio has a valid IAM Identity Center configuration currently associated with it, this operation will * fail with a validation error. *

*

* If the studio does not have a valid IAM Identity Center configuration currently associated with it, then a new * IAM Identity Center application is created for the studio and the studio is changed to the READY * state. *

*

* After the IAM Identity Center application is repaired, you must use the Amazon Nimble Studio console to add * administrators and users to your studio. *

* * @param startStudioSSOConfigurationRepairRequest * @return Result of the StartStudioSSOConfigurationRepair operation returned by the service. * @throws ResourceNotFoundException * The specified resource could not be found. * @throws ConflictException * Another operation is in progress. * @throws ThrottlingException * The request throughput limit was exceeded. * @throws ValidationException * One of the parameters in the request is invalid. * @throws AccessDeniedException * You are not authorized to perform this operation. Check your IAM policies, and ensure that you are using * the correct access keys. * @throws InternalServerErrorException * An internal error has occurred. Please retry your request. * @throws ServiceQuotaExceededException * Your current quota does not allow you to perform the request action. You can request increases for some * quotas, and other quotas cannot be increased.

*

* Please use Amazon Web Services Service Quotas to request an increase. * @sample AmazonNimbleStudio.StartStudioSSOConfigurationRepair * @see AWS API Documentation */ @Override public StartStudioSSOConfigurationRepairResult startStudioSSOConfigurationRepair(StartStudioSSOConfigurationRepairRequest request) { request = beforeClientExecution(request); return executeStartStudioSSOConfigurationRepair(request); } @SdkInternalApi final StartStudioSSOConfigurationRepairResult executeStartStudioSSOConfigurationRepair( StartStudioSSOConfigurationRepairRequest startStudioSSOConfigurationRepairRequest) { ExecutionContext executionContext = createExecutionContext(startStudioSSOConfigurationRepairRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new StartStudioSSOConfigurationRepairRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(startStudioSSOConfigurationRepairRequest)); // 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, "nimble"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "StartStudioSSOConfigurationRepair"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new StartStudioSSOConfigurationRepairResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Transitions sessions from the READY state into the STOPPED state. The * STOP_IN_PROGRESS state is the intermediate state between the READY and * STOPPED states. *

* * @param stopStreamingSessionRequest * @return Result of the StopStreamingSession operation returned by the service. * @throws ResourceNotFoundException * The specified resource could not be found. * @throws ConflictException * Another operation is in progress. * @throws ThrottlingException * The request throughput limit was exceeded. * @throws ValidationException * One of the parameters in the request is invalid. * @throws AccessDeniedException * You are not authorized to perform this operation. Check your IAM policies, and ensure that you are using * the correct access keys. * @throws InternalServerErrorException * An internal error has occurred. Please retry your request. * @throws ServiceQuotaExceededException * Your current quota does not allow you to perform the request action. You can request increases for some * quotas, and other quotas cannot be increased.

*

* Please use Amazon Web Services Service Quotas to request an increase. * @sample AmazonNimbleStudio.StopStreamingSession * @see AWS * API Documentation */ @Override public StopStreamingSessionResult stopStreamingSession(StopStreamingSessionRequest request) { request = beforeClientExecution(request); return executeStopStreamingSession(request); } @SdkInternalApi final StopStreamingSessionResult executeStopStreamingSession(StopStreamingSessionRequest stopStreamingSessionRequest) { ExecutionContext executionContext = createExecutionContext(stopStreamingSessionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new StopStreamingSessionRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(stopStreamingSessionRequest)); // 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, "nimble"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "StopStreamingSession"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new StopStreamingSessionResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Creates tags for a resource, given its ARN. *

* * @param tagResourceRequest * @return Result of the TagResource operation returned by the service. * @throws ResourceNotFoundException * The specified resource could not be found. * @throws ConflictException * Another operation is in progress. * @throws ThrottlingException * The request throughput limit was exceeded. * @throws ValidationException * One of the parameters in the request is invalid. * @throws AccessDeniedException * You are not authorized to perform this operation. Check your IAM policies, and ensure that you are using * the correct access keys. * @throws InternalServerErrorException * An internal error has occurred. Please retry your request. * @throws ServiceQuotaExceededException * Your current quota does not allow you to perform the request action. You can request increases for some * quotas, and other quotas cannot be increased.

*

* Please use Amazon Web Services Service Quotas to request an increase. * @sample AmazonNimbleStudio.TagResource * @see AWS API * Documentation */ @Override public TagResourceResult tagResource(TagResourceRequest request) { request = beforeClientExecution(request); return executeTagResource(request); } @SdkInternalApi final TagResourceResult executeTagResource(TagResourceRequest tagResourceRequest) { ExecutionContext executionContext = createExecutionContext(tagResourceRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new TagResourceRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(tagResourceRequest)); // 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, "nimble"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "TagResource"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new TagResourceResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Deletes the tags for a resource. *

* * @param untagResourceRequest * @return Result of the UntagResource operation returned by the service. * @throws ResourceNotFoundException * The specified resource could not be found. * @throws ConflictException * Another operation is in progress. * @throws ThrottlingException * The request throughput limit was exceeded. * @throws ValidationException * One of the parameters in the request is invalid. * @throws AccessDeniedException * You are not authorized to perform this operation. Check your IAM policies, and ensure that you are using * the correct access keys. * @throws InternalServerErrorException * An internal error has occurred. Please retry your request. * @throws ServiceQuotaExceededException * Your current quota does not allow you to perform the request action. You can request increases for some * quotas, and other quotas cannot be increased.

*

* Please use Amazon Web Services Service Quotas to request an increase. * @sample AmazonNimbleStudio.UntagResource * @see AWS API * Documentation */ @Override public UntagResourceResult untagResource(UntagResourceRequest request) { request = beforeClientExecution(request); return executeUntagResource(request); } @SdkInternalApi final UntagResourceResult executeUntagResource(UntagResourceRequest untagResourceRequest) { ExecutionContext executionContext = createExecutionContext(untagResourceRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new UntagResourceRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(untagResourceRequest)); // 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, "nimble"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "UntagResource"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new UntagResourceResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Update a launch profile. *

* * @param updateLaunchProfileRequest * @return Result of the UpdateLaunchProfile operation returned by the service. * @throws ResourceNotFoundException * The specified resource could not be found. * @throws ConflictException * Another operation is in progress. * @throws ThrottlingException * The request throughput limit was exceeded. * @throws ValidationException * One of the parameters in the request is invalid. * @throws AccessDeniedException * You are not authorized to perform this operation. Check your IAM policies, and ensure that you are using * the correct access keys. * @throws InternalServerErrorException * An internal error has occurred. Please retry your request. * @throws ServiceQuotaExceededException * Your current quota does not allow you to perform the request action. You can request increases for some * quotas, and other quotas cannot be increased.

*

* Please use Amazon Web Services Service Quotas to request an increase. * @sample AmazonNimbleStudio.UpdateLaunchProfile * @see AWS API * Documentation */ @Override public UpdateLaunchProfileResult updateLaunchProfile(UpdateLaunchProfileRequest request) { request = beforeClientExecution(request); return executeUpdateLaunchProfile(request); } @SdkInternalApi final UpdateLaunchProfileResult executeUpdateLaunchProfile(UpdateLaunchProfileRequest updateLaunchProfileRequest) { ExecutionContext executionContext = createExecutionContext(updateLaunchProfileRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new UpdateLaunchProfileRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(updateLaunchProfileRequest)); // 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, "nimble"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "UpdateLaunchProfile"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new UpdateLaunchProfileResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Update a user persona in launch profile membership. *

* * @param updateLaunchProfileMemberRequest * @return Result of the UpdateLaunchProfileMember operation returned by the service. * @throws ResourceNotFoundException * The specified resource could not be found. * @throws ConflictException * Another operation is in progress. * @throws ThrottlingException * The request throughput limit was exceeded. * @throws ValidationException * One of the parameters in the request is invalid. * @throws AccessDeniedException * You are not authorized to perform this operation. Check your IAM policies, and ensure that you are using * the correct access keys. * @throws InternalServerErrorException * An internal error has occurred. Please retry your request. * @throws ServiceQuotaExceededException * Your current quota does not allow you to perform the request action. You can request increases for some * quotas, and other quotas cannot be increased.

*

* Please use Amazon Web Services Service Quotas to request an increase. * @sample AmazonNimbleStudio.UpdateLaunchProfileMember * @see AWS API Documentation */ @Override public UpdateLaunchProfileMemberResult updateLaunchProfileMember(UpdateLaunchProfileMemberRequest request) { request = beforeClientExecution(request); return executeUpdateLaunchProfileMember(request); } @SdkInternalApi final UpdateLaunchProfileMemberResult executeUpdateLaunchProfileMember(UpdateLaunchProfileMemberRequest updateLaunchProfileMemberRequest) { ExecutionContext executionContext = createExecutionContext(updateLaunchProfileMemberRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new UpdateLaunchProfileMemberRequestProtocolMarshaller(protocolFactory).marshall(super .beforeMarshalling(updateLaunchProfileMemberRequest)); // 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, "nimble"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "UpdateLaunchProfileMember"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new UpdateLaunchProfileMemberResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Update streaming image. *

* * @param updateStreamingImageRequest * @return Result of the UpdateStreamingImage operation returned by the service. * @throws ResourceNotFoundException * The specified resource could not be found. * @throws ConflictException * Another operation is in progress. * @throws ThrottlingException * The request throughput limit was exceeded. * @throws ValidationException * One of the parameters in the request is invalid. * @throws AccessDeniedException * You are not authorized to perform this operation. Check your IAM policies, and ensure that you are using * the correct access keys. * @throws InternalServerErrorException * An internal error has occurred. Please retry your request. * @throws ServiceQuotaExceededException * Your current quota does not allow you to perform the request action. You can request increases for some * quotas, and other quotas cannot be increased.

*

* Please use Amazon Web Services Service Quotas to request an increase. * @sample AmazonNimbleStudio.UpdateStreamingImage * @see AWS * API Documentation */ @Override public UpdateStreamingImageResult updateStreamingImage(UpdateStreamingImageRequest request) { request = beforeClientExecution(request); return executeUpdateStreamingImage(request); } @SdkInternalApi final UpdateStreamingImageResult executeUpdateStreamingImage(UpdateStreamingImageRequest updateStreamingImageRequest) { ExecutionContext executionContext = createExecutionContext(updateStreamingImageRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new UpdateStreamingImageRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(updateStreamingImageRequest)); // 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, "nimble"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "UpdateStreamingImage"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new UpdateStreamingImageResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Update a Studio resource. *

*

* Currently, this operation only supports updating the displayName of your studio. *

* * @param updateStudioRequest * @return Result of the UpdateStudio operation returned by the service. * @throws ResourceNotFoundException * The specified resource could not be found. * @throws ConflictException * Another operation is in progress. * @throws ThrottlingException * The request throughput limit was exceeded. * @throws ValidationException * One of the parameters in the request is invalid. * @throws AccessDeniedException * You are not authorized to perform this operation. Check your IAM policies, and ensure that you are using * the correct access keys. * @throws InternalServerErrorException * An internal error has occurred. Please retry your request. * @throws ServiceQuotaExceededException * Your current quota does not allow you to perform the request action. You can request increases for some * quotas, and other quotas cannot be increased.

*

* Please use Amazon Web Services Service Quotas to request an increase. * @sample AmazonNimbleStudio.UpdateStudio * @see AWS API * Documentation */ @Override public UpdateStudioResult updateStudio(UpdateStudioRequest request) { request = beforeClientExecution(request); return executeUpdateStudio(request); } @SdkInternalApi final UpdateStudioResult executeUpdateStudio(UpdateStudioRequest updateStudioRequest) { ExecutionContext executionContext = createExecutionContext(updateStudioRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new UpdateStudioRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(updateStudioRequest)); // 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, "nimble"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "UpdateStudio"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory.createResponseHandler( new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new UpdateStudioResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** *

* Updates a studio component resource. *

* * @param updateStudioComponentRequest * @return Result of the UpdateStudioComponent operation returned by the service. * @throws ResourceNotFoundException * The specified resource could not be found. * @throws ConflictException * Another operation is in progress. * @throws ThrottlingException * The request throughput limit was exceeded. * @throws ValidationException * One of the parameters in the request is invalid. * @throws AccessDeniedException * You are not authorized to perform this operation. Check your IAM policies, and ensure that you are using * the correct access keys. * @throws InternalServerErrorException * An internal error has occurred. Please retry your request. * @throws ServiceQuotaExceededException * Your current quota does not allow you to perform the request action. You can request increases for some * quotas, and other quotas cannot be increased.

*

* Please use Amazon Web Services Service Quotas to request an increase. * @sample AmazonNimbleStudio.UpdateStudioComponent * @see AWS * API Documentation */ @Override public UpdateStudioComponentResult updateStudioComponent(UpdateStudioComponentRequest request) { request = beforeClientExecution(request); return executeUpdateStudioComponent(request); } @SdkInternalApi final UpdateStudioComponentResult executeUpdateStudioComponent(UpdateStudioComponentRequest updateStudioComponentRequest) { ExecutionContext executionContext = createExecutionContext(updateStudioComponentRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request request = null; Response response = null; try { awsRequestMetrics.startEvent(Field.RequestMarshallTime); try { request = new UpdateStudioComponentRequestProtocolMarshaller(protocolFactory).marshall(super.beforeMarshalling(updateStudioComponentRequest)); // 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, "nimble"); request.addHandlerContext(HandlerContextKey.OPERATION_NAME, "UpdateStudioComponent"); request.addHandlerContext(HandlerContextKey.ADVANCED_CONFIG, advancedConfig); } finally { awsRequestMetrics.endEvent(Field.RequestMarshallTime); } HttpResponseHandler> responseHandler = protocolFactory .createResponseHandler(new JsonOperationMetadata().withPayloadJson(true).withHasStreamingSuccessResponse(false), new UpdateStudioComponentResultJsonUnmarshaller()); response = invoke(request, responseHandler, executionContext); return response.getAwsResponse(); } finally { endClientExecution(awsRequestMetrics, request, response); } } /** * Returns additional metadata for a previously executed successful, request, typically used for debugging issues * where a service isn't acting as expected. This data isn't considered part of the result data returned by an * operation, so it's available through this separate, diagnostic interface. *

* Response metadata is only cached for a limited period of time, so if you need to access this extra diagnostic * information for an executed request, you should use this method to retrieve it as soon as possible after * executing the request. * * @param request * The originally executed request * * @return The response metadata for the specified request, or null if none is available. */ public ResponseMetadata getCachedResponseMetadata(AmazonWebServiceRequest request) { return client.getResponseMetadataForRequest(request); } /** * Normal invoke with authentication. Credentials are required and may be overriden at the request level. **/ private Response invoke(Request request, HttpResponseHandler> responseHandler, ExecutionContext executionContext) { return invoke(request, responseHandler, executionContext, null, null); } /** * Normal invoke with authentication. Credentials are required and may be overriden at the request level. **/ private Response invoke(Request request, HttpResponseHandler> responseHandler, ExecutionContext executionContext, URI cachedEndpoint, URI uriFromEndpointTrait) { executionContext.setCredentialsProvider(CredentialUtils.getCredentialsProvider(request.getOriginalRequest(), awsCredentialsProvider)); return doInvoke(request, responseHandler, executionContext, cachedEndpoint, uriFromEndpointTrait); } /** * Invoke with no authentication. Credentials are not required and any credentials set on the client or request will * be ignored for this operation. **/ private Response anonymousInvoke(Request request, HttpResponseHandler> responseHandler, ExecutionContext executionContext) { return doInvoke(request, responseHandler, executionContext, null, null); } /** * Invoke the request using the http client. Assumes credentials (or lack thereof) have been configured in the * ExecutionContext beforehand. **/ private Response doInvoke(Request request, HttpResponseHandler> responseHandler, ExecutionContext executionContext, URI discoveredEndpoint, URI uriFromEndpointTrait) { if (discoveredEndpoint != null) { request.setEndpoint(discoveredEndpoint); request.getOriginalRequest().getRequestClientOptions().appendUserAgent("endpoint-discovery"); } else if (uriFromEndpointTrait != null) { request.setEndpoint(uriFromEndpointTrait); } else { request.setEndpoint(endpoint); } request.setTimeOffset(timeOffset); HttpResponseHandler errorResponseHandler = protocolFactory.createErrorResponseHandler(new JsonErrorResponseMetadata()); return client.execute(request, responseHandler, errorResponseHandler, executionContext); } @com.amazonaws.annotation.SdkInternalApi static com.amazonaws.protocol.json.SdkJsonProtocolFactory getProtocolFactory() { return protocolFactory; } @Override public AmazonNimbleStudioWaiters waiters() { if (waiters == null) { synchronized (this) { if (waiters == null) { waiters = new AmazonNimbleStudioWaiters(this); } } } return waiters; } @Override public void shutdown() { super.shutdown(); if (waiters != null) { waiters.shutdown(); } } }