/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #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 #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 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 Xml { class XmlDocument; } // namespace Xml } // namespace Utils namespace Auth { class AWSCredentials; class AWSCredentialsProvider; } // namespace Auth namespace Client { class RetryStrategy; } // namespace Client namespace Redshift { namespace Model { class AcceptReservedNodeExchangeRequest; class AddPartnerRequest; class AssociateDataShareConsumerRequest; class AuthorizeClusterSecurityGroupIngressRequest; class AuthorizeDataShareRequest; class AuthorizeEndpointAccessRequest; class AuthorizeSnapshotAccessRequest; class BatchDeleteClusterSnapshotsRequest; class BatchModifyClusterSnapshotsRequest; class CancelResizeRequest; class CopyClusterSnapshotRequest; class CreateAuthenticationProfileRequest; class CreateClusterRequest; class CreateClusterParameterGroupRequest; class CreateClusterSecurityGroupRequest; class CreateClusterSnapshotRequest; class CreateClusterSubnetGroupRequest; class CreateEndpointAccessRequest; class CreateEventSubscriptionRequest; class CreateHsmClientCertificateRequest; class CreateHsmConfigurationRequest; class CreateScheduledActionRequest; class CreateSnapshotCopyGrantRequest; class CreateSnapshotScheduleRequest; class CreateTagsRequest; class CreateUsageLimitRequest; class DeauthorizeDataShareRequest; class DeleteAuthenticationProfileRequest; class DeleteClusterRequest; class DeleteClusterParameterGroupRequest; class DeleteClusterSecurityGroupRequest; class DeleteClusterSnapshotRequest; class DeleteClusterSubnetGroupRequest; class DeleteEndpointAccessRequest; class DeleteEventSubscriptionRequest; class DeleteHsmClientCertificateRequest; class DeleteHsmConfigurationRequest; class DeletePartnerRequest; class DeleteScheduledActionRequest; class DeleteSnapshotCopyGrantRequest; class DeleteSnapshotScheduleRequest; class DeleteTagsRequest; class DeleteUsageLimitRequest; class DescribeAccountAttributesRequest; class DescribeAuthenticationProfilesRequest; class DescribeClusterDbRevisionsRequest; class DescribeClusterParameterGroupsRequest; class DescribeClusterParametersRequest; class DescribeClusterSecurityGroupsRequest; class DescribeClusterSnapshotsRequest; class DescribeClusterSubnetGroupsRequest; class DescribeClusterTracksRequest; class DescribeClusterVersionsRequest; class DescribeClustersRequest; class DescribeDataSharesRequest; class DescribeDataSharesForConsumerRequest; class DescribeDataSharesForProducerRequest; class DescribeDefaultClusterParametersRequest; class DescribeEndpointAccessRequest; class DescribeEndpointAuthorizationRequest; class DescribeEventCategoriesRequest; class DescribeEventSubscriptionsRequest; class DescribeEventsRequest; class DescribeHsmClientCertificatesRequest; class DescribeHsmConfigurationsRequest; class DescribeLoggingStatusRequest; class DescribeNodeConfigurationOptionsRequest; class DescribeOrderableClusterOptionsRequest; class DescribePartnersRequest; class DescribeReservedNodeExchangeStatusRequest; class DescribeReservedNodeOfferingsRequest; class DescribeReservedNodesRequest; class DescribeResizeRequest; class DescribeScheduledActionsRequest; class DescribeSnapshotCopyGrantsRequest; class DescribeSnapshotSchedulesRequest; class DescribeStorageRequest; class DescribeTableRestoreStatusRequest; class DescribeTagsRequest; class DescribeUsageLimitsRequest; class DisableLoggingRequest; class DisableSnapshotCopyRequest; class DisassociateDataShareConsumerRequest; class EnableLoggingRequest; class EnableSnapshotCopyRequest; class GetClusterCredentialsRequest; class GetClusterCredentialsWithIAMRequest; class GetReservedNodeExchangeConfigurationOptionsRequest; class GetReservedNodeExchangeOfferingsRequest; class ModifyAquaConfigurationRequest; class ModifyAuthenticationProfileRequest; class ModifyClusterRequest; class ModifyClusterDbRevisionRequest; class ModifyClusterIamRolesRequest; class ModifyClusterMaintenanceRequest; class ModifyClusterParameterGroupRequest; class ModifyClusterSnapshotRequest; class ModifyClusterSnapshotScheduleRequest; class ModifyClusterSubnetGroupRequest; class ModifyEndpointAccessRequest; class ModifyEventSubscriptionRequest; class ModifyScheduledActionRequest; class ModifySnapshotCopyRetentionPeriodRequest; class ModifySnapshotScheduleRequest; class ModifyUsageLimitRequest; class PauseClusterRequest; class PurchaseReservedNodeOfferingRequest; class RebootClusterRequest; class RejectDataShareRequest; class ResetClusterParameterGroupRequest; class ResizeClusterRequest; class RestoreFromClusterSnapshotRequest; class RestoreTableFromClusterSnapshotRequest; class ResumeClusterRequest; class RevokeClusterSecurityGroupIngressRequest; class RevokeEndpointAccessRequest; class RevokeSnapshotAccessRequest; class RotateEncryptionKeyRequest; class UpdatePartnerStatusRequest; typedef Aws::Utils::Outcome AcceptReservedNodeExchangeOutcome; typedef Aws::Utils::Outcome AddPartnerOutcome; typedef Aws::Utils::Outcome AssociateDataShareConsumerOutcome; typedef Aws::Utils::Outcome AuthorizeClusterSecurityGroupIngressOutcome; typedef Aws::Utils::Outcome AuthorizeDataShareOutcome; typedef Aws::Utils::Outcome AuthorizeEndpointAccessOutcome; typedef Aws::Utils::Outcome AuthorizeSnapshotAccessOutcome; typedef Aws::Utils::Outcome BatchDeleteClusterSnapshotsOutcome; typedef Aws::Utils::Outcome BatchModifyClusterSnapshotsOutcome; typedef Aws::Utils::Outcome CancelResizeOutcome; typedef Aws::Utils::Outcome CopyClusterSnapshotOutcome; typedef Aws::Utils::Outcome CreateAuthenticationProfileOutcome; typedef Aws::Utils::Outcome CreateClusterOutcome; typedef Aws::Utils::Outcome CreateClusterParameterGroupOutcome; typedef Aws::Utils::Outcome CreateClusterSecurityGroupOutcome; typedef Aws::Utils::Outcome CreateClusterSnapshotOutcome; typedef Aws::Utils::Outcome CreateClusterSubnetGroupOutcome; typedef Aws::Utils::Outcome CreateEndpointAccessOutcome; typedef Aws::Utils::Outcome CreateEventSubscriptionOutcome; typedef Aws::Utils::Outcome CreateHsmClientCertificateOutcome; typedef Aws::Utils::Outcome CreateHsmConfigurationOutcome; typedef Aws::Utils::Outcome CreateScheduledActionOutcome; typedef Aws::Utils::Outcome CreateSnapshotCopyGrantOutcome; typedef Aws::Utils::Outcome CreateSnapshotScheduleOutcome; typedef Aws::Utils::Outcome CreateTagsOutcome; typedef Aws::Utils::Outcome CreateUsageLimitOutcome; typedef Aws::Utils::Outcome DeauthorizeDataShareOutcome; typedef Aws::Utils::Outcome DeleteAuthenticationProfileOutcome; typedef Aws::Utils::Outcome DeleteClusterOutcome; typedef Aws::Utils::Outcome DeleteClusterParameterGroupOutcome; typedef Aws::Utils::Outcome DeleteClusterSecurityGroupOutcome; typedef Aws::Utils::Outcome DeleteClusterSnapshotOutcome; typedef Aws::Utils::Outcome DeleteClusterSubnetGroupOutcome; typedef Aws::Utils::Outcome DeleteEndpointAccessOutcome; typedef Aws::Utils::Outcome DeleteEventSubscriptionOutcome; typedef Aws::Utils::Outcome DeleteHsmClientCertificateOutcome; typedef Aws::Utils::Outcome DeleteHsmConfigurationOutcome; typedef Aws::Utils::Outcome DeletePartnerOutcome; typedef Aws::Utils::Outcome DeleteScheduledActionOutcome; typedef Aws::Utils::Outcome DeleteSnapshotCopyGrantOutcome; typedef Aws::Utils::Outcome DeleteSnapshotScheduleOutcome; typedef Aws::Utils::Outcome DeleteTagsOutcome; typedef Aws::Utils::Outcome DeleteUsageLimitOutcome; typedef Aws::Utils::Outcome DescribeAccountAttributesOutcome; typedef Aws::Utils::Outcome DescribeAuthenticationProfilesOutcome; typedef Aws::Utils::Outcome DescribeClusterDbRevisionsOutcome; typedef Aws::Utils::Outcome DescribeClusterParameterGroupsOutcome; typedef Aws::Utils::Outcome DescribeClusterParametersOutcome; typedef Aws::Utils::Outcome DescribeClusterSecurityGroupsOutcome; typedef Aws::Utils::Outcome DescribeClusterSnapshotsOutcome; typedef Aws::Utils::Outcome DescribeClusterSubnetGroupsOutcome; typedef Aws::Utils::Outcome DescribeClusterTracksOutcome; typedef Aws::Utils::Outcome DescribeClusterVersionsOutcome; typedef Aws::Utils::Outcome DescribeClustersOutcome; typedef Aws::Utils::Outcome DescribeDataSharesOutcome; typedef Aws::Utils::Outcome DescribeDataSharesForConsumerOutcome; typedef Aws::Utils::Outcome DescribeDataSharesForProducerOutcome; typedef Aws::Utils::Outcome DescribeDefaultClusterParametersOutcome; typedef Aws::Utils::Outcome DescribeEndpointAccessOutcome; typedef Aws::Utils::Outcome DescribeEndpointAuthorizationOutcome; typedef Aws::Utils::Outcome DescribeEventCategoriesOutcome; typedef Aws::Utils::Outcome DescribeEventSubscriptionsOutcome; typedef Aws::Utils::Outcome DescribeEventsOutcome; typedef Aws::Utils::Outcome DescribeHsmClientCertificatesOutcome; typedef Aws::Utils::Outcome DescribeHsmConfigurationsOutcome; typedef Aws::Utils::Outcome DescribeLoggingStatusOutcome; typedef Aws::Utils::Outcome DescribeNodeConfigurationOptionsOutcome; typedef Aws::Utils::Outcome DescribeOrderableClusterOptionsOutcome; typedef Aws::Utils::Outcome DescribePartnersOutcome; typedef Aws::Utils::Outcome DescribeReservedNodeExchangeStatusOutcome; typedef Aws::Utils::Outcome DescribeReservedNodeOfferingsOutcome; typedef Aws::Utils::Outcome DescribeReservedNodesOutcome; typedef Aws::Utils::Outcome DescribeResizeOutcome; typedef Aws::Utils::Outcome DescribeScheduledActionsOutcome; typedef Aws::Utils::Outcome DescribeSnapshotCopyGrantsOutcome; typedef Aws::Utils::Outcome DescribeSnapshotSchedulesOutcome; typedef Aws::Utils::Outcome DescribeStorageOutcome; typedef Aws::Utils::Outcome DescribeTableRestoreStatusOutcome; typedef Aws::Utils::Outcome DescribeTagsOutcome; typedef Aws::Utils::Outcome DescribeUsageLimitsOutcome; typedef Aws::Utils::Outcome DisableLoggingOutcome; typedef Aws::Utils::Outcome DisableSnapshotCopyOutcome; typedef Aws::Utils::Outcome DisassociateDataShareConsumerOutcome; typedef Aws::Utils::Outcome EnableLoggingOutcome; typedef Aws::Utils::Outcome EnableSnapshotCopyOutcome; typedef Aws::Utils::Outcome GetClusterCredentialsOutcome; typedef Aws::Utils::Outcome GetClusterCredentialsWithIAMOutcome; typedef Aws::Utils::Outcome GetReservedNodeExchangeConfigurationOptionsOutcome; typedef Aws::Utils::Outcome GetReservedNodeExchangeOfferingsOutcome; typedef Aws::Utils::Outcome ModifyAquaConfigurationOutcome; typedef Aws::Utils::Outcome ModifyAuthenticationProfileOutcome; typedef Aws::Utils::Outcome ModifyClusterOutcome; typedef Aws::Utils::Outcome ModifyClusterDbRevisionOutcome; typedef Aws::Utils::Outcome ModifyClusterIamRolesOutcome; typedef Aws::Utils::Outcome ModifyClusterMaintenanceOutcome; typedef Aws::Utils::Outcome ModifyClusterParameterGroupOutcome; typedef Aws::Utils::Outcome ModifyClusterSnapshotOutcome; typedef Aws::Utils::Outcome ModifyClusterSnapshotScheduleOutcome; typedef Aws::Utils::Outcome ModifyClusterSubnetGroupOutcome; typedef Aws::Utils::Outcome ModifyEndpointAccessOutcome; typedef Aws::Utils::Outcome ModifyEventSubscriptionOutcome; typedef Aws::Utils::Outcome ModifyScheduledActionOutcome; typedef Aws::Utils::Outcome ModifySnapshotCopyRetentionPeriodOutcome; typedef Aws::Utils::Outcome ModifySnapshotScheduleOutcome; typedef Aws::Utils::Outcome ModifyUsageLimitOutcome; typedef Aws::Utils::Outcome PauseClusterOutcome; typedef Aws::Utils::Outcome PurchaseReservedNodeOfferingOutcome; typedef Aws::Utils::Outcome RebootClusterOutcome; typedef Aws::Utils::Outcome RejectDataShareOutcome; typedef Aws::Utils::Outcome ResetClusterParameterGroupOutcome; typedef Aws::Utils::Outcome ResizeClusterOutcome; typedef Aws::Utils::Outcome RestoreFromClusterSnapshotOutcome; typedef Aws::Utils::Outcome RestoreTableFromClusterSnapshotOutcome; typedef Aws::Utils::Outcome ResumeClusterOutcome; typedef Aws::Utils::Outcome RevokeClusterSecurityGroupIngressOutcome; typedef Aws::Utils::Outcome RevokeEndpointAccessOutcome; typedef Aws::Utils::Outcome RevokeSnapshotAccessOutcome; typedef Aws::Utils::Outcome RotateEncryptionKeyOutcome; typedef Aws::Utils::Outcome UpdatePartnerStatusOutcome; typedef std::future AcceptReservedNodeExchangeOutcomeCallable; typedef std::future AddPartnerOutcomeCallable; typedef std::future AssociateDataShareConsumerOutcomeCallable; typedef std::future AuthorizeClusterSecurityGroupIngressOutcomeCallable; typedef std::future AuthorizeDataShareOutcomeCallable; typedef std::future AuthorizeEndpointAccessOutcomeCallable; typedef std::future AuthorizeSnapshotAccessOutcomeCallable; typedef std::future BatchDeleteClusterSnapshotsOutcomeCallable; typedef std::future BatchModifyClusterSnapshotsOutcomeCallable; typedef std::future CancelResizeOutcomeCallable; typedef std::future CopyClusterSnapshotOutcomeCallable; typedef std::future CreateAuthenticationProfileOutcomeCallable; typedef std::future CreateClusterOutcomeCallable; typedef std::future CreateClusterParameterGroupOutcomeCallable; typedef std::future CreateClusterSecurityGroupOutcomeCallable; typedef std::future CreateClusterSnapshotOutcomeCallable; typedef std::future CreateClusterSubnetGroupOutcomeCallable; typedef std::future CreateEndpointAccessOutcomeCallable; typedef std::future CreateEventSubscriptionOutcomeCallable; typedef std::future CreateHsmClientCertificateOutcomeCallable; typedef std::future CreateHsmConfigurationOutcomeCallable; typedef std::future CreateScheduledActionOutcomeCallable; typedef std::future CreateSnapshotCopyGrantOutcomeCallable; typedef std::future CreateSnapshotScheduleOutcomeCallable; typedef std::future CreateTagsOutcomeCallable; typedef std::future CreateUsageLimitOutcomeCallable; typedef std::future DeauthorizeDataShareOutcomeCallable; typedef std::future DeleteAuthenticationProfileOutcomeCallable; typedef std::future DeleteClusterOutcomeCallable; typedef std::future DeleteClusterParameterGroupOutcomeCallable; typedef std::future DeleteClusterSecurityGroupOutcomeCallable; typedef std::future DeleteClusterSnapshotOutcomeCallable; typedef std::future DeleteClusterSubnetGroupOutcomeCallable; typedef std::future DeleteEndpointAccessOutcomeCallable; typedef std::future DeleteEventSubscriptionOutcomeCallable; typedef std::future DeleteHsmClientCertificateOutcomeCallable; typedef std::future DeleteHsmConfigurationOutcomeCallable; typedef std::future DeletePartnerOutcomeCallable; typedef std::future DeleteScheduledActionOutcomeCallable; typedef std::future DeleteSnapshotCopyGrantOutcomeCallable; typedef std::future DeleteSnapshotScheduleOutcomeCallable; typedef std::future DeleteTagsOutcomeCallable; typedef std::future DeleteUsageLimitOutcomeCallable; typedef std::future DescribeAccountAttributesOutcomeCallable; typedef std::future DescribeAuthenticationProfilesOutcomeCallable; typedef std::future DescribeClusterDbRevisionsOutcomeCallable; typedef std::future DescribeClusterParameterGroupsOutcomeCallable; typedef std::future DescribeClusterParametersOutcomeCallable; typedef std::future DescribeClusterSecurityGroupsOutcomeCallable; typedef std::future DescribeClusterSnapshotsOutcomeCallable; typedef std::future DescribeClusterSubnetGroupsOutcomeCallable; typedef std::future DescribeClusterTracksOutcomeCallable; typedef std::future DescribeClusterVersionsOutcomeCallable; typedef std::future DescribeClustersOutcomeCallable; typedef std::future DescribeDataSharesOutcomeCallable; typedef std::future DescribeDataSharesForConsumerOutcomeCallable; typedef std::future DescribeDataSharesForProducerOutcomeCallable; typedef std::future DescribeDefaultClusterParametersOutcomeCallable; typedef std::future DescribeEndpointAccessOutcomeCallable; typedef std::future DescribeEndpointAuthorizationOutcomeCallable; typedef std::future DescribeEventCategoriesOutcomeCallable; typedef std::future DescribeEventSubscriptionsOutcomeCallable; typedef std::future DescribeEventsOutcomeCallable; typedef std::future DescribeHsmClientCertificatesOutcomeCallable; typedef std::future DescribeHsmConfigurationsOutcomeCallable; typedef std::future DescribeLoggingStatusOutcomeCallable; typedef std::future DescribeNodeConfigurationOptionsOutcomeCallable; typedef std::future DescribeOrderableClusterOptionsOutcomeCallable; typedef std::future DescribePartnersOutcomeCallable; typedef std::future DescribeReservedNodeExchangeStatusOutcomeCallable; typedef std::future DescribeReservedNodeOfferingsOutcomeCallable; typedef std::future DescribeReservedNodesOutcomeCallable; typedef std::future DescribeResizeOutcomeCallable; typedef std::future DescribeScheduledActionsOutcomeCallable; typedef std::future DescribeSnapshotCopyGrantsOutcomeCallable; typedef std::future DescribeSnapshotSchedulesOutcomeCallable; typedef std::future DescribeStorageOutcomeCallable; typedef std::future DescribeTableRestoreStatusOutcomeCallable; typedef std::future DescribeTagsOutcomeCallable; typedef std::future DescribeUsageLimitsOutcomeCallable; typedef std::future DisableLoggingOutcomeCallable; typedef std::future DisableSnapshotCopyOutcomeCallable; typedef std::future DisassociateDataShareConsumerOutcomeCallable; typedef std::future EnableLoggingOutcomeCallable; typedef std::future EnableSnapshotCopyOutcomeCallable; typedef std::future GetClusterCredentialsOutcomeCallable; typedef std::future GetClusterCredentialsWithIAMOutcomeCallable; typedef std::future GetReservedNodeExchangeConfigurationOptionsOutcomeCallable; typedef std::future GetReservedNodeExchangeOfferingsOutcomeCallable; typedef std::future ModifyAquaConfigurationOutcomeCallable; typedef std::future ModifyAuthenticationProfileOutcomeCallable; typedef std::future ModifyClusterOutcomeCallable; typedef std::future ModifyClusterDbRevisionOutcomeCallable; typedef std::future ModifyClusterIamRolesOutcomeCallable; typedef std::future ModifyClusterMaintenanceOutcomeCallable; typedef std::future ModifyClusterParameterGroupOutcomeCallable; typedef std::future ModifyClusterSnapshotOutcomeCallable; typedef std::future ModifyClusterSnapshotScheduleOutcomeCallable; typedef std::future ModifyClusterSubnetGroupOutcomeCallable; typedef std::future ModifyEndpointAccessOutcomeCallable; typedef std::future ModifyEventSubscriptionOutcomeCallable; typedef std::future ModifyScheduledActionOutcomeCallable; typedef std::future ModifySnapshotCopyRetentionPeriodOutcomeCallable; typedef std::future ModifySnapshotScheduleOutcomeCallable; typedef std::future ModifyUsageLimitOutcomeCallable; typedef std::future PauseClusterOutcomeCallable; typedef std::future PurchaseReservedNodeOfferingOutcomeCallable; typedef std::future RebootClusterOutcomeCallable; typedef std::future RejectDataShareOutcomeCallable; typedef std::future ResetClusterParameterGroupOutcomeCallable; typedef std::future ResizeClusterOutcomeCallable; typedef std::future RestoreFromClusterSnapshotOutcomeCallable; typedef std::future RestoreTableFromClusterSnapshotOutcomeCallable; typedef std::future ResumeClusterOutcomeCallable; typedef std::future RevokeClusterSecurityGroupIngressOutcomeCallable; typedef std::future RevokeEndpointAccessOutcomeCallable; typedef std::future RevokeSnapshotAccessOutcomeCallable; typedef std::future RotateEncryptionKeyOutcomeCallable; typedef std::future UpdatePartnerStatusOutcomeCallable; } // namespace Model class RedshiftClient; typedef std::function&) > AcceptReservedNodeExchangeResponseReceivedHandler; typedef std::function&) > AddPartnerResponseReceivedHandler; typedef std::function&) > AssociateDataShareConsumerResponseReceivedHandler; typedef std::function&) > AuthorizeClusterSecurityGroupIngressResponseReceivedHandler; typedef std::function&) > AuthorizeDataShareResponseReceivedHandler; typedef std::function&) > AuthorizeEndpointAccessResponseReceivedHandler; typedef std::function&) > AuthorizeSnapshotAccessResponseReceivedHandler; typedef std::function&) > BatchDeleteClusterSnapshotsResponseReceivedHandler; typedef std::function&) > BatchModifyClusterSnapshotsResponseReceivedHandler; typedef std::function&) > CancelResizeResponseReceivedHandler; typedef std::function&) > CopyClusterSnapshotResponseReceivedHandler; typedef std::function&) > CreateAuthenticationProfileResponseReceivedHandler; typedef std::function&) > CreateClusterResponseReceivedHandler; typedef std::function&) > CreateClusterParameterGroupResponseReceivedHandler; typedef std::function&) > CreateClusterSecurityGroupResponseReceivedHandler; typedef std::function&) > CreateClusterSnapshotResponseReceivedHandler; typedef std::function&) > CreateClusterSubnetGroupResponseReceivedHandler; typedef std::function&) > CreateEndpointAccessResponseReceivedHandler; typedef std::function&) > CreateEventSubscriptionResponseReceivedHandler; typedef std::function&) > CreateHsmClientCertificateResponseReceivedHandler; typedef std::function&) > CreateHsmConfigurationResponseReceivedHandler; typedef std::function&) > CreateScheduledActionResponseReceivedHandler; typedef std::function&) > CreateSnapshotCopyGrantResponseReceivedHandler; typedef std::function&) > CreateSnapshotScheduleResponseReceivedHandler; typedef std::function&) > CreateTagsResponseReceivedHandler; typedef std::function&) > CreateUsageLimitResponseReceivedHandler; typedef std::function&) > DeauthorizeDataShareResponseReceivedHandler; typedef std::function&) > DeleteAuthenticationProfileResponseReceivedHandler; typedef std::function&) > DeleteClusterResponseReceivedHandler; typedef std::function&) > DeleteClusterParameterGroupResponseReceivedHandler; typedef std::function&) > DeleteClusterSecurityGroupResponseReceivedHandler; typedef std::function&) > DeleteClusterSnapshotResponseReceivedHandler; typedef std::function&) > DeleteClusterSubnetGroupResponseReceivedHandler; typedef std::function&) > DeleteEndpointAccessResponseReceivedHandler; typedef std::function&) > DeleteEventSubscriptionResponseReceivedHandler; typedef std::function&) > DeleteHsmClientCertificateResponseReceivedHandler; typedef std::function&) > DeleteHsmConfigurationResponseReceivedHandler; typedef std::function&) > DeletePartnerResponseReceivedHandler; typedef std::function&) > DeleteScheduledActionResponseReceivedHandler; typedef std::function&) > DeleteSnapshotCopyGrantResponseReceivedHandler; typedef std::function&) > DeleteSnapshotScheduleResponseReceivedHandler; typedef std::function&) > DeleteTagsResponseReceivedHandler; typedef std::function&) > DeleteUsageLimitResponseReceivedHandler; typedef std::function&) > DescribeAccountAttributesResponseReceivedHandler; typedef std::function&) > DescribeAuthenticationProfilesResponseReceivedHandler; typedef std::function&) > DescribeClusterDbRevisionsResponseReceivedHandler; typedef std::function&) > DescribeClusterParameterGroupsResponseReceivedHandler; typedef std::function&) > DescribeClusterParametersResponseReceivedHandler; typedef std::function&) > DescribeClusterSecurityGroupsResponseReceivedHandler; typedef std::function&) > DescribeClusterSnapshotsResponseReceivedHandler; typedef std::function&) > DescribeClusterSubnetGroupsResponseReceivedHandler; typedef std::function&) > DescribeClusterTracksResponseReceivedHandler; typedef std::function&) > DescribeClusterVersionsResponseReceivedHandler; typedef std::function&) > DescribeClustersResponseReceivedHandler; typedef std::function&) > DescribeDataSharesResponseReceivedHandler; typedef std::function&) > DescribeDataSharesForConsumerResponseReceivedHandler; typedef std::function&) > DescribeDataSharesForProducerResponseReceivedHandler; typedef std::function&) > DescribeDefaultClusterParametersResponseReceivedHandler; typedef std::function&) > DescribeEndpointAccessResponseReceivedHandler; typedef std::function&) > DescribeEndpointAuthorizationResponseReceivedHandler; typedef std::function&) > DescribeEventCategoriesResponseReceivedHandler; typedef std::function&) > DescribeEventSubscriptionsResponseReceivedHandler; typedef std::function&) > DescribeEventsResponseReceivedHandler; typedef std::function&) > DescribeHsmClientCertificatesResponseReceivedHandler; typedef std::function&) > DescribeHsmConfigurationsResponseReceivedHandler; typedef std::function&) > DescribeLoggingStatusResponseReceivedHandler; typedef std::function&) > DescribeNodeConfigurationOptionsResponseReceivedHandler; typedef std::function&) > DescribeOrderableClusterOptionsResponseReceivedHandler; typedef std::function&) > DescribePartnersResponseReceivedHandler; typedef std::function&) > DescribeReservedNodeExchangeStatusResponseReceivedHandler; typedef std::function&) > DescribeReservedNodeOfferingsResponseReceivedHandler; typedef std::function&) > DescribeReservedNodesResponseReceivedHandler; typedef std::function&) > DescribeResizeResponseReceivedHandler; typedef std::function&) > DescribeScheduledActionsResponseReceivedHandler; typedef std::function&) > DescribeSnapshotCopyGrantsResponseReceivedHandler; typedef std::function&) > DescribeSnapshotSchedulesResponseReceivedHandler; typedef std::function&) > DescribeStorageResponseReceivedHandler; typedef std::function&) > DescribeTableRestoreStatusResponseReceivedHandler; typedef std::function&) > DescribeTagsResponseReceivedHandler; typedef std::function&) > DescribeUsageLimitsResponseReceivedHandler; typedef std::function&) > DisableLoggingResponseReceivedHandler; typedef std::function&) > DisableSnapshotCopyResponseReceivedHandler; typedef std::function&) > DisassociateDataShareConsumerResponseReceivedHandler; typedef std::function&) > EnableLoggingResponseReceivedHandler; typedef std::function&) > EnableSnapshotCopyResponseReceivedHandler; typedef std::function&) > GetClusterCredentialsResponseReceivedHandler; typedef std::function&) > GetClusterCredentialsWithIAMResponseReceivedHandler; typedef std::function&) > GetReservedNodeExchangeConfigurationOptionsResponseReceivedHandler; typedef std::function&) > GetReservedNodeExchangeOfferingsResponseReceivedHandler; typedef std::function&) > ModifyAquaConfigurationResponseReceivedHandler; typedef std::function&) > ModifyAuthenticationProfileResponseReceivedHandler; typedef std::function&) > ModifyClusterResponseReceivedHandler; typedef std::function&) > ModifyClusterDbRevisionResponseReceivedHandler; typedef std::function&) > ModifyClusterIamRolesResponseReceivedHandler; typedef std::function&) > ModifyClusterMaintenanceResponseReceivedHandler; typedef std::function&) > ModifyClusterParameterGroupResponseReceivedHandler; typedef std::function&) > ModifyClusterSnapshotResponseReceivedHandler; typedef std::function&) > ModifyClusterSnapshotScheduleResponseReceivedHandler; typedef std::function&) > ModifyClusterSubnetGroupResponseReceivedHandler; typedef std::function&) > ModifyEndpointAccessResponseReceivedHandler; typedef std::function&) > ModifyEventSubscriptionResponseReceivedHandler; typedef std::function&) > ModifyScheduledActionResponseReceivedHandler; typedef std::function&) > ModifySnapshotCopyRetentionPeriodResponseReceivedHandler; typedef std::function&) > ModifySnapshotScheduleResponseReceivedHandler; typedef std::function&) > ModifyUsageLimitResponseReceivedHandler; typedef std::function&) > PauseClusterResponseReceivedHandler; typedef std::function&) > PurchaseReservedNodeOfferingResponseReceivedHandler; typedef std::function&) > RebootClusterResponseReceivedHandler; typedef std::function&) > RejectDataShareResponseReceivedHandler; typedef std::function&) > ResetClusterParameterGroupResponseReceivedHandler; typedef std::function&) > ResizeClusterResponseReceivedHandler; typedef std::function&) > RestoreFromClusterSnapshotResponseReceivedHandler; typedef std::function&) > RestoreTableFromClusterSnapshotResponseReceivedHandler; typedef std::function&) > ResumeClusterResponseReceivedHandler; typedef std::function&) > RevokeClusterSecurityGroupIngressResponseReceivedHandler; typedef std::function&) > RevokeEndpointAccessResponseReceivedHandler; typedef std::function&) > RevokeSnapshotAccessResponseReceivedHandler; typedef std::function&) > RotateEncryptionKeyResponseReceivedHandler; typedef std::function&) > UpdatePartnerStatusResponseReceivedHandler; /** * Amazon Redshift

