Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
   /*
    * Copyright 2010-2015 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.elasticache;
  
  import org.w3c.dom.*;
  
  import java.net.*;
  import java.util.*;
  
  import com.amazonaws.*;
  
Client for accessing AmazonElastiCache. All service calls made using this client are blocking, and will not return until the service call completes.

Amazon ElastiCache

Amazon ElastiCache is a web service that makes it easier to set up, operate, and scale a distributed cache in the cloud.

With ElastiCache, customers gain all of the benefits of a high-performance, in-memory cache with far less of the administrative burden of launching and managing a distributed cache. The service makes setup, scaling, and cluster failure handling much simpler than in a self-managed cache deployment.

In addition, through integration with Amazon CloudWatch, customers get enhanced visibility into the key performance statistics associated with their cache and can receive alarms if a part of their cache runs hot.

  
  public class AmazonElastiCacheClient extends AmazonWebServiceClient implements AmazonElastiCache {

    
Provider for AWS credentials.
  
      private AWSCredentialsProvider awsCredentialsProvider;

    
List of exception unmarshallers for all AmazonElastiCache exceptions.
  
              = new ArrayList<Unmarshaller<AmazonServiceExceptionNode>>();

    
Constructs a new client to invoke service methods on AmazonElastiCache. A credentials provider chain will be used that searches for credentials in this order:
  • Environment Variables - AWS_ACCESS_KEY_ID and AWS_SECRET_KEY
  • Java System Properties - aws.accessKeyId and aws.secretKey
  • Instance profile credentials delivered through the Amazon EC2 metadata service

All service calls made using this new client object are blocking, and will not return until the service call completes.

  
      public AmazonElastiCacheClient() {
          this(new DefaultAWSCredentialsProviderChain(), new ClientConfiguration());
      }

    
Constructs a new client to invoke service methods on AmazonElastiCache. A credentials provider chain will be used that searches for credentials in this order:
  • Environment Variables - AWS_ACCESS_KEY_ID and AWS_SECRET_KEY
  • Java System Properties - aws.accessKeyId and aws.secretKey
  • Instance profile credentials delivered through the Amazon EC2 metadata service

All service calls made using this new client object are blocking, and will not return until the service call completes.

Parameters:
clientConfiguration The client configuration options controlling how this client connects to AmazonElastiCache (ex: proxy settings, retry counts, etc.).
See also:
com.amazonaws.auth.DefaultAWSCredentialsProviderChain
 
     public AmazonElastiCacheClient(ClientConfiguration clientConfiguration) {
         this(new DefaultAWSCredentialsProviderChain(), clientConfiguration);
     }

    
Constructs a new client to invoke service methods on AmazonElastiCache using the specified AWS account credentials.

All service calls made using this new client object are blocking, and will not return until the service call completes.

Parameters:
awsCredentials The AWS credentials (access key ID and secret key) to use when authenticating with AWS services.
 
     public AmazonElastiCacheClient(AWSCredentials awsCredentials) {
         this(awsCredentialsnew ClientConfiguration());
     }

    
Constructs a new client to invoke service methods on AmazonElastiCache using the specified AWS account credentials and client configuration options.

All service calls made using this new client object are blocking, and will not return until the service call completes.

Parameters:
awsCredentials The AWS credentials (access key ID and secret key) to use when authenticating with AWS services.
clientConfiguration The client configuration options controlling how this client connects to AmazonElastiCache (ex: proxy settings, retry counts, etc.).
 
     public AmazonElastiCacheClient(AWSCredentials awsCredentialsClientConfiguration clientConfiguration) {
         super(clientConfiguration);
         this. = new StaticCredentialsProvider(awsCredentials);
         init();
     }

    
Constructs a new client to invoke service methods on AmazonElastiCache using the specified AWS account credentials provider.

All service calls made using this new client object are blocking, and will not return until the service call completes.

Parameters:
awsCredentialsProvider The AWS credentials provider which will provide credentials to authenticate requests with AWS services.
 
     public AmazonElastiCacheClient(AWSCredentialsProvider awsCredentialsProvider) {
         this(awsCredentialsProvidernew ClientConfiguration());
     }

    
Constructs a new client to invoke service methods on AmazonElastiCache using the specified AWS account credentials provider and client configuration options.

All service calls made using this new client object are blocking, and will not return until the service call completes.

Parameters:
awsCredentialsProvider The AWS credentials provider which will provide credentials to authenticate requests with AWS services.
clientConfiguration The client configuration options controlling how this client connects to AmazonElastiCache (ex: proxy settings, retry counts, etc.).
 
     public AmazonElastiCacheClient(AWSCredentialsProvider awsCredentialsProviderClientConfiguration clientConfiguration) {
         this(awsCredentialsProviderclientConfigurationnull);
     }

    
Constructs a new client to invoke service methods on AmazonElastiCache using the specified AWS account credentials provider, client configuration options, and request metric collector.

All service calls made using this new client object are blocking, and will not return until the service call completes.

Parameters:
awsCredentialsProvider The AWS credentials provider which will provide credentials to authenticate requests with AWS services.
clientConfiguration The client configuration options controlling how this client connects to AmazonElastiCache (ex: proxy settings, retry counts, etc.).
requestMetricCollector optional request metric collector
 
     public AmazonElastiCacheClient(AWSCredentialsProvider awsCredentialsProvider,
             ClientConfiguration clientConfiguration,
             RequestMetricCollector requestMetricCollector) {
         super(clientConfigurationrequestMetricCollector);
         this. = awsCredentialsProvider;
         init();
     }
 
     private void init() {
         
         
         // calling this.setEndPoint(...) will also modify the signer accordingly
         this.setEndpoint("elasticache.us-east-1.amazonaws.com/");
         
         HandlerChainFactory chainFactory = new HandlerChainFactory();
         .addAll(chainFactory.newRequestHandlerChain(
                 "/com/amazonaws/services/elasticache/request.handlers"));
         .addAll(chainFactory.newRequestHandler2Chain(
                 "/com/amazonaws/services/elasticache/request.handler2s"));
     }

    

The DescribeEngineDefaultParameters action returns the default engine and system parameter information for the specified cache engine.

Parameters:
describeEngineDefaultParametersRequest Container for the necessary parameters to execute the DescribeEngineDefaultParameters service method on AmazonElastiCache.
Returns:
The response from the DescribeEngineDefaultParameters service method, as returned by AmazonElastiCache.
Throws:
com.amazonaws.services.elasticache.model.InvalidParameterValueException
com.amazonaws.services.elasticache.model.InvalidParameterCombinationException
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonElastiCache indicating either a problem with the data in the request, or a server side issue.
 
     public EngineDefaults describeEngineDefaultParameters(DescribeEngineDefaultParametersRequest describeEngineDefaultParametersRequest) {
         ExecutionContext executionContext = createExecutionContext(describeEngineDefaultParametersRequest);
         AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
         awsRequestMetrics.startEvent(.);
         Request<DescribeEngineDefaultParametersRequestrequest = null;
         Response<EngineDefaultsresponse = null;
         
         try {
             awsRequestMetrics.startEvent(.);
             try {
                 request = new DescribeEngineDefaultParametersRequestMarshaller().marshall(super.beforeMarshalling(describeEngineDefaultParametersRequest));
                 // Binds the request metrics to the current request.
                 request.setAWSRequestMetrics(awsRequestMetrics);
             } finally {
                 awsRequestMetrics.endEvent(.);
             }
 
             response = invoke(requestnew EngineDefaultsStaxUnmarshaller(), executionContext);
             return response.getAwsResponse();
 
         } finally {
             
             endClientExecution(awsRequestMetricsrequestresponse);
         }
     }
    
    

The DeleteCacheCluster action deletes a previously provisioned cache cluster. DeleteCacheCluster deletes all associated cache nodes, node endpoints and the cache cluster itself. When you receive a successful response from this action, Amazon ElastiCache immediately begins deleting the cache cluster; you cannot cancel or revert this action.

This API cannot be used to delete a cache cluster that is the last read replica of a replication group that has Multi-AZ mode enabled.

Parameters:
deleteCacheClusterRequest Container for the necessary parameters to execute the DeleteCacheCluster service method on AmazonElastiCache.
Returns:
The response from the DeleteCacheCluster service method, as returned by AmazonElastiCache.
Throws:
com.amazonaws.services.elasticache.model.InvalidParameterValueException
com.amazonaws.services.elasticache.model.SnapshotFeatureNotSupportedException
com.amazonaws.services.elasticache.model.CacheClusterNotFoundException
com.amazonaws.services.elasticache.model.InvalidParameterCombinationException
com.amazonaws.services.elasticache.model.InvalidCacheClusterStateException
com.amazonaws.services.elasticache.model.SnapshotAlreadyExistsException
com.amazonaws.services.elasticache.model.SnapshotQuotaExceededException
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonElastiCache indicating either a problem with the data in the request, or a server side issue.
 
     public CacheCluster deleteCacheCluster(DeleteCacheClusterRequest deleteCacheClusterRequest) {
         ExecutionContext executionContext = createExecutionContext(deleteCacheClusterRequest);
         AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
         awsRequestMetrics.startEvent(.);
         Request<DeleteCacheClusterRequestrequest = null;
         Response<CacheClusterresponse = null;
         
         try {
             awsRequestMetrics.startEvent(.);
             try {
                 request = new DeleteCacheClusterRequestMarshaller().marshall(super.beforeMarshalling(deleteCacheClusterRequest));
                 // Binds the request metrics to the current request.
                 request.setAWSRequestMetrics(awsRequestMetrics);
             } finally {
                 awsRequestMetrics.endEvent(.);
             }
 
             response = invoke(requestnew CacheClusterStaxUnmarshaller(), executionContext);
             return response.getAwsResponse();
 
         } finally {
             
             endClientExecution(awsRequestMetricsrequestresponse);
         }
     }
    
    

The DescribeReservedCacheNodes action returns information about reserved cache nodes for this account, or about a specified reserved cache node.

Parameters:
describeReservedCacheNodesRequest Container for the necessary parameters to execute the DescribeReservedCacheNodes service method on AmazonElastiCache.
Returns:
The response from the DescribeReservedCacheNodes service method, as returned by AmazonElastiCache.
Throws:
com.amazonaws.services.elasticache.model.ReservedCacheNodeNotFoundException
com.amazonaws.services.elasticache.model.InvalidParameterValueException
com.amazonaws.services.elasticache.model.InvalidParameterCombinationException
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonElastiCache indicating either a problem with the data in the request, or a server side issue.
 
         ExecutionContext executionContext = createExecutionContext(describeReservedCacheNodesRequest);
         AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
         awsRequestMetrics.startEvent(.);
         Request<DescribeReservedCacheNodesRequestrequest = null;
         Response<DescribeReservedCacheNodesResultresponse = null;
         
         try {
             awsRequestMetrics.startEvent(.);
             try {
                 request = new DescribeReservedCacheNodesRequestMarshaller().marshall(super.beforeMarshalling(describeReservedCacheNodesRequest));
                 // Binds the request metrics to the current request.
                 request.setAWSRequestMetrics(awsRequestMetrics);
             } finally {
                 awsRequestMetrics.endEvent(.);
             }
 
             response = invoke(requestnew DescribeReservedCacheNodesResultStaxUnmarshaller(), executionContext);
             return response.getAwsResponse();
 
         } finally {
             
             endClientExecution(awsRequestMetricsrequestresponse);
         }
     }
    
    

The DeleteReplicationGroup action deletes an existing replication group. By default, this action deletes the entire replication group, including the primary cluster and all of the read replicas. You can optionally delete only the read replicas, while retaining the primary cluster.

When you receive a successful response from this action, Amazon ElastiCache immediately begins deleting the selected resources; you cannot cancel or revert this action.

Parameters:
deleteReplicationGroupRequest Container for the necessary parameters to execute the DeleteReplicationGroup service method on AmazonElastiCache.
Returns:
The response from the DeleteReplicationGroup service method, as returned by AmazonElastiCache.
Throws:
com.amazonaws.services.elasticache.model.InvalidReplicationGroupStateException
com.amazonaws.services.elasticache.model.InvalidParameterValueException
com.amazonaws.services.elasticache.model.SnapshotFeatureNotSupportedException
com.amazonaws.services.elasticache.model.ReplicationGroupNotFoundException
com.amazonaws.services.elasticache.model.InvalidParameterCombinationException
com.amazonaws.services.elasticache.model.SnapshotAlreadyExistsException
com.amazonaws.services.elasticache.model.SnapshotQuotaExceededException
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonElastiCache indicating either a problem with the data in the request, or a server side issue.
 
     public ReplicationGroup deleteReplicationGroup(DeleteReplicationGroupRequest deleteReplicationGroupRequest) {
         ExecutionContext executionContext = createExecutionContext(deleteReplicationGroupRequest);
         AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
         awsRequestMetrics.startEvent(.);
         Request<DeleteReplicationGroupRequestrequest = null;
         Response<ReplicationGroupresponse = null;
         
         try {
             awsRequestMetrics.startEvent(.);
             try {
                 request = new DeleteReplicationGroupRequestMarshaller().marshall(super.beforeMarshalling(deleteReplicationGroupRequest));
                 // Binds the request metrics to the current request.
                 request.setAWSRequestMetrics(awsRequestMetrics);
             } finally {
                 awsRequestMetrics.endEvent(.);
             }
 
             response = invoke(requestnew ReplicationGroupStaxUnmarshaller(), executionContext);
             return response.getAwsResponse();
 
         } finally {
             
             endClientExecution(awsRequestMetricsrequestresponse);
         }
     }
    
    

The DeleteSnapshot action deletes an existing snapshot. When you receive a successful response from this action, ElastiCache immediately begins deleting the snapshot; you cannot cancel or revert this action.

Parameters:
deleteSnapshotRequest Container for the necessary parameters to execute the DeleteSnapshot service method on AmazonElastiCache.
Returns:
The response from the DeleteSnapshot service method, as returned by AmazonElastiCache.
Throws:
com.amazonaws.services.elasticache.model.InvalidSnapshotStateException
com.amazonaws.services.elasticache.model.InvalidParameterValueException
com.amazonaws.services.elasticache.model.SnapshotNotFoundException
com.amazonaws.services.elasticache.model.InvalidParameterCombinationException
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonElastiCache indicating either a problem with the data in the request, or a server side issue.
 
     public Snapshot deleteSnapshot(DeleteSnapshotRequest deleteSnapshotRequest) {
         ExecutionContext executionContext = createExecutionContext(deleteSnapshotRequest);
         AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
         awsRequestMetrics.startEvent(.);
         Request<DeleteSnapshotRequestrequest = null;
         Response<Snapshotresponse = null;
         
         try {
             awsRequestMetrics.startEvent(.);
             try {
                 request = new DeleteSnapshotRequestMarshaller().marshall(super.beforeMarshalling(deleteSnapshotRequest));
                 // Binds the request metrics to the current request.
                 request.setAWSRequestMetrics(awsRequestMetrics);
             } finally {
                 awsRequestMetrics.endEvent(.);
             }
 
             response = invoke(requestnew SnapshotStaxUnmarshaller(), executionContext);
             return response.getAwsResponse();
 
         } finally {
             
             endClientExecution(awsRequestMetricsrequestresponse);
         }
     }
    
    

The CreateCacheSubnetGroup action creates a new cache subnet group.

Use this parameter only when you are creating a cluster in an Amazon Virtual Private Cloud (VPC).

Parameters:
createCacheSubnetGroupRequest Container for the necessary parameters to execute the CreateCacheSubnetGroup service method on AmazonElastiCache.
Returns:
The response from the CreateCacheSubnetGroup service method, as returned by AmazonElastiCache.
Throws:
com.amazonaws.services.elasticache.model.CacheSubnetGroupAlreadyExistsException
com.amazonaws.services.elasticache.model.CacheSubnetGroupQuotaExceededException
com.amazonaws.services.elasticache.model.CacheSubnetQuotaExceededException
com.amazonaws.services.elasticache.model.InvalidSubnetException
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonElastiCache indicating either a problem with the data in the request, or a server side issue.
 
     public CacheSubnetGroup createCacheSubnetGroup(CreateCacheSubnetGroupRequest createCacheSubnetGroupRequest) {
         ExecutionContext executionContext = createExecutionContext(createCacheSubnetGroupRequest);
         AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
         awsRequestMetrics.startEvent(.);
         Request<CreateCacheSubnetGroupRequestrequest = null;
         Response<CacheSubnetGroupresponse = null;
         
         try {
             awsRequestMetrics.startEvent(.);
             try {
                 request = new CreateCacheSubnetGroupRequestMarshaller().marshall(super.beforeMarshalling(createCacheSubnetGroupRequest));
                 // Binds the request metrics to the current request.
                 request.setAWSRequestMetrics(awsRequestMetrics);
             } finally {
                 awsRequestMetrics.endEvent(.);
             }
 
             response = invoke(requestnew CacheSubnetGroupStaxUnmarshaller(), executionContext);
             return response.getAwsResponse();
 
         } finally {
             
             endClientExecution(awsRequestMetricsrequestresponse);
         }
     }
    
    

The DeleteCacheSubnetGroup action deletes a cache subnet group.

NOTE:You cannot delete a cache subnet group if it is associated with any cache clusters.

Parameters:
deleteCacheSubnetGroupRequest Container for the necessary parameters to execute the DeleteCacheSubnetGroup service method on AmazonElastiCache.
Throws:
com.amazonaws.services.elasticache.model.CacheSubnetGroupNotFoundException
com.amazonaws.services.elasticache.model.CacheSubnetGroupInUseException
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonElastiCache indicating either a problem with the data in the request, or a server side issue.
 
     public void deleteCacheSubnetGroup(DeleteCacheSubnetGroupRequest deleteCacheSubnetGroupRequest) {
         ExecutionContext executionContext = createExecutionContext(deleteCacheSubnetGroupRequest);
         AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
         Request<DeleteCacheSubnetGroupRequestrequest = null;
         awsRequestMetrics.startEvent(.);
         
         try {
             awsRequestMetrics.startEvent(.);
             try {
                 request = new DeleteCacheSubnetGroupRequestMarshaller().marshall(super.beforeMarshalling(deleteCacheSubnetGroupRequest));
                 // Binds the request metrics to the current request.
                 request.setAWSRequestMetrics(awsRequestMetrics);
             } finally {
                 awsRequestMetrics.endEvent(.);
             }
 
             invoke(requestnullexecutionContext);
 
         } finally {
             
             endClientExecution(awsRequestMetricsrequestnull);
         }
     }
    
    

The DescribeCacheParameters action returns the detailed parameter list for a particular cache parameter group.

Parameters:
describeCacheParametersRequest Container for the necessary parameters to execute the DescribeCacheParameters service method on AmazonElastiCache.
Returns:
The response from the DescribeCacheParameters service method, as returned by AmazonElastiCache.
Throws:
com.amazonaws.services.elasticache.model.InvalidParameterValueException
com.amazonaws.services.elasticache.model.InvalidParameterCombinationException
com.amazonaws.services.elasticache.model.CacheParameterGroupNotFoundException
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonElastiCache indicating either a problem with the data in the request, or a server side issue.
 
     public DescribeCacheParametersResult describeCacheParameters(DescribeCacheParametersRequest describeCacheParametersRequest) {
         ExecutionContext executionContext = createExecutionContext(describeCacheParametersRequest);
         AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
         awsRequestMetrics.startEvent(.);
         Request<DescribeCacheParametersRequestrequest = null;
         Response<DescribeCacheParametersResultresponse = null;
         
         try {
             awsRequestMetrics.startEvent(.);
             try {
                 request = new DescribeCacheParametersRequestMarshaller().marshall(super.beforeMarshalling(describeCacheParametersRequest));
                 // Binds the request metrics to the current request.
                 request.setAWSRequestMetrics(awsRequestMetrics);
             } finally {
                 awsRequestMetrics.endEvent(.);
             }
 
             response = invoke(requestnew DescribeCacheParametersResultStaxUnmarshaller(), executionContext);
             return response.getAwsResponse();
 
         } finally {
             
             endClientExecution(awsRequestMetricsrequestresponse);
         }
     }
    
    

The ListTagsForResource action lists all cost allocation tags currently on the named resource. A cost allocation tag is a key-value pair where the key is case-sensitive and the value is optional. Cost allocation tags can be used to categorize and track your AWS costs.

You can have a maximum of 10 cost allocation tags on an ElastiCache resource. For more information, see Using Cost Allocation Tags in Amazon ElastiCache .

Parameters:
listTagsForResourceRequest Container for the necessary parameters to execute the ListTagsForResource service method on AmazonElastiCache.
Returns:
The response from the ListTagsForResource service method, as returned by AmazonElastiCache.
Throws:
com.amazonaws.services.elasticache.model.SnapshotNotFoundException
com.amazonaws.services.elasticache.model.CacheClusterNotFoundException
com.amazonaws.services.elasticache.model.InvalidARNException
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonElastiCache indicating either a problem with the data in the request, or a server side issue.
 
     public ListTagsForResourceResult listTagsForResource(ListTagsForResourceRequest listTagsForResourceRequest) {
         ExecutionContext executionContext = createExecutionContext(listTagsForResourceRequest);
         AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
         awsRequestMetrics.startEvent(.);
         Request<ListTagsForResourceRequestrequest = null;
         Response<ListTagsForResourceResultresponse = null;
         
         try {
             awsRequestMetrics.startEvent(.);
             try {
                 request = new ListTagsForResourceRequestMarshaller().marshall(super.beforeMarshalling(listTagsForResourceRequest));
                 // Binds the request metrics to the current request.
                 request.setAWSRequestMetrics(awsRequestMetrics);
             } finally {
                 awsRequestMetrics.endEvent(.);
             }
 
             response = invoke(requestnew ListTagsForResourceResultStaxUnmarshaller(), executionContext);
             return response.getAwsResponse();
 
         } finally {
             
             endClientExecution(awsRequestMetricsrequestresponse);
         }
     }
    
    

The DeleteCacheSecurityGroup action deletes a cache security group.

NOTE:You cannot delete a cache security group if it is associated with any cache clusters.

Parameters:
deleteCacheSecurityGroupRequest Container for the necessary parameters to execute the DeleteCacheSecurityGroup service method on AmazonElastiCache.
Throws:
com.amazonaws.services.elasticache.model.InvalidParameterValueException
com.amazonaws.services.elasticache.model.InvalidCacheSecurityGroupStateException
com.amazonaws.services.elasticache.model.InvalidParameterCombinationException
com.amazonaws.services.elasticache.model.CacheSecurityGroupNotFoundException
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonElastiCache indicating either a problem with the data in the request, or a server side issue.
 
     public void deleteCacheSecurityGroup(DeleteCacheSecurityGroupRequest deleteCacheSecurityGroupRequest) {
         ExecutionContext executionContext = createExecutionContext(deleteCacheSecurityGroupRequest);
         AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
         Request<DeleteCacheSecurityGroupRequestrequest = null;
         awsRequestMetrics.startEvent(.);
         
         try {
             awsRequestMetrics.startEvent(.);
             try {
                 request = new DeleteCacheSecurityGroupRequestMarshaller().marshall(super.beforeMarshalling(deleteCacheSecurityGroupRequest));
                 // Binds the request metrics to the current request.
                 request.setAWSRequestMetrics(awsRequestMetrics);
             } finally {
                 awsRequestMetrics.endEvent(.);
             }
 
             invoke(requestnullexecutionContext);
 
         } finally {
             
             endClientExecution(awsRequestMetricsrequestnull);
         }
     }
    
    

The AddTagsToResource action adds up to 10 cost allocation tags to the named resource. A cost allocation tag is a key-value pair where the key and value are case-sensitive. Cost allocation tags can be used to categorize and track your AWS costs.

When you apply tags to your ElastiCache resources, AWS generates a cost allocation report as a comma-separated value (CSV) file with your usage and costs aggregated by your tags. You can apply tags that represent business categories (such as cost centers, application names, or owners) to organize your costs across multiple services. For more information, see Using Cost Allocation Tags in Amazon ElastiCache .

Parameters:
addTagsToResourceRequest Container for the necessary parameters to execute the AddTagsToResource service method on AmazonElastiCache.
Returns:
The response from the AddTagsToResource service method, as returned by AmazonElastiCache.
Throws:
com.amazonaws.services.elasticache.model.SnapshotNotFoundException
com.amazonaws.services.elasticache.model.TagQuotaPerResourceExceededException
com.amazonaws.services.elasticache.model.CacheClusterNotFoundException
com.amazonaws.services.elasticache.model.InvalidARNException
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonElastiCache indicating either a problem with the data in the request, or a server side issue.
 
     public AddTagsToResourceResult addTagsToResource(AddTagsToResourceRequest addTagsToResourceRequest) {
         ExecutionContext executionContext = createExecutionContext(addTagsToResourceRequest);
         AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
         awsRequestMetrics.startEvent(.);
         Request<AddTagsToResourceRequestrequest = null;
         Response<AddTagsToResourceResultresponse = null;
         
         try {
             awsRequestMetrics.startEvent(.);
             try {
                 request = new AddTagsToResourceRequestMarshaller().marshall(super.beforeMarshalling(addTagsToResourceRequest));
                 // Binds the request metrics to the current request.
                 request.setAWSRequestMetrics(awsRequestMetrics);
             } finally {
                 awsRequestMetrics.endEvent(.);
             }
 
             response = invoke(requestnew AddTagsToResourceResultStaxUnmarshaller(), executionContext);
             return response.getAwsResponse();
 
         } finally {
             
             endClientExecution(awsRequestMetricsrequestresponse);
         }
     }
    
    

The CopySnapshot action makes a copy of an existing snapshot.

Parameters:
copySnapshotRequest Container for the necessary parameters to execute the CopySnapshot service method on AmazonElastiCache.
Returns:
The response from the CopySnapshot service method, as returned by AmazonElastiCache.
Throws:
com.amazonaws.services.elasticache.model.InvalidSnapshotStateException
com.amazonaws.services.elasticache.model.InvalidParameterValueException
com.amazonaws.services.elasticache.model.SnapshotNotFoundException
com.amazonaws.services.elasticache.model.InvalidParameterCombinationException
com.amazonaws.services.elasticache.model.SnapshotAlreadyExistsException
com.amazonaws.services.elasticache.model.SnapshotQuotaExceededException
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonElastiCache indicating either a problem with the data in the request, or a server side issue.
 
     public Snapshot copySnapshot(CopySnapshotRequest copySnapshotRequest) {
         ExecutionContext executionContext = createExecutionContext(copySnapshotRequest);
         AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
         awsRequestMetrics.startEvent(.);
         Request<CopySnapshotRequestrequest = null;
         Response<Snapshotresponse = null;
         
         try {
             awsRequestMetrics.startEvent(.);
             try {
                 request = new CopySnapshotRequestMarshaller().marshall(super.beforeMarshalling(copySnapshotRequest));
                 // Binds the request metrics to the current request.
                 request.setAWSRequestMetrics(awsRequestMetrics);
             } finally {
                 awsRequestMetrics.endEvent(.);
             }
 
             response = invoke(requestnew SnapshotStaxUnmarshaller(), executionContext);
             return response.getAwsResponse();
 
         } finally {
             
             endClientExecution(awsRequestMetricsrequestresponse);
         }
     }
    
    

The DescribeSnapshots action returns information about cache cluster snapshots. By default, DescribeSnapshots lists all of your snapshots; it can optionally describe a single snapshot, or just the snapshots associated with a particular cache cluster.

Parameters:
describeSnapshotsRequest Container for the necessary parameters to execute the DescribeSnapshots service method on AmazonElastiCache.
Returns:
The response from the DescribeSnapshots service method, as returned by AmazonElastiCache.
Throws:
com.amazonaws.services.elasticache.model.InvalidParameterValueException
com.amazonaws.services.elasticache.model.SnapshotNotFoundException
com.amazonaws.services.elasticache.model.CacheClusterNotFoundException
com.amazonaws.services.elasticache.model.InvalidParameterCombinationException
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonElastiCache indicating either a problem with the data in the request, or a server side issue.
 
     public DescribeSnapshotsResult describeSnapshots(DescribeSnapshotsRequest describeSnapshotsRequest) {
         ExecutionContext executionContext = createExecutionContext(describeSnapshotsRequest);
         AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
         awsRequestMetrics.startEvent(.);
         Request<DescribeSnapshotsRequestrequest = null;
         Response<DescribeSnapshotsResultresponse = null;
         
         try {
             awsRequestMetrics.startEvent(.);
             try {
                 request = new DescribeSnapshotsRequestMarshaller().marshall(super.beforeMarshalling(describeSnapshotsRequest));
                 // Binds the request metrics to the current request.
                 request.setAWSRequestMetrics(awsRequestMetrics);
             } finally {
                 awsRequestMetrics.endEvent(.);
             }
 
             response = invoke(requestnew DescribeSnapshotsResultStaxUnmarshaller(), executionContext);
             return response.getAwsResponse();
 
         } finally {
             
             endClientExecution(awsRequestMetricsrequestresponse);
         }
     }
    
    

The DescribeCacheSecurityGroups action returns a list of cache security group descriptions. If a cache security group name is specified, the list will contain only the description of that group.

Parameters:
describeCacheSecurityGroupsRequest Container for the necessary parameters to execute the DescribeCacheSecurityGroups service method on AmazonElastiCache.
Returns:
The response from the DescribeCacheSecurityGroups service method, as returned by AmazonElastiCache.
Throws:
com.amazonaws.services.elasticache.model.InvalidParameterValueException
com.amazonaws.services.elasticache.model.InvalidParameterCombinationException
com.amazonaws.services.elasticache.model.CacheSecurityGroupNotFoundException
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonElastiCache indicating either a problem with the data in the request, or a server side issue.
        ExecutionContext executionContext = createExecutionContext(describeCacheSecurityGroupsRequest);
        AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
        awsRequestMetrics.startEvent(.);
        Request<DescribeCacheSecurityGroupsRequestrequest = null;
        Response<DescribeCacheSecurityGroupsResultresponse = null;
        
        try {
            awsRequestMetrics.startEvent(.);
            try {
                request = new DescribeCacheSecurityGroupsRequestMarshaller().marshall(super.beforeMarshalling(describeCacheSecurityGroupsRequest));
                // Binds the request metrics to the current request.
                request.setAWSRequestMetrics(awsRequestMetrics);
            } finally {
                awsRequestMetrics.endEvent(.);
            }
            response = invoke(requestnew DescribeCacheSecurityGroupsResultStaxUnmarshaller(), executionContext);
            return response.getAwsResponse();
        } finally {
            
            endClientExecution(awsRequestMetricsrequestresponse);
        }
    }
    
    

The RevokeCacheSecurityGroupIngress action revokes ingress from a cache security group. Use this action to disallow access from an Amazon EC2 security group that had been previously authorized.

Parameters:
revokeCacheSecurityGroupIngressRequest Container for the necessary parameters to execute the RevokeCacheSecurityGroupIngress service method on AmazonElastiCache.
Returns:
The response from the RevokeCacheSecurityGroupIngress service method, as returned by AmazonElastiCache.
Throws:
com.amazonaws.services.elasticache.model.InvalidParameterValueException
com.amazonaws.services.elasticache.model.InvalidCacheSecurityGroupStateException
com.amazonaws.services.elasticache.model.AuthorizationNotFoundException
com.amazonaws.services.elasticache.model.InvalidParameterCombinationException
com.amazonaws.services.elasticache.model.CacheSecurityGroupNotFoundException
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonElastiCache indicating either a problem with the data in the request, or a server side issue.
    public CacheSecurityGroup revokeCacheSecurityGroupIngress(RevokeCacheSecurityGroupIngressRequest revokeCacheSecurityGroupIngressRequest) {
        ExecutionContext executionContext = createExecutionContext(revokeCacheSecurityGroupIngressRequest);
        AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
        awsRequestMetrics.startEvent(.);
        Request<RevokeCacheSecurityGroupIngressRequestrequest = null;
        Response<CacheSecurityGroupresponse = null;
        
        try {
            awsRequestMetrics.startEvent(.);
            try {
                request = new RevokeCacheSecurityGroupIngressRequestMarshaller().marshall(super.beforeMarshalling(revokeCacheSecurityGroupIngressRequest));
                // Binds the request metrics to the current request.
                request.setAWSRequestMetrics(awsRequestMetrics);
            } finally {
                awsRequestMetrics.endEvent(.);
            }
            response = invoke(requestnew CacheSecurityGroupStaxUnmarshaller(), executionContext);
            return response.getAwsResponse();
        } finally {
            
            endClientExecution(awsRequestMetricsrequestresponse);
        }
    }
    
    

The CreateReplicationGroup action creates a replication group. A replication group is a collection of cache clusters, where one of the cache clusters is a read/write primary and the others are read-only replicas. Writes to the primary are automatically propagated to the replicas.

When you create a replication group, you must specify an existing cache cluster that is in the primary role. When the replication group has been successfully created, you can add one or more read replica replicas to it, up to a total of five read replicas.

Note: This action is valid only for Redis.

Parameters:
createReplicationGroupRequest Container for the necessary parameters to execute the CreateReplicationGroup service method on AmazonElastiCache.
Returns:
The response from the CreateReplicationGroup service method, as returned by AmazonElastiCache.
Throws:
com.amazonaws.services.elasticache.model.NodeQuotaForCustomerExceededException
com.amazonaws.services.elasticache.model.ClusterQuotaForCustomerExceededException
com.amazonaws.services.elasticache.model.TagQuotaPerResourceExceededException
com.amazonaws.services.elasticache.model.InsufficientCacheClusterCapacityException
com.amazonaws.services.elasticache.model.InvalidParameterCombinationException
com.amazonaws.services.elasticache.model.CacheClusterNotFoundException
com.amazonaws.services.elasticache.model.CacheParameterGroupNotFoundException
com.amazonaws.services.elasticache.model.InvalidCacheClusterStateException
com.amazonaws.services.elasticache.model.CacheSecurityGroupNotFoundException
com.amazonaws.services.elasticache.model.ReplicationGroupAlreadyExistsException
com.amazonaws.services.elasticache.model.NodeQuotaForClusterExceededException
com.amazonaws.services.elasticache.model.CacheSubnetGroupNotFoundException
com.amazonaws.services.elasticache.model.InvalidParameterValueException
com.amazonaws.services.elasticache.model.InvalidVPCNetworkStateException
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonElastiCache indicating either a problem with the data in the request, or a server side issue.
    public ReplicationGroup createReplicationGroup(CreateReplicationGroupRequest createReplicationGroupRequest) {
        ExecutionContext executionContext = createExecutionContext(createReplicationGroupRequest);
        AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
        awsRequestMetrics.startEvent(.);
        Request<CreateReplicationGroupRequestrequest = null;
        Response<ReplicationGroupresponse = null;
        
        try {
            awsRequestMetrics.startEvent(.);
            try {
                request = new CreateReplicationGroupRequestMarshaller().marshall(super.beforeMarshalling(createReplicationGroupRequest));
                // Binds the request metrics to the current request.
                request.setAWSRequestMetrics(awsRequestMetrics);
            } finally {
                awsRequestMetrics.endEvent(.);
            }
            response = invoke(requestnew ReplicationGroupStaxUnmarshaller(), executionContext);
            return response.getAwsResponse();
        } finally {
            
            endClientExecution(awsRequestMetricsrequestresponse);
        }
    }
    
    

The RemoveTagsFromResource action removes the tags identified by the TagKeys list from the named resource.

Parameters:
removeTagsFromResourceRequest Container for the necessary parameters to execute the RemoveTagsFromResource service method on AmazonElastiCache.
Returns:
The response from the RemoveTagsFromResource service method, as returned by AmazonElastiCache.
Throws:
com.amazonaws.services.elasticache.model.TagNotFoundException
com.amazonaws.services.elasticache.model.SnapshotNotFoundException
com.amazonaws.services.elasticache.model.CacheClusterNotFoundException
com.amazonaws.services.elasticache.model.InvalidARNException
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonElastiCache indicating either a problem with the data in the request, or a server side issue.
        ExecutionContext executionContext = createExecutionContext(removeTagsFromResourceRequest);
        AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
        awsRequestMetrics.startEvent(.);
        Request<RemoveTagsFromResourceRequestrequest = null;
        Response<RemoveTagsFromResourceResultresponse = null;
        
        try {
            awsRequestMetrics.startEvent(.);
            try {
                request = new RemoveTagsFromResourceRequestMarshaller().marshall(super.beforeMarshalling(removeTagsFromResourceRequest));
                // Binds the request metrics to the current request.
                request.setAWSRequestMetrics(awsRequestMetrics);
            } finally {
                awsRequestMetrics.endEvent(.);
            }
            response = invoke(requestnew RemoveTagsFromResourceResultStaxUnmarshaller(), executionContext);
            return response.getAwsResponse();
        } finally {
            
            endClientExecution(awsRequestMetricsrequestresponse);
        }
    }
    
    

The CreateCacheCluster action creates a cache cluster. All nodes in the cache cluster run the same protocol-compliant cache engine software, either Memcached or Redis.

Parameters:
createCacheClusterRequest Container for the necessary parameters to execute the CreateCacheCluster service method on AmazonElastiCache.
Returns:
The response from the CreateCacheCluster service method, as returned by AmazonElastiCache.
Throws:
com.amazonaws.services.elasticache.model.NodeQuotaForCustomerExceededException
com.amazonaws.services.elasticache.model.ClusterQuotaForCustomerExceededException
com.amazonaws.services.elasticache.model.CacheClusterAlreadyExistsException
com.amazonaws.services.elasticache.model.TagQuotaPerResourceExceededException
com.amazonaws.services.elasticache.model.InsufficientCacheClusterCapacityException
com.amazonaws.services.elasticache.model.InvalidParameterCombinationException
com.amazonaws.services.elasticache.model.ReplicationGroupNotFoundException
com.amazonaws.services.elasticache.model.CacheParameterGroupNotFoundException
com.amazonaws.services.elasticache.model.CacheSecurityGroupNotFoundException
com.amazonaws.services.elasticache.model.NodeQuotaForClusterExceededException
com.amazonaws.services.elasticache.model.CacheSubnetGroupNotFoundException
com.amazonaws.services.elasticache.model.InvalidReplicationGroupStateException
com.amazonaws.services.elasticache.model.InvalidParameterValueException
com.amazonaws.services.elasticache.model.InvalidVPCNetworkStateException
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonElastiCache indicating either a problem with the data in the request, or a server side issue.
    public CacheCluster createCacheCluster(CreateCacheClusterRequest createCacheClusterRequest) {
        ExecutionContext executionContext = createExecutionContext(createCacheClusterRequest);
        AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
        awsRequestMetrics.startEvent(.);
        Request<CreateCacheClusterRequestrequest = null;
        Response<CacheClusterresponse = null;
        
        try {
            awsRequestMetrics.startEvent(.);
            try {
                request = new CreateCacheClusterRequestMarshaller().marshall(super.beforeMarshalling(createCacheClusterRequest));
                // Binds the request metrics to the current request.
                request.setAWSRequestMetrics(awsRequestMetrics);
            } finally {
                awsRequestMetrics.endEvent(.);
            }
            response = invoke(requestnew CacheClusterStaxUnmarshaller(), executionContext);
            return response.getAwsResponse();
        } finally {
            
            endClientExecution(awsRequestMetricsrequestresponse);
        }
    }
    
    

The DescribeCacheEngineVersions action returns a list of the available cache engines and their versions.

Parameters:
describeCacheEngineVersionsRequest Container for the necessary parameters to execute the DescribeCacheEngineVersions service method on AmazonElastiCache.
Returns:
The response from the DescribeCacheEngineVersions service method, as returned by AmazonElastiCache.
Throws:
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonElastiCache indicating either a problem with the data in the request, or a server side issue.
        ExecutionContext executionContext = createExecutionContext(describeCacheEngineVersionsRequest);
        AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
        awsRequestMetrics.startEvent(.);
        Request<DescribeCacheEngineVersionsRequestrequest = null;
        Response<DescribeCacheEngineVersionsResultresponse = null;
        
        try {
            awsRequestMetrics.startEvent(.);
            try {
                request = new DescribeCacheEngineVersionsRequestMarshaller().marshall(super.beforeMarshalling(describeCacheEngineVersionsRequest));
                // Binds the request metrics to the current request.
                request.setAWSRequestMetrics(awsRequestMetrics);
            } finally {
                awsRequestMetrics.endEvent(.);
            }
            response = invoke(requestnew DescribeCacheEngineVersionsResultStaxUnmarshaller(), executionContext);
            return response.getAwsResponse();
        } finally {
            
            endClientExecution(awsRequestMetricsrequestresponse);
        }
    }
    
    

The ModifyCacheSubnetGroup action modifies an existing cache subnet group.

Parameters:
modifyCacheSubnetGroupRequest Container for the necessary parameters to execute the ModifyCacheSubnetGroup service method on AmazonElastiCache.
Returns:
The response from the ModifyCacheSubnetGroup service method, as returned by AmazonElastiCache.
Throws:
com.amazonaws.services.elasticache.model.CacheSubnetGroupNotFoundException
com.amazonaws.services.elasticache.model.CacheSubnetQuotaExceededException
com.amazonaws.services.elasticache.model.InvalidSubnetException
com.amazonaws.services.elasticache.model.SubnetInUseException
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonElastiCache indicating either a problem with the data in the request, or a server side issue.
    public CacheSubnetGroup modifyCacheSubnetGroup(ModifyCacheSubnetGroupRequest modifyCacheSubnetGroupRequest) {
        ExecutionContext executionContext = createExecutionContext(modifyCacheSubnetGroupRequest);
        AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
        awsRequestMetrics.startEvent(.);
        Request<ModifyCacheSubnetGroupRequestrequest = null;
        Response<CacheSubnetGroupresponse = null;
        
        try {
            awsRequestMetrics.startEvent(.);
            try {
                request = new ModifyCacheSubnetGroupRequestMarshaller().marshall(super.beforeMarshalling(modifyCacheSubnetGroupRequest));
                // Binds the request metrics to the current request.
                request.setAWSRequestMetrics(awsRequestMetrics);
            } finally {
                awsRequestMetrics.endEvent(.);
            }
            response = invoke(requestnew CacheSubnetGroupStaxUnmarshaller(), executionContext);
            return response.getAwsResponse();
        } finally {
            
            endClientExecution(awsRequestMetricsrequestresponse);
        }
    }
    
    

The DeleteCacheParameterGroup action deletes the specified cache parameter group. You cannot delete a cache parameter group if it is associated with any cache clusters.

Parameters:
deleteCacheParameterGroupRequest Container for the necessary parameters to execute the DeleteCacheParameterGroup service method on AmazonElastiCache.
Throws:
com.amazonaws.services.elasticache.model.InvalidParameterValueException
com.amazonaws.services.elasticache.model.InvalidParameterCombinationException
com.amazonaws.services.elasticache.model.InvalidCacheParameterGroupStateException
com.amazonaws.services.elasticache.model.CacheParameterGroupNotFoundException
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonElastiCache indicating either a problem with the data in the request, or a server side issue.
    public void deleteCacheParameterGroup(DeleteCacheParameterGroupRequest deleteCacheParameterGroupRequest) {
        ExecutionContext executionContext = createExecutionContext(deleteCacheParameterGroupRequest);
        AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
        Request<DeleteCacheParameterGroupRequestrequest = null;
        awsRequestMetrics.startEvent(.);
        
        try {
            awsRequestMetrics.startEvent(.);
            try {
                request = new DeleteCacheParameterGroupRequestMarshaller().marshall(super.beforeMarshalling(deleteCacheParameterGroupRequest));
                // Binds the request metrics to the current request.
                request.setAWSRequestMetrics(awsRequestMetrics);
            } finally {
                awsRequestMetrics.endEvent(.);
            }
            invoke(requestnullexecutionContext);
        } finally {
            
            endClientExecution(awsRequestMetricsrequestnull);
        }
    }
    
    

The CreateSnapshot action creates a copy of an entire cache cluster at a specific moment in time.

Parameters:
createSnapshotRequest Container for the necessary parameters to execute the CreateSnapshot service method on AmazonElastiCache.
Returns:
The response from the CreateSnapshot service method, as returned by AmazonElastiCache.
Throws:
com.amazonaws.services.elasticache.model.InvalidParameterValueException
com.amazonaws.services.elasticache.model.SnapshotFeatureNotSupportedException
com.amazonaws.services.elasticache.model.CacheClusterNotFoundException
com.amazonaws.services.elasticache.model.InvalidParameterCombinationException
com.amazonaws.services.elasticache.model.SnapshotAlreadyExistsException
com.amazonaws.services.elasticache.model.InvalidCacheClusterStateException
com.amazonaws.services.elasticache.model.SnapshotQuotaExceededException
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonElastiCache indicating either a problem with the data in the request, or a server side issue.
    public Snapshot createSnapshot(CreateSnapshotRequest createSnapshotRequest) {
        ExecutionContext executionContext = createExecutionContext(createSnapshotRequest);
        AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
        awsRequestMetrics.startEvent(.);
        Request<CreateSnapshotRequestrequest = null;
        Response<Snapshotresponse = null;
        
        try {
            awsRequestMetrics.startEvent(.);
            try {
                request = new CreateSnapshotRequestMarshaller().marshall(super.beforeMarshalling(createSnapshotRequest));
                // Binds the request metrics to the current request.
                request.setAWSRequestMetrics(awsRequestMetrics);
            } finally {
                awsRequestMetrics.endEvent(.);
            }
            response = invoke(requestnew SnapshotStaxUnmarshaller(), executionContext);
            return response.getAwsResponse();
        } finally {
            
            endClientExecution(awsRequestMetricsrequestresponse);
        }
    }
    
    

The DescribeEvents action returns events related to cache clusters, cache security groups, and cache parameter groups. You can obtain events specific to a particular cache cluster, cache security group, or cache parameter group by providing the name as a parameter.

By default, only the events occurring within the last hour are returned; however, you can retrieve up to 14 days' worth of events if necessary.

Parameters:
describeEventsRequest Container for the necessary parameters to execute the DescribeEvents service method on AmazonElastiCache.
Returns:
The response from the DescribeEvents service method, as returned by AmazonElastiCache.
Throws:
com.amazonaws.services.elasticache.model.InvalidParameterValueException
com.amazonaws.services.elasticache.model.InvalidParameterCombinationException
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonElastiCache indicating either a problem with the data in the request, or a server side issue.
    public DescribeEventsResult describeEvents(DescribeEventsRequest describeEventsRequest) {
        ExecutionContext executionContext = createExecutionContext(describeEventsRequest);
        AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
        awsRequestMetrics.startEvent(.);
        Request<DescribeEventsRequestrequest = null;
        Response<DescribeEventsResultresponse = null;
        
        try {
            awsRequestMetrics.startEvent(.);
            try {
                request = new DescribeEventsRequestMarshaller().marshall(super.beforeMarshalling(describeEventsRequest));
                // Binds the request metrics to the current request.
                request.setAWSRequestMetrics(awsRequestMetrics);
            } finally {
                awsRequestMetrics.endEvent(.);
            }
            response = invoke(requestnew DescribeEventsResultStaxUnmarshaller(), executionContext);
            return response.getAwsResponse();
        } finally {
            
            endClientExecution(awsRequestMetricsrequestresponse);
        }
    }
    
    

The AuthorizeCacheSecurityGroupIngress action allows network ingress to a cache security group. Applications using ElastiCache must be running on Amazon EC2, and Amazon EC2 security groups are used as the authorization mechanism.

NOTE:You cannot authorize ingress from an Amazon EC2 security group in one region to an ElastiCache cluster in another region.

Parameters:
authorizeCacheSecurityGroupIngressRequest Container for the necessary parameters to execute the AuthorizeCacheSecurityGroupIngress service method on AmazonElastiCache.
Returns:
The response from the AuthorizeCacheSecurityGroupIngress service method, as returned by AmazonElastiCache.
Throws:
com.amazonaws.services.elasticache.model.InvalidParameterValueException
com.amazonaws.services.elasticache.model.AuthorizationAlreadyExistsException
com.amazonaws.services.elasticache.model.InvalidCacheSecurityGroupStateException
com.amazonaws.services.elasticache.model.InvalidParameterCombinationException
com.amazonaws.services.elasticache.model.CacheSecurityGroupNotFoundException
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonElastiCache indicating either a problem with the data in the request, or a server side issue.
    public CacheSecurityGroup authorizeCacheSecurityGroupIngress(AuthorizeCacheSecurityGroupIngressRequest authorizeCacheSecurityGroupIngressRequest) {
        ExecutionContext executionContext = createExecutionContext(authorizeCacheSecurityGroupIngressRequest);
        AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
        awsRequestMetrics.startEvent(.);
        Request<AuthorizeCacheSecurityGroupIngressRequestrequest = null;
        Response<CacheSecurityGroupresponse = null;
        
        try {
            awsRequestMetrics.startEvent(.);
            try {
                request = new AuthorizeCacheSecurityGroupIngressRequestMarshaller().marshall(super.beforeMarshalling(authorizeCacheSecurityGroupIngressRequest));
                // Binds the request metrics to the current request.
                request.setAWSRequestMetrics(awsRequestMetrics);
            } finally {
                awsRequestMetrics.endEvent(.);
            }
            response = invoke(requestnew CacheSecurityGroupStaxUnmarshaller(), executionContext);
            return response.getAwsResponse();
        } finally {
            
            endClientExecution(awsRequestMetricsrequestresponse);
        }
    }
    
    

The PurchaseReservedCacheNodesOffering action allows you to purchase a reserved cache node offering.

Parameters:
purchaseReservedCacheNodesOfferingRequest Container for the necessary parameters to execute the PurchaseReservedCacheNodesOffering service method on AmazonElastiCache.
Returns:
The response from the PurchaseReservedCacheNodesOffering service method, as returned by AmazonElastiCache.
Throws:
com.amazonaws.services.elasticache.model.InvalidParameterValueException
com.amazonaws.services.elasticache.model.ReservedCacheNodeQuotaExceededException
com.amazonaws.services.elasticache.model.ReservedCacheNodeAlreadyExistsException
com.amazonaws.services.elasticache.model.ReservedCacheNodesOfferingNotFoundException
com.amazonaws.services.elasticache.model.InvalidParameterCombinationException
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonElastiCache indicating either a problem with the data in the request, or a server side issue.
    public ReservedCacheNode purchaseReservedCacheNodesOffering(PurchaseReservedCacheNodesOfferingRequest purchaseReservedCacheNodesOfferingRequest) {
        ExecutionContext executionContext = createExecutionContext(purchaseReservedCacheNodesOfferingRequest);
        AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
        awsRequestMetrics.startEvent(.);
        Request<PurchaseReservedCacheNodesOfferingRequestrequest = null;
        Response<ReservedCacheNoderesponse = null;
        
        try {
            awsRequestMetrics.startEvent(.);
            try {
                request = new PurchaseReservedCacheNodesOfferingRequestMarshaller().marshall(super.beforeMarshalling(purchaseReservedCacheNodesOfferingRequest));
                // Binds the request metrics to the current request.
                request.setAWSRequestMetrics(awsRequestMetrics);
            } finally {
                awsRequestMetrics.endEvent(.);
            }
            response = invoke(requestnew ReservedCacheNodeStaxUnmarshaller(), executionContext);
            return response.getAwsResponse();
        } finally {
            
            endClientExecution(awsRequestMetricsrequestresponse);
        }
    }
    
    

The ModifyReplicationGroup action modifies the settings for a replication group.

Parameters:
modifyReplicationGroupRequest Container for the necessary parameters to execute the ModifyReplicationGroup service method on AmazonElastiCache.
Returns:
The response from the ModifyReplicationGroup service method, as returned by AmazonElastiCache.
Throws:
com.amazonaws.services.elasticache.model.NodeQuotaForCustomerExceededException
com.amazonaws.services.elasticache.model.InsufficientCacheClusterCapacityException
com.amazonaws.services.elasticache.model.ReplicationGroupNotFoundException
com.amazonaws.services.elasticache.model.CacheClusterNotFoundException
com.amazonaws.services.elasticache.model.InvalidParameterCombinationException
com.amazonaws.services.elasticache.model.CacheParameterGroupNotFoundException
com.amazonaws.services.elasticache.model.InvalidCacheClusterStateException
com.amazonaws.services.elasticache.model.CacheSecurityGroupNotFoundException
com.amazonaws.services.elasticache.model.NodeQuotaForClusterExceededException
com.amazonaws.services.elasticache.model.InvalidReplicationGroupStateException
com.amazonaws.services.elasticache.model.InvalidParameterValueException
com.amazonaws.services.elasticache.model.InvalidCacheSecurityGroupStateException
com.amazonaws.services.elasticache.model.InvalidVPCNetworkStateException
com.amazonaws.AmazonClientException If any internal errors are encountered inside the client while attempting to make the request or handle the response. For example if a network connection is not available.
com.amazonaws.AmazonServiceException If an error response is returned by AmazonElastiCache indicating either a problem with the data in the request, or a server side issue.
    public ReplicationGroup modifyReplicationGroup(ModifyReplicationGroupRequest modifyReplicationGroupRequest) {
        ExecutionContext executionContext = createExecutionContext(modifyReplicationGroupRequest);
        AWSRequestMetrics awsRequestMetrics = executionContext.getAwsRequestMetrics();
        awsRequestMetrics.startEvent(.);
        Request<ModifyReplicationGroupRequestrequest = null;
        Response<ReplicationGroupresponse = null;
        
        try {
            awsRequestMetrics.startEvent(.);
            try {
                request = new ModifyReplicationGroupRequestMarshaller().marshall(super.