7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/redshift/Redshift_EXPORTS.h>
12#include <aws/redshift/model/AquaConfiguration.h>
13#include <aws/redshift/model/ClusterIamRole.h>
14#include <aws/redshift/model/ClusterNode.h>
15#include <aws/redshift/model/ClusterParameterGroupStatus.h>
16#include <aws/redshift/model/ClusterSecurityGroupMembership.h>
17#include <aws/redshift/model/ClusterSnapshotCopyStatus.h>
18#include <aws/redshift/model/DataTransferProgress.h>
19#include <aws/redshift/model/DeferredMaintenanceWindow.h>
20#include <aws/redshift/model/ElasticIpStatus.h>
21#include <aws/redshift/model/Endpoint.h>
22#include <aws/redshift/model/HsmStatus.h>
23#include <aws/redshift/model/LoggingPublishStatus.h>
24#include <aws/redshift/model/PendingModifiedValues.h>
25#include <aws/redshift/model/ReservedNodeExchangeStatus.h>
26#include <aws/redshift/model/ResizeInfo.h>
27#include <aws/redshift/model/RestoreStatus.h>
28#include <aws/redshift/model/ScheduleState.h>
29#include <aws/redshift/model/SecondaryClusterInfo.h>
30#include <aws/redshift/model/Tag.h>
31#include <aws/redshift/model/VpcSecurityGroupMembership.h>
64 template <
typename ClusterIdentifierT = Aws::String>
66 m_clusterIdentifierHasBeenSet =
true;
67 m_clusterIdentifier = std::forward<ClusterIdentifierT>(value);
69 template <
typename ClusterIdentifierT = Aws::String>
82 template <
typename NodeTypeT = Aws::String>
84 m_nodeTypeHasBeenSet =
true;
85 m_nodeType = std::forward<NodeTypeT>(value);
87 template <
typename NodeTypeT = Aws::String>
114 template <
typename ClusterStatusT = Aws::String>
116 m_clusterStatusHasBeenSet =
true;
117 m_clusterStatus = std::forward<ClusterStatusT>(value);
119 template <
typename ClusterStatusT = Aws::String>
139 template <
typename ClusterAvailabilityStatusT = Aws::String>
141 m_clusterAvailabilityStatusHasBeenSet =
true;
142 m_clusterAvailabilityStatus = std::forward<ClusterAvailabilityStatusT>(value);
144 template <
typename ClusterAvailabilityStatusT = Aws::String>
157 template <
typename ModifyStatusT = Aws::String>
159 m_modifyStatusHasBeenSet =
true;
160 m_modifyStatus = std::forward<ModifyStatusT>(value);
162 template <
typename ModifyStatusT = Aws::String>
176 template <
typename MasterUsernameT = Aws::String>
178 m_masterUsernameHasBeenSet =
true;
179 m_masterUsername = std::forward<MasterUsernameT>(value);
181 template <
typename MasterUsernameT = Aws::String>
197 template <
typename DBNameT = Aws::String>
199 m_dBNameHasBeenSet =
true;
200 m_dBName = std::forward<DBNameT>(value);
202 template <
typename DBNameT = Aws::String>
215 template <
typename Endpo
intT = Endpo
int>
217 m_endpointHasBeenSet =
true;
218 m_endpoint = std::forward<EndpointT>(value);
220 template <
typename Endpo
intT = Endpo
int>
233 template <
typename ClusterCreateTimeT = Aws::Utils::DateTime>
235 m_clusterCreateTimeHasBeenSet =
true;
236 m_clusterCreateTime = std::forward<ClusterCreateTimeT>(value);
238 template <
typename ClusterCreateTimeT = Aws::Utils::DateTime>
252 m_automatedSnapshotRetentionPeriodHasBeenSet =
true;
253 m_automatedSnapshotRetentionPeriod = value;
271 m_manualSnapshotRetentionPeriodHasBeenSet =
true;
272 m_manualSnapshotRetentionPeriod = value;
292 template <
typename ClusterSecurityGroupsT = Aws::Vector<ClusterSecurityGroupMembership>>
294 m_clusterSecurityGroupsHasBeenSet =
true;
295 m_clusterSecurityGroups = std::forward<ClusterSecurityGroupsT>(value);
297 template <
typename ClusterSecurityGroupsT = Aws::Vector<ClusterSecurityGroupMembership>>
302 template <
typename ClusterSecurityGroupsT = ClusterSecurityGroupMembership>
304 m_clusterSecurityGroupsHasBeenSet =
true;
305 m_clusterSecurityGroups.emplace_back(std::forward<ClusterSecurityGroupsT>(value));
318 template <
typename VpcSecurityGroupsT = Aws::Vector<VpcSecurityGroupMembership>>
320 m_vpcSecurityGroupsHasBeenSet =
true;
321 m_vpcSecurityGroups = std::forward<VpcSecurityGroupsT>(value);
323 template <
typename VpcSecurityGroupsT = Aws::Vector<VpcSecurityGroupMembership>>
328 template <
typename VpcSecurityGroupsT = VpcSecurityGroupMembership>
330 m_vpcSecurityGroupsHasBeenSet =
true;
331 m_vpcSecurityGroups.emplace_back(std::forward<VpcSecurityGroupsT>(value));
343 template <
typename ClusterParameterGroupsT = Aws::Vector<ClusterParameterGroupStatus>>
345 m_clusterParameterGroupsHasBeenSet =
true;
346 m_clusterParameterGroups = std::forward<ClusterParameterGroupsT>(value);
348 template <
typename ClusterParameterGroupsT = Aws::Vector<ClusterParameterGroupStatus>>
353 template <
typename ClusterParameterGroupsT = ClusterParameterGroupStatus>
355 m_clusterParameterGroupsHasBeenSet =
true;
356 m_clusterParameterGroups.emplace_back(std::forward<ClusterParameterGroupsT>(value));
368 template <
typename ClusterSubnetGroupNameT = Aws::String>
370 m_clusterSubnetGroupNameHasBeenSet =
true;
371 m_clusterSubnetGroupName = std::forward<ClusterSubnetGroupNameT>(value);
373 template <
typename ClusterSubnetGroupNameT = Aws::String>
386 template <
typename VpcIdT = Aws::String>
388 m_vpcIdHasBeenSet =
true;
389 m_vpcId = std::forward<VpcIdT>(value);
391 template <
typename VpcIdT = Aws::String>
393 SetVpcId(std::forward<VpcIdT>(value));
404 template <
typename AvailabilityZoneT = Aws::String>
406 m_availabilityZoneHasBeenSet =
true;
407 m_availabilityZone = std::forward<AvailabilityZoneT>(value);
409 template <
typename AvailabilityZoneT = Aws::String>
423 template <
typename PreferredMa
intenanceWindowT = Aws::String>
425 m_preferredMaintenanceWindowHasBeenSet =
true;
426 m_preferredMaintenanceWindow = std::forward<PreferredMaintenanceWindowT>(value);
428 template <
typename PreferredMa
intenanceWindowT = Aws::String>
442 template <
typename PendingModifiedValuesT = PendingModifiedValues>
444 m_pendingModifiedValuesHasBeenSet =
true;
445 m_pendingModifiedValues = std::forward<PendingModifiedValuesT>(value);
447 template <
typename PendingModifiedValuesT = PendingModifiedValues>
461 template <
typename ClusterVersionT = Aws::String>
463 m_clusterVersionHasBeenSet =
true;
464 m_clusterVersion = std::forward<ClusterVersionT>(value);
466 template <
typename ClusterVersionT = Aws::String>
482 m_allowVersionUpgradeHasBeenSet =
true;
483 m_allowVersionUpgrade = value;
498 m_numberOfNodesHasBeenSet =
true;
499 m_numberOfNodes = value;
515 m_publiclyAccessibleHasBeenSet =
true;
516 m_publiclyAccessible = value;
532 m_encryptedHasBeenSet =
true;
548 template <
typename RestoreStatusT = RestoreStatus>
550 m_restoreStatusHasBeenSet =
true;
551 m_restoreStatus = std::forward<RestoreStatusT>(value);
553 template <
typename RestoreStatusT = RestoreStatus>
566 template <
typename DataTransferProgressT = DataTransferProgress>
568 m_dataTransferProgressHasBeenSet =
true;
569 m_dataTransferProgress = std::forward<DataTransferProgressT>(value);
571 template <
typename DataTransferProgressT = DataTransferProgress>
586 template <
typename HsmStatusT = HsmStatus>
588 m_hsmStatusHasBeenSet =
true;
589 m_hsmStatus = std::forward<HsmStatusT>(value);
591 template <
typename HsmStatusT = HsmStatus>
605 template <
typename ClusterSnapshotCopyStatusT = ClusterSnapshotCopyStatus>
607 m_clusterSnapshotCopyStatusHasBeenSet =
true;
608 m_clusterSnapshotCopyStatus = std::forward<ClusterSnapshotCopyStatusT>(value);
610 template <
typename ClusterSnapshotCopyStatusT = ClusterSnapshotCopyStatus>
623 template <
typename ClusterPublicKeyT = Aws::String>
625 m_clusterPublicKeyHasBeenSet =
true;
626 m_clusterPublicKey = std::forward<ClusterPublicKeyT>(value);
628 template <
typename ClusterPublicKeyT = Aws::String>
641 template <
typename ClusterNodesT = Aws::Vector<ClusterNode>>
643 m_clusterNodesHasBeenSet =
true;
644 m_clusterNodes = std::forward<ClusterNodesT>(value);
646 template <
typename ClusterNodesT = Aws::Vector<ClusterNode>>
651 template <
typename ClusterNodesT = ClusterNode>
653 m_clusterNodesHasBeenSet =
true;
654 m_clusterNodes.emplace_back(std::forward<ClusterNodesT>(value));
665 template <
typename ElasticIpStatusT = ElasticIpStatus>
667 m_elasticIpStatusHasBeenSet =
true;
668 m_elasticIpStatus = std::forward<ElasticIpStatusT>(value);
670 template <
typename ElasticIpStatusT = ElasticIpStatus>
683 template <
typename ClusterRevisionNumberT = Aws::String>
685 m_clusterRevisionNumberHasBeenSet =
true;
686 m_clusterRevisionNumber = std::forward<ClusterRevisionNumberT>(value);
688 template <
typename ClusterRevisionNumberT = Aws::String>
701 template <
typename TagsT = Aws::Vector<Tag>>
703 m_tagsHasBeenSet =
true;
704 m_tags = std::forward<TagsT>(value);
706 template <
typename TagsT = Aws::Vector<Tag>>
708 SetTags(std::forward<TagsT>(value));
711 template <
typename TagsT = Tag>
713 m_tagsHasBeenSet =
true;
714 m_tags.emplace_back(std::forward<TagsT>(value));
726 template <
typename KmsKeyIdT = Aws::String>
728 m_kmsKeyIdHasBeenSet =
true;
729 m_kmsKeyId = std::forward<KmsKeyIdT>(value);
731 template <
typename KmsKeyIdT = Aws::String>
751 m_enhancedVpcRoutingHasBeenSet =
true;
752 m_enhancedVpcRouting = value;
767 template <
typename IamRolesT = Aws::Vector<ClusterIamRole>>
769 m_iamRolesHasBeenSet =
true;
770 m_iamRoles = std::forward<IamRolesT>(value);
772 template <
typename IamRolesT = Aws::Vector<ClusterIamRole>>
777 template <
typename IamRolesT = ClusterIamRole>
779 m_iamRolesHasBeenSet =
true;
780 m_iamRoles.emplace_back(std::forward<IamRolesT>(value));
791 template <
typename PendingActionsT = Aws::Vector<Aws::String>>
793 m_pendingActionsHasBeenSet =
true;
794 m_pendingActions = std::forward<PendingActionsT>(value);
796 template <
typename PendingActionsT = Aws::Vector<Aws::String>>
801 template <
typename PendingActionsT = Aws::String>
803 m_pendingActionsHasBeenSet =
true;
804 m_pendingActions.emplace_back(std::forward<PendingActionsT>(value));
815 template <
typename Ma
intenanceTrackNameT = Aws::String>
817 m_maintenanceTrackNameHasBeenSet =
true;
818 m_maintenanceTrackName = std::forward<MaintenanceTrackNameT>(value);
820 template <
typename Ma
intenanceTrackNameT = Aws::String>
834 template <
typename ElasticResizeNumberOfNodeOptionsT = Aws::String>
836 m_elasticResizeNumberOfNodeOptionsHasBeenSet =
true;
837 m_elasticResizeNumberOfNodeOptions = std::forward<ElasticResizeNumberOfNodeOptionsT>(value);
839 template <
typename ElasticResizeNumberOfNodeOptionsT = Aws::String>
852 template <
typename DeferredMa
intenanceWindowsT = Aws::Vector<DeferredMa
intenanceWindow>>
854 m_deferredMaintenanceWindowsHasBeenSet =
true;
855 m_deferredMaintenanceWindows = std::forward<DeferredMaintenanceWindowsT>(value);
857 template <
typename DeferredMa
intenanceWindowsT = Aws::Vector<DeferredMa
intenanceWindow>>
862 template <
typename DeferredMa
intenanceWindowsT = DeferredMa
intenanceWindow>
864 m_deferredMaintenanceWindowsHasBeenSet =
true;
865 m_deferredMaintenanceWindows.emplace_back(std::forward<DeferredMaintenanceWindowsT>(value));
876 template <
typename SnapshotScheduleIdentifierT = Aws::String>
878 m_snapshotScheduleIdentifierHasBeenSet =
true;
879 m_snapshotScheduleIdentifier = std::forward<SnapshotScheduleIdentifierT>(value);
881 template <
typename SnapshotScheduleIdentifierT = Aws::String>
895 m_snapshotScheduleStateHasBeenSet =
true;
896 m_snapshotScheduleState = value;
911 template <
typename ExpectedNextSnapshotScheduleTimeT = Aws::Utils::DateTime>
913 m_expectedNextSnapshotScheduleTimeHasBeenSet =
true;
914 m_expectedNextSnapshotScheduleTime = std::forward<ExpectedNextSnapshotScheduleTimeT>(value);
916 template <
typename ExpectedNextSnapshotScheduleTimeT = Aws::Utils::DateTime>
932 template <
typename ExpectedNextSnapshotScheduleTimeStatusT = Aws::String>
934 m_expectedNextSnapshotScheduleTimeStatusHasBeenSet =
true;
935 m_expectedNextSnapshotScheduleTimeStatus = std::forward<ExpectedNextSnapshotScheduleTimeStatusT>(value);
937 template <
typename ExpectedNextSnapshotScheduleTimeStatusT = Aws::String>
950 template <
typename NextMa
intenanceWindowStartTimeT = Aws::Utils::DateTime>
952 m_nextMaintenanceWindowStartTimeHasBeenSet =
true;
953 m_nextMaintenanceWindowStartTime = std::forward<NextMaintenanceWindowStartTimeT>(value);
955 template <
typename NextMa
intenanceWindowStartTimeT = Aws::Utils::DateTime>
970 template <
typename ResizeInfoT = ResizeInfo>
972 m_resizeInfoHasBeenSet =
true;
973 m_resizeInfo = std::forward<ResizeInfoT>(value);
975 template <
typename ResizeInfoT = ResizeInfo>
988 template <
typename AvailabilityZoneRelocationStatusT = Aws::String>
990 m_availabilityZoneRelocationStatusHasBeenSet =
true;
991 m_availabilityZoneRelocationStatus = std::forward<AvailabilityZoneRelocationStatusT>(value);
993 template <
typename AvailabilityZoneRelocationStatusT = Aws::String>
1006 template <
typename ClusterNamespaceArnT = Aws::String>
1008 m_clusterNamespaceArnHasBeenSet =
true;
1009 m_clusterNamespaceArn = std::forward<ClusterNamespaceArnT>(value);
1011 template <
typename ClusterNamespaceArnT = Aws::String>
1025 m_totalStorageCapacityInMegaBytesHasBeenSet =
true;
1026 m_totalStorageCapacityInMegaBytes = value;
1041 template <
typename AquaConfigurationT = AquaConfiguration>
1043 m_aquaConfigurationHasBeenSet =
true;
1044 m_aquaConfiguration = std::forward<AquaConfigurationT>(value);
1046 template <
typename AquaConfigurationT = AquaConfiguration>
1060 template <
typename DefaultIamRoleArnT = Aws::String>
1062 m_defaultIamRoleArnHasBeenSet =
true;
1063 m_defaultIamRoleArn = std::forward<DefaultIamRoleArnT>(value);
1065 template <
typename DefaultIamRoleArnT = Aws::String>
1079 template <
typename ReservedNodeExchangeStatusT = ReservedNodeExchangeStatus>
1081 m_reservedNodeExchangeStatusHasBeenSet =
true;
1082 m_reservedNodeExchangeStatus = std::forward<ReservedNodeExchangeStatusT>(value);
1084 template <
typename ReservedNodeExchangeStatusT = ReservedNodeExchangeStatus>
1097 template <
typename CustomDomainNameT = Aws::String>
1099 m_customDomainNameHasBeenSet =
true;
1100 m_customDomainName = std::forward<CustomDomainNameT>(value);
1102 template <
typename CustomDomainNameT = Aws::String>
1115 template <
typename CustomDomainCertificateArnT = Aws::String>
1117 m_customDomainCertificateArnHasBeenSet =
true;
1118 m_customDomainCertificateArn = std::forward<CustomDomainCertificateArnT>(value);
1120 template <
typename CustomDomainCertificateArnT = Aws::String>
1134 template <
typename CustomDomainCertificateExpiryDateT = Aws::Utils::DateTime>
1136 m_customDomainCertificateExpiryDateHasBeenSet =
true;
1137 m_customDomainCertificateExpiryDate = std::forward<CustomDomainCertificateExpiryDateT>(value);
1139 template <
typename CustomDomainCertificateExpiryDateT = Aws::Utils::DateTime>
1153 template <
typename MasterPasswordSecretArnT = Aws::String>
1155 m_masterPasswordSecretArnHasBeenSet =
true;
1156 m_masterPasswordSecretArn = std::forward<MasterPasswordSecretArnT>(value);
1158 template <
typename MasterPasswordSecretArnT = Aws::String>
1172 template <
typename MasterPasswordSecretKmsKeyIdT = Aws::String>
1174 m_masterPasswordSecretKmsKeyIdHasBeenSet =
true;
1175 m_masterPasswordSecretKmsKeyId = std::forward<MasterPasswordSecretKmsKeyIdT>(value);
1177 template <
typename MasterPasswordSecretKmsKeyIdT = Aws::String>
1191 template <
typename IpAddressTypeT = Aws::String>
1193 m_ipAddressTypeHasBeenSet =
true;
1194 m_ipAddressType = std::forward<IpAddressTypeT>(value);
1196 template <
typename IpAddressTypeT = Aws::String>
1210 template <
typename MultiAZT = Aws::String>
1212 m_multiAZHasBeenSet =
true;
1213 m_multiAZ = std::forward<MultiAZT>(value);
1215 template <
typename MultiAZT = Aws::String>
1229 template <
typename MultiAZSecondaryT = SecondaryClusterInfo>
1231 m_multiAZSecondaryHasBeenSet =
true;
1232 m_multiAZSecondary = std::forward<MultiAZSecondaryT>(value);
1234 template <
typename MultiAZSecondaryT = SecondaryClusterInfo>
1249 template <
typename LakehouseRegistrationStatusT = Aws::String>
1251 m_lakehouseRegistrationStatusHasBeenSet =
true;
1252 m_lakehouseRegistrationStatus = std::forward<LakehouseRegistrationStatusT>(value);
1254 template <
typename LakehouseRegistrationStatusT = Aws::String>
1268 template <
typename CatalogArnT = Aws::String>
1270 m_catalogArnHasBeenSet =
true;
1271 m_catalogArn = std::forward<CatalogArnT>(value);
1273 template <
typename CatalogArnT = Aws::String>
1288 template <
typename ExtraComputeForAutomaticOptimizationT = Aws::String>
1290 m_extraComputeForAutomaticOptimizationHasBeenSet =
true;
1291 m_extraComputeForAutomaticOptimization = std::forward<ExtraComputeForAutomaticOptimizationT>(value);
1293 template <
typename ExtraComputeForAutomaticOptimizationT = Aws::String>
1307 template <
typename LoggingPublishStatusT = LoggingPublishStatus>
1309 m_loggingPublishStatusHasBeenSet =
true;
1310 m_loggingPublishStatus = std::forward<LoggingPublishStatusT>(value);
1312 template <
typename LoggingPublishStatusT = LoggingPublishStatus>
1337 int m_automatedSnapshotRetentionPeriod{0};
1339 int m_manualSnapshotRetentionPeriod{0};
1355 PendingModifiedValues m_pendingModifiedValues;
1359 bool m_allowVersionUpgrade{
false};
1361 int m_numberOfNodes{0};
1363 bool m_publiclyAccessible{
false};
1365 bool m_encrypted{
false};
1367 RestoreStatus m_restoreStatus;
1369 DataTransferProgress m_dataTransferProgress;
1371 HsmStatus m_hsmStatus;
1373 ClusterSnapshotCopyStatus m_clusterSnapshotCopyStatus;
1379 ElasticIpStatus m_elasticIpStatus;
1387 bool m_enhancedVpcRouting{
false};
1405 Aws::String m_expectedNextSnapshotScheduleTimeStatus;
1409 ResizeInfo m_resizeInfo;
1415 long long m_totalStorageCapacityInMegaBytes{0};
1417 AquaConfiguration m_aquaConfiguration;
1421 ReservedNodeExchangeStatus m_reservedNodeExchangeStatus;
1437 SecondaryClusterInfo m_multiAZSecondary;
1443 Aws::String m_extraComputeForAutomaticOptimization;
1445 LoggingPublishStatus m_loggingPublishStatus;
1446 bool m_clusterIdentifierHasBeenSet =
false;
1447 bool m_nodeTypeHasBeenSet =
false;
1448 bool m_clusterStatusHasBeenSet =
false;
1449 bool m_clusterAvailabilityStatusHasBeenSet =
false;
1450 bool m_modifyStatusHasBeenSet =
false;
1451 bool m_masterUsernameHasBeenSet =
false;
1452 bool m_dBNameHasBeenSet =
false;
1453 bool m_endpointHasBeenSet =
false;
1454 bool m_clusterCreateTimeHasBeenSet =
false;
1455 bool m_automatedSnapshotRetentionPeriodHasBeenSet =
false;
1456 bool m_manualSnapshotRetentionPeriodHasBeenSet =
false;
1457 bool m_clusterSecurityGroupsHasBeenSet =
false;
1458 bool m_vpcSecurityGroupsHasBeenSet =
false;
1459 bool m_clusterParameterGroupsHasBeenSet =
false;
1460 bool m_clusterSubnetGroupNameHasBeenSet =
false;
1461 bool m_vpcIdHasBeenSet =
false;
1462 bool m_availabilityZoneHasBeenSet =
false;
1463 bool m_preferredMaintenanceWindowHasBeenSet =
false;
1464 bool m_pendingModifiedValuesHasBeenSet =
false;
1465 bool m_clusterVersionHasBeenSet =
false;
1466 bool m_allowVersionUpgradeHasBeenSet =
false;
1467 bool m_numberOfNodesHasBeenSet =
false;
1468 bool m_publiclyAccessibleHasBeenSet =
false;
1469 bool m_encryptedHasBeenSet =
false;
1470 bool m_restoreStatusHasBeenSet =
false;
1471 bool m_dataTransferProgressHasBeenSet =
false;
1472 bool m_hsmStatusHasBeenSet =
false;
1473 bool m_clusterSnapshotCopyStatusHasBeenSet =
false;
1474 bool m_clusterPublicKeyHasBeenSet =
false;
1475 bool m_clusterNodesHasBeenSet =
false;
1476 bool m_elasticIpStatusHasBeenSet =
false;
1477 bool m_clusterRevisionNumberHasBeenSet =
false;
1478 bool m_tagsHasBeenSet =
false;
1479 bool m_kmsKeyIdHasBeenSet =
false;
1480 bool m_enhancedVpcRoutingHasBeenSet =
false;
1481 bool m_iamRolesHasBeenSet =
false;
1482 bool m_pendingActionsHasBeenSet =
false;
1483 bool m_maintenanceTrackNameHasBeenSet =
false;
1484 bool m_elasticResizeNumberOfNodeOptionsHasBeenSet =
false;
1485 bool m_deferredMaintenanceWindowsHasBeenSet =
false;
1486 bool m_snapshotScheduleIdentifierHasBeenSet =
false;
1487 bool m_snapshotScheduleStateHasBeenSet =
false;
1488 bool m_expectedNextSnapshotScheduleTimeHasBeenSet =
false;
1489 bool m_expectedNextSnapshotScheduleTimeStatusHasBeenSet =
false;
1490 bool m_nextMaintenanceWindowStartTimeHasBeenSet =
false;
1491 bool m_resizeInfoHasBeenSet =
false;
1492 bool m_availabilityZoneRelocationStatusHasBeenSet =
false;
1493 bool m_clusterNamespaceArnHasBeenSet =
false;
1494 bool m_totalStorageCapacityInMegaBytesHasBeenSet =
false;
1495 bool m_aquaConfigurationHasBeenSet =
false;
1496 bool m_defaultIamRoleArnHasBeenSet =
false;
1497 bool m_reservedNodeExchangeStatusHasBeenSet =
false;
1498 bool m_customDomainNameHasBeenSet =
false;
1499 bool m_customDomainCertificateArnHasBeenSet =
false;
1500 bool m_customDomainCertificateExpiryDateHasBeenSet =
false;
1501 bool m_masterPasswordSecretArnHasBeenSet =
false;
1502 bool m_masterPasswordSecretKmsKeyIdHasBeenSet =
false;
1503 bool m_ipAddressTypeHasBeenSet =
false;
1504 bool m_multiAZHasBeenSet =
false;
1505 bool m_multiAZSecondaryHasBeenSet =
false;
1506 bool m_lakehouseRegistrationStatusHasBeenSet =
false;
1507 bool m_catalogArnHasBeenSet =
false;
1508 bool m_extraComputeForAutomaticOptimizationHasBeenSet =
false;
1509 bool m_loggingPublishStatusHasBeenSet =
false;
bool MasterUsernameHasBeenSet() const
Cluster & WithAllowVersionUpgrade(bool value)
AWS_REDSHIFT_API void OutputToStream(Aws::OStream &oStream, const char *location) const
const AquaConfiguration & GetAquaConfiguration() const
bool ExpectedNextSnapshotScheduleTimeHasBeenSet() const
const DataTransferProgress & GetDataTransferProgress() const
bool EnhancedVpcRoutingHasBeenSet() const
void SetClusterAvailabilityStatus(ClusterAvailabilityStatusT &&value)
const Aws::String & GetDefaultIamRoleArn() const
const Aws::String & GetMaintenanceTrackName() const
bool ClusterParameterGroupsHasBeenSet() const
const Aws::Vector< DeferredMaintenanceWindow > & GetDeferredMaintenanceWindows() const
const Aws::String & GetClusterRevisionNumber() const
Cluster & WithAquaConfiguration(AquaConfigurationT &&value)
const Aws::String & GetSnapshotScheduleIdentifier() const
const Aws::String & GetCustomDomainCertificateArn() const
void SetNumberOfNodes(int value)
Cluster & WithVpcSecurityGroups(VpcSecurityGroupsT &&value)
const Aws::Utils::DateTime & GetNextMaintenanceWindowStartTime() const
bool GetEncrypted() const
Cluster & AddClusterNodes(ClusterNodesT &&value)
bool AutomatedSnapshotRetentionPeriodHasBeenSet() const
Cluster & WithExtraComputeForAutomaticOptimization(ExtraComputeForAutomaticOptimizationT &&value)
void SetMasterUsername(MasterUsernameT &&value)
bool ClusterAvailabilityStatusHasBeenSet() const
Cluster & WithClusterStatus(ClusterStatusT &&value)
Cluster & WithIamRoles(IamRolesT &&value)
Cluster & WithClusterVersion(ClusterVersionT &&value)
bool ClusterIdentifierHasBeenSet() const
bool CatalogArnHasBeenSet() const
const ReservedNodeExchangeStatus & GetReservedNodeExchangeStatus() const
bool KmsKeyIdHasBeenSet() const
Cluster & WithTags(TagsT &&value)
void SetLoggingPublishStatus(LoggingPublishStatusT &&value)
void SetClusterPublicKey(ClusterPublicKeyT &&value)
const PendingModifiedValues & GetPendingModifiedValues() const
Cluster & WithNumberOfNodes(int value)
Cluster & WithClusterPublicKey(ClusterPublicKeyT &&value)
const Aws::Vector< ClusterSecurityGroupMembership > & GetClusterSecurityGroups() const
Cluster & AddDeferredMaintenanceWindows(DeferredMaintenanceWindowsT &&value)
AWS_REDSHIFT_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
const SecondaryClusterInfo & GetMultiAZSecondary() const
Cluster & WithManualSnapshotRetentionPeriod(int value)
void SetEnhancedVpcRouting(bool value)
Cluster & WithClusterNamespaceArn(ClusterNamespaceArnT &&value)
void SetNextMaintenanceWindowStartTime(NextMaintenanceWindowStartTimeT &&value)
long long GetTotalStorageCapacityInMegaBytes() const
void SetSnapshotScheduleState(ScheduleState value)
bool GetAllowVersionUpgrade() const
Cluster & WithClusterNodes(ClusterNodesT &&value)
Cluster & WithClusterSecurityGroups(ClusterSecurityGroupsT &&value)
const Aws::String & GetVpcId() const
const Aws::String & GetClusterPublicKey() const
bool MasterPasswordSecretArnHasBeenSet() const
AWS_REDSHIFT_API Cluster()=default
Cluster & WithModifyStatus(ModifyStatusT &&value)
bool AllowVersionUpgradeHasBeenSet() const
void SetClusterIdentifier(ClusterIdentifierT &&value)
int GetAutomatedSnapshotRetentionPeriod() const
void SetMultiAZ(MultiAZT &&value)
void SetCustomDomainCertificateArn(CustomDomainCertificateArnT &&value)
bool EncryptedHasBeenSet() const
void SetElasticResizeNumberOfNodeOptions(ElasticResizeNumberOfNodeOptionsT &&value)
Cluster & AddClusterSecurityGroups(ClusterSecurityGroupsT &&value)
void SetHsmStatus(HsmStatusT &&value)
void SetVpcSecurityGroups(VpcSecurityGroupsT &&value)
void SetMasterPasswordSecretArn(MasterPasswordSecretArnT &&value)
void SetAquaConfiguration(AquaConfigurationT &&value)
Cluster & WithResizeInfo(ResizeInfoT &&value)
void SetMasterPasswordSecretKmsKeyId(MasterPasswordSecretKmsKeyIdT &&value)
bool MasterPasswordSecretKmsKeyIdHasBeenSet() const
void SetManualSnapshotRetentionPeriod(int value)
bool AvailabilityZoneHasBeenSet() const
bool ModifyStatusHasBeenSet() const
void SetDefaultIamRoleArn(DefaultIamRoleArnT &&value)
void SetAllowVersionUpgrade(bool value)
bool LakehouseRegistrationStatusHasBeenSet() const
const Aws::String & GetCustomDomainName() const
const Aws::String & GetLakehouseRegistrationStatus() const
Cluster & AddTags(TagsT &&value)
bool DeferredMaintenanceWindowsHasBeenSet() const
bool SnapshotScheduleStateHasBeenSet() const
Cluster & WithRestoreStatus(RestoreStatusT &&value)
void SetCustomDomainCertificateExpiryDate(CustomDomainCertificateExpiryDateT &&value)
bool PendingModifiedValuesHasBeenSet() const
void SetElasticIpStatus(ElasticIpStatusT &&value)
bool MaintenanceTrackNameHasBeenSet() const
bool ClusterRevisionNumberHasBeenSet() const
bool TotalStorageCapacityInMegaBytesHasBeenSet() const
void SetPubliclyAccessible(bool value)
const Aws::String & GetExtraComputeForAutomaticOptimization() const
void SetVpcId(VpcIdT &&value)
bool AquaConfigurationHasBeenSet() const
Cluster & WithAvailabilityZone(AvailabilityZoneT &&value)
const Aws::String & GetElasticResizeNumberOfNodeOptions() const
Cluster & WithMultiAZ(MultiAZT &&value)
bool NumberOfNodesHasBeenSet() const
Cluster & WithMaintenanceTrackName(MaintenanceTrackNameT &&value)
void SetReservedNodeExchangeStatus(ReservedNodeExchangeStatusT &&value)
void SetExpectedNextSnapshotScheduleTime(ExpectedNextSnapshotScheduleTimeT &&value)
bool IamRolesHasBeenSet() const
bool DBNameHasBeenSet() const
const Aws::String & GetMultiAZ() const
bool ExpectedNextSnapshotScheduleTimeStatusHasBeenSet() const
void SetExtraComputeForAutomaticOptimization(ExtraComputeForAutomaticOptimizationT &&value)
void SetDBName(DBNameT &&value)
void SetIamRoles(IamRolesT &&value)
const Aws::String & GetDBName() const
Cluster & AddVpcSecurityGroups(VpcSecurityGroupsT &&value)
Cluster & AddClusterParameterGroups(ClusterParameterGroupsT &&value)
void SetIpAddressType(IpAddressTypeT &&value)
void SetAvailabilityZone(AvailabilityZoneT &&value)
void SetDataTransferProgress(DataTransferProgressT &&value)
const HsmStatus & GetHsmStatus() const
void SetKmsKeyId(KmsKeyIdT &&value)
void SetCatalogArn(CatalogArnT &&value)
bool ClusterSubnetGroupNameHasBeenSet() const
bool ClusterSecurityGroupsHasBeenSet() const
bool ClusterPublicKeyHasBeenSet() const
Cluster & WithMultiAZSecondary(MultiAZSecondaryT &&value)
bool ResizeInfoHasBeenSet() const
Cluster & WithEnhancedVpcRouting(bool value)
const Aws::String & GetClusterSubnetGroupName() const
Cluster & WithExpectedNextSnapshotScheduleTimeStatus(ExpectedNextSnapshotScheduleTimeStatusT &&value)
const Aws::Vector< ClusterIamRole > & GetIamRoles() const
const Aws::Vector< VpcSecurityGroupMembership > & GetVpcSecurityGroups() const
AWS_REDSHIFT_API Cluster(const Aws::Utils::Xml::XmlNode &xmlNode)
Cluster & WithClusterCreateTime(ClusterCreateTimeT &&value)
void SetDeferredMaintenanceWindows(DeferredMaintenanceWindowsT &&value)
void SetClusterSnapshotCopyStatus(ClusterSnapshotCopyStatusT &&value)
Cluster & WithMasterUsername(MasterUsernameT &&value)
void SetTags(TagsT &&value)
const Aws::String & GetAvailabilityZoneRelocationStatus() const
void SetPendingActions(PendingActionsT &&value)
bool MultiAZSecondaryHasBeenSet() const
void SetClusterCreateTime(ClusterCreateTimeT &&value)
void SetClusterNodes(ClusterNodesT &&value)
bool MultiAZHasBeenSet() const
Cluster & WithPendingModifiedValues(PendingModifiedValuesT &&value)
Cluster & WithVpcId(VpcIdT &&value)
void SetRestoreStatus(RestoreStatusT &&value)
Cluster & WithDataTransferProgress(DataTransferProgressT &&value)
Cluster & WithElasticResizeNumberOfNodeOptions(ElasticResizeNumberOfNodeOptionsT &&value)
Cluster & WithKmsKeyId(KmsKeyIdT &&value)
bool ClusterSnapshotCopyStatusHasBeenSet() const
Cluster & WithClusterSnapshotCopyStatus(ClusterSnapshotCopyStatusT &&value)
bool ClusterCreateTimeHasBeenSet() const
Cluster & WithClusterParameterGroups(ClusterParameterGroupsT &&value)
bool VpcIdHasBeenSet() const
Cluster & WithLoggingPublishStatus(LoggingPublishStatusT &&value)
const Aws::Vector< ClusterParameterGroupStatus > & GetClusterParameterGroups() const
int GetManualSnapshotRetentionPeriod() const
const Aws::String & GetAvailabilityZone() const
bool RestoreStatusHasBeenSet() const
const Endpoint & GetEndpoint() const
bool CustomDomainCertificateArnHasBeenSet() const
bool ElasticIpStatusHasBeenSet() const
void SetClusterSecurityGroups(ClusterSecurityGroupsT &&value)
void SetSnapshotScheduleIdentifier(SnapshotScheduleIdentifierT &&value)
Cluster & WithNodeType(NodeTypeT &&value)
bool ElasticResizeNumberOfNodeOptionsHasBeenSet() const
const Aws::String & GetModifyStatus() const
void SetCustomDomainName(CustomDomainNameT &&value)
bool PreferredMaintenanceWindowHasBeenSet() const
Cluster & WithTotalStorageCapacityInMegaBytes(long long value)
void SetPreferredMaintenanceWindow(PreferredMaintenanceWindowT &&value)
Cluster & WithCatalogArn(CatalogArnT &&value)
const Aws::String & GetCatalogArn() const
bool NodeTypeHasBeenSet() const
Cluster & WithPubliclyAccessible(bool value)
bool ManualSnapshotRetentionPeriodHasBeenSet() const
const Aws::Vector< ClusterNode > & GetClusterNodes() const
Cluster & WithNextMaintenanceWindowStartTime(NextMaintenanceWindowStartTimeT &&value)
void SetMaintenanceTrackName(MaintenanceTrackNameT &&value)
Cluster & AddPendingActions(PendingActionsT &&value)
const Aws::String & GetMasterPasswordSecretKmsKeyId() const
void SetClusterNamespaceArn(ClusterNamespaceArnT &&value)
bool TagsHasBeenSet() const
Cluster & WithAvailabilityZoneRelocationStatus(AvailabilityZoneRelocationStatusT &&value)
void SetExpectedNextSnapshotScheduleTimeStatus(ExpectedNextSnapshotScheduleTimeStatusT &&value)
Cluster & WithDeferredMaintenanceWindows(DeferredMaintenanceWindowsT &&value)
void SetClusterStatus(ClusterStatusT &&value)
const Aws::String & GetMasterUsername() const
bool VpcSecurityGroupsHasBeenSet() const
const Aws::Utils::DateTime & GetExpectedNextSnapshotScheduleTime() const
bool EndpointHasBeenSet() const
Cluster & WithEndpoint(EndpointT &&value)
Cluster & WithSnapshotScheduleIdentifier(SnapshotScheduleIdentifierT &&value)
Cluster & WithPreferredMaintenanceWindow(PreferredMaintenanceWindowT &&value)
bool IpAddressTypeHasBeenSet() const
const Aws::String & GetExpectedNextSnapshotScheduleTimeStatus() const
const Aws::Vector< Tag > & GetTags() const
bool DefaultIamRoleArnHasBeenSet() const
void SetClusterVersion(ClusterVersionT &&value)
const Aws::String & GetKmsKeyId() const
void SetLakehouseRegistrationStatus(LakehouseRegistrationStatusT &&value)
void SetModifyStatus(ModifyStatusT &&value)
Cluster & WithMasterPasswordSecretKmsKeyId(MasterPasswordSecretKmsKeyIdT &&value)
const RestoreStatus & GetRestoreStatus() const
bool PendingActionsHasBeenSet() const
Cluster & WithReservedNodeExchangeStatus(ReservedNodeExchangeStatusT &&value)
Cluster & WithAutomatedSnapshotRetentionPeriod(int value)
void SetPendingModifiedValues(PendingModifiedValuesT &&value)
Cluster & WithClusterRevisionNumber(ClusterRevisionNumberT &&value)
bool CustomDomainCertificateExpiryDateHasBeenSet() const
int GetNumberOfNodes() const
void SetEncrypted(bool value)
AWS_REDSHIFT_API Cluster & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
void SetAutomatedSnapshotRetentionPeriod(int value)
Cluster & WithClusterIdentifier(ClusterIdentifierT &&value)
bool HsmStatusHasBeenSet() const
Cluster & WithCustomDomainName(CustomDomainNameT &&value)
Cluster & WithLakehouseRegistrationStatus(LakehouseRegistrationStatusT &&value)
bool ClusterVersionHasBeenSet() const
bool NextMaintenanceWindowStartTimeHasBeenSet() const
Cluster & WithExpectedNextSnapshotScheduleTime(ExpectedNextSnapshotScheduleTimeT &&value)
bool DataTransferProgressHasBeenSet() const
const ResizeInfo & GetResizeInfo() const
const Aws::Vector< Aws::String > & GetPendingActions() const
bool AvailabilityZoneRelocationStatusHasBeenSet() const
void SetClusterSubnetGroupName(ClusterSubnetGroupNameT &&value)
bool PubliclyAccessibleHasBeenSet() const
Cluster & WithSnapshotScheduleState(ScheduleState value)
Cluster & WithHsmStatus(HsmStatusT &&value)
const Aws::String & GetClusterAvailabilityStatus() const
Cluster & WithDefaultIamRoleArn(DefaultIamRoleArnT &&value)
bool ClusterNodesHasBeenSet() const
Cluster & WithCustomDomainCertificateArn(CustomDomainCertificateArnT &&value)
const Aws::Utils::DateTime & GetClusterCreateTime() const
Cluster & WithIpAddressType(IpAddressTypeT &&value)
ScheduleState GetSnapshotScheduleState() const
const Aws::String & GetClusterNamespaceArn() const
const Aws::String & GetClusterStatus() const
bool ExtraComputeForAutomaticOptimizationHasBeenSet() const
void SetAvailabilityZoneRelocationStatus(AvailabilityZoneRelocationStatusT &&value)
Cluster & WithDBName(DBNameT &&value)
const Aws::String & GetPreferredMaintenanceWindow() const
Cluster & WithEncrypted(bool value)
const Aws::String & GetIpAddressType() const
const Aws::String & GetNodeType() const
void SetTotalStorageCapacityInMegaBytes(long long value)
const Aws::String & GetClusterIdentifier() const
bool ReservedNodeExchangeStatusHasBeenSet() const
void SetClusterRevisionNumber(ClusterRevisionNumberT &&value)
bool GetPubliclyAccessible() const
Cluster & WithClusterSubnetGroupName(ClusterSubnetGroupNameT &&value)
const ClusterSnapshotCopyStatus & GetClusterSnapshotCopyStatus() const
const ElasticIpStatus & GetElasticIpStatus() const
const Aws::String & GetClusterVersion() const
Cluster & WithMasterPasswordSecretArn(MasterPasswordSecretArnT &&value)
bool ClusterNamespaceArnHasBeenSet() const
const Aws::Utils::DateTime & GetCustomDomainCertificateExpiryDate() const
void SetMultiAZSecondary(MultiAZSecondaryT &&value)
Cluster & AddIamRoles(IamRolesT &&value)
Cluster & WithElasticIpStatus(ElasticIpStatusT &&value)
Cluster & WithClusterAvailabilityStatus(ClusterAvailabilityStatusT &&value)
bool GetEnhancedVpcRouting() const
void SetClusterParameterGroups(ClusterParameterGroupsT &&value)
bool ClusterStatusHasBeenSet() const
void SetResizeInfo(ResizeInfoT &&value)
const Aws::String & GetMasterPasswordSecretArn() const
const LoggingPublishStatus & GetLoggingPublishStatus() const
Cluster & WithPendingActions(PendingActionsT &&value)
void SetNodeType(NodeTypeT &&value)
bool LoggingPublishStatusHasBeenSet() const
Cluster & WithCustomDomainCertificateExpiryDate(CustomDomainCertificateExpiryDateT &&value)
bool SnapshotScheduleIdentifierHasBeenSet() const
void SetEndpoint(EndpointT &&value)
bool CustomDomainNameHasBeenSet() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
std::basic_ostream< char, std::char_traits< char > > OStream