Overview

This is an * interface reference for Amazon Redshift. It contains documentation for one of * the programming or command line interfaces you can use to manage Amazon Redshift * clusters. Note that Amazon Redshift is asynchronous, which means that some * interfaces may require techniques, such as polling or asynchronous callback * handlers, to determine when a command has been applied. In this reference, the * parameter descriptions indicate whether a change is applied immediately, on the * next instance reboot, or during the next maintenance window. For a summary of * the Amazon Redshift cluster management interfaces, go to Using * the Amazon Redshift Management Interfaces.

Amazon Redshift manages * all the work of setting up, operating, and scaling a data warehouse: * provisioning capacity, monitoring and backing up the cluster, and applying * patches and upgrades to the Amazon Redshift engine. You can focus on using your * data to acquire new insights for your business and customers.

If you are * a first-time user of Amazon Redshift, we recommend that you begin by reading the * Amazon * Redshift Getting Started Guide.

If you are a database developer, the * Amazon * Redshift Database Developer Guide explains how to design, build, query, and * maintain the databases that make up your data warehouse.

*/ class AWS_REDSHIFT_API RedshiftClient : public Aws::Client::AWSXMLClient { public: typedef Aws::Client::AWSXMLClient BASECLASS; /** * Initializes client to use DefaultCredentialProviderChain, with default http client factory, and optional client config. If client config * is not specified, it will be initialized to default values. */ RedshiftClient(const Aws::Client::ClientConfiguration& clientConfiguration = Aws::Client::ClientConfiguration()); /** * Initializes client to use SimpleAWSCredentialsProvider, with default http client factory, and optional client config. If client config * is not specified, it will be initialized to default values. */ RedshiftClient(const Aws::Auth::AWSCredentials& credentials, const Aws::Client::ClientConfiguration& clientConfiguration = Aws::Client::ClientConfiguration()); /** * Initializes client to use specified credentials provider with specified client config. If http client factory is not supplied, * the default http client factory will be used */ RedshiftClient(const std::shared_ptr& credentialsProvider, const Aws::Client::ClientConfiguration& clientConfiguration = Aws::Client::ClientConfiguration()); virtual ~RedshiftClient(); /** * Converts any request object to a presigned URL with the GET method, using region for the signer and a timeout of 15 minutes. */ Aws::String ConvertRequestToPresignedUrl(const Aws::AmazonSerializableWebServiceRequest& requestToConvert, const char* region) const; /** *

Exchanges a DC1 Reserved Node for a DC2 Reserved Node with no changes to the * configuration (term, payment type, or number of nodes) and no additional costs. *

See Also:

AWS * API Reference

*/ virtual Model::AcceptReservedNodeExchangeOutcome AcceptReservedNodeExchange(const Model::AcceptReservedNodeExchangeRequest& request) const; /** * A Callable wrapper for AcceptReservedNodeExchange that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::AcceptReservedNodeExchangeOutcomeCallable AcceptReservedNodeExchangeCallable(const Model::AcceptReservedNodeExchangeRequest& request) const; /** * An Async wrapper for AcceptReservedNodeExchange that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void AcceptReservedNodeExchangeAsync(const Model::AcceptReservedNodeExchangeRequest& request, const AcceptReservedNodeExchangeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Adds a partner integration to a cluster. This operation authorizes a partner * to push status updates for the specified database. To complete the integration, * you also set up the integration on the partner website.

See Also:

* AWS * API Reference

*/ virtual Model::AddPartnerOutcome AddPartner(const Model::AddPartnerRequest& request) const; /** * A Callable wrapper for AddPartner that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::AddPartnerOutcomeCallable AddPartnerCallable(const Model::AddPartnerRequest& request) const; /** * An Async wrapper for AddPartner that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void AddPartnerAsync(const Model::AddPartnerRequest& request, const AddPartnerResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

From a datashare consumer account, associates a datashare with the account * (AssociateEntireAccount) or the specified namespace (ConsumerArn). If you make * this association, the consumer can consume the datashare.

See * Also:

AWS * API Reference

*/ virtual Model::AssociateDataShareConsumerOutcome AssociateDataShareConsumer(const Model::AssociateDataShareConsumerRequest& request) const; /** * A Callable wrapper for AssociateDataShareConsumer that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::AssociateDataShareConsumerOutcomeCallable AssociateDataShareConsumerCallable(const Model::AssociateDataShareConsumerRequest& request) const; /** * An Async wrapper for AssociateDataShareConsumer that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void AssociateDataShareConsumerAsync(const Model::AssociateDataShareConsumerRequest& request, const AssociateDataShareConsumerResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Adds an inbound (ingress) rule to an Amazon Redshift security group. * Depending on whether the application accessing your cluster is running on the * Internet or an Amazon EC2 instance, you can authorize inbound access to either a * Classless Interdomain Routing (CIDR)/Internet Protocol (IP) range or to an * Amazon EC2 security group. You can add as many as 20 ingress rules to an Amazon * Redshift security group.

If you authorize access to an Amazon EC2 * security group, specify EC2SecurityGroupName and * EC2SecurityGroupOwnerId. The Amazon EC2 security group and Amazon * Redshift cluster must be in the same Amazon Web Services Region.

If you * authorize access to a CIDR/IP address range, specify CIDRIP. For an * overview of CIDR blocks, see the Wikipedia article on Classless * Inter-Domain Routing.

You must also associate the security group * with a cluster so that clients running on these IP addresses or the EC2 instance * are authorized to connect to the cluster. For information about managing * security groups, go to Working * with Security Groups in the Amazon Redshift Cluster Management * Guide.

See Also:

AWS * API Reference

*/ virtual Model::AuthorizeClusterSecurityGroupIngressOutcome AuthorizeClusterSecurityGroupIngress(const Model::AuthorizeClusterSecurityGroupIngressRequest& request) const; /** * A Callable wrapper for AuthorizeClusterSecurityGroupIngress that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::AuthorizeClusterSecurityGroupIngressOutcomeCallable AuthorizeClusterSecurityGroupIngressCallable(const Model::AuthorizeClusterSecurityGroupIngressRequest& request) const; /** * An Async wrapper for AuthorizeClusterSecurityGroupIngress that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void AuthorizeClusterSecurityGroupIngressAsync(const Model::AuthorizeClusterSecurityGroupIngressRequest& request, const AuthorizeClusterSecurityGroupIngressResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

From a data producer account, authorizes the sharing of a datashare with one * or more consumer accounts or managing entities. To authorize a datashare for a * data consumer, the producer account must have the correct access * permissions.

See Also:

AWS * API Reference

*/ virtual Model::AuthorizeDataShareOutcome AuthorizeDataShare(const Model::AuthorizeDataShareRequest& request) const; /** * A Callable wrapper for AuthorizeDataShare that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::AuthorizeDataShareOutcomeCallable AuthorizeDataShareCallable(const Model::AuthorizeDataShareRequest& request) const; /** * An Async wrapper for AuthorizeDataShare that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void AuthorizeDataShareAsync(const Model::AuthorizeDataShareRequest& request, const AuthorizeDataShareResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Grants access to a cluster.

See Also:

AWS * API Reference

*/ virtual Model::AuthorizeEndpointAccessOutcome AuthorizeEndpointAccess(const Model::AuthorizeEndpointAccessRequest& request) const; /** * A Callable wrapper for AuthorizeEndpointAccess that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::AuthorizeEndpointAccessOutcomeCallable AuthorizeEndpointAccessCallable(const Model::AuthorizeEndpointAccessRequest& request) const; /** * An Async wrapper for AuthorizeEndpointAccess that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void AuthorizeEndpointAccessAsync(const Model::AuthorizeEndpointAccessRequest& request, const AuthorizeEndpointAccessResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Authorizes the specified Amazon Web Services account to restore the specified * snapshot.

For more information about working with snapshots, go to Amazon * Redshift Snapshots in the Amazon Redshift Cluster Management * Guide.

See Also:

AWS * API Reference

*/ virtual Model::AuthorizeSnapshotAccessOutcome AuthorizeSnapshotAccess(const Model::AuthorizeSnapshotAccessRequest& request) const; /** * A Callable wrapper for AuthorizeSnapshotAccess that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::AuthorizeSnapshotAccessOutcomeCallable AuthorizeSnapshotAccessCallable(const Model::AuthorizeSnapshotAccessRequest& request) const; /** * An Async wrapper for AuthorizeSnapshotAccess that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void AuthorizeSnapshotAccessAsync(const Model::AuthorizeSnapshotAccessRequest& request, const AuthorizeSnapshotAccessResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes a set of cluster snapshots.

See Also:

AWS * API Reference

*/ virtual Model::BatchDeleteClusterSnapshotsOutcome BatchDeleteClusterSnapshots(const Model::BatchDeleteClusterSnapshotsRequest& request) const; /** * A Callable wrapper for BatchDeleteClusterSnapshots that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::BatchDeleteClusterSnapshotsOutcomeCallable BatchDeleteClusterSnapshotsCallable(const Model::BatchDeleteClusterSnapshotsRequest& request) const; /** * An Async wrapper for BatchDeleteClusterSnapshots that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void BatchDeleteClusterSnapshotsAsync(const Model::BatchDeleteClusterSnapshotsRequest& request, const BatchDeleteClusterSnapshotsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Modifies the settings for a set of cluster snapshots.

See * Also:

AWS * API Reference

*/ virtual Model::BatchModifyClusterSnapshotsOutcome BatchModifyClusterSnapshots(const Model::BatchModifyClusterSnapshotsRequest& request) const; /** * A Callable wrapper for BatchModifyClusterSnapshots that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::BatchModifyClusterSnapshotsOutcomeCallable BatchModifyClusterSnapshotsCallable(const Model::BatchModifyClusterSnapshotsRequest& request) const; /** * An Async wrapper for BatchModifyClusterSnapshots that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void BatchModifyClusterSnapshotsAsync(const Model::BatchModifyClusterSnapshotsRequest& request, const BatchModifyClusterSnapshotsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Cancels a resize operation for a cluster.

See Also:

AWS * API Reference

*/ virtual Model::CancelResizeOutcome CancelResize(const Model::CancelResizeRequest& request) const; /** * A Callable wrapper for CancelResize that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CancelResizeOutcomeCallable CancelResizeCallable(const Model::CancelResizeRequest& request) const; /** * An Async wrapper for CancelResize that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CancelResizeAsync(const Model::CancelResizeRequest& request, const CancelResizeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Copies the specified automated cluster snapshot to a new manual cluster * snapshot. The source must be an automated snapshot and it must be in the * available state.

When you delete a cluster, Amazon Redshift deletes any * automated snapshots of the cluster. Also, when the retention period of the * snapshot expires, Amazon Redshift automatically deletes it. If you want to keep * an automated snapshot for a longer period, you can make a manual copy of the * snapshot. Manual snapshots are retained until you delete them.

For more * information about working with snapshots, go to Amazon * Redshift Snapshots in the Amazon Redshift Cluster Management * Guide.

See Also:

AWS * API Reference

*/ virtual Model::CopyClusterSnapshotOutcome CopyClusterSnapshot(const Model::CopyClusterSnapshotRequest& request) const; /** * A Callable wrapper for CopyClusterSnapshot that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CopyClusterSnapshotOutcomeCallable CopyClusterSnapshotCallable(const Model::CopyClusterSnapshotRequest& request) const; /** * An Async wrapper for CopyClusterSnapshot that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CopyClusterSnapshotAsync(const Model::CopyClusterSnapshotRequest& request, const CopyClusterSnapshotResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates an authentication profile with the specified * parameters.

See Also:

AWS * API Reference

*/ virtual Model::CreateAuthenticationProfileOutcome CreateAuthenticationProfile(const Model::CreateAuthenticationProfileRequest& request) const; /** * A Callable wrapper for CreateAuthenticationProfile that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateAuthenticationProfileOutcomeCallable CreateAuthenticationProfileCallable(const Model::CreateAuthenticationProfileRequest& request) const; /** * An Async wrapper for CreateAuthenticationProfile that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateAuthenticationProfileAsync(const Model::CreateAuthenticationProfileRequest& request, const CreateAuthenticationProfileResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates a new cluster with the specified parameters.

To create a * cluster in Virtual Private Cloud (VPC), you must provide a cluster subnet group * name. The cluster subnet group identifies the subnets of your VPC that Amazon * Redshift uses when creating the cluster. For more information about managing * clusters, go to Amazon * Redshift Clusters in the Amazon Redshift Cluster Management * Guide.

See Also:

AWS * API Reference

*/ virtual Model::CreateClusterOutcome CreateCluster(const Model::CreateClusterRequest& request) const; /** * A Callable wrapper for CreateCluster that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateClusterOutcomeCallable CreateClusterCallable(const Model::CreateClusterRequest& request) const; /** * An Async wrapper for CreateCluster that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateClusterAsync(const Model::CreateClusterRequest& request, const CreateClusterResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates an Amazon Redshift parameter group.

Creating parameter groups * is independent of creating clusters. You can associate a cluster with a * parameter group when you create the cluster. You can also associate an existing * cluster with a parameter group after the cluster is created by using * ModifyCluster.

Parameters in the parameter group define specific * behavior that applies to the databases you create on the cluster. For more * information about parameters and parameter groups, go to Amazon * Redshift Parameter Groups in the Amazon Redshift Cluster Management * Guide.

See Also:

AWS * API Reference

*/ virtual Model::CreateClusterParameterGroupOutcome CreateClusterParameterGroup(const Model::CreateClusterParameterGroupRequest& request) const; /** * A Callable wrapper for CreateClusterParameterGroup that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateClusterParameterGroupOutcomeCallable CreateClusterParameterGroupCallable(const Model::CreateClusterParameterGroupRequest& request) const; /** * An Async wrapper for CreateClusterParameterGroup that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateClusterParameterGroupAsync(const Model::CreateClusterParameterGroupRequest& request, const CreateClusterParameterGroupResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates a new Amazon Redshift security group. You use security groups to * control access to non-VPC clusters.

For information about managing * security groups, go to Amazon * Redshift Cluster Security Groups in the Amazon Redshift Cluster * Management Guide.

See Also:

AWS * API Reference

*/ virtual Model::CreateClusterSecurityGroupOutcome CreateClusterSecurityGroup(const Model::CreateClusterSecurityGroupRequest& request) const; /** * A Callable wrapper for CreateClusterSecurityGroup that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateClusterSecurityGroupOutcomeCallable CreateClusterSecurityGroupCallable(const Model::CreateClusterSecurityGroupRequest& request) const; /** * An Async wrapper for CreateClusterSecurityGroup that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateClusterSecurityGroupAsync(const Model::CreateClusterSecurityGroupRequest& request, const CreateClusterSecurityGroupResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates a manual snapshot of the specified cluster. The cluster must be in * the available state.

For more information about working * with snapshots, go to Amazon * Redshift Snapshots in the Amazon Redshift Cluster Management * Guide.

See Also:

AWS * API Reference

*/ virtual Model::CreateClusterSnapshotOutcome CreateClusterSnapshot(const Model::CreateClusterSnapshotRequest& request) const; /** * A Callable wrapper for CreateClusterSnapshot that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateClusterSnapshotOutcomeCallable CreateClusterSnapshotCallable(const Model::CreateClusterSnapshotRequest& request) const; /** * An Async wrapper for CreateClusterSnapshot that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateClusterSnapshotAsync(const Model::CreateClusterSnapshotRequest& request, const CreateClusterSnapshotResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates a new Amazon Redshift subnet group. You must provide a list of one or * more subnets in your existing Amazon Virtual Private Cloud (Amazon VPC) when * creating Amazon Redshift subnet group.

For information about subnet * groups, go to Amazon * Redshift Cluster Subnet Groups in the Amazon Redshift Cluster Management * Guide.

See Also:

AWS * API Reference

*/ virtual Model::CreateClusterSubnetGroupOutcome CreateClusterSubnetGroup(const Model::CreateClusterSubnetGroupRequest& request) const; /** * A Callable wrapper for CreateClusterSubnetGroup that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateClusterSubnetGroupOutcomeCallable CreateClusterSubnetGroupCallable(const Model::CreateClusterSubnetGroupRequest& request) const; /** * An Async wrapper for CreateClusterSubnetGroup that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateClusterSubnetGroupAsync(const Model::CreateClusterSubnetGroupRequest& request, const CreateClusterSubnetGroupResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates a Redshift-managed VPC endpoint.

See Also:

AWS * API Reference

*/ virtual Model::CreateEndpointAccessOutcome CreateEndpointAccess(const Model::CreateEndpointAccessRequest& request) const; /** * A Callable wrapper for CreateEndpointAccess that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateEndpointAccessOutcomeCallable CreateEndpointAccessCallable(const Model::CreateEndpointAccessRequest& request) const; /** * An Async wrapper for CreateEndpointAccess that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateEndpointAccessAsync(const Model::CreateEndpointAccessRequest& request, const CreateEndpointAccessResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates an Amazon Redshift event notification subscription. This action * requires an ARN (Amazon Resource Name) of an Amazon SNS topic created by either * the Amazon Redshift console, the Amazon SNS console, or the Amazon SNS API. To * obtain an ARN with Amazon SNS, you must create a topic in Amazon SNS and * subscribe to the topic. The ARN is displayed in the SNS console.

You can * specify the source type, and lists of Amazon Redshift source IDs, event * categories, and event severities. Notifications will be sent for all events you * want that match those criteria. For example, you can specify source type = * cluster, source ID = my-cluster-1 and mycluster2, event categories = * Availability, Backup, and severity = ERROR. The subscription will only send * notifications for those ERROR events in the Availability and Backup categories * for the specified clusters.

If you specify both the source type and * source IDs, such as source type = cluster and source identifier = my-cluster-1, * notifications will be sent for all the cluster events for my-cluster-1. If you * specify a source type but do not specify a source identifier, you will receive * notice of the events for the objects of that type in your Amazon Web Services * account. If you do not specify either the SourceType nor the SourceIdentifier, * you will be notified of events generated from all Amazon Redshift sources * belonging to your Amazon Web Services account. You must specify a source type if * you specify a source ID.

See Also:

AWS * API Reference

*/ virtual Model::CreateEventSubscriptionOutcome CreateEventSubscription(const Model::CreateEventSubscriptionRequest& request) const; /** * A Callable wrapper for CreateEventSubscription that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateEventSubscriptionOutcomeCallable CreateEventSubscriptionCallable(const Model::CreateEventSubscriptionRequest& request) const; /** * An Async wrapper for CreateEventSubscription that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateEventSubscriptionAsync(const Model::CreateEventSubscriptionRequest& request, const CreateEventSubscriptionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates an HSM client certificate that an Amazon Redshift cluster will use to * connect to the client's HSM in order to store and retrieve the keys used to * encrypt the cluster databases.

The command returns a public key, which * you must store in the HSM. In addition to creating the HSM certificate, you must * create an Amazon Redshift HSM configuration that provides a cluster the * information needed to store and use encryption keys in the HSM. For more * information, go to Hardware * Security Modules in the Amazon Redshift Cluster Management * Guide.

See Also:

AWS * API Reference

*/ virtual Model::CreateHsmClientCertificateOutcome CreateHsmClientCertificate(const Model::CreateHsmClientCertificateRequest& request) const; /** * A Callable wrapper for CreateHsmClientCertificate that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateHsmClientCertificateOutcomeCallable CreateHsmClientCertificateCallable(const Model::CreateHsmClientCertificateRequest& request) const; /** * An Async wrapper for CreateHsmClientCertificate that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateHsmClientCertificateAsync(const Model::CreateHsmClientCertificateRequest& request, const CreateHsmClientCertificateResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates an HSM configuration that contains the information required by an * Amazon Redshift cluster to store and use database encryption keys in a Hardware * Security Module (HSM). After creating the HSM configuration, you can specify it * as a parameter when creating a cluster. The cluster will then store its * encryption keys in the HSM.

In addition to creating an HSM configuration, * you must also create an HSM client certificate. For more information, go to Hardware * Security Modules in the Amazon Redshift Cluster Management * Guide.

See Also:

AWS * API Reference

*/ virtual Model::CreateHsmConfigurationOutcome CreateHsmConfiguration(const Model::CreateHsmConfigurationRequest& request) const; /** * A Callable wrapper for CreateHsmConfiguration that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateHsmConfigurationOutcomeCallable CreateHsmConfigurationCallable(const Model::CreateHsmConfigurationRequest& request) const; /** * An Async wrapper for CreateHsmConfiguration that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateHsmConfigurationAsync(const Model::CreateHsmConfigurationRequest& request, const CreateHsmConfigurationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates a scheduled action. A scheduled action contains a schedule and an * Amazon Redshift API action. For example, you can create a schedule of when to * run the ResizeCluster API operation.

See Also:

AWS * API Reference

*/ virtual Model::CreateScheduledActionOutcome CreateScheduledAction(const Model::CreateScheduledActionRequest& request) const; /** * A Callable wrapper for CreateScheduledAction that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateScheduledActionOutcomeCallable CreateScheduledActionCallable(const Model::CreateScheduledActionRequest& request) const; /** * An Async wrapper for CreateScheduledAction that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateScheduledActionAsync(const Model::CreateScheduledActionRequest& request, const CreateScheduledActionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates a snapshot copy grant that permits Amazon Redshift to use an * encrypted symmetric key from Key Management Service (KMS) to encrypt copied * snapshots in a destination region.

For more information about managing * snapshot copy grants, go to Amazon * Redshift Database Encryption in the Amazon Redshift Cluster Management * Guide.

See Also:

AWS * API Reference

*/ virtual Model::CreateSnapshotCopyGrantOutcome CreateSnapshotCopyGrant(const Model::CreateSnapshotCopyGrantRequest& request) const; /** * A Callable wrapper for CreateSnapshotCopyGrant that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateSnapshotCopyGrantOutcomeCallable CreateSnapshotCopyGrantCallable(const Model::CreateSnapshotCopyGrantRequest& request) const; /** * An Async wrapper for CreateSnapshotCopyGrant that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateSnapshotCopyGrantAsync(const Model::CreateSnapshotCopyGrantRequest& request, const CreateSnapshotCopyGrantResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Create a snapshot schedule that can be associated to a cluster and which * overrides the default system backup schedule.

See Also:

AWS * API Reference

*/ virtual Model::CreateSnapshotScheduleOutcome CreateSnapshotSchedule(const Model::CreateSnapshotScheduleRequest& request) const; /** * A Callable wrapper for CreateSnapshotSchedule that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateSnapshotScheduleOutcomeCallable CreateSnapshotScheduleCallable(const Model::CreateSnapshotScheduleRequest& request) const; /** * An Async wrapper for CreateSnapshotSchedule that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateSnapshotScheduleAsync(const Model::CreateSnapshotScheduleRequest& request, const CreateSnapshotScheduleResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Adds tags to a cluster.

A resource can have up to 50 tags. If you try * to create more than 50 tags for a resource, you will receive an error and the * attempt will fail.

If you specify a key that already exists for the * resource, the value for that key will be updated with the new * value.

See Also:

AWS * API Reference

*/ virtual Model::CreateTagsOutcome CreateTags(const Model::CreateTagsRequest& request) const; /** * A Callable wrapper for CreateTags that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateTagsOutcomeCallable CreateTagsCallable(const Model::CreateTagsRequest& request) const; /** * An Async wrapper for CreateTags that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateTagsAsync(const Model::CreateTagsRequest& request, const CreateTagsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates a usage limit for a specified Amazon Redshift feature on a cluster. * The usage limit is identified by the returned usage limit * identifier.

See Also:

AWS * API Reference

*/ virtual Model::CreateUsageLimitOutcome CreateUsageLimit(const Model::CreateUsageLimitRequest& request) const; /** * A Callable wrapper for CreateUsageLimit that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::CreateUsageLimitOutcomeCallable CreateUsageLimitCallable(const Model::CreateUsageLimitRequest& request) const; /** * An Async wrapper for CreateUsageLimit that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void CreateUsageLimitAsync(const Model::CreateUsageLimitRequest& request, const CreateUsageLimitResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

From a datashare producer account, removes authorization from the specified * datashare.

See Also:

AWS * API Reference

*/ virtual Model::DeauthorizeDataShareOutcome DeauthorizeDataShare(const Model::DeauthorizeDataShareRequest& request) const; /** * A Callable wrapper for DeauthorizeDataShare that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeauthorizeDataShareOutcomeCallable DeauthorizeDataShareCallable(const Model::DeauthorizeDataShareRequest& request) const; /** * An Async wrapper for DeauthorizeDataShare that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeauthorizeDataShareAsync(const Model::DeauthorizeDataShareRequest& request, const DeauthorizeDataShareResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes an authentication profile.

See Also:

AWS * API Reference

*/ virtual Model::DeleteAuthenticationProfileOutcome DeleteAuthenticationProfile(const Model::DeleteAuthenticationProfileRequest& request) const; /** * A Callable wrapper for DeleteAuthenticationProfile that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteAuthenticationProfileOutcomeCallable DeleteAuthenticationProfileCallable(const Model::DeleteAuthenticationProfileRequest& request) const; /** * An Async wrapper for DeleteAuthenticationProfile that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteAuthenticationProfileAsync(const Model::DeleteAuthenticationProfileRequest& request, const DeleteAuthenticationProfileResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes a previously provisioned cluster without its final snapshot being * created. A successful response from the web service indicates that the request * was received correctly. Use DescribeClusters to monitor the status of the * deletion. The delete operation cannot be canceled or reverted once submitted. * For more information about managing clusters, go to Amazon * Redshift Clusters in the Amazon Redshift Cluster Management * Guide.

If you want to shut down the cluster and retain it for future * use, set SkipFinalClusterSnapshot to false and specify a * name for FinalClusterSnapshotIdentifier. You can later restore this * snapshot to resume using the cluster. If a final cluster snapshot is requested, * the status of the cluster will be "final-snapshot" while the snapshot is being * taken, then it's "deleting" once Amazon Redshift begins deleting the cluster. *

For more information about managing clusters, go to Amazon * Redshift Clusters in the Amazon Redshift Cluster Management * Guide.

See Also:

AWS * API Reference

*/ virtual Model::DeleteClusterOutcome DeleteCluster(const Model::DeleteClusterRequest& request) const; /** * A Callable wrapper for DeleteCluster that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteClusterOutcomeCallable DeleteClusterCallable(const Model::DeleteClusterRequest& request) const; /** * An Async wrapper for DeleteCluster that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteClusterAsync(const Model::DeleteClusterRequest& request, const DeleteClusterResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes a specified Amazon Redshift parameter group.

You cannot * delete a parameter group if it is associated with a cluster.

*

See Also:

AWS * API Reference

*/ virtual Model::DeleteClusterParameterGroupOutcome DeleteClusterParameterGroup(const Model::DeleteClusterParameterGroupRequest& request) const; /** * A Callable wrapper for DeleteClusterParameterGroup that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteClusterParameterGroupOutcomeCallable DeleteClusterParameterGroupCallable(const Model::DeleteClusterParameterGroupRequest& request) const; /** * An Async wrapper for DeleteClusterParameterGroup that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteClusterParameterGroupAsync(const Model::DeleteClusterParameterGroupRequest& request, const DeleteClusterParameterGroupResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes an Amazon Redshift security group.

You cannot delete a * security group that is associated with any clusters. You cannot delete the * default security group.

For information about managing security * groups, go to Amazon * Redshift Cluster Security Groups in the Amazon Redshift Cluster * Management Guide.

See Also:

AWS * API Reference

*/ virtual Model::DeleteClusterSecurityGroupOutcome DeleteClusterSecurityGroup(const Model::DeleteClusterSecurityGroupRequest& request) const; /** * A Callable wrapper for DeleteClusterSecurityGroup that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteClusterSecurityGroupOutcomeCallable DeleteClusterSecurityGroupCallable(const Model::DeleteClusterSecurityGroupRequest& request) const; /** * An Async wrapper for DeleteClusterSecurityGroup that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteClusterSecurityGroupAsync(const Model::DeleteClusterSecurityGroupRequest& request, const DeleteClusterSecurityGroupResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes the specified manual snapshot. The snapshot must be in the * available state, with no other users authorized to access the * snapshot.

Unlike automated snapshots, manual snapshots are retained even * after you delete your cluster. Amazon Redshift does not delete your manual * snapshots. You must delete manual snapshot explicitly to avoid getting charged. * If other accounts are authorized to access the snapshot, you must revoke all of * the authorizations before you can delete the snapshot.

See Also:

* AWS * API Reference

*/ virtual Model::DeleteClusterSnapshotOutcome DeleteClusterSnapshot(const Model::DeleteClusterSnapshotRequest& request) const; /** * A Callable wrapper for DeleteClusterSnapshot that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteClusterSnapshotOutcomeCallable DeleteClusterSnapshotCallable(const Model::DeleteClusterSnapshotRequest& request) const; /** * An Async wrapper for DeleteClusterSnapshot that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteClusterSnapshotAsync(const Model::DeleteClusterSnapshotRequest& request, const DeleteClusterSnapshotResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes the specified cluster subnet group.

See Also:

AWS * API Reference

*/ virtual Model::DeleteClusterSubnetGroupOutcome DeleteClusterSubnetGroup(const Model::DeleteClusterSubnetGroupRequest& request) const; /** * A Callable wrapper for DeleteClusterSubnetGroup that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteClusterSubnetGroupOutcomeCallable DeleteClusterSubnetGroupCallable(const Model::DeleteClusterSubnetGroupRequest& request) const; /** * An Async wrapper for DeleteClusterSubnetGroup that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteClusterSubnetGroupAsync(const Model::DeleteClusterSubnetGroupRequest& request, const DeleteClusterSubnetGroupResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes a Redshift-managed VPC endpoint.

See Also:

AWS * API Reference

*/ virtual Model::DeleteEndpointAccessOutcome DeleteEndpointAccess(const Model::DeleteEndpointAccessRequest& request) const; /** * A Callable wrapper for DeleteEndpointAccess that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteEndpointAccessOutcomeCallable DeleteEndpointAccessCallable(const Model::DeleteEndpointAccessRequest& request) const; /** * An Async wrapper for DeleteEndpointAccess that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteEndpointAccessAsync(const Model::DeleteEndpointAccessRequest& request, const DeleteEndpointAccessResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes an Amazon Redshift event notification subscription.

See * Also:

AWS * API Reference

*/ virtual Model::DeleteEventSubscriptionOutcome DeleteEventSubscription(const Model::DeleteEventSubscriptionRequest& request) const; /** * A Callable wrapper for DeleteEventSubscription that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteEventSubscriptionOutcomeCallable DeleteEventSubscriptionCallable(const Model::DeleteEventSubscriptionRequest& request) const; /** * An Async wrapper for DeleteEventSubscription that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteEventSubscriptionAsync(const Model::DeleteEventSubscriptionRequest& request, const DeleteEventSubscriptionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes the specified HSM client certificate.

See Also:

AWS * API Reference

*/ virtual Model::DeleteHsmClientCertificateOutcome DeleteHsmClientCertificate(const Model::DeleteHsmClientCertificateRequest& request) const; /** * A Callable wrapper for DeleteHsmClientCertificate that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteHsmClientCertificateOutcomeCallable DeleteHsmClientCertificateCallable(const Model::DeleteHsmClientCertificateRequest& request) const; /** * An Async wrapper for DeleteHsmClientCertificate that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteHsmClientCertificateAsync(const Model::DeleteHsmClientCertificateRequest& request, const DeleteHsmClientCertificateResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes the specified Amazon Redshift HSM configuration.

See * Also:

AWS * API Reference

*/ virtual Model::DeleteHsmConfigurationOutcome DeleteHsmConfiguration(const Model::DeleteHsmConfigurationRequest& request) const; /** * A Callable wrapper for DeleteHsmConfiguration that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteHsmConfigurationOutcomeCallable DeleteHsmConfigurationCallable(const Model::DeleteHsmConfigurationRequest& request) const; /** * An Async wrapper for DeleteHsmConfiguration that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteHsmConfigurationAsync(const Model::DeleteHsmConfigurationRequest& request, const DeleteHsmConfigurationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes a partner integration from a cluster. Data can still flow to the * cluster until the integration is deleted at the partner's website.

See * Also:

AWS * API Reference

*/ virtual Model::DeletePartnerOutcome DeletePartner(const Model::DeletePartnerRequest& request) const; /** * A Callable wrapper for DeletePartner that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeletePartnerOutcomeCallable DeletePartnerCallable(const Model::DeletePartnerRequest& request) const; /** * An Async wrapper for DeletePartner that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeletePartnerAsync(const Model::DeletePartnerRequest& request, const DeletePartnerResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes a scheduled action.

See Also:

AWS * API Reference

*/ virtual Model::DeleteScheduledActionOutcome DeleteScheduledAction(const Model::DeleteScheduledActionRequest& request) const; /** * A Callable wrapper for DeleteScheduledAction that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteScheduledActionOutcomeCallable DeleteScheduledActionCallable(const Model::DeleteScheduledActionRequest& request) const; /** * An Async wrapper for DeleteScheduledAction that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteScheduledActionAsync(const Model::DeleteScheduledActionRequest& request, const DeleteScheduledActionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes the specified snapshot copy grant.

See Also:

AWS * API Reference

*/ virtual Model::DeleteSnapshotCopyGrantOutcome DeleteSnapshotCopyGrant(const Model::DeleteSnapshotCopyGrantRequest& request) const; /** * A Callable wrapper for DeleteSnapshotCopyGrant that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteSnapshotCopyGrantOutcomeCallable DeleteSnapshotCopyGrantCallable(const Model::DeleteSnapshotCopyGrantRequest& request) const; /** * An Async wrapper for DeleteSnapshotCopyGrant that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteSnapshotCopyGrantAsync(const Model::DeleteSnapshotCopyGrantRequest& request, const DeleteSnapshotCopyGrantResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes a snapshot schedule.

See Also:

AWS * API Reference

*/ virtual Model::DeleteSnapshotScheduleOutcome DeleteSnapshotSchedule(const Model::DeleteSnapshotScheduleRequest& request) const; /** * A Callable wrapper for DeleteSnapshotSchedule that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteSnapshotScheduleOutcomeCallable DeleteSnapshotScheduleCallable(const Model::DeleteSnapshotScheduleRequest& request) const; /** * An Async wrapper for DeleteSnapshotSchedule that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteSnapshotScheduleAsync(const Model::DeleteSnapshotScheduleRequest& request, const DeleteSnapshotScheduleResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes tags from a resource. You must provide the ARN of the resource from * which you want to delete the tag or tags.

See Also:

AWS * API Reference

*/ virtual Model::DeleteTagsOutcome DeleteTags(const Model::DeleteTagsRequest& request) const; /** * A Callable wrapper for DeleteTags that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteTagsOutcomeCallable DeleteTagsCallable(const Model::DeleteTagsRequest& request) const; /** * An Async wrapper for DeleteTags that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteTagsAsync(const Model::DeleteTagsRequest& request, const DeleteTagsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Deletes a usage limit from a cluster.

See Also:

AWS * API Reference

*/ virtual Model::DeleteUsageLimitOutcome DeleteUsageLimit(const Model::DeleteUsageLimitRequest& request) const; /** * A Callable wrapper for DeleteUsageLimit that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DeleteUsageLimitOutcomeCallable DeleteUsageLimitCallable(const Model::DeleteUsageLimitRequest& request) const; /** * An Async wrapper for DeleteUsageLimit that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DeleteUsageLimitAsync(const Model::DeleteUsageLimitRequest& request, const DeleteUsageLimitResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Returns a list of attributes attached to an account

See Also:

* AWS * API Reference

*/ virtual Model::DescribeAccountAttributesOutcome DescribeAccountAttributes(const Model::DescribeAccountAttributesRequest& request) const; /** * A Callable wrapper for DescribeAccountAttributes that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeAccountAttributesOutcomeCallable DescribeAccountAttributesCallable(const Model::DescribeAccountAttributesRequest& request) const; /** * An Async wrapper for DescribeAccountAttributes that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeAccountAttributesAsync(const Model::DescribeAccountAttributesRequest& request, const DescribeAccountAttributesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes an authentication profile.

See Also:

AWS * API Reference

*/ virtual Model::DescribeAuthenticationProfilesOutcome DescribeAuthenticationProfiles(const Model::DescribeAuthenticationProfilesRequest& request) const; /** * A Callable wrapper for DescribeAuthenticationProfiles that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeAuthenticationProfilesOutcomeCallable DescribeAuthenticationProfilesCallable(const Model::DescribeAuthenticationProfilesRequest& request) const; /** * An Async wrapper for DescribeAuthenticationProfiles that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeAuthenticationProfilesAsync(const Model::DescribeAuthenticationProfilesRequest& request, const DescribeAuthenticationProfilesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Returns an array of ClusterDbRevision objects.

See * Also:

AWS * API Reference

*/ virtual Model::DescribeClusterDbRevisionsOutcome DescribeClusterDbRevisions(const Model::DescribeClusterDbRevisionsRequest& request) const; /** * A Callable wrapper for DescribeClusterDbRevisions that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeClusterDbRevisionsOutcomeCallable DescribeClusterDbRevisionsCallable(const Model::DescribeClusterDbRevisionsRequest& request) const; /** * An Async wrapper for DescribeClusterDbRevisions that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeClusterDbRevisionsAsync(const Model::DescribeClusterDbRevisionsRequest& request, const DescribeClusterDbRevisionsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Returns a list of Amazon Redshift parameter groups, including parameter * groups you created and the default parameter group. For each parameter group, * the response includes the parameter group name, description, and parameter group * family name. You can optionally specify a name to retrieve the description of a * specific parameter group.

For more information about parameters and * parameter groups, go to Amazon * Redshift Parameter Groups in the Amazon Redshift Cluster Management * Guide.

If you specify both tag keys and tag values in the same * request, Amazon Redshift returns all parameter groups that match any combination * of the specified keys and values. For example, if you have owner * and environment for tag keys, and admin and * test for tag values, all parameter groups that have any combination * of those values are returned.

If both tag keys and values are omitted * from the request, parameter groups are returned regardless of whether they have * tag keys or values associated with them.

See Also:

AWS * API Reference

*/ virtual Model::DescribeClusterParameterGroupsOutcome DescribeClusterParameterGroups(const Model::DescribeClusterParameterGroupsRequest& request) const; /** * A Callable wrapper for DescribeClusterParameterGroups that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeClusterParameterGroupsOutcomeCallable DescribeClusterParameterGroupsCallable(const Model::DescribeClusterParameterGroupsRequest& request) const; /** * An Async wrapper for DescribeClusterParameterGroups that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeClusterParameterGroupsAsync(const Model::DescribeClusterParameterGroupsRequest& request, const DescribeClusterParameterGroupsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Returns a detailed list of parameters contained within the specified Amazon * Redshift parameter group. For each parameter the response includes information * such as parameter name, description, data type, value, whether the parameter * value is modifiable, and so on.

You can specify source filter to * retrieve parameters of only specific type. For example, to retrieve parameters * that were modified by a user action such as from * ModifyClusterParameterGroup, you can specify source equal to * user.

For more information about parameters and parameter groups, * go to Amazon * Redshift Parameter Groups in the Amazon Redshift Cluster Management * Guide.

See Also:

AWS * API Reference

*/ virtual Model::DescribeClusterParametersOutcome DescribeClusterParameters(const Model::DescribeClusterParametersRequest& request) const; /** * A Callable wrapper for DescribeClusterParameters that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeClusterParametersOutcomeCallable DescribeClusterParametersCallable(const Model::DescribeClusterParametersRequest& request) const; /** * An Async wrapper for DescribeClusterParameters that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeClusterParametersAsync(const Model::DescribeClusterParametersRequest& request, const DescribeClusterParametersResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Returns information about Amazon Redshift security groups. If the name of a * security group is specified, the response will contain only information about * only that security group.

For information about managing security * groups, go to Amazon * Redshift Cluster Security Groups in the Amazon Redshift Cluster * Management Guide.

If you specify both tag keys and tag values in the * same request, Amazon Redshift returns all security groups that match any * combination of the specified keys and values. For example, if you have * owner and environment for tag keys, and * admin and test for tag values, all security groups * that have any combination of those values are returned.

If both tag keys * and values are omitted from the request, security groups are returned regardless * of whether they have tag keys or values associated with them.

See * Also:

AWS * API Reference

*/ virtual Model::DescribeClusterSecurityGroupsOutcome DescribeClusterSecurityGroups(const Model::DescribeClusterSecurityGroupsRequest& request) const; /** * A Callable wrapper for DescribeClusterSecurityGroups that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeClusterSecurityGroupsOutcomeCallable DescribeClusterSecurityGroupsCallable(const Model::DescribeClusterSecurityGroupsRequest& request) const; /** * An Async wrapper for DescribeClusterSecurityGroups that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeClusterSecurityGroupsAsync(const Model::DescribeClusterSecurityGroupsRequest& request, const DescribeClusterSecurityGroupsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Returns one or more snapshot objects, which contain metadata about your * cluster snapshots. By default, this operation returns information about all * snapshots of all clusters that are owned by your Amazon Web Services account. No * information is returned for snapshots owned by inactive Amazon Web Services * accounts.

If you specify both tag keys and tag values in the same * request, Amazon Redshift returns all snapshots that match any combination of the * specified keys and values. For example, if you have owner and * environment for tag keys, and admin and * test for tag values, all snapshots that have any combination of * those values are returned. Only snapshots that you own are returned in the * response; shared snapshots are not returned with the tag key and tag value * request parameters.

If both tag keys and values are omitted from the * request, snapshots are returned regardless of whether they have tag keys or * values associated with them.

See Also:

AWS * API Reference

*/ virtual Model::DescribeClusterSnapshotsOutcome DescribeClusterSnapshots(const Model::DescribeClusterSnapshotsRequest& request) const; /** * A Callable wrapper for DescribeClusterSnapshots that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeClusterSnapshotsOutcomeCallable DescribeClusterSnapshotsCallable(const Model::DescribeClusterSnapshotsRequest& request) const; /** * An Async wrapper for DescribeClusterSnapshots that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeClusterSnapshotsAsync(const Model::DescribeClusterSnapshotsRequest& request, const DescribeClusterSnapshotsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Returns one or more cluster subnet group objects, which contain metadata * about your cluster subnet groups. By default, this operation returns information * about all cluster subnet groups that are defined in your Amazon Web Services * account.

If you specify both tag keys and tag values in the same request, * Amazon Redshift returns all subnet groups that match any combination of the * specified keys and values. For example, if you have owner and * environment for tag keys, and admin and * test for tag values, all subnet groups that have any combination of * those values are returned.

If both tag keys and values are omitted from * the request, subnet groups are returned regardless of whether they have tag keys * or values associated with them.

See Also:

AWS * API Reference

*/ virtual Model::DescribeClusterSubnetGroupsOutcome DescribeClusterSubnetGroups(const Model::DescribeClusterSubnetGroupsRequest& request) const; /** * A Callable wrapper for DescribeClusterSubnetGroups that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeClusterSubnetGroupsOutcomeCallable DescribeClusterSubnetGroupsCallable(const Model::DescribeClusterSubnetGroupsRequest& request) const; /** * An Async wrapper for DescribeClusterSubnetGroups that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeClusterSubnetGroupsAsync(const Model::DescribeClusterSubnetGroupsRequest& request, const DescribeClusterSubnetGroupsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Returns a list of all the available maintenance tracks.

See * Also:

AWS * API Reference

*/ virtual Model::DescribeClusterTracksOutcome DescribeClusterTracks(const Model::DescribeClusterTracksRequest& request) const; /** * A Callable wrapper for DescribeClusterTracks that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeClusterTracksOutcomeCallable DescribeClusterTracksCallable(const Model::DescribeClusterTracksRequest& request) const; /** * An Async wrapper for DescribeClusterTracks that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeClusterTracksAsync(const Model::DescribeClusterTracksRequest& request, const DescribeClusterTracksResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Returns descriptions of the available Amazon Redshift cluster versions. You * can call this operation even before creating any clusters to learn more about * the Amazon Redshift versions. For more information about managing clusters, go * to Amazon * Redshift Clusters in the Amazon Redshift Cluster Management * Guide.

See Also:

AWS * API Reference

*/ virtual Model::DescribeClusterVersionsOutcome DescribeClusterVersions(const Model::DescribeClusterVersionsRequest& request) const; /** * A Callable wrapper for DescribeClusterVersions that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeClusterVersionsOutcomeCallable DescribeClusterVersionsCallable(const Model::DescribeClusterVersionsRequest& request) const; /** * An Async wrapper for DescribeClusterVersions that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeClusterVersionsAsync(const Model::DescribeClusterVersionsRequest& request, const DescribeClusterVersionsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Returns properties of provisioned clusters including general cluster * properties, cluster database properties, maintenance and backup properties, and * security and access properties. This operation supports pagination. For more * information about managing clusters, go to Amazon * Redshift Clusters in the Amazon Redshift Cluster Management * Guide.

If you specify both tag keys and tag values in the same * request, Amazon Redshift returns all clusters that match any combination of the * specified keys and values. For example, if you have owner and * environment for tag keys, and admin and * test for tag values, all clusters that have any combination of * those values are returned.

If both tag keys and values are omitted from * the request, clusters are returned regardless of whether they have tag keys or * values associated with them.

See Also:

AWS * API Reference

*/ virtual Model::DescribeClustersOutcome DescribeClusters(const Model::DescribeClustersRequest& request) const; /** * A Callable wrapper for DescribeClusters that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeClustersOutcomeCallable DescribeClustersCallable(const Model::DescribeClustersRequest& request) const; /** * An Async wrapper for DescribeClusters that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeClustersAsync(const Model::DescribeClustersRequest& request, const DescribeClustersResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Shows the status of any inbound or outbound datashares available in the * specified account.

See Also:

AWS * API Reference

*/ virtual Model::DescribeDataSharesOutcome DescribeDataShares(const Model::DescribeDataSharesRequest& request) const; /** * A Callable wrapper for DescribeDataShares that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeDataSharesOutcomeCallable DescribeDataSharesCallable(const Model::DescribeDataSharesRequest& request) const; /** * An Async wrapper for DescribeDataShares that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeDataSharesAsync(const Model::DescribeDataSharesRequest& request, const DescribeDataSharesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Returns a list of datashares where the account identifier being called is a * consumer account identifier.

See Also:

AWS * API Reference

*/ virtual Model::DescribeDataSharesForConsumerOutcome DescribeDataSharesForConsumer(const Model::DescribeDataSharesForConsumerRequest& request) const; /** * A Callable wrapper for DescribeDataSharesForConsumer that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeDataSharesForConsumerOutcomeCallable DescribeDataSharesForConsumerCallable(const Model::DescribeDataSharesForConsumerRequest& request) const; /** * An Async wrapper for DescribeDataSharesForConsumer that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeDataSharesForConsumerAsync(const Model::DescribeDataSharesForConsumerRequest& request, const DescribeDataSharesForConsumerResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Returns a list of datashares when the account identifier being called is a * producer account identifier.

See Also:

AWS * API Reference

*/ virtual Model::DescribeDataSharesForProducerOutcome DescribeDataSharesForProducer(const Model::DescribeDataSharesForProducerRequest& request) const; /** * A Callable wrapper for DescribeDataSharesForProducer that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeDataSharesForProducerOutcomeCallable DescribeDataSharesForProducerCallable(const Model::DescribeDataSharesForProducerRequest& request) const; /** * An Async wrapper for DescribeDataSharesForProducer that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeDataSharesForProducerAsync(const Model::DescribeDataSharesForProducerRequest& request, const DescribeDataSharesForProducerResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Returns a list of parameter settings for the specified parameter group * family.

For more information about parameters and parameter groups, go * to Amazon * Redshift Parameter Groups in the Amazon Redshift Cluster Management * Guide.

See Also:

AWS * API Reference

*/ virtual Model::DescribeDefaultClusterParametersOutcome DescribeDefaultClusterParameters(const Model::DescribeDefaultClusterParametersRequest& request) const; /** * A Callable wrapper for DescribeDefaultClusterParameters that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeDefaultClusterParametersOutcomeCallable DescribeDefaultClusterParametersCallable(const Model::DescribeDefaultClusterParametersRequest& request) const; /** * An Async wrapper for DescribeDefaultClusterParameters that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeDefaultClusterParametersAsync(const Model::DescribeDefaultClusterParametersRequest& request, const DescribeDefaultClusterParametersResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes a Redshift-managed VPC endpoint.

See Also:

AWS * API Reference

*/ virtual Model::DescribeEndpointAccessOutcome DescribeEndpointAccess(const Model::DescribeEndpointAccessRequest& request) const; /** * A Callable wrapper for DescribeEndpointAccess that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeEndpointAccessOutcomeCallable DescribeEndpointAccessCallable(const Model::DescribeEndpointAccessRequest& request) const; /** * An Async wrapper for DescribeEndpointAccess that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeEndpointAccessAsync(const Model::DescribeEndpointAccessRequest& request, const DescribeEndpointAccessResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes an endpoint authorization.

See Also:

AWS * API Reference

*/ virtual Model::DescribeEndpointAuthorizationOutcome DescribeEndpointAuthorization(const Model::DescribeEndpointAuthorizationRequest& request) const; /** * A Callable wrapper for DescribeEndpointAuthorization that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeEndpointAuthorizationOutcomeCallable DescribeEndpointAuthorizationCallable(const Model::DescribeEndpointAuthorizationRequest& request) const; /** * An Async wrapper for DescribeEndpointAuthorization that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeEndpointAuthorizationAsync(const Model::DescribeEndpointAuthorizationRequest& request, const DescribeEndpointAuthorizationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Displays a list of event categories for all event source types, or for a * specified source type. For a list of the event categories and source types, go * to Amazon * Redshift Event Notifications.

See Also:

AWS * API Reference

*/ virtual Model::DescribeEventCategoriesOutcome DescribeEventCategories(const Model::DescribeEventCategoriesRequest& request) const; /** * A Callable wrapper for DescribeEventCategories that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeEventCategoriesOutcomeCallable DescribeEventCategoriesCallable(const Model::DescribeEventCategoriesRequest& request) const; /** * An Async wrapper for DescribeEventCategories that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeEventCategoriesAsync(const Model::DescribeEventCategoriesRequest& request, const DescribeEventCategoriesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Lists descriptions of all the Amazon Redshift event notification * subscriptions for a customer account. If you specify a subscription name, lists * the description for that subscription.

If you specify both tag keys and * tag values in the same request, Amazon Redshift returns all event notification * subscriptions that match any combination of the specified keys and values. For * example, if you have owner and environment for tag * keys, and admin and test for tag values, all * subscriptions that have any combination of those values are returned.

If * both tag keys and values are omitted from the request, subscriptions are * returned regardless of whether they have tag keys or values associated with * them.

See Also:

AWS * API Reference

*/ virtual Model::DescribeEventSubscriptionsOutcome DescribeEventSubscriptions(const Model::DescribeEventSubscriptionsRequest& request) const; /** * A Callable wrapper for DescribeEventSubscriptions that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeEventSubscriptionsOutcomeCallable DescribeEventSubscriptionsCallable(const Model::DescribeEventSubscriptionsRequest& request) const; /** * An Async wrapper for DescribeEventSubscriptions that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeEventSubscriptionsAsync(const Model::DescribeEventSubscriptionsRequest& request, const DescribeEventSubscriptionsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Returns events related to clusters, security groups, snapshots, and parameter * groups for the past 14 days. Events specific to a particular cluster, security * group, snapshot or parameter group can be obtained by providing the name as a * parameter. By default, the past hour of events are returned.

See * Also:

AWS * API Reference

*/ virtual Model::DescribeEventsOutcome DescribeEvents(const Model::DescribeEventsRequest& request) const; /** * A Callable wrapper for DescribeEvents that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeEventsOutcomeCallable DescribeEventsCallable(const Model::DescribeEventsRequest& request) const; /** * An Async wrapper for DescribeEvents that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeEventsAsync(const Model::DescribeEventsRequest& request, const DescribeEventsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Returns information about the specified HSM client certificate. If no * certificate ID is specified, returns information about all the HSM certificates * owned by your Amazon Web Services account.

If you specify both tag keys * and tag values in the same request, Amazon Redshift returns all HSM client * certificates that match any combination of the specified keys and values. For * example, if you have owner and environment for tag * keys, and admin and test for tag values, all HSM * client certificates that have any combination of those values are returned.

*

If both tag keys and values are omitted from the request, HSM client * certificates are returned regardless of whether they have tag keys or values * associated with them.

See Also:

AWS * API Reference

*/ virtual Model::DescribeHsmClientCertificatesOutcome DescribeHsmClientCertificates(const Model::DescribeHsmClientCertificatesRequest& request) const; /** * A Callable wrapper for DescribeHsmClientCertificates that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeHsmClientCertificatesOutcomeCallable DescribeHsmClientCertificatesCallable(const Model::DescribeHsmClientCertificatesRequest& request) const; /** * An Async wrapper for DescribeHsmClientCertificates that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeHsmClientCertificatesAsync(const Model::DescribeHsmClientCertificatesRequest& request, const DescribeHsmClientCertificatesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Returns information about the specified Amazon Redshift HSM configuration. If * no configuration ID is specified, returns information about all the HSM * configurations owned by your Amazon Web Services account.

If you specify * both tag keys and tag values in the same request, Amazon Redshift returns all * HSM connections that match any combination of the specified keys and values. For * example, if you have owner and environment for tag * keys, and admin and test for tag values, all HSM * connections that have any combination of those values are returned.

If * both tag keys and values are omitted from the request, HSM connections are * returned regardless of whether they have tag keys or values associated with * them.

See Also:

AWS * API Reference

*/ virtual Model::DescribeHsmConfigurationsOutcome DescribeHsmConfigurations(const Model::DescribeHsmConfigurationsRequest& request) const; /** * A Callable wrapper for DescribeHsmConfigurations that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeHsmConfigurationsOutcomeCallable DescribeHsmConfigurationsCallable(const Model::DescribeHsmConfigurationsRequest& request) const; /** * An Async wrapper for DescribeHsmConfigurations that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeHsmConfigurationsAsync(const Model::DescribeHsmConfigurationsRequest& request, const DescribeHsmConfigurationsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes whether information, such as queries and connection attempts, is * being logged for the specified Amazon Redshift cluster.

See Also:

* AWS * API Reference

*/ virtual Model::DescribeLoggingStatusOutcome DescribeLoggingStatus(const Model::DescribeLoggingStatusRequest& request) const; /** * A Callable wrapper for DescribeLoggingStatus that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeLoggingStatusOutcomeCallable DescribeLoggingStatusCallable(const Model::DescribeLoggingStatusRequest& request) const; /** * An Async wrapper for DescribeLoggingStatus that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeLoggingStatusAsync(const Model::DescribeLoggingStatusRequest& request, const DescribeLoggingStatusResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Returns properties of possible node configurations such as node type, number * of nodes, and disk usage for the specified action type.

See Also:

* AWS * API Reference

*/ virtual Model::DescribeNodeConfigurationOptionsOutcome DescribeNodeConfigurationOptions(const Model::DescribeNodeConfigurationOptionsRequest& request) const; /** * A Callable wrapper for DescribeNodeConfigurationOptions that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeNodeConfigurationOptionsOutcomeCallable DescribeNodeConfigurationOptionsCallable(const Model::DescribeNodeConfigurationOptionsRequest& request) const; /** * An Async wrapper for DescribeNodeConfigurationOptions that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeNodeConfigurationOptionsAsync(const Model::DescribeNodeConfigurationOptionsRequest& request, const DescribeNodeConfigurationOptionsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Returns a list of orderable cluster options. Before you create a new cluster * you can use this operation to find what options are available, such as the EC2 * Availability Zones (AZ) in the specific Amazon Web Services Region that you can * specify, and the node types you can request. The node types differ by available * storage, memory, CPU and price. With the cost involved you might want to obtain * a list of cluster options in the specific region and specify values when * creating a cluster. For more information about managing clusters, go to Amazon * Redshift Clusters in the Amazon Redshift Cluster Management * Guide.

See Also:

AWS * API Reference

*/ virtual Model::DescribeOrderableClusterOptionsOutcome DescribeOrderableClusterOptions(const Model::DescribeOrderableClusterOptionsRequest& request) const; /** * A Callable wrapper for DescribeOrderableClusterOptions that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeOrderableClusterOptionsOutcomeCallable DescribeOrderableClusterOptionsCallable(const Model::DescribeOrderableClusterOptionsRequest& request) const; /** * An Async wrapper for DescribeOrderableClusterOptions that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeOrderableClusterOptionsAsync(const Model::DescribeOrderableClusterOptionsRequest& request, const DescribeOrderableClusterOptionsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Returns information about the partner integrations defined for a * cluster.

See Also:

AWS * API Reference

*/ virtual Model::DescribePartnersOutcome DescribePartners(const Model::DescribePartnersRequest& request) const; /** * A Callable wrapper for DescribePartners that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribePartnersOutcomeCallable DescribePartnersCallable(const Model::DescribePartnersRequest& request) const; /** * An Async wrapper for DescribePartners that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribePartnersAsync(const Model::DescribePartnersRequest& request, const DescribePartnersResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Returns exchange status details and associated metadata for a reserved-node * exchange. Statuses include such values as in progress and * requested.

See Also:

AWS * API Reference

*/ virtual Model::DescribeReservedNodeExchangeStatusOutcome DescribeReservedNodeExchangeStatus(const Model::DescribeReservedNodeExchangeStatusRequest& request) const; /** * A Callable wrapper for DescribeReservedNodeExchangeStatus that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeReservedNodeExchangeStatusOutcomeCallable DescribeReservedNodeExchangeStatusCallable(const Model::DescribeReservedNodeExchangeStatusRequest& request) const; /** * An Async wrapper for DescribeReservedNodeExchangeStatus that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeReservedNodeExchangeStatusAsync(const Model::DescribeReservedNodeExchangeStatusRequest& request, const DescribeReservedNodeExchangeStatusResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Returns a list of the available reserved node offerings by Amazon Redshift * with their descriptions including the node type, the fixed and recurring costs * of reserving the node and duration the node will be reserved for you. These * descriptions help you determine which reserve node offering you want to * purchase. You then use the unique offering ID in you call to * PurchaseReservedNodeOffering to reserve one or more nodes for your Amazon * Redshift cluster.

For more information about reserved node offerings, * go to Purchasing * Reserved Nodes in the Amazon Redshift Cluster Management * Guide.

See Also:

AWS * API Reference

*/ virtual Model::DescribeReservedNodeOfferingsOutcome DescribeReservedNodeOfferings(const Model::DescribeReservedNodeOfferingsRequest& request) const; /** * A Callable wrapper for DescribeReservedNodeOfferings that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeReservedNodeOfferingsOutcomeCallable DescribeReservedNodeOfferingsCallable(const Model::DescribeReservedNodeOfferingsRequest& request) const; /** * An Async wrapper for DescribeReservedNodeOfferings that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeReservedNodeOfferingsAsync(const Model::DescribeReservedNodeOfferingsRequest& request, const DescribeReservedNodeOfferingsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Returns the descriptions of the reserved nodes.

See Also:

AWS * API Reference

*/ virtual Model::DescribeReservedNodesOutcome DescribeReservedNodes(const Model::DescribeReservedNodesRequest& request) const; /** * A Callable wrapper for DescribeReservedNodes that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeReservedNodesOutcomeCallable DescribeReservedNodesCallable(const Model::DescribeReservedNodesRequest& request) const; /** * An Async wrapper for DescribeReservedNodes that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeReservedNodesAsync(const Model::DescribeReservedNodesRequest& request, const DescribeReservedNodesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Returns information about the last resize operation for the specified * cluster. If no resize operation has ever been initiated for the specified * cluster, a HTTP 404 error is returned. If a resize operation was * initiated and completed, the status of the resize remains as * SUCCEEDED until the next resize.

A resize operation can be * requested using ModifyCluster and specifying a different number or type * of nodes for the cluster.

See Also:

AWS * API Reference

*/ virtual Model::DescribeResizeOutcome DescribeResize(const Model::DescribeResizeRequest& request) const; /** * A Callable wrapper for DescribeResize that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeResizeOutcomeCallable DescribeResizeCallable(const Model::DescribeResizeRequest& request) const; /** * An Async wrapper for DescribeResize that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeResizeAsync(const Model::DescribeResizeRequest& request, const DescribeResizeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Describes properties of scheduled actions.

See Also:

AWS * API Reference

*/ virtual Model::DescribeScheduledActionsOutcome DescribeScheduledActions(const Model::DescribeScheduledActionsRequest& request) const; /** * A Callable wrapper for DescribeScheduledActions that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeScheduledActionsOutcomeCallable DescribeScheduledActionsCallable(const Model::DescribeScheduledActionsRequest& request) const; /** * An Async wrapper for DescribeScheduledActions that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeScheduledActionsAsync(const Model::DescribeScheduledActionsRequest& request, const DescribeScheduledActionsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Returns a list of snapshot copy grants owned by the Amazon Web Services * account in the destination region.

For more information about managing * snapshot copy grants, go to Amazon * Redshift Database Encryption in the Amazon Redshift Cluster Management * Guide.

See Also:

AWS * API Reference

*/ virtual Model::DescribeSnapshotCopyGrantsOutcome DescribeSnapshotCopyGrants(const Model::DescribeSnapshotCopyGrantsRequest& request) const; /** * A Callable wrapper for DescribeSnapshotCopyGrants that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeSnapshotCopyGrantsOutcomeCallable DescribeSnapshotCopyGrantsCallable(const Model::DescribeSnapshotCopyGrantsRequest& request) const; /** * An Async wrapper for DescribeSnapshotCopyGrants that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeSnapshotCopyGrantsAsync(const Model::DescribeSnapshotCopyGrantsRequest& request, const DescribeSnapshotCopyGrantsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Returns a list of snapshot schedules.

See Also:

AWS * API Reference

*/ virtual Model::DescribeSnapshotSchedulesOutcome DescribeSnapshotSchedules(const Model::DescribeSnapshotSchedulesRequest& request) const; /** * A Callable wrapper for DescribeSnapshotSchedules that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeSnapshotSchedulesOutcomeCallable DescribeSnapshotSchedulesCallable(const Model::DescribeSnapshotSchedulesRequest& request) const; /** * An Async wrapper for DescribeSnapshotSchedules that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeSnapshotSchedulesAsync(const Model::DescribeSnapshotSchedulesRequest& request, const DescribeSnapshotSchedulesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Returns account level backups storage size and provisional * storage.

See Also:

AWS * API Reference

*/ virtual Model::DescribeStorageOutcome DescribeStorage(const Model::DescribeStorageRequest& request) const; /** * A Callable wrapper for DescribeStorage that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeStorageOutcomeCallable DescribeStorageCallable(const Model::DescribeStorageRequest& request) const; /** * An Async wrapper for DescribeStorage that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeStorageAsync(const Model::DescribeStorageRequest& request, const DescribeStorageResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Lists the status of one or more table restore requests made using the * RestoreTableFromClusterSnapshot API action. If you don't specify a value * for the TableRestoreRequestId parameter, then * DescribeTableRestoreStatus returns the status of all table restore * requests ordered by the date and time of the request in ascending order. * Otherwise DescribeTableRestoreStatus returns the status of the * table specified by TableRestoreRequestId.

See Also:

* AWS * API Reference

*/ virtual Model::DescribeTableRestoreStatusOutcome DescribeTableRestoreStatus(const Model::DescribeTableRestoreStatusRequest& request) const; /** * A Callable wrapper for DescribeTableRestoreStatus that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeTableRestoreStatusOutcomeCallable DescribeTableRestoreStatusCallable(const Model::DescribeTableRestoreStatusRequest& request) const; /** * An Async wrapper for DescribeTableRestoreStatus that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeTableRestoreStatusAsync(const Model::DescribeTableRestoreStatusRequest& request, const DescribeTableRestoreStatusResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Returns a list of tags. You can return tags from a specific resource by * specifying an ARN, or you can return all tags for a given type of resource, such * as clusters, snapshots, and so on.

The following are limitations for * DescribeTags:

  • You cannot specify an ARN and a * resource-type value together in the same request.

  • You cannot * use the MaxRecords and Marker parameters together with * the ARN parameter.

  • The MaxRecords parameter can * be a range from 10 to 50 results to return in a request.

If * you specify both tag keys and tag values in the same request, Amazon Redshift * returns all resources that match any combination of the specified keys and * values. For example, if you have owner and environment * for tag keys, and admin and test for tag values, all * resources that have any combination of those values are returned.

If both * tag keys and values are omitted from the request, resources are returned * regardless of whether they have tag keys or values associated with * them.

See Also:

AWS * API Reference

*/ virtual Model::DescribeTagsOutcome DescribeTags(const Model::DescribeTagsRequest& request) const; /** * A Callable wrapper for DescribeTags that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeTagsOutcomeCallable DescribeTagsCallable(const Model::DescribeTagsRequest& request) const; /** * An Async wrapper for DescribeTags that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeTagsAsync(const Model::DescribeTagsRequest& request, const DescribeTagsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Shows usage limits on a cluster. Results are filtered based on the * combination of input usage limit identifier, cluster identifier, and feature * type parameters:

  • If usage limit identifier, cluster identifier, * and feature type are not provided, then all usage limit objects for the current * account in the current region are returned.

  • If usage limit * identifier is provided, then the corresponding usage limit object is * returned.

  • If cluster identifier is provided, then all usage * limit objects for the specified cluster are returned.

  • If * cluster identifier and feature type are provided, then all usage limit objects * for the combination of cluster and feature are returned.

  • *

See Also:

AWS * API Reference

*/ virtual Model::DescribeUsageLimitsOutcome DescribeUsageLimits(const Model::DescribeUsageLimitsRequest& request) const; /** * A Callable wrapper for DescribeUsageLimits that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DescribeUsageLimitsOutcomeCallable DescribeUsageLimitsCallable(const Model::DescribeUsageLimitsRequest& request) const; /** * An Async wrapper for DescribeUsageLimits that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DescribeUsageLimitsAsync(const Model::DescribeUsageLimitsRequest& request, const DescribeUsageLimitsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Stops logging information, such as queries and connection attempts, for the * specified Amazon Redshift cluster.

See Also:

AWS * API Reference

*/ virtual Model::DisableLoggingOutcome DisableLogging(const Model::DisableLoggingRequest& request) const; /** * A Callable wrapper for DisableLogging that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DisableLoggingOutcomeCallable DisableLoggingCallable(const Model::DisableLoggingRequest& request) const; /** * An Async wrapper for DisableLogging that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DisableLoggingAsync(const Model::DisableLoggingRequest& request, const DisableLoggingResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Disables the automatic copying of snapshots from one region to another region * for a specified cluster.

If your cluster and its snapshots are encrypted * using an encrypted symmetric key from Key Management Service, use * DeleteSnapshotCopyGrant to delete the grant that grants Amazon Redshift * permission to the key in the destination region.

See Also:

AWS * API Reference

*/ virtual Model::DisableSnapshotCopyOutcome DisableSnapshotCopy(const Model::DisableSnapshotCopyRequest& request) const; /** * A Callable wrapper for DisableSnapshotCopy that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DisableSnapshotCopyOutcomeCallable DisableSnapshotCopyCallable(const Model::DisableSnapshotCopyRequest& request) const; /** * An Async wrapper for DisableSnapshotCopy that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DisableSnapshotCopyAsync(const Model::DisableSnapshotCopyRequest& request, const DisableSnapshotCopyResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

From a datashare consumer account, remove association for the specified * datashare.

See Also:

AWS * API Reference

*/ virtual Model::DisassociateDataShareConsumerOutcome DisassociateDataShareConsumer(const Model::DisassociateDataShareConsumerRequest& request) const; /** * A Callable wrapper for DisassociateDataShareConsumer that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::DisassociateDataShareConsumerOutcomeCallable DisassociateDataShareConsumerCallable(const Model::DisassociateDataShareConsumerRequest& request) const; /** * An Async wrapper for DisassociateDataShareConsumer that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void DisassociateDataShareConsumerAsync(const Model::DisassociateDataShareConsumerRequest& request, const DisassociateDataShareConsumerResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Starts logging information, such as queries and connection attempts, for the * specified Amazon Redshift cluster.

See Also:

AWS * API Reference

*/ virtual Model::EnableLoggingOutcome EnableLogging(const Model::EnableLoggingRequest& request) const; /** * A Callable wrapper for EnableLogging that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::EnableLoggingOutcomeCallable EnableLoggingCallable(const Model::EnableLoggingRequest& request) const; /** * An Async wrapper for EnableLogging that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void EnableLoggingAsync(const Model::EnableLoggingRequest& request, const EnableLoggingResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Enables the automatic copy of snapshots from one region to another region for * a specified cluster.

See Also:

AWS * API Reference

*/ virtual Model::EnableSnapshotCopyOutcome EnableSnapshotCopy(const Model::EnableSnapshotCopyRequest& request) const; /** * A Callable wrapper for EnableSnapshotCopy that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::EnableSnapshotCopyOutcomeCallable EnableSnapshotCopyCallable(const Model::EnableSnapshotCopyRequest& request) const; /** * An Async wrapper for EnableSnapshotCopy that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void EnableSnapshotCopyAsync(const Model::EnableSnapshotCopyRequest& request, const EnableSnapshotCopyResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Returns a database user name and temporary password with temporary * authorization to log on to an Amazon Redshift database. The action returns the * database user name prefixed with IAM: if AutoCreate is * False or IAMA: if AutoCreate is * True. You can optionally specify one or more database user groups * that the user will join at log on. By default, the temporary credentials expire * in 900 seconds. You can optionally specify a duration between 900 seconds (15 * minutes) and 3600 seconds (60 minutes). For more information, see Using * IAM Authentication to Generate Database User Credentials in the Amazon * Redshift Cluster Management Guide.

The Identity and Access Management * (IAM) user or role that runs GetClusterCredentials must have an IAM policy * attached that allows access to all necessary actions and resources. For more * information about permissions, see Resource * Policies for GetClusterCredentials in the Amazon Redshift Cluster Management * Guide.

If the DbGroups parameter is specified, the IAM * policy must allow the redshift:JoinGroup action with access to the * listed dbgroups.

In addition, if the * AutoCreate parameter is set to True, then the policy * must include the redshift:CreateClusterUser permission.

If * the DbName parameter is specified, the IAM policy must allow access * to the resource dbname for the specified database name. *

See Also:

AWS * API Reference

*/ virtual Model::GetClusterCredentialsOutcome GetClusterCredentials(const Model::GetClusterCredentialsRequest& request) const; /** * A Callable wrapper for GetClusterCredentials that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::GetClusterCredentialsOutcomeCallable GetClusterCredentialsCallable(const Model::GetClusterCredentialsRequest& request) const; /** * An Async wrapper for GetClusterCredentials that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void GetClusterCredentialsAsync(const Model::GetClusterCredentialsRequest& request, const GetClusterCredentialsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Returns a database user name and temporary password with temporary * authorization to log in to an Amazon Redshift database. The database user is * mapped 1:1 to the source Identity and Access Management (IAM) identity. For more * information about IAM identities, see IAM Identities * (users, user groups, and roles) in the Amazon Web Services Identity and * Access Management User Guide.

The Identity and Access Management (IAM) * identity that runs this operation must have an IAM policy attached that allows * access to all necessary actions and resources. For more information about * permissions, see Using * identity-based policies (IAM policies) in the Amazon Redshift Cluster * Management Guide.

See Also:

AWS * API Reference

*/ virtual Model::GetClusterCredentialsWithIAMOutcome GetClusterCredentialsWithIAM(const Model::GetClusterCredentialsWithIAMRequest& request) const; /** * A Callable wrapper for GetClusterCredentialsWithIAM that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::GetClusterCredentialsWithIAMOutcomeCallable GetClusterCredentialsWithIAMCallable(const Model::GetClusterCredentialsWithIAMRequest& request) const; /** * An Async wrapper for GetClusterCredentialsWithIAM that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void GetClusterCredentialsWithIAMAsync(const Model::GetClusterCredentialsWithIAMRequest& request, const GetClusterCredentialsWithIAMResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Gets the configuration options for the reserved-node exchange. These options * include information about the source reserved node and target reserved node * offering. Details include the node type, the price, the node count, and the * offering type.

See Also:

AWS * API Reference

*/ virtual Model::GetReservedNodeExchangeConfigurationOptionsOutcome GetReservedNodeExchangeConfigurationOptions(const Model::GetReservedNodeExchangeConfigurationOptionsRequest& request) const; /** * A Callable wrapper for GetReservedNodeExchangeConfigurationOptions that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::GetReservedNodeExchangeConfigurationOptionsOutcomeCallable GetReservedNodeExchangeConfigurationOptionsCallable(const Model::GetReservedNodeExchangeConfigurationOptionsRequest& request) const; /** * An Async wrapper for GetReservedNodeExchangeConfigurationOptions that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void GetReservedNodeExchangeConfigurationOptionsAsync(const Model::GetReservedNodeExchangeConfigurationOptionsRequest& request, const GetReservedNodeExchangeConfigurationOptionsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Returns an array of DC2 ReservedNodeOfferings that matches the payment type, * term, and usage price of the given DC1 reserved node.

See Also:

* AWS * API Reference

*/ virtual Model::GetReservedNodeExchangeOfferingsOutcome GetReservedNodeExchangeOfferings(const Model::GetReservedNodeExchangeOfferingsRequest& request) const; /** * A Callable wrapper for GetReservedNodeExchangeOfferings that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::GetReservedNodeExchangeOfferingsOutcomeCallable GetReservedNodeExchangeOfferingsCallable(const Model::GetReservedNodeExchangeOfferingsRequest& request) const; /** * An Async wrapper for GetReservedNodeExchangeOfferings that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void GetReservedNodeExchangeOfferingsAsync(const Model::GetReservedNodeExchangeOfferingsRequest& request, const GetReservedNodeExchangeOfferingsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Modifies whether a cluster can use AQUA (Advanced Query Accelerator). *

See Also:

AWS * API Reference

*/ virtual Model::ModifyAquaConfigurationOutcome ModifyAquaConfiguration(const Model::ModifyAquaConfigurationRequest& request) const; /** * A Callable wrapper for ModifyAquaConfiguration that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifyAquaConfigurationOutcomeCallable ModifyAquaConfigurationCallable(const Model::ModifyAquaConfigurationRequest& request) const; /** * An Async wrapper for ModifyAquaConfiguration that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifyAquaConfigurationAsync(const Model::ModifyAquaConfigurationRequest& request, const ModifyAquaConfigurationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Modifies an authentication profile.

See Also:

AWS * API Reference

*/ virtual Model::ModifyAuthenticationProfileOutcome ModifyAuthenticationProfile(const Model::ModifyAuthenticationProfileRequest& request) const; /** * A Callable wrapper for ModifyAuthenticationProfile that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifyAuthenticationProfileOutcomeCallable ModifyAuthenticationProfileCallable(const Model::ModifyAuthenticationProfileRequest& request) const; /** * An Async wrapper for ModifyAuthenticationProfile that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifyAuthenticationProfileAsync(const Model::ModifyAuthenticationProfileRequest& request, const ModifyAuthenticationProfileResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Modifies the settings for a cluster.

You can also change node type and * the number of nodes to scale up or down the cluster. When resizing a cluster, * you must specify both the number of nodes and the node type even if one of the * parameters does not change.

You can add another security or parameter * group, or change the admin user password. Resetting a cluster password or * modifying the security groups associated with a cluster do not need a reboot. * However, modifying a parameter group requires a reboot for parameters to take * effect. For more information about managing clusters, go to Amazon * Redshift Clusters in the Amazon Redshift Cluster Management * Guide.

See Also:

AWS * API Reference

*/ virtual Model::ModifyClusterOutcome ModifyCluster(const Model::ModifyClusterRequest& request) const; /** * A Callable wrapper for ModifyCluster that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifyClusterOutcomeCallable ModifyClusterCallable(const Model::ModifyClusterRequest& request) const; /** * An Async wrapper for ModifyCluster that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifyClusterAsync(const Model::ModifyClusterRequest& request, const ModifyClusterResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Modifies the database revision of a cluster. The database revision is a * unique revision of the database running in a cluster.

See Also:

* AWS * API Reference

*/ virtual Model::ModifyClusterDbRevisionOutcome ModifyClusterDbRevision(const Model::ModifyClusterDbRevisionRequest& request) const; /** * A Callable wrapper for ModifyClusterDbRevision that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifyClusterDbRevisionOutcomeCallable ModifyClusterDbRevisionCallable(const Model::ModifyClusterDbRevisionRequest& request) const; /** * An Async wrapper for ModifyClusterDbRevision that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifyClusterDbRevisionAsync(const Model::ModifyClusterDbRevisionRequest& request, const ModifyClusterDbRevisionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Modifies the list of Identity and Access Management (IAM) roles that can be * used by the cluster to access other Amazon Web Services services.

The * maximum number of IAM roles that you can associate is subject to a quota. For * more information, go to Quotas * and limits in the Amazon Redshift Cluster Management * Guide.

See Also:

AWS * API Reference

*/ virtual Model::ModifyClusterIamRolesOutcome ModifyClusterIamRoles(const Model::ModifyClusterIamRolesRequest& request) const; /** * A Callable wrapper for ModifyClusterIamRoles that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifyClusterIamRolesOutcomeCallable ModifyClusterIamRolesCallable(const Model::ModifyClusterIamRolesRequest& request) const; /** * An Async wrapper for ModifyClusterIamRoles that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifyClusterIamRolesAsync(const Model::ModifyClusterIamRolesRequest& request, const ModifyClusterIamRolesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Modifies the maintenance settings of a cluster.

See Also:

AWS * API Reference

*/ virtual Model::ModifyClusterMaintenanceOutcome ModifyClusterMaintenance(const Model::ModifyClusterMaintenanceRequest& request) const; /** * A Callable wrapper for ModifyClusterMaintenance that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifyClusterMaintenanceOutcomeCallable ModifyClusterMaintenanceCallable(const Model::ModifyClusterMaintenanceRequest& request) const; /** * An Async wrapper for ModifyClusterMaintenance that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifyClusterMaintenanceAsync(const Model::ModifyClusterMaintenanceRequest& request, const ModifyClusterMaintenanceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Modifies the parameters of a parameter group. For the parameters parameter, * it can't contain ASCII characters.

For more information about parameters * and parameter groups, go to Amazon * Redshift Parameter Groups in the Amazon Redshift Cluster Management * Guide.

See Also:

AWS * API Reference

*/ virtual Model::ModifyClusterParameterGroupOutcome ModifyClusterParameterGroup(const Model::ModifyClusterParameterGroupRequest& request) const; /** * A Callable wrapper for ModifyClusterParameterGroup that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifyClusterParameterGroupOutcomeCallable ModifyClusterParameterGroupCallable(const Model::ModifyClusterParameterGroupRequest& request) const; /** * An Async wrapper for ModifyClusterParameterGroup that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifyClusterParameterGroupAsync(const Model::ModifyClusterParameterGroupRequest& request, const ModifyClusterParameterGroupResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Modifies the settings for a snapshot.

This exanmple modifies the * manual retention period setting for a cluster snapshot.

See Also:

* AWS * API Reference

*/ virtual Model::ModifyClusterSnapshotOutcome ModifyClusterSnapshot(const Model::ModifyClusterSnapshotRequest& request) const; /** * A Callable wrapper for ModifyClusterSnapshot that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifyClusterSnapshotOutcomeCallable ModifyClusterSnapshotCallable(const Model::ModifyClusterSnapshotRequest& request) const; /** * An Async wrapper for ModifyClusterSnapshot that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifyClusterSnapshotAsync(const Model::ModifyClusterSnapshotRequest& request, const ModifyClusterSnapshotResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Modifies a snapshot schedule for a cluster.

See Also:

AWS * API Reference

*/ virtual Model::ModifyClusterSnapshotScheduleOutcome ModifyClusterSnapshotSchedule(const Model::ModifyClusterSnapshotScheduleRequest& request) const; /** * A Callable wrapper for ModifyClusterSnapshotSchedule that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifyClusterSnapshotScheduleOutcomeCallable ModifyClusterSnapshotScheduleCallable(const Model::ModifyClusterSnapshotScheduleRequest& request) const; /** * An Async wrapper for ModifyClusterSnapshotSchedule that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifyClusterSnapshotScheduleAsync(const Model::ModifyClusterSnapshotScheduleRequest& request, const ModifyClusterSnapshotScheduleResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Modifies a cluster subnet group to include the specified list of VPC subnets. * The operation replaces the existing list of subnets with the new list of * subnets.

See Also:

AWS * API Reference

*/ virtual Model::ModifyClusterSubnetGroupOutcome ModifyClusterSubnetGroup(const Model::ModifyClusterSubnetGroupRequest& request) const; /** * A Callable wrapper for ModifyClusterSubnetGroup that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifyClusterSubnetGroupOutcomeCallable ModifyClusterSubnetGroupCallable(const Model::ModifyClusterSubnetGroupRequest& request) const; /** * An Async wrapper for ModifyClusterSubnetGroup that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifyClusterSubnetGroupAsync(const Model::ModifyClusterSubnetGroupRequest& request, const ModifyClusterSubnetGroupResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Modifies a Redshift-managed VPC endpoint.

See Also:

AWS * API Reference

*/ virtual Model::ModifyEndpointAccessOutcome ModifyEndpointAccess(const Model::ModifyEndpointAccessRequest& request) const; /** * A Callable wrapper for ModifyEndpointAccess that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifyEndpointAccessOutcomeCallable ModifyEndpointAccessCallable(const Model::ModifyEndpointAccessRequest& request) const; /** * An Async wrapper for ModifyEndpointAccess that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifyEndpointAccessAsync(const Model::ModifyEndpointAccessRequest& request, const ModifyEndpointAccessResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Modifies an existing Amazon Redshift event notification * subscription.

See Also:

AWS * API Reference

*/ virtual Model::ModifyEventSubscriptionOutcome ModifyEventSubscription(const Model::ModifyEventSubscriptionRequest& request) const; /** * A Callable wrapper for ModifyEventSubscription that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifyEventSubscriptionOutcomeCallable ModifyEventSubscriptionCallable(const Model::ModifyEventSubscriptionRequest& request) const; /** * An Async wrapper for ModifyEventSubscription that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifyEventSubscriptionAsync(const Model::ModifyEventSubscriptionRequest& request, const ModifyEventSubscriptionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Modifies a scheduled action.

See Also:

AWS * API Reference

*/ virtual Model::ModifyScheduledActionOutcome ModifyScheduledAction(const Model::ModifyScheduledActionRequest& request) const; /** * A Callable wrapper for ModifyScheduledAction that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifyScheduledActionOutcomeCallable ModifyScheduledActionCallable(const Model::ModifyScheduledActionRequest& request) const; /** * An Async wrapper for ModifyScheduledAction that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifyScheduledActionAsync(const Model::ModifyScheduledActionRequest& request, const ModifyScheduledActionResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Modifies the number of days to retain snapshots in the destination Amazon Web * Services Region after they are copied from the source Amazon Web Services * Region. By default, this operation only changes the retention period of copied * automated snapshots. The retention periods for both new and existing copied * automated snapshots are updated with the new retention period. You can set the * manual option to change only the retention periods of copied manual snapshots. * If you set this option, only newly copied manual snapshots have the new * retention period.

See Also:

AWS * API Reference

*/ virtual Model::ModifySnapshotCopyRetentionPeriodOutcome ModifySnapshotCopyRetentionPeriod(const Model::ModifySnapshotCopyRetentionPeriodRequest& request) const; /** * A Callable wrapper for ModifySnapshotCopyRetentionPeriod that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifySnapshotCopyRetentionPeriodOutcomeCallable ModifySnapshotCopyRetentionPeriodCallable(const Model::ModifySnapshotCopyRetentionPeriodRequest& request) const; /** * An Async wrapper for ModifySnapshotCopyRetentionPeriod that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifySnapshotCopyRetentionPeriodAsync(const Model::ModifySnapshotCopyRetentionPeriodRequest& request, const ModifySnapshotCopyRetentionPeriodResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Modifies a snapshot schedule. Any schedule associated with a cluster is * modified asynchronously.

See Also:

AWS * API Reference

*/ virtual Model::ModifySnapshotScheduleOutcome ModifySnapshotSchedule(const Model::ModifySnapshotScheduleRequest& request) const; /** * A Callable wrapper for ModifySnapshotSchedule that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifySnapshotScheduleOutcomeCallable ModifySnapshotScheduleCallable(const Model::ModifySnapshotScheduleRequest& request) const; /** * An Async wrapper for ModifySnapshotSchedule that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifySnapshotScheduleAsync(const Model::ModifySnapshotScheduleRequest& request, const ModifySnapshotScheduleResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Modifies a usage limit in a cluster. You can't modify the feature type or * period of a usage limit.

See Also:

AWS * API Reference

*/ virtual Model::ModifyUsageLimitOutcome ModifyUsageLimit(const Model::ModifyUsageLimitRequest& request) const; /** * A Callable wrapper for ModifyUsageLimit that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ModifyUsageLimitOutcomeCallable ModifyUsageLimitCallable(const Model::ModifyUsageLimitRequest& request) const; /** * An Async wrapper for ModifyUsageLimit that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ModifyUsageLimitAsync(const Model::ModifyUsageLimitRequest& request, const ModifyUsageLimitResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Pauses a cluster.

See Also:

AWS * API Reference

*/ virtual Model::PauseClusterOutcome PauseCluster(const Model::PauseClusterRequest& request) const; /** * A Callable wrapper for PauseCluster that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::PauseClusterOutcomeCallable PauseClusterCallable(const Model::PauseClusterRequest& request) const; /** * An Async wrapper for PauseCluster that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void PauseClusterAsync(const Model::PauseClusterRequest& request, const PauseClusterResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Allows you to purchase reserved nodes. Amazon Redshift offers a predefined * set of reserved node offerings. You can purchase one or more of the offerings. * You can call the DescribeReservedNodeOfferings API to obtain the * available reserved node offerings. You can call this API by providing a specific * reserved node offering and the number of nodes you want to reserve.

For * more information about reserved node offerings, go to Purchasing * Reserved Nodes in the Amazon Redshift Cluster Management * Guide.

See Also:

AWS * API Reference

*/ virtual Model::PurchaseReservedNodeOfferingOutcome PurchaseReservedNodeOffering(const Model::PurchaseReservedNodeOfferingRequest& request) const; /** * A Callable wrapper for PurchaseReservedNodeOffering that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::PurchaseReservedNodeOfferingOutcomeCallable PurchaseReservedNodeOfferingCallable(const Model::PurchaseReservedNodeOfferingRequest& request) const; /** * An Async wrapper for PurchaseReservedNodeOffering that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void PurchaseReservedNodeOfferingAsync(const Model::PurchaseReservedNodeOfferingRequest& request, const PurchaseReservedNodeOfferingResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Reboots a cluster. This action is taken as soon as possible. It results in a * momentary outage to the cluster, during which the cluster status is set to * rebooting. A cluster event is created when the reboot is completed. * Any pending cluster modifications (see ModifyCluster) are applied at this * reboot. For more information about managing clusters, go to Amazon * Redshift Clusters in the Amazon Redshift Cluster Management Guide. *

See Also:

AWS * API Reference

*/ virtual Model::RebootClusterOutcome RebootCluster(const Model::RebootClusterRequest& request) const; /** * A Callable wrapper for RebootCluster that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::RebootClusterOutcomeCallable RebootClusterCallable(const Model::RebootClusterRequest& request) const; /** * An Async wrapper for RebootCluster that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void RebootClusterAsync(const Model::RebootClusterRequest& request, const RebootClusterResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

From a datashare consumer account, rejects the specified * datashare.

See Also:

AWS * API Reference

*/ virtual Model::RejectDataShareOutcome RejectDataShare(const Model::RejectDataShareRequest& request) const; /** * A Callable wrapper for RejectDataShare that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::RejectDataShareOutcomeCallable RejectDataShareCallable(const Model::RejectDataShareRequest& request) const; /** * An Async wrapper for RejectDataShare that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void RejectDataShareAsync(const Model::RejectDataShareRequest& request, const RejectDataShareResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Sets one or more parameters of the specified parameter group to their default * values and sets the source values of the parameters to "engine-default". To * reset the entire parameter group specify the ResetAllParameters * parameter. For parameter changes to take effect you must reboot any associated * clusters.

See Also:

AWS * API Reference

*/ virtual Model::ResetClusterParameterGroupOutcome ResetClusterParameterGroup(const Model::ResetClusterParameterGroupRequest& request) const; /** * A Callable wrapper for ResetClusterParameterGroup that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ResetClusterParameterGroupOutcomeCallable ResetClusterParameterGroupCallable(const Model::ResetClusterParameterGroupRequest& request) const; /** * An Async wrapper for ResetClusterParameterGroup that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ResetClusterParameterGroupAsync(const Model::ResetClusterParameterGroupRequest& request, const ResetClusterParameterGroupResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Changes the size of the cluster. You can change the cluster's type, or change * the number or type of nodes. The default behavior is to use the elastic resize * method. With an elastic resize, your cluster is available for read and write * operations more quickly than with the classic resize method.

Elastic * resize operations have the following restrictions:

  • You can only * resize clusters of the following types:

    • dc1.large (if your * cluster is in a VPC)

    • dc1.8xlarge (if your cluster is in a * VPC)

    • dc2.large

    • dc2.8xlarge

    • *

      ds2.xlarge

    • ds2.8xlarge

    • ra3.xlplus

      *
    • ra3.4xlarge

    • ra3.16xlarge

  • *
  • The type of nodes that you add must match the node type for the * cluster.

See Also:

AWS * API Reference

*/ virtual Model::ResizeClusterOutcome ResizeCluster(const Model::ResizeClusterRequest& request) const; /** * A Callable wrapper for ResizeCluster that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ResizeClusterOutcomeCallable ResizeClusterCallable(const Model::ResizeClusterRequest& request) const; /** * An Async wrapper for ResizeCluster that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ResizeClusterAsync(const Model::ResizeClusterRequest& request, const ResizeClusterResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates a new cluster from a snapshot. By default, Amazon Redshift creates * the resulting cluster with the same configuration as the original cluster from * which the snapshot was created, except that the new cluster is created with the * default cluster security and parameter groups. After Amazon Redshift creates the * cluster, you can use the ModifyCluster API to associate a different * security group and different parameter group with the restored cluster. If you * are using a DS node type, you can also choose to change to another DS node type * of the same size during restore.

If you restore a cluster into a VPC, you * must provide a cluster subnet group where you want the cluster restored.

* For more information about working with snapshots, go to Amazon * Redshift Snapshots in the Amazon Redshift Cluster Management * Guide.

See Also:

AWS * API Reference

*/ virtual Model::RestoreFromClusterSnapshotOutcome RestoreFromClusterSnapshot(const Model::RestoreFromClusterSnapshotRequest& request) const; /** * A Callable wrapper for RestoreFromClusterSnapshot that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::RestoreFromClusterSnapshotOutcomeCallable RestoreFromClusterSnapshotCallable(const Model::RestoreFromClusterSnapshotRequest& request) const; /** * An Async wrapper for RestoreFromClusterSnapshot that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void RestoreFromClusterSnapshotAsync(const Model::RestoreFromClusterSnapshotRequest& request, const RestoreFromClusterSnapshotResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Creates a new table from a table in an Amazon Redshift cluster snapshot. You * must create the new table within the Amazon Redshift cluster that the snapshot * was taken from.

You cannot use * RestoreTableFromClusterSnapshot to restore a table with the same * name as an existing table in an Amazon Redshift cluster. That is, you cannot * overwrite an existing table in a cluster with a restored table. If you want to * replace your original table with a new, restored table, then rename or drop your * original table before you call RestoreTableFromClusterSnapshot. * When you have renamed your original table, then you can pass the original name * of the table as the NewTableName parameter value in the call to * RestoreTableFromClusterSnapshot. This way, you can replace the * original table with the table created from the snapshot.

See * Also:

AWS * API Reference

*/ virtual Model::RestoreTableFromClusterSnapshotOutcome RestoreTableFromClusterSnapshot(const Model::RestoreTableFromClusterSnapshotRequest& request) const; /** * A Callable wrapper for RestoreTableFromClusterSnapshot that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::RestoreTableFromClusterSnapshotOutcomeCallable RestoreTableFromClusterSnapshotCallable(const Model::RestoreTableFromClusterSnapshotRequest& request) const; /** * An Async wrapper for RestoreTableFromClusterSnapshot that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void RestoreTableFromClusterSnapshotAsync(const Model::RestoreTableFromClusterSnapshotRequest& request, const RestoreTableFromClusterSnapshotResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Resumes a paused cluster.

See Also:

AWS * API Reference

*/ virtual Model::ResumeClusterOutcome ResumeCluster(const Model::ResumeClusterRequest& request) const; /** * A Callable wrapper for ResumeCluster that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::ResumeClusterOutcomeCallable ResumeClusterCallable(const Model::ResumeClusterRequest& request) const; /** * An Async wrapper for ResumeCluster that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void ResumeClusterAsync(const Model::ResumeClusterRequest& request, const ResumeClusterResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Revokes an ingress rule in an Amazon Redshift security group for a previously * authorized IP range or Amazon EC2 security group. To add an ingress rule, see * AuthorizeClusterSecurityGroupIngress. For information about managing * security groups, go to Amazon * Redshift Cluster Security Groups in the Amazon Redshift Cluster * Management Guide.

See Also:

AWS * API Reference

*/ virtual Model::RevokeClusterSecurityGroupIngressOutcome RevokeClusterSecurityGroupIngress(const Model::RevokeClusterSecurityGroupIngressRequest& request) const; /** * A Callable wrapper for RevokeClusterSecurityGroupIngress that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::RevokeClusterSecurityGroupIngressOutcomeCallable RevokeClusterSecurityGroupIngressCallable(const Model::RevokeClusterSecurityGroupIngressRequest& request) const; /** * An Async wrapper for RevokeClusterSecurityGroupIngress that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void RevokeClusterSecurityGroupIngressAsync(const Model::RevokeClusterSecurityGroupIngressRequest& request, const RevokeClusterSecurityGroupIngressResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Revokes access to a cluster.

See Also:

AWS * API Reference

*/ virtual Model::RevokeEndpointAccessOutcome RevokeEndpointAccess(const Model::RevokeEndpointAccessRequest& request) const; /** * A Callable wrapper for RevokeEndpointAccess that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::RevokeEndpointAccessOutcomeCallable RevokeEndpointAccessCallable(const Model::RevokeEndpointAccessRequest& request) const; /** * An Async wrapper for RevokeEndpointAccess that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void RevokeEndpointAccessAsync(const Model::RevokeEndpointAccessRequest& request, const RevokeEndpointAccessResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Removes the ability of the specified Amazon Web Services account to restore * the specified snapshot. If the account is currently restoring the snapshot, the * restore will run to completion.

For more information about working with * snapshots, go to Amazon * Redshift Snapshots in the Amazon Redshift Cluster Management * Guide.

See Also:

AWS * API Reference

*/ virtual Model::RevokeSnapshotAccessOutcome RevokeSnapshotAccess(const Model::RevokeSnapshotAccessRequest& request) const; /** * A Callable wrapper for RevokeSnapshotAccess that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::RevokeSnapshotAccessOutcomeCallable RevokeSnapshotAccessCallable(const Model::RevokeSnapshotAccessRequest& request) const; /** * An Async wrapper for RevokeSnapshotAccess that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void RevokeSnapshotAccessAsync(const Model::RevokeSnapshotAccessRequest& request, const RevokeSnapshotAccessResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Rotates the encryption keys for a cluster.

See Also:

AWS * API Reference

*/ virtual Model::RotateEncryptionKeyOutcome RotateEncryptionKey(const Model::RotateEncryptionKeyRequest& request) const; /** * A Callable wrapper for RotateEncryptionKey that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::RotateEncryptionKeyOutcomeCallable RotateEncryptionKeyCallable(const Model::RotateEncryptionKeyRequest& request) const; /** * An Async wrapper for RotateEncryptionKey that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void RotateEncryptionKeyAsync(const Model::RotateEncryptionKeyRequest& request, const RotateEncryptionKeyResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; /** *

Updates the status of a partner integration.

See Also:

AWS * API Reference

*/ virtual Model::UpdatePartnerStatusOutcome UpdatePartnerStatus(const Model::UpdatePartnerStatusRequest& request) const; /** * A Callable wrapper for UpdatePartnerStatus that returns a future to the operation so that it can be executed in parallel to other requests. */ virtual Model::UpdatePartnerStatusOutcomeCallable UpdatePartnerStatusCallable(const Model::UpdatePartnerStatusRequest& request) const; /** * An Async wrapper for UpdatePartnerStatus that queues the request into a thread executor and triggers associated callback when operation has finished. */ virtual void UpdatePartnerStatusAsync(const Model::UpdatePartnerStatusRequest& request, const UpdatePartnerStatusResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; void OverrideEndpoint(const Aws::String& endpoint); private: void init(const Aws::Client::ClientConfiguration& clientConfiguration); void AcceptReservedNodeExchangeAsyncHelper(const Model::AcceptReservedNodeExchangeRequest& request, const AcceptReservedNodeExchangeResponseReceivedHandler& handler, const std::shared_ptr& context) const; void AddPartnerAsyncHelper(const Model::AddPartnerRequest& request, const AddPartnerResponseReceivedHandler& handler, const std::shared_ptr& context) const; void AssociateDataShareConsumerAsyncHelper(const Model::AssociateDataShareConsumerRequest& request, const AssociateDataShareConsumerResponseReceivedHandler& handler, const std::shared_ptr& context) const; void AuthorizeClusterSecurityGroupIngressAsyncHelper(const Model::AuthorizeClusterSecurityGroupIngressRequest& request, const AuthorizeClusterSecurityGroupIngressResponseReceivedHandler& handler, const std::shared_ptr& context) const; void AuthorizeDataShareAsyncHelper(const Model::AuthorizeDataShareRequest& request, const AuthorizeDataShareResponseReceivedHandler& handler, const std::shared_ptr& context) const; void AuthorizeEndpointAccessAsyncHelper(const Model::AuthorizeEndpointAccessRequest& request, const AuthorizeEndpointAccessResponseReceivedHandler& handler, const std::shared_ptr& context) const; void AuthorizeSnapshotAccessAsyncHelper(const Model::AuthorizeSnapshotAccessRequest& request, const AuthorizeSnapshotAccessResponseReceivedHandler& handler, const std::shared_ptr& context) const; void BatchDeleteClusterSnapshotsAsyncHelper(const Model::BatchDeleteClusterSnapshotsRequest& request, const BatchDeleteClusterSnapshotsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void BatchModifyClusterSnapshotsAsyncHelper(const Model::BatchModifyClusterSnapshotsRequest& request, const BatchModifyClusterSnapshotsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CancelResizeAsyncHelper(const Model::CancelResizeRequest& request, const CancelResizeResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CopyClusterSnapshotAsyncHelper(const Model::CopyClusterSnapshotRequest& request, const CopyClusterSnapshotResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateAuthenticationProfileAsyncHelper(const Model::CreateAuthenticationProfileRequest& request, const CreateAuthenticationProfileResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateClusterAsyncHelper(const Model::CreateClusterRequest& request, const CreateClusterResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateClusterParameterGroupAsyncHelper(const Model::CreateClusterParameterGroupRequest& request, const CreateClusterParameterGroupResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateClusterSecurityGroupAsyncHelper(const Model::CreateClusterSecurityGroupRequest& request, const CreateClusterSecurityGroupResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateClusterSnapshotAsyncHelper(const Model::CreateClusterSnapshotRequest& request, const CreateClusterSnapshotResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateClusterSubnetGroupAsyncHelper(const Model::CreateClusterSubnetGroupRequest& request, const CreateClusterSubnetGroupResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateEndpointAccessAsyncHelper(const Model::CreateEndpointAccessRequest& request, const CreateEndpointAccessResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateEventSubscriptionAsyncHelper(const Model::CreateEventSubscriptionRequest& request, const CreateEventSubscriptionResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateHsmClientCertificateAsyncHelper(const Model::CreateHsmClientCertificateRequest& request, const CreateHsmClientCertificateResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateHsmConfigurationAsyncHelper(const Model::CreateHsmConfigurationRequest& request, const CreateHsmConfigurationResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateScheduledActionAsyncHelper(const Model::CreateScheduledActionRequest& request, const CreateScheduledActionResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateSnapshotCopyGrantAsyncHelper(const Model::CreateSnapshotCopyGrantRequest& request, const CreateSnapshotCopyGrantResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateSnapshotScheduleAsyncHelper(const Model::CreateSnapshotScheduleRequest& request, const CreateSnapshotScheduleResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateTagsAsyncHelper(const Model::CreateTagsRequest& request, const CreateTagsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateUsageLimitAsyncHelper(const Model::CreateUsageLimitRequest& request, const CreateUsageLimitResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeauthorizeDataShareAsyncHelper(const Model::DeauthorizeDataShareRequest& request, const DeauthorizeDataShareResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteAuthenticationProfileAsyncHelper(const Model::DeleteAuthenticationProfileRequest& request, const DeleteAuthenticationProfileResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteClusterAsyncHelper(const Model::DeleteClusterRequest& request, const DeleteClusterResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteClusterParameterGroupAsyncHelper(const Model::DeleteClusterParameterGroupRequest& request, const DeleteClusterParameterGroupResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteClusterSecurityGroupAsyncHelper(const Model::DeleteClusterSecurityGroupRequest& request, const DeleteClusterSecurityGroupResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteClusterSnapshotAsyncHelper(const Model::DeleteClusterSnapshotRequest& request, const DeleteClusterSnapshotResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteClusterSubnetGroupAsyncHelper(const Model::DeleteClusterSubnetGroupRequest& request, const DeleteClusterSubnetGroupResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteEndpointAccessAsyncHelper(const Model::DeleteEndpointAccessRequest& request, const DeleteEndpointAccessResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteEventSubscriptionAsyncHelper(const Model::DeleteEventSubscriptionRequest& request, const DeleteEventSubscriptionResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteHsmClientCertificateAsyncHelper(const Model::DeleteHsmClientCertificateRequest& request, const DeleteHsmClientCertificateResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteHsmConfigurationAsyncHelper(const Model::DeleteHsmConfigurationRequest& request, const DeleteHsmConfigurationResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeletePartnerAsyncHelper(const Model::DeletePartnerRequest& request, const DeletePartnerResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteScheduledActionAsyncHelper(const Model::DeleteScheduledActionRequest& request, const DeleteScheduledActionResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteSnapshotCopyGrantAsyncHelper(const Model::DeleteSnapshotCopyGrantRequest& request, const DeleteSnapshotCopyGrantResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteSnapshotScheduleAsyncHelper(const Model::DeleteSnapshotScheduleRequest& request, const DeleteSnapshotScheduleResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteTagsAsyncHelper(const Model::DeleteTagsRequest& request, const DeleteTagsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteUsageLimitAsyncHelper(const Model::DeleteUsageLimitRequest& request, const DeleteUsageLimitResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeAccountAttributesAsyncHelper(const Model::DescribeAccountAttributesRequest& request, const DescribeAccountAttributesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeAuthenticationProfilesAsyncHelper(const Model::DescribeAuthenticationProfilesRequest& request, const DescribeAuthenticationProfilesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeClusterDbRevisionsAsyncHelper(const Model::DescribeClusterDbRevisionsRequest& request, const DescribeClusterDbRevisionsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeClusterParameterGroupsAsyncHelper(const Model::DescribeClusterParameterGroupsRequest& request, const DescribeClusterParameterGroupsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeClusterParametersAsyncHelper(const Model::DescribeClusterParametersRequest& request, const DescribeClusterParametersResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeClusterSecurityGroupsAsyncHelper(const Model::DescribeClusterSecurityGroupsRequest& request, const DescribeClusterSecurityGroupsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeClusterSnapshotsAsyncHelper(const Model::DescribeClusterSnapshotsRequest& request, const DescribeClusterSnapshotsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeClusterSubnetGroupsAsyncHelper(const Model::DescribeClusterSubnetGroupsRequest& request, const DescribeClusterSubnetGroupsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeClusterTracksAsyncHelper(const Model::DescribeClusterTracksRequest& request, const DescribeClusterTracksResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeClusterVersionsAsyncHelper(const Model::DescribeClusterVersionsRequest& request, const DescribeClusterVersionsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeClustersAsyncHelper(const Model::DescribeClustersRequest& request, const DescribeClustersResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeDataSharesAsyncHelper(const Model::DescribeDataSharesRequest& request, const DescribeDataSharesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeDataSharesForConsumerAsyncHelper(const Model::DescribeDataSharesForConsumerRequest& request, const DescribeDataSharesForConsumerResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeDataSharesForProducerAsyncHelper(const Model::DescribeDataSharesForProducerRequest& request, const DescribeDataSharesForProducerResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeDefaultClusterParametersAsyncHelper(const Model::DescribeDefaultClusterParametersRequest& request, const DescribeDefaultClusterParametersResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeEndpointAccessAsyncHelper(const Model::DescribeEndpointAccessRequest& request, const DescribeEndpointAccessResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeEndpointAuthorizationAsyncHelper(const Model::DescribeEndpointAuthorizationRequest& request, const DescribeEndpointAuthorizationResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeEventCategoriesAsyncHelper(const Model::DescribeEventCategoriesRequest& request, const DescribeEventCategoriesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeEventSubscriptionsAsyncHelper(const Model::DescribeEventSubscriptionsRequest& request, const DescribeEventSubscriptionsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeEventsAsyncHelper(const Model::DescribeEventsRequest& request, const DescribeEventsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeHsmClientCertificatesAsyncHelper(const Model::DescribeHsmClientCertificatesRequest& request, const DescribeHsmClientCertificatesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeHsmConfigurationsAsyncHelper(const Model::DescribeHsmConfigurationsRequest& request, const DescribeHsmConfigurationsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeLoggingStatusAsyncHelper(const Model::DescribeLoggingStatusRequest& request, const DescribeLoggingStatusResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeNodeConfigurationOptionsAsyncHelper(const Model::DescribeNodeConfigurationOptionsRequest& request, const DescribeNodeConfigurationOptionsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeOrderableClusterOptionsAsyncHelper(const Model::DescribeOrderableClusterOptionsRequest& request, const DescribeOrderableClusterOptionsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribePartnersAsyncHelper(const Model::DescribePartnersRequest& request, const DescribePartnersResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeReservedNodeExchangeStatusAsyncHelper(const Model::DescribeReservedNodeExchangeStatusRequest& request, const DescribeReservedNodeExchangeStatusResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeReservedNodeOfferingsAsyncHelper(const Model::DescribeReservedNodeOfferingsRequest& request, const DescribeReservedNodeOfferingsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeReservedNodesAsyncHelper(const Model::DescribeReservedNodesRequest& request, const DescribeReservedNodesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeResizeAsyncHelper(const Model::DescribeResizeRequest& request, const DescribeResizeResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeScheduledActionsAsyncHelper(const Model::DescribeScheduledActionsRequest& request, const DescribeScheduledActionsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeSnapshotCopyGrantsAsyncHelper(const Model::DescribeSnapshotCopyGrantsRequest& request, const DescribeSnapshotCopyGrantsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeSnapshotSchedulesAsyncHelper(const Model::DescribeSnapshotSchedulesRequest& request, const DescribeSnapshotSchedulesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeStorageAsyncHelper(const Model::DescribeStorageRequest& request, const DescribeStorageResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeTableRestoreStatusAsyncHelper(const Model::DescribeTableRestoreStatusRequest& request, const DescribeTableRestoreStatusResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeTagsAsyncHelper(const Model::DescribeTagsRequest& request, const DescribeTagsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeUsageLimitsAsyncHelper(const Model::DescribeUsageLimitsRequest& request, const DescribeUsageLimitsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DisableLoggingAsyncHelper(const Model::DisableLoggingRequest& request, const DisableLoggingResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DisableSnapshotCopyAsyncHelper(const Model::DisableSnapshotCopyRequest& request, const DisableSnapshotCopyResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DisassociateDataShareConsumerAsyncHelper(const Model::DisassociateDataShareConsumerRequest& request, const DisassociateDataShareConsumerResponseReceivedHandler& handler, const std::shared_ptr& context) const; void EnableLoggingAsyncHelper(const Model::EnableLoggingRequest& request, const EnableLoggingResponseReceivedHandler& handler, const std::shared_ptr& context) const; void EnableSnapshotCopyAsyncHelper(const Model::EnableSnapshotCopyRequest& request, const EnableSnapshotCopyResponseReceivedHandler& handler, const std::shared_ptr& context) const; void GetClusterCredentialsAsyncHelper(const Model::GetClusterCredentialsRequest& request, const GetClusterCredentialsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void GetClusterCredentialsWithIAMAsyncHelper(const Model::GetClusterCredentialsWithIAMRequest& request, const GetClusterCredentialsWithIAMResponseReceivedHandler& handler, const std::shared_ptr& context) const; void GetReservedNodeExchangeConfigurationOptionsAsyncHelper(const Model::GetReservedNodeExchangeConfigurationOptionsRequest& request, const GetReservedNodeExchangeConfigurationOptionsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void GetReservedNodeExchangeOfferingsAsyncHelper(const Model::GetReservedNodeExchangeOfferingsRequest& request, const GetReservedNodeExchangeOfferingsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifyAquaConfigurationAsyncHelper(const Model::ModifyAquaConfigurationRequest& request, const ModifyAquaConfigurationResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifyAuthenticationProfileAsyncHelper(const Model::ModifyAuthenticationProfileRequest& request, const ModifyAuthenticationProfileResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifyClusterAsyncHelper(const Model::ModifyClusterRequest& request, const ModifyClusterResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifyClusterDbRevisionAsyncHelper(const Model::ModifyClusterDbRevisionRequest& request, const ModifyClusterDbRevisionResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifyClusterIamRolesAsyncHelper(const Model::ModifyClusterIamRolesRequest& request, const ModifyClusterIamRolesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifyClusterMaintenanceAsyncHelper(const Model::ModifyClusterMaintenanceRequest& request, const ModifyClusterMaintenanceResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifyClusterParameterGroupAsyncHelper(const Model::ModifyClusterParameterGroupRequest& request, const ModifyClusterParameterGroupResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifyClusterSnapshotAsyncHelper(const Model::ModifyClusterSnapshotRequest& request, const ModifyClusterSnapshotResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifyClusterSnapshotScheduleAsyncHelper(const Model::ModifyClusterSnapshotScheduleRequest& request, const ModifyClusterSnapshotScheduleResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifyClusterSubnetGroupAsyncHelper(const Model::ModifyClusterSubnetGroupRequest& request, const ModifyClusterSubnetGroupResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifyEndpointAccessAsyncHelper(const Model::ModifyEndpointAccessRequest& request, const ModifyEndpointAccessResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifyEventSubscriptionAsyncHelper(const Model::ModifyEventSubscriptionRequest& request, const ModifyEventSubscriptionResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifyScheduledActionAsyncHelper(const Model::ModifyScheduledActionRequest& request, const ModifyScheduledActionResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifySnapshotCopyRetentionPeriodAsyncHelper(const Model::ModifySnapshotCopyRetentionPeriodRequest& request, const ModifySnapshotCopyRetentionPeriodResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifySnapshotScheduleAsyncHelper(const Model::ModifySnapshotScheduleRequest& request, const ModifySnapshotScheduleResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifyUsageLimitAsyncHelper(const Model::ModifyUsageLimitRequest& request, const ModifyUsageLimitResponseReceivedHandler& handler, const std::shared_ptr& context) const; void PauseClusterAsyncHelper(const Model::PauseClusterRequest& request, const PauseClusterResponseReceivedHandler& handler, const std::shared_ptr& context) const; void PurchaseReservedNodeOfferingAsyncHelper(const Model::PurchaseReservedNodeOfferingRequest& request, const PurchaseReservedNodeOfferingResponseReceivedHandler& handler, const std::shared_ptr& context) const; void RebootClusterAsyncHelper(const Model::RebootClusterRequest& request, const RebootClusterResponseReceivedHandler& handler, const std::shared_ptr& context) const; void RejectDataShareAsyncHelper(const Model::RejectDataShareRequest& request, const RejectDataShareResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ResetClusterParameterGroupAsyncHelper(const Model::ResetClusterParameterGroupRequest& request, const ResetClusterParameterGroupResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ResizeClusterAsyncHelper(const Model::ResizeClusterRequest& request, const ResizeClusterResponseReceivedHandler& handler, const std::shared_ptr& context) const; void RestoreFromClusterSnapshotAsyncHelper(const Model::RestoreFromClusterSnapshotRequest& request, const RestoreFromClusterSnapshotResponseReceivedHandler& handler, const std::shared_ptr& context) const; void RestoreTableFromClusterSnapshotAsyncHelper(const Model::RestoreTableFromClusterSnapshotRequest& request, const RestoreTableFromClusterSnapshotResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ResumeClusterAsyncHelper(const Model::ResumeClusterRequest& request, const ResumeClusterResponseReceivedHandler& handler, const std::shared_ptr& context) const; void RevokeClusterSecurityGroupIngressAsyncHelper(const Model::RevokeClusterSecurityGroupIngressRequest& request, const RevokeClusterSecurityGroupIngressResponseReceivedHandler& handler, const std::shared_ptr& context) const; void RevokeEndpointAccessAsyncHelper(const Model::RevokeEndpointAccessRequest& request, const RevokeEndpointAccessResponseReceivedHandler& handler, const std::shared_ptr& context) const; void RevokeSnapshotAccessAsyncHelper(const Model::RevokeSnapshotAccessRequest& request, const RevokeSnapshotAccessResponseReceivedHandler& handler, const std::shared_ptr& context) const; void RotateEncryptionKeyAsyncHelper(const Model::RotateEncryptionKeyRequest& request, const RotateEncryptionKeyResponseReceivedHandler& handler, const std::shared_ptr& context) const; void UpdatePartnerStatusAsyncHelper(const Model::UpdatePartnerStatusRequest& request, const UpdatePartnerStatusResponseReceivedHandler& handler, const std::shared_ptr& context) const; Aws::String m_uri; Aws::String m_configScheme; std::shared_ptr m_executor; }; } // namespace Redshift } // namespace Aws