/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once /* Generic header includes */ #include #include #include #include #include #include #include #include #include /* End of generic header includes */ /* Service model headers required in ElastiCacheClient header */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include /* End of service model headers required in ElastiCacheClient header */ namespace Aws { namespace Http { class HttpClient; class HttpClientFactory; } // namespace Http namespace Utils { template< typename R, typename E> class Outcome; namespace Threading { class Executor; } // namespace Threading } // namespace Utils namespace Auth { class AWSCredentials; class AWSCredentialsProvider; } // namespace Auth namespace Client { class RetryStrategy; } // namespace Client namespace ElastiCache { using ElastiCacheClientConfiguration = Aws::Client::GenericClientConfiguration; using ElastiCacheEndpointProviderBase = Aws::ElastiCache::Endpoint::ElastiCacheEndpointProviderBase; using ElastiCacheEndpointProvider = Aws::ElastiCache::Endpoint::ElastiCacheEndpointProvider; namespace Model { /* Service model forward declarations required in ElastiCacheClient header */ class AddTagsToResourceRequest; class AuthorizeCacheSecurityGroupIngressRequest; class BatchApplyUpdateActionRequest; class BatchStopUpdateActionRequest; class CompleteMigrationRequest; class CopySnapshotRequest; class CreateCacheClusterRequest; class CreateCacheParameterGroupRequest; class CreateCacheSecurityGroupRequest; class CreateCacheSubnetGroupRequest; class CreateGlobalReplicationGroupRequest; class CreateReplicationGroupRequest; class CreateSnapshotRequest; class CreateUserRequest; class CreateUserGroupRequest; class DecreaseNodeGroupsInGlobalReplicationGroupRequest; class DecreaseReplicaCountRequest; class DeleteCacheClusterRequest; class DeleteCacheParameterGroupRequest; class DeleteCacheSecurityGroupRequest; class DeleteCacheSubnetGroupRequest; class DeleteGlobalReplicationGroupRequest; class DeleteReplicationGroupRequest; class DeleteSnapshotRequest; class DeleteUserRequest; class DeleteUserGroupRequest; class DescribeCacheClustersRequest; class DescribeCacheEngineVersionsRequest; class DescribeCacheParameterGroupsRequest; class DescribeCacheParametersRequest; class DescribeCacheSecurityGroupsRequest; class DescribeCacheSubnetGroupsRequest; class DescribeEngineDefaultParametersRequest; class DescribeEventsRequest; class DescribeGlobalReplicationGroupsRequest; class DescribeReplicationGroupsRequest; class DescribeReservedCacheNodesRequest; class DescribeReservedCacheNodesOfferingsRequest; class DescribeServiceUpdatesRequest; class DescribeSnapshotsRequest; class DescribeUpdateActionsRequest; class DescribeUserGroupsRequest; class DescribeUsersRequest; class DisassociateGlobalReplicationGroupRequest; class FailoverGlobalReplicationGroupRequest; class IncreaseNodeGroupsInGlobalReplicationGroupRequest; class IncreaseReplicaCountRequest; class ListAllowedNodeTypeModificationsRequest; class ListTagsForResourceRequest; class ModifyCacheClusterRequest; class ModifyCacheParameterGroupRequest; class ModifyCacheSubnetGroupRequest; class ModifyGlobalReplicationGroupRequest; class ModifyReplicationGroupRequest; class ModifyReplicationGroupShardConfigurationRequest; class ModifyUserRequest; class ModifyUserGroupRequest; class PurchaseReservedCacheNodesOfferingRequest; class RebalanceSlotsInGlobalReplicationGroupRequest; class RebootCacheClusterRequest; class RemoveTagsFromResourceRequest; class ResetCacheParameterGroupRequest; class RevokeCacheSecurityGroupIngressRequest; class StartMigrationRequest; class TestFailoverRequest; /* End of service model forward declarations required in ElastiCacheClient header */ /* Service model Outcome class definitions */ typedef Aws::Utils::Outcome AddTagsToResourceOutcome; typedef Aws::Utils::Outcome AuthorizeCacheSecurityGroupIngressOutcome; typedef Aws::Utils::Outcome BatchApplyUpdateActionOutcome; typedef Aws::Utils::Outcome BatchStopUpdateActionOutcome; typedef Aws::Utils::Outcome CompleteMigrationOutcome; typedef Aws::Utils::Outcome CopySnapshotOutcome; typedef Aws::Utils::Outcome CreateCacheClusterOutcome; typedef Aws::Utils::Outcome CreateCacheParameterGroupOutcome; typedef Aws::Utils::Outcome CreateCacheSecurityGroupOutcome; typedef Aws::Utils::Outcome CreateCacheSubnetGroupOutcome; typedef Aws::Utils::Outcome CreateGlobalReplicationGroupOutcome; typedef Aws::Utils::Outcome CreateReplicationGroupOutcome; typedef Aws::Utils::Outcome CreateSnapshotOutcome; typedef Aws::Utils::Outcome CreateUserOutcome; typedef Aws::Utils::Outcome CreateUserGroupOutcome; typedef Aws::Utils::Outcome DecreaseNodeGroupsInGlobalReplicationGroupOutcome; typedef Aws::Utils::Outcome DecreaseReplicaCountOutcome; typedef Aws::Utils::Outcome DeleteCacheClusterOutcome; typedef Aws::Utils::Outcome DeleteCacheParameterGroupOutcome; typedef Aws::Utils::Outcome DeleteCacheSecurityGroupOutcome; typedef Aws::Utils::Outcome DeleteCacheSubnetGroupOutcome; typedef Aws::Utils::Outcome DeleteGlobalReplicationGroupOutcome; typedef Aws::Utils::Outcome DeleteReplicationGroupOutcome; typedef Aws::Utils::Outcome DeleteSnapshotOutcome; typedef Aws::Utils::Outcome DeleteUserOutcome; typedef Aws::Utils::Outcome DeleteUserGroupOutcome; typedef Aws::Utils::Outcome DescribeCacheClustersOutcome; typedef Aws::Utils::Outcome DescribeCacheEngineVersionsOutcome; typedef Aws::Utils::Outcome DescribeCacheParameterGroupsOutcome; typedef Aws::Utils::Outcome DescribeCacheParametersOutcome; typedef Aws::Utils::Outcome DescribeCacheSecurityGroupsOutcome; typedef Aws::Utils::Outcome DescribeCacheSubnetGroupsOutcome; typedef Aws::Utils::Outcome DescribeEngineDefaultParametersOutcome; typedef Aws::Utils::Outcome DescribeEventsOutcome; typedef Aws::Utils::Outcome DescribeGlobalReplicationGroupsOutcome; typedef Aws::Utils::Outcome DescribeReplicationGroupsOutcome; typedef Aws::Utils::Outcome DescribeReservedCacheNodesOutcome; typedef Aws::Utils::Outcome DescribeReservedCacheNodesOfferingsOutcome; typedef Aws::Utils::Outcome DescribeServiceUpdatesOutcome; typedef Aws::Utils::Outcome DescribeSnapshotsOutcome; typedef Aws::Utils::Outcome DescribeUpdateActionsOutcome; typedef Aws::Utils::Outcome DescribeUserGroupsOutcome; typedef Aws::Utils::Outcome DescribeUsersOutcome; typedef Aws::Utils::Outcome DisassociateGlobalReplicationGroupOutcome; typedef Aws::Utils::Outcome FailoverGlobalReplicationGroupOutcome; typedef Aws::Utils::Outcome IncreaseNodeGroupsInGlobalReplicationGroupOutcome; typedef Aws::Utils::Outcome IncreaseReplicaCountOutcome; typedef Aws::Utils::Outcome ListAllowedNodeTypeModificationsOutcome; typedef Aws::Utils::Outcome ListTagsForResourceOutcome; typedef Aws::Utils::Outcome ModifyCacheClusterOutcome; typedef Aws::Utils::Outcome ModifyCacheParameterGroupOutcome; typedef Aws::Utils::Outcome ModifyCacheSubnetGroupOutcome; typedef Aws::Utils::Outcome ModifyGlobalReplicationGroupOutcome; typedef Aws::Utils::Outcome ModifyReplicationGroupOutcome; typedef Aws::Utils::Outcome ModifyReplicationGroupShardConfigurationOutcome; typedef Aws::Utils::Outcome ModifyUserOutcome; typedef Aws::Utils::Outcome ModifyUserGroupOutcome; typedef Aws::Utils::Outcome PurchaseReservedCacheNodesOfferingOutcome; typedef Aws::Utils::Outcome RebalanceSlotsInGlobalReplicationGroupOutcome; typedef Aws::Utils::Outcome RebootCacheClusterOutcome; typedef Aws::Utils::Outcome RemoveTagsFromResourceOutcome; typedef Aws::Utils::Outcome ResetCacheParameterGroupOutcome; typedef Aws::Utils::Outcome RevokeCacheSecurityGroupIngressOutcome; typedef Aws::Utils::Outcome StartMigrationOutcome; typedef Aws::Utils::Outcome TestFailoverOutcome; /* End of service model Outcome class definitions */ /* Service model Outcome callable definitions */ typedef std::future AddTagsToResourceOutcomeCallable; typedef std::future AuthorizeCacheSecurityGroupIngressOutcomeCallable; typedef std::future BatchApplyUpdateActionOutcomeCallable; typedef std::future BatchStopUpdateActionOutcomeCallable; typedef std::future CompleteMigrationOutcomeCallable; typedef std::future CopySnapshotOutcomeCallable; typedef std::future CreateCacheClusterOutcomeCallable; typedef std::future CreateCacheParameterGroupOutcomeCallable; typedef std::future CreateCacheSecurityGroupOutcomeCallable; typedef std::future CreateCacheSubnetGroupOutcomeCallable; typedef std::future CreateGlobalReplicationGroupOutcomeCallable; typedef std::future CreateReplicationGroupOutcomeCallable; typedef std::future CreateSnapshotOutcomeCallable; typedef std::future CreateUserOutcomeCallable; typedef std::future CreateUserGroupOutcomeCallable; typedef std::future DecreaseNodeGroupsInGlobalReplicationGroupOutcomeCallable; typedef std::future DecreaseReplicaCountOutcomeCallable; typedef std::future DeleteCacheClusterOutcomeCallable; typedef std::future DeleteCacheParameterGroupOutcomeCallable; typedef std::future DeleteCacheSecurityGroupOutcomeCallable; typedef std::future DeleteCacheSubnetGroupOutcomeCallable; typedef std::future DeleteGlobalReplicationGroupOutcomeCallable; typedef std::future DeleteReplicationGroupOutcomeCallable; typedef std::future DeleteSnapshotOutcomeCallable; typedef std::future DeleteUserOutcomeCallable; typedef std::future DeleteUserGroupOutcomeCallable; typedef std::future DescribeCacheClustersOutcomeCallable; typedef std::future DescribeCacheEngineVersionsOutcomeCallable; typedef std::future DescribeCacheParameterGroupsOutcomeCallable; typedef std::future DescribeCacheParametersOutcomeCallable; typedef std::future DescribeCacheSecurityGroupsOutcomeCallable; typedef std::future DescribeCacheSubnetGroupsOutcomeCallable; typedef std::future DescribeEngineDefaultParametersOutcomeCallable; typedef std::future DescribeEventsOutcomeCallable; typedef std::future DescribeGlobalReplicationGroupsOutcomeCallable; typedef std::future DescribeReplicationGroupsOutcomeCallable; typedef std::future DescribeReservedCacheNodesOutcomeCallable; typedef std::future DescribeReservedCacheNodesOfferingsOutcomeCallable; typedef std::future DescribeServiceUpdatesOutcomeCallable; typedef std::future DescribeSnapshotsOutcomeCallable; typedef std::future DescribeUpdateActionsOutcomeCallable; typedef std::future DescribeUserGroupsOutcomeCallable; typedef std::future DescribeUsersOutcomeCallable; typedef std::future DisassociateGlobalReplicationGroupOutcomeCallable; typedef std::future FailoverGlobalReplicationGroupOutcomeCallable; typedef std::future IncreaseNodeGroupsInGlobalReplicationGroupOutcomeCallable; typedef std::future IncreaseReplicaCountOutcomeCallable; typedef std::future ListAllowedNodeTypeModificationsOutcomeCallable; typedef std::future ListTagsForResourceOutcomeCallable; typedef std::future ModifyCacheClusterOutcomeCallable; typedef std::future ModifyCacheParameterGroupOutcomeCallable; typedef std::future ModifyCacheSubnetGroupOutcomeCallable; typedef std::future ModifyGlobalReplicationGroupOutcomeCallable; typedef std::future ModifyReplicationGroupOutcomeCallable; typedef std::future ModifyReplicationGroupShardConfigurationOutcomeCallable; typedef std::future ModifyUserOutcomeCallable; typedef std::future ModifyUserGroupOutcomeCallable; typedef std::future PurchaseReservedCacheNodesOfferingOutcomeCallable; typedef std::future RebalanceSlotsInGlobalReplicationGroupOutcomeCallable; typedef std::future RebootCacheClusterOutcomeCallable; typedef std::future RemoveTagsFromResourceOutcomeCallable; typedef std::future ResetCacheParameterGroupOutcomeCallable; typedef std::future RevokeCacheSecurityGroupIngressOutcomeCallable; typedef std::future StartMigrationOutcomeCallable; typedef std::future TestFailoverOutcomeCallable; /* End of service model Outcome callable definitions */ } // namespace Model class ElastiCacheClient; /* Service model async handlers definitions */ typedef std::function&) > AddTagsToResourceResponseReceivedHandler; typedef std::function&) > AuthorizeCacheSecurityGroupIngressResponseReceivedHandler; typedef std::function&) > BatchApplyUpdateActionResponseReceivedHandler; typedef std::function&) > BatchStopUpdateActionResponseReceivedHandler; typedef std::function&) > CompleteMigrationResponseReceivedHandler; typedef std::function&) > CopySnapshotResponseReceivedHandler; typedef std::function&) > CreateCacheClusterResponseReceivedHandler; typedef std::function&) > CreateCacheParameterGroupResponseReceivedHandler; typedef std::function&) > CreateCacheSecurityGroupResponseReceivedHandler; typedef std::function&) > CreateCacheSubnetGroupResponseReceivedHandler; typedef std::function&) > CreateGlobalReplicationGroupResponseReceivedHandler; typedef std::function&) > CreateReplicationGroupResponseReceivedHandler; typedef std::function&) > CreateSnapshotResponseReceivedHandler; typedef std::function&) > CreateUserResponseReceivedHandler; typedef std::function&) > CreateUserGroupResponseReceivedHandler; typedef std::function&) > DecreaseNodeGroupsInGlobalReplicationGroupResponseReceivedHandler; typedef std::function&) > DecreaseReplicaCountResponseReceivedHandler; typedef std::function&) > DeleteCacheClusterResponseReceivedHandler; typedef std::function&) > DeleteCacheParameterGroupResponseReceivedHandler; typedef std::function&) > DeleteCacheSecurityGroupResponseReceivedHandler; typedef std::function&) > DeleteCacheSubnetGroupResponseReceivedHandler; typedef std::function&) > DeleteGlobalReplicationGroupResponseReceivedHandler; typedef std::function&) > DeleteReplicationGroupResponseReceivedHandler; typedef std::function&) > DeleteSnapshotResponseReceivedHandler; typedef std::function&) > DeleteUserResponseReceivedHandler; typedef std::function&) > DeleteUserGroupResponseReceivedHandler; typedef std::function&) > DescribeCacheClustersResponseReceivedHandler; typedef std::function&) > DescribeCacheEngineVersionsResponseReceivedHandler; typedef std::function&) > DescribeCacheParameterGroupsResponseReceivedHandler; typedef std::function&) > DescribeCacheParametersResponseReceivedHandler; typedef std::function&) > DescribeCacheSecurityGroupsResponseReceivedHandler; typedef std::function&) > DescribeCacheSubnetGroupsResponseReceivedHandler; typedef std::function&) > DescribeEngineDefaultParametersResponseReceivedHandler; typedef std::function&) > DescribeEventsResponseReceivedHandler; typedef std::function&) > DescribeGlobalReplicationGroupsResponseReceivedHandler; typedef std::function&) > DescribeReplicationGroupsResponseReceivedHandler; typedef std::function&) > DescribeReservedCacheNodesResponseReceivedHandler; typedef std::function&) > DescribeReservedCacheNodesOfferingsResponseReceivedHandler; typedef std::function&) > DescribeServiceUpdatesResponseReceivedHandler; typedef std::function&) > DescribeSnapshotsResponseReceivedHandler; typedef std::function&) > DescribeUpdateActionsResponseReceivedHandler; typedef std::function&) > DescribeUserGroupsResponseReceivedHandler; typedef std::function&) > DescribeUsersResponseReceivedHandler; typedef std::function&) > DisassociateGlobalReplicationGroupResponseReceivedHandler; typedef std::function&) > FailoverGlobalReplicationGroupResponseReceivedHandler; typedef std::function&) > IncreaseNodeGroupsInGlobalReplicationGroupResponseReceivedHandler; typedef std::function&) > IncreaseReplicaCountResponseReceivedHandler; typedef std::function&) > ListAllowedNodeTypeModificationsResponseReceivedHandler; typedef std::function&) > ListTagsForResourceResponseReceivedHandler; typedef std::function&) > ModifyCacheClusterResponseReceivedHandler; typedef std::function&) > ModifyCacheParameterGroupResponseReceivedHandler; typedef std::function&) > ModifyCacheSubnetGroupResponseReceivedHandler; typedef std::function&) > ModifyGlobalReplicationGroupResponseReceivedHandler; typedef std::function&) > ModifyReplicationGroupResponseReceivedHandler; typedef std::function&) > ModifyReplicationGroupShardConfigurationResponseReceivedHandler; typedef std::function&) > ModifyUserResponseReceivedHandler; typedef std::function&) > ModifyUserGroupResponseReceivedHandler; typedef std::function&) > PurchaseReservedCacheNodesOfferingResponseReceivedHandler; typedef std::function&) > RebalanceSlotsInGlobalReplicationGroupResponseReceivedHandler; typedef std::function&) > RebootCacheClusterResponseReceivedHandler; typedef std::function&) > RemoveTagsFromResourceResponseReceivedHandler; typedef std::function&) > ResetCacheParameterGroupResponseReceivedHandler; typedef std::function&) > RevokeCacheSecurityGroupIngressResponseReceivedHandler; typedef std::function&) > StartMigrationResponseReceivedHandler; typedef std::function&) > TestFailoverResponseReceivedHandler; /* End of service model async handlers definitions */ } // namespace ElastiCache } // namespace Aws