/* * 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.ram; 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.ram.AWSRAMClientBuilder; import com.amazonaws.AmazonServiceException; import com.amazonaws.services.ram.model.*; import com.amazonaws.services.ram.model.transform.*; /** * Client for accessing RAM. All service calls made using this client are blocking, and will not return until the * service call completes. *
*
* This is the Resource Access Manager API Reference. This documentation provides descriptions and syntax for * each of the actions and data types in RAM. RAM is a service that helps you securely share your Amazon Web Services * resources to other Amazon Web Services accounts. If you use Organizations to manage your accounts, then you can share * your resources with your entire organization or to organizational units (OUs). For supported resource types, you can * also share resources with individual Identity and Access Management (IAM) roles and users. *
** To learn more about RAM, see the following resources: *
** 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. */ AWSRAMClient(AwsSyncClientParams clientParams) { this(clientParams, false); } /** * Constructs a new client to invoke service methods on RAM 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. */ AWSRAMClient(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("ram.us-east-1.amazonaws.com"); HandlerChainFactory chainFactory = new HandlerChainFactory(); requestHandler2s.addAll(chainFactory.newRequestHandlerChain("/com/amazonaws/services/ram/request.handlers")); requestHandler2s.addAll(chainFactory.newRequestHandler2Chain("/com/amazonaws/services/ram/request.handler2s")); requestHandler2s.addAll(chainFactory.getGlobalHandlers()); } /** *
* Accepts an invitation to a resource share from another Amazon Web Services account. After you accept the * invitation, the resources included in the resource share are available to interact with in the relevant Amazon * Web Services Management Consoles and tools. *
* * @param acceptResourceShareInvitationRequest * @return Result of the AcceptResourceShareInvitation operation returned by the service. * @throws MalformedArnException * The operation failed because the specified Amazon Resource Name * (ARN) has a format that isn't valid. * @throws OperationNotPermittedException * The operation failed because the requested operation isn't permitted. * @throws ResourceShareInvitationArnNotFoundException * The operation failed because the specified Amazon Resource Name * (ARN) for an invitation was not found. * @throws ResourceShareInvitationAlreadyAcceptedException * The operation failed because the specified invitation was already accepted. * @throws ResourceShareInvitationAlreadyRejectedException * The operation failed because the specified invitation was already rejected. * @throws ResourceShareInvitationExpiredException * The operation failed because the specified invitation is past its expiration date and time. * @throws ServerInternalException * The operation failed because the service could not respond to the request due to an internal problem. Try * again later. * @throws ServiceUnavailableException * The operation failed because the service isn't available. Try again later. * @throws InvalidClientTokenException * The operation failed because the specified client token isn't valid. * @throws IdempotentParameterMismatchException * The operation failed because the client token input parameter matched one that was used with a previous * call to the operation, but at least one of the other input parameters is different from the previous * call. * @sample AWSRAM.AcceptResourceShareInvitation * @see AWS API Documentation */ @Override public AcceptResourceShareInvitationResult acceptResourceShareInvitation(AcceptResourceShareInvitationRequest request) { request = beforeClientExecution(request); return executeAcceptResourceShareInvitation(request); } @SdkInternalApi final AcceptResourceShareInvitationResult executeAcceptResourceShareInvitation(AcceptResourceShareInvitationRequest acceptResourceShareInvitationRequest) { ExecutionContext executionContext = createExecutionContext(acceptResourceShareInvitationRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request* Adds the specified list of principals and list of resources to a resource share. Principals that already have * access to this resource share immediately receive access to the added resources. Newly added principals * immediately receive access to the resources shared in this resource share. *
* * @param associateResourceShareRequest * @return Result of the AssociateResourceShare operation returned by the service. * @throws IdempotentParameterMismatchException * The operation failed because the client token input parameter matched one that was used with a previous * call to the operation, but at least one of the other input parameters is different from the previous * call. * @throws UnknownResourceException * The operation failed because a specified resource couldn't be found. * @throws InvalidStateTransitionException * The operation failed because the requested operation isn't valid for the resource share in its current * state. * @throws ResourceShareLimitExceededException * The operation failed because it would exceed the limit for resource shares for your account. To view the * limits for your Amazon Web Services account, see the RAM page in the Service * Quotas console. * @throws MalformedArnException * The operation failed because the specified Amazon Resource Name * (ARN) has a format that isn't valid. * @throws InvalidStateTransitionException * The operation failed because the requested operation isn't valid for the resource share in its current * state. * @throws InvalidClientTokenException * The operation failed because the specified client token isn't valid. * @throws InvalidParameterException * The operation failed because a parameter you specified isn't valid. * @throws OperationNotPermittedException * The operation failed because the requested operation isn't permitted. * @throws ServerInternalException * The operation failed because the service could not respond to the request due to an internal problem. Try * again later. * @throws ServiceUnavailableException * The operation failed because the service isn't available. Try again later. * @throws UnknownResourceException * The operation failed because a specified resource couldn't be found. * @throws ThrottlingException * The operation failed because it exceeded the rate at which you are allowed to perform this operation. * Please try again later. * @sample AWSRAM.AssociateResourceShare * @see AWS API * Documentation */ @Override public AssociateResourceShareResult associateResourceShare(AssociateResourceShareRequest request) { request = beforeClientExecution(request); return executeAssociateResourceShare(request); } @SdkInternalApi final AssociateResourceShareResult executeAssociateResourceShare(AssociateResourceShareRequest associateResourceShareRequest) { ExecutionContext executionContext = createExecutionContext(associateResourceShareRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request* Adds or replaces the RAM permission for a resource type included in a resource share. You can have exactly one * permission associated with each resource type in the resource share. You can add a new RAM permission only if * there are currently no resources of that resource type currently in the resource share. *
* * @param associateResourceSharePermissionRequest * @return Result of the AssociateResourceSharePermission operation returned by the service. * @throws MalformedArnException * The operation failed because the specified Amazon Resource Name * (ARN) has a format that isn't valid. * @throws UnknownResourceException * The operation failed because a specified resource couldn't be found. * @throws InvalidParameterException * The operation failed because a parameter you specified isn't valid. * @throws InvalidClientTokenException * The operation failed because the specified client token isn't valid. * @throws ServerInternalException * The operation failed because the service could not respond to the request due to an internal problem. Try * again later. * @throws ServiceUnavailableException * The operation failed because the service isn't available. Try again later. * @throws OperationNotPermittedException * The operation failed because the requested operation isn't permitted. * @sample AWSRAM.AssociateResourceSharePermission * @see AWS API Documentation */ @Override public AssociateResourceSharePermissionResult associateResourceSharePermission(AssociateResourceSharePermissionRequest request) { request = beforeClientExecution(request); return executeAssociateResourceSharePermission(request); } @SdkInternalApi final AssociateResourceSharePermissionResult executeAssociateResourceSharePermission( AssociateResourceSharePermissionRequest associateResourceSharePermissionRequest) { ExecutionContext executionContext = createExecutionContext(associateResourceSharePermissionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request* Creates a customer managed permission for a specified resource type that you can attach to resource shares. It is * created in the Amazon Web Services Region in which you call the operation. *
* * @param createPermissionRequest * @return Result of the CreatePermission operation returned by the service. * @throws InvalidParameterException * The operation failed because a parameter you specified isn't valid. * @throws InvalidPolicyException * The operation failed because a policy you specified isn't valid. * @throws OperationNotPermittedException * The operation failed because the requested operation isn't permitted. * @throws ServerInternalException * The operation failed because the service could not respond to the request due to an internal problem. Try * again later. * @throws ServiceUnavailableException * The operation failed because the service isn't available. Try again later. * @throws PermissionAlreadyExistsException * The operation failed because a permission with the specified name already exists in the requested Amazon * Web Services Region. Choose a different name. * @throws MalformedPolicyTemplateException * The operation failed because the policy template that you provided isn't valid. * @throws InvalidClientTokenException * The operation failed because the specified client token isn't valid. * @throws PermissionLimitExceededException * The operation failed because it would exceed the maximum number of permissions you can create in each * Amazon Web Services Region. To view the limits for your Amazon Web Services account, see the RAM page in the Service * Quotas console. * @throws IdempotentParameterMismatchException * The operation failed because the client token input parameter matched one that was used with a previous * call to the operation, but at least one of the other input parameters is different from the previous * call. * @sample AWSRAM.CreatePermission * @see AWS API * Documentation */ @Override public CreatePermissionResult createPermission(CreatePermissionRequest request) { request = beforeClientExecution(request); return executeCreatePermission(request); } @SdkInternalApi final CreatePermissionResult executeCreatePermission(CreatePermissionRequest createPermissionRequest) { ExecutionContext executionContext = createExecutionContext(createPermissionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request* Creates a new version of the specified customer managed permission. The new version is automatically set as the * default version of the customer managed permission. New resource shares automatically use the default permission. * Existing resource shares continue to use their original permission versions, but you can use * ReplacePermissionAssociations to update them. *
** If the specified customer managed permission already has the maximum of 5 versions, then you must delete one of * the existing versions before you can create a new one. *
* * @param createPermissionVersionRequest * @return Result of the CreatePermissionVersion operation returned by the service. * @throws InvalidParameterException * The operation failed because a parameter you specified isn't valid. * @throws InvalidPolicyException * The operation failed because a policy you specified isn't valid. * @throws ServerInternalException * The operation failed because the service could not respond to the request due to an internal problem. Try * again later. * @throws ServiceUnavailableException * The operation failed because the service isn't available. Try again later. * @throws UnknownResourceException * The operation failed because a specified resource couldn't be found. * @throws MalformedPolicyTemplateException * The operation failed because the policy template that you provided isn't valid. * @throws MalformedArnException * The operation failed because the specified Amazon Resource Name * (ARN) has a format that isn't valid. * @throws InvalidClientTokenException * The operation failed because the specified client token isn't valid. * @throws IdempotentParameterMismatchException * The operation failed because the client token input parameter matched one that was used with a previous * call to the operation, but at least one of the other input parameters is different from the previous * call. * @throws PermissionVersionsLimitExceededException * The operation failed because it would exceed the limit for the number of versions you can have for a * permission. To view the limits for your Amazon Web Services account, see the RAM page in the Service * Quotas console. * @sample AWSRAM.CreatePermissionVersion * @see AWS * API Documentation */ @Override public CreatePermissionVersionResult createPermissionVersion(CreatePermissionVersionRequest request) { request = beforeClientExecution(request); return executeCreatePermissionVersion(request); } @SdkInternalApi final CreatePermissionVersionResult executeCreatePermissionVersion(CreatePermissionVersionRequest createPermissionVersionRequest) { ExecutionContext executionContext = createExecutionContext(createPermissionVersionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request* Creates a resource share. You can provide a list of the Amazon Resource Names * (ARNs) for the resources that you want to share, a list of principals you want to share the resources with, * and the permissions to grant those principals. *
** Sharing a resource makes it available for use by principals outside of the Amazon Web Services account that * created the resource. Sharing doesn't change any permissions or quotas that apply to the resource in the account * that created it. *
** Deletes the specified customer managed permission in the Amazon Web Services Region in which you call this * operation. You can delete a customer managed permission only if it isn't attached to any resource share. The * operation deletes all versions associated with the customer managed permission. *
* * @param deletePermissionRequest * @return Result of the DeletePermission operation returned by the service. * @throws MalformedArnException * The operation failed because the specified Amazon Resource Name * (ARN) has a format that isn't valid. * @throws ServerInternalException * The operation failed because the service could not respond to the request due to an internal problem. Try * again later. * @throws ServiceUnavailableException * The operation failed because the service isn't available. Try again later. * @throws OperationNotPermittedException * The operation failed because the requested operation isn't permitted. * @throws UnknownResourceException * The operation failed because a specified resource couldn't be found. * @throws InvalidClientTokenException * The operation failed because the specified client token isn't valid. * @throws IdempotentParameterMismatchException * The operation failed because the client token input parameter matched one that was used with a previous * call to the operation, but at least one of the other input parameters is different from the previous * call. * @sample AWSRAM.DeletePermission * @see AWS API * Documentation */ @Override public DeletePermissionResult deletePermission(DeletePermissionRequest request) { request = beforeClientExecution(request); return executeDeletePermission(request); } @SdkInternalApi final DeletePermissionResult executeDeletePermission(DeletePermissionRequest deletePermissionRequest) { ExecutionContext executionContext = createExecutionContext(deletePermissionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request* Deletes one version of a customer managed permission. The version you specify must not be attached to any * resource share and must not be the default version for the permission. *
** If a customer managed permission has the maximum of 5 versions, then you must delete at least one version before * you can create another. *
* * @param deletePermissionVersionRequest * @return Result of the DeletePermissionVersion operation returned by the service. * @throws MalformedArnException * The operation failed because the specified Amazon Resource Name * (ARN) has a format that isn't valid. * @throws InvalidParameterException * The operation failed because a parameter you specified isn't valid. * @throws ServerInternalException * The operation failed because the service could not respond to the request due to an internal problem. Try * again later. * @throws ServiceUnavailableException * The operation failed because the service isn't available. Try again later. * @throws OperationNotPermittedException * The operation failed because the requested operation isn't permitted. * @throws UnknownResourceException * The operation failed because a specified resource couldn't be found. * @throws InvalidClientTokenException * The operation failed because the specified client token isn't valid. * @throws IdempotentParameterMismatchException * The operation failed because the client token input parameter matched one that was used with a previous * call to the operation, but at least one of the other input parameters is different from the previous * call. * @sample AWSRAM.DeletePermissionVersion * @see AWS * API Documentation */ @Override public DeletePermissionVersionResult deletePermissionVersion(DeletePermissionVersionRequest request) { request = beforeClientExecution(request); return executeDeletePermissionVersion(request); } @SdkInternalApi final DeletePermissionVersionResult executeDeletePermissionVersion(DeletePermissionVersionRequest deletePermissionVersionRequest) { ExecutionContext executionContext = createExecutionContext(deletePermissionVersionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request* Deletes the specified resource share. *
** This doesn't delete any of the resources that were associated with the resource share; it only stops the sharing * of those resources through this resource share. *
** Removes the specified principals or resources from participating in the specified resource share. *
* * @param disassociateResourceShareRequest * @return Result of the DisassociateResourceShare operation returned by the service. * @throws IdempotentParameterMismatchException * The operation failed because the client token input parameter matched one that was used with a previous * call to the operation, but at least one of the other input parameters is different from the previous * call. * @throws ResourceShareLimitExceededException * The operation failed because it would exceed the limit for resource shares for your account. To view the * limits for your Amazon Web Services account, see the RAM page in the Service * Quotas console. * @throws MalformedArnException * The operation failed because the specified Amazon Resource Name * (ARN) has a format that isn't valid. * @throws InvalidStateTransitionException * The operation failed because the requested operation isn't valid for the resource share in its current * state. * @throws InvalidClientTokenException * The operation failed because the specified client token isn't valid. * @throws InvalidParameterException * The operation failed because a parameter you specified isn't valid. * @throws OperationNotPermittedException * The operation failed because the requested operation isn't permitted. * @throws ServerInternalException * The operation failed because the service could not respond to the request due to an internal problem. Try * again later. * @throws ServiceUnavailableException * The operation failed because the service isn't available. Try again later. * @throws UnknownResourceException * The operation failed because a specified resource couldn't be found. * @sample AWSRAM.DisassociateResourceShare * @see AWS * API Documentation */ @Override public DisassociateResourceShareResult disassociateResourceShare(DisassociateResourceShareRequest request) { request = beforeClientExecution(request); return executeDisassociateResourceShare(request); } @SdkInternalApi final DisassociateResourceShareResult executeDisassociateResourceShare(DisassociateResourceShareRequest disassociateResourceShareRequest) { ExecutionContext executionContext = createExecutionContext(disassociateResourceShareRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request* Removes a managed permission from a resource share. Permission changes take effect immediately. You can remove a * managed permission from a resource share only if there are currently no resources of the relevant resource type * currently attached to the resource share. *
* * @param disassociateResourceSharePermissionRequest * @return Result of the DisassociateResourceSharePermission operation returned by the service. * @throws MalformedArnException * The operation failed because the specified Amazon Resource Name * (ARN) has a format that isn't valid. * @throws UnknownResourceException * The operation failed because a specified resource couldn't be found. * @throws InvalidParameterException * The operation failed because a parameter you specified isn't valid. * @throws InvalidClientTokenException * The operation failed because the specified client token isn't valid. * @throws ServerInternalException * The operation failed because the service could not respond to the request due to an internal problem. Try * again later. * @throws ServiceUnavailableException * The operation failed because the service isn't available. Try again later. * @throws OperationNotPermittedException * The operation failed because the requested operation isn't permitted. * @throws InvalidStateTransitionException * The operation failed because the requested operation isn't valid for the resource share in its current * state. * @sample AWSRAM.DisassociateResourceSharePermission * @see AWS API Documentation */ @Override public DisassociateResourceSharePermissionResult disassociateResourceSharePermission(DisassociateResourceSharePermissionRequest request) { request = beforeClientExecution(request); return executeDisassociateResourceSharePermission(request); } @SdkInternalApi final DisassociateResourceSharePermissionResult executeDisassociateResourceSharePermission( DisassociateResourceSharePermissionRequest disassociateResourceSharePermissionRequest) { ExecutionContext executionContext = createExecutionContext(disassociateResourceSharePermissionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request
* Enables resource sharing within your organization in Organizations. This operation creates a service-linked role
* called AWSServiceRoleForResourceAccessManager
that has the IAM managed policy named
* AWSResourceAccessManagerServiceRolePolicy attached. This role permits RAM to retrieve information about the
* organization and its structure. This lets you share resources with all of the accounts in the calling account's
* organization by specifying the organization ID, or all of the accounts in an organizational unit (OU) by
* specifying the OU ID. Until you enable sharing within the organization, you can specify only individual Amazon
* Web Services accounts, or for supported resource types, IAM roles and users.
*
* You must call this operation from an IAM role or user in the organization's management account. *
* * * @param enableSharingWithAwsOrganizationRequest * @return Result of the EnableSharingWithAwsOrganization operation returned by the service. * @throws OperationNotPermittedException * The operation failed because the requested operation isn't permitted. * @throws ServerInternalException * The operation failed because the service could not respond to the request due to an internal problem. Try * again later. * @throws ServiceUnavailableException * The operation failed because the service isn't available. Try again later. * @sample AWSRAM.EnableSharingWithAwsOrganization * @see AWS API Documentation */ @Override public EnableSharingWithAwsOrganizationResult enableSharingWithAwsOrganization(EnableSharingWithAwsOrganizationRequest request) { request = beforeClientExecution(request); return executeEnableSharingWithAwsOrganization(request); } @SdkInternalApi final EnableSharingWithAwsOrganizationResult executeEnableSharingWithAwsOrganization( EnableSharingWithAwsOrganizationRequest enableSharingWithAwsOrganizationRequest) { ExecutionContext executionContext = createExecutionContext(enableSharingWithAwsOrganizationRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request* Retrieves the contents of a managed permission in JSON format. *
* * @param getPermissionRequest * @return Result of the GetPermission operation returned by the service. * @throws InvalidParameterException * The operation failed because a parameter you specified isn't valid. * @throws MalformedArnException * The operation failed because the specified Amazon Resource Name * (ARN) has a format that isn't valid. * @throws UnknownResourceException * The operation failed because a specified resource couldn't be found. * @throws ServerInternalException * The operation failed because the service could not respond to the request due to an internal problem. Try * again later. * @throws ServiceUnavailableException * The operation failed because the service isn't available. Try again later. * @throws OperationNotPermittedException * The operation failed because the requested operation isn't permitted. * @sample AWSRAM.GetPermission * @see AWS API * Documentation */ @Override public GetPermissionResult getPermission(GetPermissionRequest request) { request = beforeClientExecution(request); return executeGetPermission(request); } @SdkInternalApi final GetPermissionResult executeGetPermission(GetPermissionRequest getPermissionRequest) { ExecutionContext executionContext = createExecutionContext(getPermissionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request* Retrieves the resource policies for the specified resources that you own and have shared. *
* * @param getResourcePoliciesRequest * @return Result of the GetResourcePolicies operation returned by the service. * @throws MalformedArnException * The operation failed because the specified Amazon Resource Name * (ARN) has a format that isn't valid. * @throws InvalidNextTokenException * The operation failed because the specified value forNextToken
isn't valid. You must specify
* a value you received in the NextToken
response of a previous call to this operation.
* @throws InvalidParameterException
* The operation failed because a parameter you specified isn't valid.
* @throws ResourceArnNotFoundException
* The operation failed because the specified Amazon Resource Name
* (ARN) was not found.
* @throws ServerInternalException
* The operation failed because the service could not respond to the request due to an internal problem. Try
* again later.
* @throws ServiceUnavailableException
* The operation failed because the service isn't available. Try again later.
* @sample AWSRAM.GetResourcePolicies
* @see AWS API
* Documentation
*/
@Override
public GetResourcePoliciesResult getResourcePolicies(GetResourcePoliciesRequest request) {
request = beforeClientExecution(request);
return executeGetResourcePolicies(request);
}
@SdkInternalApi
final GetResourcePoliciesResult executeGetResourcePolicies(GetResourcePoliciesRequest getResourcePoliciesRequest) {
ExecutionContext executionContext = createExecutionContext(getResourcePoliciesRequest);
AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request* Retrieves the lists of resources and principals that associated for resource shares that you own. *
* * @param getResourceShareAssociationsRequest * @return Result of the GetResourceShareAssociations operation returned by the service. * @throws UnknownResourceException * The operation failed because a specified resource couldn't be found. * @throws MalformedArnException * The operation failed because the specified Amazon Resource Name * (ARN) has a format that isn't valid. * @throws InvalidNextTokenException * The operation failed because the specified value forNextToken
isn't valid. You must specify
* a value you received in the NextToken
response of a previous call to this operation.
* @throws InvalidParameterException
* The operation failed because a parameter you specified isn't valid.
* @throws OperationNotPermittedException
* The operation failed because the requested operation isn't permitted.
* @throws ServerInternalException
* The operation failed because the service could not respond to the request due to an internal problem. Try
* again later.
* @throws ServiceUnavailableException
* The operation failed because the service isn't available. Try again later.
* @sample AWSRAM.GetResourceShareAssociations
* @see AWS API Documentation
*/
@Override
public GetResourceShareAssociationsResult getResourceShareAssociations(GetResourceShareAssociationsRequest request) {
request = beforeClientExecution(request);
return executeGetResourceShareAssociations(request);
}
@SdkInternalApi
final GetResourceShareAssociationsResult executeGetResourceShareAssociations(GetResourceShareAssociationsRequest getResourceShareAssociationsRequest) {
ExecutionContext executionContext = createExecutionContext(getResourceShareAssociationsRequest);
AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request* Retrieves details about invitations that you have received for resource shares. *
* * @param getResourceShareInvitationsRequest * @return Result of the GetResourceShareInvitations operation returned by the service. * @throws ResourceShareInvitationArnNotFoundException * The operation failed because the specified Amazon Resource Name * (ARN) for an invitation was not found. * @throws InvalidMaxResultsException * The operation failed because the specified value forMaxResults
isn't valid.
* @throws MalformedArnException
* The operation failed because the specified Amazon Resource Name
* (ARN) has a format that isn't valid.
* @throws UnknownResourceException
* The operation failed because a specified resource couldn't be found.
* @throws InvalidNextTokenException
* The operation failed because the specified value for NextToken
isn't valid. You must specify
* a value you received in the NextToken
response of a previous call to this operation.
* @throws InvalidParameterException
* The operation failed because a parameter you specified isn't valid.
* @throws ServerInternalException
* The operation failed because the service could not respond to the request due to an internal problem. Try
* again later.
* @throws ServiceUnavailableException
* The operation failed because the service isn't available. Try again later.
* @sample AWSRAM.GetResourceShareInvitations
* @see AWS API Documentation
*/
@Override
public GetResourceShareInvitationsResult getResourceShareInvitations(GetResourceShareInvitationsRequest request) {
request = beforeClientExecution(request);
return executeGetResourceShareInvitations(request);
}
@SdkInternalApi
final GetResourceShareInvitationsResult executeGetResourceShareInvitations(GetResourceShareInvitationsRequest getResourceShareInvitationsRequest) {
ExecutionContext executionContext = createExecutionContext(getResourceShareInvitationsRequest);
AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request* Retrieves details about the resource shares that you own or that are shared with you. *
* * @param getResourceSharesRequest * @return Result of the GetResourceShares operation returned by the service. * @throws UnknownResourceException * The operation failed because a specified resource couldn't be found. * @throws MalformedArnException * The operation failed because the specified Amazon Resource Name * (ARN) has a format that isn't valid. * @throws InvalidNextTokenException * The operation failed because the specified value forNextToken
isn't valid. You must specify
* a value you received in the NextToken
response of a previous call to this operation.
* @throws InvalidParameterException
* The operation failed because a parameter you specified isn't valid.
* @throws ServerInternalException
* The operation failed because the service could not respond to the request due to an internal problem. Try
* again later.
* @throws ServiceUnavailableException
* The operation failed because the service isn't available. Try again later.
* @sample AWSRAM.GetResourceShares
* @see AWS API
* Documentation
*/
@Override
public GetResourceSharesResult getResourceShares(GetResourceSharesRequest request) {
request = beforeClientExecution(request);
return executeGetResourceShares(request);
}
@SdkInternalApi
final GetResourceSharesResult executeGetResourceShares(GetResourceSharesRequest getResourceSharesRequest) {
ExecutionContext executionContext = createExecutionContext(getResourceSharesRequest);
AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request
* Lists the resources in a resource share that is shared with you but for which the invitation is still
* PENDING
. That means that you haven't accepted or rejected the invitation and the invitation hasn't
* expired.
*
NextToken
isn't valid. You must specify
* a value you received in the NextToken
response of a previous call to this operation.
* @throws InvalidParameterException
* The operation failed because a parameter you specified isn't valid.
* @throws ServerInternalException
* The operation failed because the service could not respond to the request due to an internal problem. Try
* again later.
* @throws ServiceUnavailableException
* The operation failed because the service isn't available. Try again later.
* @throws ResourceShareInvitationArnNotFoundException
* The operation failed because the specified Amazon Resource Name
* (ARN) for an invitation was not found.
* @throws MissingRequiredParameterException
* The operation failed because a required input parameter is missing.
* @throws ResourceShareInvitationAlreadyRejectedException
* The operation failed because the specified invitation was already rejected.
* @throws ResourceShareInvitationExpiredException
* The operation failed because the specified invitation is past its expiration date and time.
* @sample AWSRAM.ListPendingInvitationResources
* @see AWS API Documentation
*/
@Override
public ListPendingInvitationResourcesResult listPendingInvitationResources(ListPendingInvitationResourcesRequest request) {
request = beforeClientExecution(request);
return executeListPendingInvitationResources(request);
}
@SdkInternalApi
final ListPendingInvitationResourcesResult executeListPendingInvitationResources(ListPendingInvitationResourcesRequest listPendingInvitationResourcesRequest) {
ExecutionContext executionContext = createExecutionContext(listPendingInvitationResourcesRequest);
AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request* Lists information about the managed permission and its associations to any resource shares that use this managed * permission. This lets you see which resource shares use which versions of the specified managed permission. *
* * @param listPermissionAssociationsRequest * @return Result of the ListPermissionAssociations operation returned by the service. * @throws InvalidParameterException * The operation failed because a parameter you specified isn't valid. * @throws MalformedArnException * The operation failed because the specified Amazon Resource Name * (ARN) has a format that isn't valid. * @throws InvalidNextTokenException * The operation failed because the specified value forNextToken
isn't valid. You must specify
* a value you received in the NextToken
response of a previous call to this operation.
* @throws ServerInternalException
* The operation failed because the service could not respond to the request due to an internal problem. Try
* again later.
* @throws ServiceUnavailableException
* The operation failed because the service isn't available. Try again later.
* @sample AWSRAM.ListPermissionAssociations
* @see AWS
* API Documentation
*/
@Override
public ListPermissionAssociationsResult listPermissionAssociations(ListPermissionAssociationsRequest request) {
request = beforeClientExecution(request);
return executeListPermissionAssociations(request);
}
@SdkInternalApi
final ListPermissionAssociationsResult executeListPermissionAssociations(ListPermissionAssociationsRequest listPermissionAssociationsRequest) {
ExecutionContext executionContext = createExecutionContext(listPermissionAssociationsRequest);
AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request* Lists the available versions of the specified RAM permission. *
* * @param listPermissionVersionsRequest * @return Result of the ListPermissionVersions operation returned by the service. * @throws MalformedArnException * The operation failed because the specified Amazon Resource Name * (ARN) has a format that isn't valid. * @throws UnknownResourceException * The operation failed because a specified resource couldn't be found. * @throws InvalidNextTokenException * The operation failed because the specified value forNextToken
isn't valid. You must specify
* a value you received in the NextToken
response of a previous call to this operation.
* @throws ServerInternalException
* The operation failed because the service could not respond to the request due to an internal problem. Try
* again later.
* @throws ServiceUnavailableException
* The operation failed because the service isn't available. Try again later.
* @throws OperationNotPermittedException
* The operation failed because the requested operation isn't permitted.
* @throws InvalidParameterException
* The operation failed because a parameter you specified isn't valid.
* @sample AWSRAM.ListPermissionVersions
* @see AWS API
* Documentation
*/
@Override
public ListPermissionVersionsResult listPermissionVersions(ListPermissionVersionsRequest request) {
request = beforeClientExecution(request);
return executeListPermissionVersions(request);
}
@SdkInternalApi
final ListPermissionVersionsResult executeListPermissionVersions(ListPermissionVersionsRequest listPermissionVersionsRequest) {
ExecutionContext executionContext = createExecutionContext(listPermissionVersionsRequest);
AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request* Retrieves a list of available RAM permissions that you can use for the supported resource types. *
* * @param listPermissionsRequest * @return Result of the ListPermissions operation returned by the service. * @throws InvalidParameterException * The operation failed because a parameter you specified isn't valid. * @throws InvalidNextTokenException * The operation failed because the specified value forNextToken
isn't valid. You must specify
* a value you received in the NextToken
response of a previous call to this operation.
* @throws ServerInternalException
* The operation failed because the service could not respond to the request due to an internal problem. Try
* again later.
* @throws ServiceUnavailableException
* The operation failed because the service isn't available. Try again later.
* @throws OperationNotPermittedException
* The operation failed because the requested operation isn't permitted.
* @sample AWSRAM.ListPermissions
* @see AWS API
* Documentation
*/
@Override
public ListPermissionsResult listPermissions(ListPermissionsRequest request) {
request = beforeClientExecution(request);
return executeListPermissions(request);
}
@SdkInternalApi
final ListPermissionsResult executeListPermissions(ListPermissionsRequest listPermissionsRequest) {
ExecutionContext executionContext = createExecutionContext(listPermissionsRequest);
AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request* Lists the principals that you are sharing resources with or that are sharing resources with you. *
* * @param listPrincipalsRequest * @return Result of the ListPrincipals operation returned by the service. * @throws MalformedArnException * The operation failed because the specified Amazon Resource Name * (ARN) has a format that isn't valid. * @throws UnknownResourceException * The operation failed because a specified resource couldn't be found. * @throws InvalidNextTokenException * The operation failed because the specified value forNextToken
isn't valid. You must specify
* a value you received in the NextToken
response of a previous call to this operation.
* @throws InvalidParameterException
* The operation failed because a parameter you specified isn't valid.
* @throws ServerInternalException
* The operation failed because the service could not respond to the request due to an internal problem. Try
* again later.
* @throws ServiceUnavailableException
* The operation failed because the service isn't available. Try again later.
* @sample AWSRAM.ListPrincipals
* @see AWS API
* Documentation
*/
@Override
public ListPrincipalsResult listPrincipals(ListPrincipalsRequest request) {
request = beforeClientExecution(request);
return executeListPrincipals(request);
}
@SdkInternalApi
final ListPrincipalsResult executeListPrincipals(ListPrincipalsRequest listPrincipalsRequest) {
ExecutionContext executionContext = createExecutionContext(listPrincipalsRequest);
AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request* Retrieves the current status of the asynchronous tasks performed by RAM when you perform the * ReplacePermissionAssociationsWork operation. *
* * @param listReplacePermissionAssociationsWorkRequest * @return Result of the ListReplacePermissionAssociationsWork operation returned by the service. * @throws ServerInternalException * The operation failed because the service could not respond to the request due to an internal problem. Try * again later. * @throws ServiceUnavailableException * The operation failed because the service isn't available. Try again later. * @throws InvalidNextTokenException * The operation failed because the specified value forNextToken
isn't valid. You must specify
* a value you received in the NextToken
response of a previous call to this operation.
* @throws InvalidParameterException
* The operation failed because a parameter you specified isn't valid.
* @sample AWSRAM.ListReplacePermissionAssociationsWork
* @see AWS API Documentation
*/
@Override
public ListReplacePermissionAssociationsWorkResult listReplacePermissionAssociationsWork(ListReplacePermissionAssociationsWorkRequest request) {
request = beforeClientExecution(request);
return executeListReplacePermissionAssociationsWork(request);
}
@SdkInternalApi
final ListReplacePermissionAssociationsWorkResult executeListReplacePermissionAssociationsWork(
ListReplacePermissionAssociationsWorkRequest listReplacePermissionAssociationsWorkRequest) {
ExecutionContext executionContext = createExecutionContext(listReplacePermissionAssociationsWorkRequest);
AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request* Lists the RAM permissions that are associated with a resource share. *
* * @param listResourceSharePermissionsRequest * @return Result of the ListResourceSharePermissions operation returned by the service. * @throws InvalidParameterException * The operation failed because a parameter you specified isn't valid. * @throws MalformedArnException * The operation failed because the specified Amazon Resource Name * (ARN) has a format that isn't valid. * @throws UnknownResourceException * The operation failed because a specified resource couldn't be found. * @throws InvalidNextTokenException * The operation failed because the specified value forNextToken
isn't valid. You must specify
* a value you received in the NextToken
response of a previous call to this operation.
* @throws ServerInternalException
* The operation failed because the service could not respond to the request due to an internal problem. Try
* again later.
* @throws ServiceUnavailableException
* The operation failed because the service isn't available. Try again later.
* @throws OperationNotPermittedException
* The operation failed because the requested operation isn't permitted.
* @sample AWSRAM.ListResourceSharePermissions
* @see AWS API Documentation
*/
@Override
public ListResourceSharePermissionsResult listResourceSharePermissions(ListResourceSharePermissionsRequest request) {
request = beforeClientExecution(request);
return executeListResourceSharePermissions(request);
}
@SdkInternalApi
final ListResourceSharePermissionsResult executeListResourceSharePermissions(ListResourceSharePermissionsRequest listResourceSharePermissionsRequest) {
ExecutionContext executionContext = createExecutionContext(listResourceSharePermissionsRequest);
AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request* Lists the resource types that can be shared by RAM. *
* * @param listResourceTypesRequest * @return Result of the ListResourceTypes operation returned by the service. * @throws InvalidNextTokenException * The operation failed because the specified value forNextToken
isn't valid. You must specify
* a value you received in the NextToken
response of a previous call to this operation.
* @throws InvalidParameterException
* The operation failed because a parameter you specified isn't valid.
* @throws ServerInternalException
* The operation failed because the service could not respond to the request due to an internal problem. Try
* again later.
* @throws ServiceUnavailableException
* The operation failed because the service isn't available. Try again later.
* @sample AWSRAM.ListResourceTypes
* @see AWS API
* Documentation
*/
@Override
public ListResourceTypesResult listResourceTypes(ListResourceTypesRequest request) {
request = beforeClientExecution(request);
return executeListResourceTypes(request);
}
@SdkInternalApi
final ListResourceTypesResult executeListResourceTypes(ListResourceTypesRequest listResourceTypesRequest) {
ExecutionContext executionContext = createExecutionContext(listResourceTypesRequest);
AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request* Lists the resources that you added to a resource share or the resources that are shared with you. *
* * @param listResourcesRequest * @return Result of the ListResources operation returned by the service. * @throws InvalidResourceTypeException * The operation failed because the specified resource type isn't valid. * @throws UnknownResourceException * The operation failed because a specified resource couldn't be found. * @throws MalformedArnException * The operation failed because the specified Amazon Resource Name * (ARN) has a format that isn't valid. * @throws InvalidNextTokenException * The operation failed because the specified value forNextToken
isn't valid. You must specify
* a value you received in the NextToken
response of a previous call to this operation.
* @throws InvalidParameterException
* The operation failed because a parameter you specified isn't valid.
* @throws ServerInternalException
* The operation failed because the service could not respond to the request due to an internal problem. Try
* again later.
* @throws ServiceUnavailableException
* The operation failed because the service isn't available. Try again later.
* @sample AWSRAM.ListResources
* @see AWS API
* Documentation
*/
@Override
public ListResourcesResult listResources(ListResourcesRequest request) {
request = beforeClientExecution(request);
return executeListResources(request);
}
@SdkInternalApi
final ListResourcesResult executeListResources(ListResourcesRequest listResourcesRequest) {
ExecutionContext executionContext = createExecutionContext(listResourcesRequest);
AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
awsRequestMetrics.startEvent(Field.ClientExecuteTime);
Request
* When you attach a resource-based policy to a resource, RAM automatically creates a resource share of
* featureSet
=CREATED_FROM_POLICY
with a managed permission that has the same IAM
* permissions as the original resource-based policy. However, this type of managed permission is visible to only
* the resource share owner, and the associated resource share can't be modified by using RAM.
*
* This operation creates a separate, fully manageable customer managed permission that has the same IAM permissions * as the original resource-based policy. You can associate this customer managed permission to any resource shares. *
** Before you use PromoteResourceShareCreatedFromPolicy, you should first run this operation to ensure that * you have an appropriate customer managed permission that can be associated with the promoted resource share. *
*
* The original CREATED_FROM_POLICY
policy isn't deleted, and resource shares using that original
* policy aren't automatically updated.
*
* You can't modify a CREATED_FROM_POLICY
resource share so you can't associate the new customer
* managed permission by using ReplacePermsissionAssociations
. However, if you use
* PromoteResourceShareCreatedFromPolicy, that operation automatically associates the fully manageable
* customer managed permission to the newly promoted STANDARD
resource share.
*
* After you promote a resource share, if the original CREATED_FROM_POLICY
managed permission has no
* other associations to A resource share, then RAM automatically deletes it.
*
* When you attach a resource-based policy to a resource, RAM automatically creates a resource share of
* featureSet
=CREATED_FROM_POLICY
with a managed permission that has the same IAM
* permissions as the original resource-based policy. However, this type of managed permission is visible to only
* the resource share owner, and the associated resource share can't be modified by using RAM.
*
* This operation promotes the resource share to a STANDARD
resource share that is fully manageable in
* RAM. When you promote a resource share, you can then manage the resource share in RAM and it becomes visible to
* all of the principals you shared it with.
*
* Before you perform this operation, you should first run PromotePermissionCreatedFromPolicyto ensure that
* you have an appropriate customer managed permission that can be associated with this resource share after its is
* promoted. If this operation can't find a managed permission that exactly matches the existing
* CREATED_FROM_POLICY
permission, then this operation fails.
*
* Rejects an invitation to a resource share from another Amazon Web Services account. *
* * @param rejectResourceShareInvitationRequest * @return Result of the RejectResourceShareInvitation operation returned by the service. * @throws MalformedArnException * The operation failed because the specified Amazon Resource Name * (ARN) has a format that isn't valid. * @throws OperationNotPermittedException * The operation failed because the requested operation isn't permitted. * @throws ResourceShareInvitationArnNotFoundException * The operation failed because the specified Amazon Resource Name * (ARN) for an invitation was not found. * @throws ResourceShareInvitationAlreadyAcceptedException * The operation failed because the specified invitation was already accepted. * @throws ResourceShareInvitationAlreadyRejectedException * The operation failed because the specified invitation was already rejected. * @throws ResourceShareInvitationExpiredException * The operation failed because the specified invitation is past its expiration date and time. * @throws ServerInternalException * The operation failed because the service could not respond to the request due to an internal problem. Try * again later. * @throws ServiceUnavailableException * The operation failed because the service isn't available. Try again later. * @throws InvalidClientTokenException * The operation failed because the specified client token isn't valid. * @throws IdempotentParameterMismatchException * The operation failed because the client token input parameter matched one that was used with a previous * call to the operation, but at least one of the other input parameters is different from the previous * call. * @sample AWSRAM.RejectResourceShareInvitation * @see AWS API Documentation */ @Override public RejectResourceShareInvitationResult rejectResourceShareInvitation(RejectResourceShareInvitationRequest request) { request = beforeClientExecution(request); return executeRejectResourceShareInvitation(request); } @SdkInternalApi final RejectResourceShareInvitationResult executeRejectResourceShareInvitation(RejectResourceShareInvitationRequest rejectResourceShareInvitationRequest) { ExecutionContext executionContext = createExecutionContext(rejectResourceShareInvitationRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request* Updates all resource shares that use a managed permission to a different managed permission. This operation * always applies the default version of the target managed permission. You can optionally specify that the update * applies to only resource shares that currently use a specified version. This enables you to update to the latest * version, without changing the which managed permission is used. *
*
* You can use this operation to update all of your resource shares to use the current default version of the
* permission by specifying the same value for the fromPermissionArn
and toPermissionArn
* parameters.
*
* You can use the optional fromPermissionVersion
parameter to update only those resources that use a
* specified version of the managed permission to the new managed permission.
*
* To successfully perform this operation, you must have permission to update the resource-based policy on all * affected resource types. *
** Designates the specified version number as the default version for the specified customer managed permission. New * resource shares automatically use this new default permission. Existing resource shares continue to use their * original permission version, but you can use ReplacePermissionAssociations to update them. *
* * @param setDefaultPermissionVersionRequest * @return Result of the SetDefaultPermissionVersion operation returned by the service. * @throws InvalidParameterException * The operation failed because a parameter you specified isn't valid. * @throws MalformedArnException * The operation failed because the specified Amazon Resource Name * (ARN) has a format that isn't valid. * @throws ServerInternalException * The operation failed because the service could not respond to the request due to an internal problem. Try * again later. * @throws ServiceUnavailableException * The operation failed because the service isn't available. Try again later. * @throws UnknownResourceException * The operation failed because a specified resource couldn't be found. * @throws InvalidClientTokenException * The operation failed because the specified client token isn't valid. * @throws IdempotentParameterMismatchException * The operation failed because the client token input parameter matched one that was used with a previous * call to the operation, but at least one of the other input parameters is different from the previous * call. * @sample AWSRAM.SetDefaultPermissionVersion * @see AWS API Documentation */ @Override public SetDefaultPermissionVersionResult setDefaultPermissionVersion(SetDefaultPermissionVersionRequest request) { request = beforeClientExecution(request); return executeSetDefaultPermissionVersion(request); } @SdkInternalApi final SetDefaultPermissionVersionResult executeSetDefaultPermissionVersion(SetDefaultPermissionVersionRequest setDefaultPermissionVersionRequest) { ExecutionContext executionContext = createExecutionContext(setDefaultPermissionVersionRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request* Adds the specified tag keys and values to a resource share or managed permission. If you choose a resource share, * the tags are attached to only the resource share, not to the resources that are in the resource share. *
** The tags on a managed permission are the same for all versions of the managed permission. *
* * @param tagResourceRequest * @return Result of the TagResource operation returned by the service. * @throws InvalidParameterException * The operation failed because a parameter you specified isn't valid. * @throws MalformedArnException * The operation failed because the specified Amazon Resource Name * (ARN) has a format that isn't valid. * @throws UnknownResourceException * The operation failed because a specified resource couldn't be found. * @throws TagLimitExceededException * The operation failed because it would exceed the limit for tags for your Amazon Web Services account. * @throws ResourceArnNotFoundException * The operation failed because the specified Amazon Resource Name * (ARN) was not found. * @throws TagPolicyViolationException * The operation failed because the specified tag key is a reserved word and can't be used. * @throws ServerInternalException * The operation failed because the service could not respond to the request due to an internal problem. Try * again later. * @throws ServiceUnavailableException * The operation failed because the service isn't available. Try again later. * @sample AWSRAM.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* Removes the specified tag key and value pairs from the specified resource share or managed permission. *
* * @param untagResourceRequest * @return Result of the UntagResource operation returned by the service. * @throws UnknownResourceException * The operation failed because a specified resource couldn't be found. * @throws InvalidParameterException * The operation failed because a parameter you specified isn't valid. * @throws MalformedArnException * The operation failed because the specified Amazon Resource Name * (ARN) has a format that isn't valid. * @throws ServerInternalException * The operation failed because the service could not respond to the request due to an internal problem. Try * again later. * @throws ServiceUnavailableException * The operation failed because the service isn't available. Try again later. * @sample AWSRAM.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* Modifies some of the properties of the specified resource share. *
* * @param updateResourceShareRequest * @return Result of the UpdateResourceShare operation returned by the service. * @throws IdempotentParameterMismatchException * The operation failed because the client token input parameter matched one that was used with a previous * call to the operation, but at least one of the other input parameters is different from the previous * call. * @throws MissingRequiredParameterException * The operation failed because a required input parameter is missing. * @throws UnknownResourceException * The operation failed because a specified resource couldn't be found. * @throws MalformedArnException * The operation failed because the specified Amazon Resource Name * (ARN) has a format that isn't valid. * @throws InvalidClientTokenException * The operation failed because the specified client token isn't valid. * @throws InvalidParameterException * The operation failed because a parameter you specified isn't valid. * @throws OperationNotPermittedException * The operation failed because the requested operation isn't permitted. * @throws ServerInternalException * The operation failed because the service could not respond to the request due to an internal problem. Try * again later. * @throws ServiceUnavailableException * The operation failed because the service isn't available. Try again later. * @sample AWSRAM.UpdateResourceShare * @see AWS API * Documentation */ @Override public UpdateResourceShareResult updateResourceShare(UpdateResourceShareRequest request) { request = beforeClientExecution(request); return executeUpdateResourceShare(request); } @SdkInternalApi final UpdateResourceShareResult executeUpdateResourceShare(UpdateResourceShareRequest updateResourceShareRequest) { ExecutionContext executionContext = createExecutionContext(updateResourceShareRequest); AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics(); awsRequestMetrics.startEvent(Field.ClientExecuteTime); Request
* 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