7#include <aws/redshift/Redshift_EXPORTS.h>
8#include <aws/redshift/RedshiftRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/redshift/model/AquaConfigurationStatus.h>
56 template<
typename ClusterIdentifierT = Aws::String>
57 void SetClusterIdentifier(ClusterIdentifierT&& value) { m_clusterIdentifierHasBeenSet =
true; m_clusterIdentifier = std::forward<ClusterIdentifierT>(value); }
58 template<
typename ClusterIdentifierT = Aws::String>
71 template<
typename SnapshotIdentifierT = Aws::String>
72 void SetSnapshotIdentifier(SnapshotIdentifierT&& value) { m_snapshotIdentifierHasBeenSet =
true; m_snapshotIdentifier = std::forward<SnapshotIdentifierT>(value); }
73 template<
typename SnapshotIdentifierT = Aws::String>
85 template<
typename SnapshotArnT = Aws::String>
86 void SetSnapshotArn(SnapshotArnT&& value) { m_snapshotArnHasBeenSet =
true; m_snapshotArn = std::forward<SnapshotArnT>(value); }
87 template<
typename SnapshotArnT = Aws::String>
99 template<
typename SnapshotClusterIdentifierT = Aws::String>
100 void SetSnapshotClusterIdentifier(SnapshotClusterIdentifierT&& value) { m_snapshotClusterIdentifierHasBeenSet =
true; m_snapshotClusterIdentifier = std::forward<SnapshotClusterIdentifierT>(value); }
101 template<
typename SnapshotClusterIdentifierT = Aws::String>
115 inline void SetPort(
int value) { m_portHasBeenSet =
true; m_port = value; }
127 template<
typename AvailabilityZoneT = Aws::String>
128 void SetAvailabilityZone(AvailabilityZoneT&& value) { m_availabilityZoneHasBeenSet =
true; m_availabilityZone = std::forward<AvailabilityZoneT>(value); }
129 template<
typename AvailabilityZoneT = Aws::String>
141 inline void SetAllowVersionUpgrade(
bool value) { m_allowVersionUpgradeHasBeenSet =
true; m_allowVersionUpgrade = value; }
153 template<
typename ClusterSubnetGroupNameT = Aws::String>
154 void SetClusterSubnetGroupName(ClusterSubnetGroupNameT&& value) { m_clusterSubnetGroupNameHasBeenSet =
true; m_clusterSubnetGroupName = std::forward<ClusterSubnetGroupNameT>(value); }
155 template<
typename ClusterSubnetGroupNameT = Aws::String>
166 inline void SetPubliclyAccessible(
bool value) { m_publiclyAccessibleHasBeenSet =
true; m_publiclyAccessible = value; }
178 template<
typename OwnerAccountT = Aws::String>
179 void SetOwnerAccount(OwnerAccountT&& value) { m_ownerAccountHasBeenSet =
true; m_ownerAccount = std::forward<OwnerAccountT>(value); }
180 template<
typename OwnerAccountT = Aws::String>
191 template<
typename HsmClientCertificateIdentifierT = Aws::String>
192 void SetHsmClientCertificateIdentifier(HsmClientCertificateIdentifierT&& value) { m_hsmClientCertificateIdentifierHasBeenSet =
true; m_hsmClientCertificateIdentifier = std::forward<HsmClientCertificateIdentifierT>(value); }
193 template<
typename HsmClientCertificateIdentifierT = Aws::String>
204 template<
typename HsmConfigurationIdentifierT = Aws::String>
205 void SetHsmConfigurationIdentifier(HsmConfigurationIdentifierT&& value) { m_hsmConfigurationIdentifierHasBeenSet =
true; m_hsmConfigurationIdentifier = std::forward<HsmConfigurationIdentifierT>(value); }
206 template<
typename HsmConfigurationIdentifierT = Aws::String>
218 template<
typename ElasticIpT = Aws::String>
219 void SetElasticIp(ElasticIpT&& value) { m_elasticIpHasBeenSet =
true; m_elasticIp = std::forward<ElasticIpT>(value); }
220 template<
typename ElasticIpT = Aws::String>
237 template<
typename ClusterParameterGroupNameT = Aws::String>
238 void SetClusterParameterGroupName(ClusterParameterGroupNameT&& value) { m_clusterParameterGroupNameHasBeenSet =
true; m_clusterParameterGroupName = std::forward<ClusterParameterGroupNameT>(value); }
239 template<
typename ClusterParameterGroupNameT = Aws::String>
251 template<
typename ClusterSecurityGroupsT = Aws::Vector<Aws::String>>
252 void SetClusterSecurityGroups(ClusterSecurityGroupsT&& value) { m_clusterSecurityGroupsHasBeenSet =
true; m_clusterSecurityGroups = std::forward<ClusterSecurityGroupsT>(value); }
253 template<
typename ClusterSecurityGroupsT = Aws::Vector<Aws::String>>
255 template<
typename ClusterSecurityGroupsT = Aws::String>
267 template<
typename VpcSecurityGroupIdsT = Aws::Vector<Aws::String>>
268 void SetVpcSecurityGroupIds(VpcSecurityGroupIdsT&& value) { m_vpcSecurityGroupIdsHasBeenSet =
true; m_vpcSecurityGroupIds = std::forward<VpcSecurityGroupIdsT>(value); }
269 template<
typename VpcSecurityGroupIdsT = Aws::Vector<Aws::String>>
271 template<
typename VpcSecurityGroupIdsT = Aws::String>
288 template<
typename PreferredMa
intenanceWindowT = Aws::String>
289 void SetPreferredMaintenanceWindow(PreferredMaintenanceWindowT&& value) { m_preferredMaintenanceWindowHasBeenSet =
true; m_preferredMaintenanceWindow = std::forward<PreferredMaintenanceWindowT>(value); }
290 template<
typename PreferredMa
intenanceWindowT = Aws::String>
334 template<
typename KmsKeyIdT = Aws::String>
335 void SetKmsKeyId(KmsKeyIdT&& value) { m_kmsKeyIdHasBeenSet =
true; m_kmsKeyId = std::forward<KmsKeyIdT>(value); }
336 template<
typename KmsKeyIdT = Aws::String>
352 template<
typename NodeTypeT = Aws::String>
353 void SetNodeType(NodeTypeT&& value) { m_nodeTypeHasBeenSet =
true; m_nodeType = std::forward<NodeTypeT>(value); }
354 template<
typename NodeTypeT = Aws::String>
370 inline void SetEnhancedVpcRouting(
bool value) { m_enhancedVpcRoutingHasBeenSet =
true; m_enhancedVpcRouting = value; }
380 template<
typename AdditionalInfoT = Aws::String>
381 void SetAdditionalInfo(AdditionalInfoT&& value) { m_additionalInfoHasBeenSet =
true; m_additionalInfo = std::forward<AdditionalInfoT>(value); }
382 template<
typename AdditionalInfoT = Aws::String>
398 template<
typename IamRolesT = Aws::Vector<Aws::String>>
399 void SetIamRoles(IamRolesT&& value) { m_iamRolesHasBeenSet =
true; m_iamRoles = std::forward<IamRolesT>(value); }
400 template<
typename IamRolesT = Aws::Vector<Aws::String>>
402 template<
typename IamRolesT = Aws::String>
418 template<
typename Ma
intenanceTrackNameT = Aws::String>
419 void SetMaintenanceTrackName(MaintenanceTrackNameT&& value) { m_maintenanceTrackNameHasBeenSet =
true; m_maintenanceTrackName = std::forward<MaintenanceTrackNameT>(value); }
420 template<
typename Ma
intenanceTrackNameT = Aws::String>
430 template<
typename SnapshotScheduleIdentifierT = Aws::String>
431 void SetSnapshotScheduleIdentifier(SnapshotScheduleIdentifierT&& value) { m_snapshotScheduleIdentifierHasBeenSet =
true; m_snapshotScheduleIdentifier = std::forward<SnapshotScheduleIdentifierT>(value); }
432 template<
typename SnapshotScheduleIdentifierT = Aws::String>
442 inline void SetNumberOfNodes(
int value) { m_numberOfNodesHasBeenSet =
true; m_numberOfNodes = value; }
477 template<
typename DefaultIamRoleArnT = Aws::String>
478 void SetDefaultIamRoleArn(DefaultIamRoleArnT&& value) { m_defaultIamRoleArnHasBeenSet =
true; m_defaultIamRoleArn = std::forward<DefaultIamRoleArnT>(value); }
479 template<
typename DefaultIamRoleArnT = Aws::String>
489 template<
typename ReservedNodeIdT = Aws::String>
490 void SetReservedNodeId(ReservedNodeIdT&& value) { m_reservedNodeIdHasBeenSet =
true; m_reservedNodeId = std::forward<ReservedNodeIdT>(value); }
491 template<
typename ReservedNodeIdT = Aws::String>
501 template<
typename TargetReservedNodeOfferingIdT = Aws::String>
502 void SetTargetReservedNodeOfferingId(TargetReservedNodeOfferingIdT&& value) { m_targetReservedNodeOfferingIdHasBeenSet =
true; m_targetReservedNodeOfferingId = std::forward<TargetReservedNodeOfferingIdT>(value); }
503 template<
typename TargetReservedNodeOfferingIdT = Aws::String>
514 inline void SetEncrypted(
bool value) { m_encryptedHasBeenSet =
true; m_encrypted = value; }
539 template<
typename MasterPasswordSecretKmsKeyIdT = Aws::String>
540 void SetMasterPasswordSecretKmsKeyId(MasterPasswordSecretKmsKeyIdT&& value) { m_masterPasswordSecretKmsKeyIdHasBeenSet =
true; m_masterPasswordSecretKmsKeyId = std::forward<MasterPasswordSecretKmsKeyIdT>(value); }
541 template<
typename MasterPasswordSecretKmsKeyIdT = Aws::String>
552 template<
typename IpAddressTypeT = Aws::String>
553 void SetIpAddressType(IpAddressTypeT&& value) { m_ipAddressTypeHasBeenSet =
true; m_ipAddressType = std::forward<IpAddressTypeT>(value); }
554 template<
typename IpAddressTypeT = Aws::String>
565 inline void SetMultiAZ(
bool value) { m_multiAZHasBeenSet =
true; m_multiAZ = value; }
571 bool m_clusterIdentifierHasBeenSet =
false;
574 bool m_snapshotIdentifierHasBeenSet =
false;
577 bool m_snapshotArnHasBeenSet =
false;
580 bool m_snapshotClusterIdentifierHasBeenSet =
false;
583 bool m_portHasBeenSet =
false;
586 bool m_availabilityZoneHasBeenSet =
false;
588 bool m_allowVersionUpgrade{
false};
589 bool m_allowVersionUpgradeHasBeenSet =
false;
592 bool m_clusterSubnetGroupNameHasBeenSet =
false;
594 bool m_publiclyAccessible{
false};
595 bool m_publiclyAccessibleHasBeenSet =
false;
598 bool m_ownerAccountHasBeenSet =
false;
601 bool m_hsmClientCertificateIdentifierHasBeenSet =
false;
604 bool m_hsmConfigurationIdentifierHasBeenSet =
false;
607 bool m_elasticIpHasBeenSet =
false;
610 bool m_clusterParameterGroupNameHasBeenSet =
false;
613 bool m_clusterSecurityGroupsHasBeenSet =
false;
616 bool m_vpcSecurityGroupIdsHasBeenSet =
false;
619 bool m_preferredMaintenanceWindowHasBeenSet =
false;
621 int m_automatedSnapshotRetentionPeriod{0};
622 bool m_automatedSnapshotRetentionPeriodHasBeenSet =
false;
624 int m_manualSnapshotRetentionPeriod{0};
625 bool m_manualSnapshotRetentionPeriodHasBeenSet =
false;
628 bool m_kmsKeyIdHasBeenSet =
false;
631 bool m_nodeTypeHasBeenSet =
false;
633 bool m_enhancedVpcRouting{
false};
634 bool m_enhancedVpcRoutingHasBeenSet =
false;
637 bool m_additionalInfoHasBeenSet =
false;
640 bool m_iamRolesHasBeenSet =
false;
643 bool m_maintenanceTrackNameHasBeenSet =
false;
646 bool m_snapshotScheduleIdentifierHasBeenSet =
false;
648 int m_numberOfNodes{0};
649 bool m_numberOfNodesHasBeenSet =
false;
651 bool m_availabilityZoneRelocation{
false};
652 bool m_availabilityZoneRelocationHasBeenSet =
false;
655 bool m_aquaConfigurationStatusHasBeenSet =
false;
658 bool m_defaultIamRoleArnHasBeenSet =
false;
661 bool m_reservedNodeIdHasBeenSet =
false;
664 bool m_targetReservedNodeOfferingIdHasBeenSet =
false;
666 bool m_encrypted{
false};
667 bool m_encryptedHasBeenSet =
false;
669 bool m_manageMasterPassword{
false};
670 bool m_manageMasterPasswordHasBeenSet =
false;
673 bool m_masterPasswordSecretKmsKeyIdHasBeenSet =
false;
676 bool m_ipAddressTypeHasBeenSet =
false;
678 bool m_multiAZ{
false};
679 bool m_multiAZHasBeenSet =
false;
bool EncryptedHasBeenSet() const
const Aws::String & GetClusterIdentifier() const
const Aws::String & GetHsmConfigurationIdentifier() const
virtual const char * GetServiceRequestName() const override
void SetHsmClientCertificateIdentifier(HsmClientCertificateIdentifierT &&value)
const Aws::String & GetAvailabilityZone() const
RestoreFromClusterSnapshotRequest & AddIamRoles(IamRolesT &&value)
bool ClusterIdentifierHasBeenSet() const
bool AutomatedSnapshotRetentionPeriodHasBeenSet() const
bool SnapshotIdentifierHasBeenSet() const
void SetNodeType(NodeTypeT &&value)
void SetSnapshotArn(SnapshotArnT &&value)
RestoreFromClusterSnapshotRequest & WithAvailabilityZoneRelocation(bool value)
bool VpcSecurityGroupIdsHasBeenSet() const
RestoreFromClusterSnapshotRequest & WithAdditionalInfo(AdditionalInfoT &&value)
RestoreFromClusterSnapshotRequest & WithHsmConfigurationIdentifier(HsmConfigurationIdentifierT &&value)
RestoreFromClusterSnapshotRequest & WithClusterIdentifier(ClusterIdentifierT &&value)
void SetSnapshotScheduleIdentifier(SnapshotScheduleIdentifierT &&value)
void SetAvailabilityZone(AvailabilityZoneT &&value)
RestoreFromClusterSnapshotRequest & WithAllowVersionUpgrade(bool value)
RestoreFromClusterSnapshotRequest & WithElasticIp(ElasticIpT &&value)
const Aws::String & GetNodeType() const
void SetElasticIp(ElasticIpT &&value)
RestoreFromClusterSnapshotRequest & WithAquaConfigurationStatus(AquaConfigurationStatus value)
void SetClusterSecurityGroups(ClusterSecurityGroupsT &&value)
bool OwnerAccountHasBeenSet() const
bool SnapshotArnHasBeenSet() const
bool IpAddressTypeHasBeenSet() const
bool MasterPasswordSecretKmsKeyIdHasBeenSet() const
RestoreFromClusterSnapshotRequest & WithMultiAZ(bool value)
void SetTargetReservedNodeOfferingId(TargetReservedNodeOfferingIdT &&value)
void SetIpAddressType(IpAddressTypeT &&value)
const Aws::Vector< Aws::String > & GetClusterSecurityGroups() const
void SetMaintenanceTrackName(MaintenanceTrackNameT &&value)
void SetMultiAZ(bool value)
bool ManualSnapshotRetentionPeriodHasBeenSet() const
void SetAquaConfigurationStatus(AquaConfigurationStatus value)
const Aws::String & GetIpAddressType() const
bool ClusterParameterGroupNameHasBeenSet() const
void SetVpcSecurityGroupIds(VpcSecurityGroupIdsT &&value)
const Aws::String & GetKmsKeyId() const
RestoreFromClusterSnapshotRequest & AddVpcSecurityGroupIds(VpcSecurityGroupIdsT &&value)
bool AvailabilityZoneHasBeenSet() const
const Aws::String & GetSnapshotScheduleIdentifier() const
bool AllowVersionUpgradeHasBeenSet() const
RestoreFromClusterSnapshotRequest & WithNodeType(NodeTypeT &&value)
const Aws::String & GetMaintenanceTrackName() const
RestoreFromClusterSnapshotRequest & WithSnapshotClusterIdentifier(SnapshotClusterIdentifierT &&value)
RestoreFromClusterSnapshotRequest & WithAvailabilityZone(AvailabilityZoneT &&value)
RestoreFromClusterSnapshotRequest & WithSnapshotIdentifier(SnapshotIdentifierT &&value)
const Aws::String & GetAdditionalInfo() const
RestoreFromClusterSnapshotRequest & WithMaintenanceTrackName(MaintenanceTrackNameT &&value)
void SetAdditionalInfo(AdditionalInfoT &&value)
RestoreFromClusterSnapshotRequest & WithPreferredMaintenanceWindow(PreferredMaintenanceWindowT &&value)
bool GetAllowVersionUpgrade() const
void SetAllowVersionUpgrade(bool value)
RestoreFromClusterSnapshotRequest & WithMasterPasswordSecretKmsKeyId(MasterPasswordSecretKmsKeyIdT &&value)
bool PreferredMaintenanceWindowHasBeenSet() const
bool ClusterSecurityGroupsHasBeenSet() const
const Aws::String & GetSnapshotClusterIdentifier() const
RestoreFromClusterSnapshotRequest & WithClusterSecurityGroups(ClusterSecurityGroupsT &&value)
RestoreFromClusterSnapshotRequest & WithPort(int value)
AWS_REDSHIFT_API void DumpBodyToUrl(Aws::Http::URI &uri) const override
const Aws::String & GetMasterPasswordSecretKmsKeyId() const
AquaConfigurationStatus GetAquaConfigurationStatus() const
bool DefaultIamRoleArnHasBeenSet() const
void SetKmsKeyId(KmsKeyIdT &&value)
const Aws::String & GetClusterParameterGroupName() const
RestoreFromClusterSnapshotRequest & WithClusterSubnetGroupName(ClusterSubnetGroupNameT &&value)
void SetSnapshotClusterIdentifier(SnapshotClusterIdentifierT &&value)
RestoreFromClusterSnapshotRequest & WithReservedNodeId(ReservedNodeIdT &&value)
bool IamRolesHasBeenSet() const
RestoreFromClusterSnapshotRequest & WithEnhancedVpcRouting(bool value)
bool PubliclyAccessibleHasBeenSet() const
bool EnhancedVpcRoutingHasBeenSet() const
bool GetEncrypted() const
bool HsmConfigurationIdentifierHasBeenSet() const
RestoreFromClusterSnapshotRequest & WithNumberOfNodes(int value)
const Aws::Vector< Aws::String > & GetVpcSecurityGroupIds() const
bool GetPubliclyAccessible() const
void SetSnapshotIdentifier(SnapshotIdentifierT &&value)
bool GetEnhancedVpcRouting() const
bool GetAvailabilityZoneRelocation() const
const Aws::String & GetHsmClientCertificateIdentifier() const
void SetPubliclyAccessible(bool value)
void SetDefaultIamRoleArn(DefaultIamRoleArnT &&value)
bool MaintenanceTrackNameHasBeenSet() const
RestoreFromClusterSnapshotRequest & WithTargetReservedNodeOfferingId(TargetReservedNodeOfferingIdT &&value)
const Aws::String & GetSnapshotIdentifier() const
RestoreFromClusterSnapshotRequest & WithSnapshotScheduleIdentifier(SnapshotScheduleIdentifierT &&value)
RestoreFromClusterSnapshotRequest & WithEncrypted(bool value)
bool KmsKeyIdHasBeenSet() const
int GetManualSnapshotRetentionPeriod() const
RestoreFromClusterSnapshotRequest & AddClusterSecurityGroups(ClusterSecurityGroupsT &&value)
void SetOwnerAccount(OwnerAccountT &&value)
RestoreFromClusterSnapshotRequest & WithOwnerAccount(OwnerAccountT &&value)
const Aws::String & GetSnapshotArn() const
bool ManageMasterPasswordHasBeenSet() const
void SetAvailabilityZoneRelocation(bool value)
RestoreFromClusterSnapshotRequest & WithVpcSecurityGroupIds(VpcSecurityGroupIdsT &&value)
bool AvailabilityZoneRelocationHasBeenSet() const
RestoreFromClusterSnapshotRequest & WithManualSnapshotRetentionPeriod(int value)
RestoreFromClusterSnapshotRequest & WithManageMasterPassword(bool value)
void SetReservedNodeId(ReservedNodeIdT &&value)
bool ReservedNodeIdHasBeenSet() const
AWS_REDSHIFT_API Aws::String SerializePayload() const override
RestoreFromClusterSnapshotRequest & WithDefaultIamRoleArn(DefaultIamRoleArnT &&value)
RestoreFromClusterSnapshotRequest & WithClusterParameterGroupName(ClusterParameterGroupNameT &&value)
RestoreFromClusterSnapshotRequest & WithAutomatedSnapshotRetentionPeriod(int value)
bool ClusterSubnetGroupNameHasBeenSet() const
const Aws::String & GetDefaultIamRoleArn() const
void SetIamRoles(IamRolesT &&value)
RestoreFromClusterSnapshotRequest & WithPubliclyAccessible(bool value)
AWS_REDSHIFT_API RestoreFromClusterSnapshotRequest()=default
void SetPreferredMaintenanceWindow(PreferredMaintenanceWindowT &&value)
void SetManageMasterPassword(bool value)
void SetNumberOfNodes(int value)
void SetClusterParameterGroupName(ClusterParameterGroupNameT &&value)
bool AquaConfigurationStatusHasBeenSet() const
RestoreFromClusterSnapshotRequest & WithKmsKeyId(KmsKeyIdT &&value)
int GetNumberOfNodes() const
bool SnapshotClusterIdentifierHasBeenSet() const
void SetAutomatedSnapshotRetentionPeriod(int value)
const Aws::String & GetClusterSubnetGroupName() const
void SetManualSnapshotRetentionPeriod(int value)
bool TargetReservedNodeOfferingIdHasBeenSet() const
const Aws::String & GetPreferredMaintenanceWindow() const
RestoreFromClusterSnapshotRequest & WithIpAddressType(IpAddressTypeT &&value)
const Aws::String & GetOwnerAccount() const
void SetHsmConfigurationIdentifier(HsmConfigurationIdentifierT &&value)
bool MultiAZHasBeenSet() const
RestoreFromClusterSnapshotRequest & WithSnapshotArn(SnapshotArnT &&value)
bool SnapshotScheduleIdentifierHasBeenSet() const
RestoreFromClusterSnapshotRequest & WithHsmClientCertificateIdentifier(HsmClientCertificateIdentifierT &&value)
bool NumberOfNodesHasBeenSet() const
RestoreFromClusterSnapshotRequest & WithIamRoles(IamRolesT &&value)
bool AdditionalInfoHasBeenSet() const
const Aws::String & GetReservedNodeId() const
bool GetManageMasterPassword() const
bool ElasticIpHasBeenSet() const
int GetAutomatedSnapshotRetentionPeriod() const
bool HsmClientCertificateIdentifierHasBeenSet() const
const Aws::String & GetTargetReservedNodeOfferingId() const
void SetClusterSubnetGroupName(ClusterSubnetGroupNameT &&value)
bool PortHasBeenSet() const
void SetMasterPasswordSecretKmsKeyId(MasterPasswordSecretKmsKeyIdT &&value)
const Aws::String & GetElasticIp() const
const Aws::Vector< Aws::String > & GetIamRoles() const
bool NodeTypeHasBeenSet() const
void SetEnhancedVpcRouting(bool value)
void SetEncrypted(bool value)
void SetClusterIdentifier(ClusterIdentifierT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector