7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/dax/DAX_EXPORTS.h>
10#include <aws/dax/model/ClusterEndpointEncryptionType.h>
11#include <aws/dax/model/Endpoint.h>
12#include <aws/dax/model/NetworkType.h>
13#include <aws/dax/model/Node.h>
14#include <aws/dax/model/NotificationConfiguration.h>
15#include <aws/dax/model/ParameterGroupStatus.h>
16#include <aws/dax/model/SSEDescription.h>
17#include <aws/dax/model/SecurityGroupMembership.h>
50 template <
typename ClusterNameT = Aws::String>
52 m_clusterNameHasBeenSet =
true;
53 m_clusterName = std::forward<ClusterNameT>(value);
55 template <
typename ClusterNameT = Aws::String>
68 template <
typename DescriptionT = Aws::String>
70 m_descriptionHasBeenSet =
true;
71 m_description = std::forward<DescriptionT>(value);
73 template <
typename DescriptionT = Aws::String>
86 template <
typename ClusterArnT = Aws::String>
88 m_clusterArnHasBeenSet =
true;
89 m_clusterArn = std::forward<ClusterArnT>(value);
91 template <
typename ClusterArnT = Aws::String>
105 m_totalNodesHasBeenSet =
true;
106 m_totalNodes = value;
122 m_activeNodesHasBeenSet =
true;
123 m_activeNodes = value;
138 template <
typename NodeTypeT = Aws::String>
140 m_nodeTypeHasBeenSet =
true;
141 m_nodeType = std::forward<NodeTypeT>(value);
143 template <
typename NodeTypeT = Aws::String>
156 template <
typename StatusT = Aws::String>
158 m_statusHasBeenSet =
true;
159 m_status = std::forward<StatusT>(value);
161 template <
typename StatusT = Aws::String>
176 template <
typename ClusterDiscoveryEndpo
intT = Endpo
int>
178 m_clusterDiscoveryEndpointHasBeenSet =
true;
179 m_clusterDiscoveryEndpoint = std::forward<ClusterDiscoveryEndpointT>(value);
181 template <
typename ClusterDiscoveryEndpo
intT = Endpo
int>
194 template <
typename NodeIdsToRemoveT = Aws::Vector<Aws::String>>
196 m_nodeIdsToRemoveHasBeenSet =
true;
197 m_nodeIdsToRemove = std::forward<NodeIdsToRemoveT>(value);
199 template <
typename NodeIdsToRemoveT = Aws::Vector<Aws::String>>
204 template <
typename NodeIdsToRemoveT = Aws::String>
206 m_nodeIdsToRemoveHasBeenSet =
true;
207 m_nodeIdsToRemove.emplace_back(std::forward<NodeIdsToRemoveT>(value));
218 template <
typename NodesT = Aws::Vector<Node>>
220 m_nodesHasBeenSet =
true;
221 m_nodes = std::forward<NodesT>(value);
223 template <
typename NodesT = Aws::Vector<Node>>
225 SetNodes(std::forward<NodesT>(value));
228 template <
typename NodesT = Node>
230 m_nodesHasBeenSet =
true;
231 m_nodes.emplace_back(std::forward<NodesT>(value));
245 template <
typename PreferredMa
intenanceWindowT = Aws::String>
247 m_preferredMaintenanceWindowHasBeenSet =
true;
248 m_preferredMaintenanceWindow = std::forward<PreferredMaintenanceWindowT>(value);
250 template <
typename PreferredMa
intenanceWindowT = Aws::String>
265 template <
typename NotificationConfigurationT = NotificationConfiguration>
267 m_notificationConfigurationHasBeenSet =
true;
268 m_notificationConfiguration = std::forward<NotificationConfigurationT>(value);
270 template <
typename NotificationConfigurationT = NotificationConfiguration>
283 template <
typename SubnetGroupT = Aws::String>
285 m_subnetGroupHasBeenSet =
true;
286 m_subnetGroup = std::forward<SubnetGroupT>(value);
288 template <
typename SubnetGroupT = Aws::String>
302 template <
typename SecurityGroupsT = Aws::Vector<SecurityGroupMembership>>
304 m_securityGroupsHasBeenSet =
true;
305 m_securityGroups = std::forward<SecurityGroupsT>(value);
307 template <
typename SecurityGroupsT = Aws::Vector<SecurityGroupMembership>>
312 template <
typename SecurityGroupsT = SecurityGroupMembership>
314 m_securityGroupsHasBeenSet =
true;
315 m_securityGroups.emplace_back(std::forward<SecurityGroupsT>(value));
328 template <
typename IamRoleArnT = Aws::String>
330 m_iamRoleArnHasBeenSet =
true;
331 m_iamRoleArn = std::forward<IamRoleArnT>(value);
333 template <
typename IamRoleArnT = Aws::String>
346 template <
typename ParameterGroupT = ParameterGroupStatus>
348 m_parameterGroupHasBeenSet =
true;
349 m_parameterGroup = std::forward<ParameterGroupT>(value);
351 template <
typename ParameterGroupT = ParameterGroupStatus>
365 template <
typename SSEDescriptionT = SSEDescription>
367 m_sSEDescriptionHasBeenSet =
true;
368 m_sSEDescription = std::forward<SSEDescriptionT>(value);
370 template <
typename SSEDescriptionT = SSEDescription>
386 m_clusterEndpointEncryptionTypeHasBeenSet =
true;
387 m_clusterEndpointEncryptionType = value;
405 m_networkTypeHasBeenSet =
true;
406 m_networkType = value;
422 int m_activeNodes{0};
428 Endpoint m_clusterDiscoveryEndpoint;
436 NotificationConfiguration m_notificationConfiguration;
444 ParameterGroupStatus m_parameterGroup;
446 SSEDescription m_sSEDescription;
451 bool m_clusterNameHasBeenSet =
false;
452 bool m_descriptionHasBeenSet =
false;
453 bool m_clusterArnHasBeenSet =
false;
454 bool m_totalNodesHasBeenSet =
false;
455 bool m_activeNodesHasBeenSet =
false;
456 bool m_nodeTypeHasBeenSet =
false;
457 bool m_statusHasBeenSet =
false;
458 bool m_clusterDiscoveryEndpointHasBeenSet =
false;
459 bool m_nodeIdsToRemoveHasBeenSet =
false;
460 bool m_nodesHasBeenSet =
false;
461 bool m_preferredMaintenanceWindowHasBeenSet =
false;
462 bool m_notificationConfigurationHasBeenSet =
false;
463 bool m_subnetGroupHasBeenSet =
false;
464 bool m_securityGroupsHasBeenSet =
false;
465 bool m_iamRoleArnHasBeenSet =
false;
466 bool m_parameterGroupHasBeenSet =
false;
467 bool m_sSEDescriptionHasBeenSet =
false;
468 bool m_clusterEndpointEncryptionTypeHasBeenSet =
false;
469 bool m_networkTypeHasBeenSet =
false;
bool PreferredMaintenanceWindowHasBeenSet() const
void SetDescription(DescriptionT &&value)
bool TotalNodesHasBeenSet() const
const Aws::String & GetPreferredMaintenanceWindow() const
void SetNotificationConfiguration(NotificationConfigurationT &&value)
const SSEDescription & GetSSEDescription() const
Cluster & WithClusterName(ClusterNameT &&value)
const NotificationConfiguration & GetNotificationConfiguration() const
Cluster & WithSecurityGroups(SecurityGroupsT &&value)
void SetSubnetGroup(SubnetGroupT &&value)
Cluster & AddNodeIdsToRemove(NodeIdsToRemoveT &&value)
const Aws::String & GetStatus() const
Cluster & WithNodes(NodesT &&value)
AWS_DAX_API Aws::Utils::Json::JsonValue Jsonize() const
Cluster & AddSecurityGroups(SecurityGroupsT &&value)
const Aws::String & GetClusterArn() const
void SetSSEDescription(SSEDescriptionT &&value)
const Aws::String & GetDescription() const
void SetClusterName(ClusterNameT &&value)
bool NetworkTypeHasBeenSet() const
int GetTotalNodes() const
bool DescriptionHasBeenSet() const
AWS_DAX_API Cluster(Aws::Utils::Json::JsonView jsonValue)
Cluster & WithNetworkType(NetworkType value)
void SetActiveNodes(int value)
bool NodeTypeHasBeenSet() const
AWS_DAX_API Cluster()=default
Cluster & WithParameterGroup(ParameterGroupT &&value)
Cluster & WithPreferredMaintenanceWindow(PreferredMaintenanceWindowT &&value)
bool SecurityGroupsHasBeenSet() const
void SetClusterEndpointEncryptionType(ClusterEndpointEncryptionType value)
bool SubnetGroupHasBeenSet() const
NetworkType GetNetworkType() const
Cluster & AddNodes(NodesT &&value)
ClusterEndpointEncryptionType GetClusterEndpointEncryptionType() const
Cluster & WithSSEDescription(SSEDescriptionT &&value)
const Aws::String & GetClusterName() const
bool NotificationConfigurationHasBeenSet() const
AWS_DAX_API Cluster & operator=(Aws::Utils::Json::JsonView jsonValue)
bool ClusterDiscoveryEndpointHasBeenSet() const
const Aws::Vector< Node > & GetNodes() const
Cluster & WithActiveNodes(int value)
void SetClusterArn(ClusterArnT &&value)
int GetActiveNodes() const
Cluster & WithDescription(DescriptionT &&value)
void SetIamRoleArn(IamRoleArnT &&value)
const ParameterGroupStatus & GetParameterGroup() const
void SetClusterDiscoveryEndpoint(ClusterDiscoveryEndpointT &&value)
void SetSecurityGroups(SecurityGroupsT &&value)
bool ParameterGroupHasBeenSet() const
void SetNodeIdsToRemove(NodeIdsToRemoveT &&value)
void SetParameterGroup(ParameterGroupT &&value)
Cluster & WithIamRoleArn(IamRoleArnT &&value)
void SetNodes(NodesT &&value)
bool ClusterEndpointEncryptionTypeHasBeenSet() const
const Aws::String & GetIamRoleArn() const
bool SSEDescriptionHasBeenSet() const
const Aws::String & GetSubnetGroup() const
bool StatusHasBeenSet() const
Cluster & WithNodeIdsToRemove(NodeIdsToRemoveT &&value)
Cluster & WithClusterEndpointEncryptionType(ClusterEndpointEncryptionType value)
const Endpoint & GetClusterDiscoveryEndpoint() const
void SetStatus(StatusT &&value)
void SetTotalNodes(int value)
Cluster & WithSubnetGroup(SubnetGroupT &&value)
bool ActiveNodesHasBeenSet() const
bool NodeIdsToRemoveHasBeenSet() const
bool NodesHasBeenSet() const
void SetNodeType(NodeTypeT &&value)
Cluster & WithClusterArn(ClusterArnT &&value)
void SetNetworkType(NetworkType value)
Cluster & WithClusterDiscoveryEndpoint(ClusterDiscoveryEndpointT &&value)
bool IamRoleArnHasBeenSet() const
const Aws::String & GetNodeType() const
Cluster & WithNotificationConfiguration(NotificationConfigurationT &&value)
bool ClusterArnHasBeenSet() const
bool ClusterNameHasBeenSet() const
Cluster & WithStatus(StatusT &&value)
Cluster & WithNodeType(NodeTypeT &&value)
void SetPreferredMaintenanceWindow(PreferredMaintenanceWindowT &&value)
Cluster & WithTotalNodes(int value)
const Aws::Vector< SecurityGroupMembership > & GetSecurityGroups() const
const Aws::Vector< Aws::String > & GetNodeIdsToRemove() const
ClusterEndpointEncryptionType
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue