AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
DecreaseReplicationFactorRequest.h
1
6#pragma once
7#include <aws/dax/DAX_EXPORTS.h>
8#include <aws/dax/DAXRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <utility>
12
13namespace Aws
14{
15namespace DAX
16{
17namespace Model
18{
19
23 {
24 public:
25 AWS_DAX_API DecreaseReplicationFactorRequest() = default;
26
27 // Service request name is the Operation name which will send this request out,
28 // each operation should has unique request name, so that we can get operation's name from this request.
29 // Note: this is not true for response, multiple operations may have the same response name,
30 // so we can not get operation's name from response.
31 inline virtual const char* GetServiceRequestName() const override { return "DecreaseReplicationFactor"; }
32
33 AWS_DAX_API Aws::String SerializePayload() const override;
34
36
37
39
42 inline const Aws::String& GetClusterName() const { return m_clusterName; }
43 inline bool ClusterNameHasBeenSet() const { return m_clusterNameHasBeenSet; }
44 template<typename ClusterNameT = Aws::String>
45 void SetClusterName(ClusterNameT&& value) { m_clusterNameHasBeenSet = true; m_clusterName = std::forward<ClusterNameT>(value); }
46 template<typename ClusterNameT = Aws::String>
47 DecreaseReplicationFactorRequest& WithClusterName(ClusterNameT&& value) { SetClusterName(std::forward<ClusterNameT>(value)); return *this;}
49
51
54 inline int GetNewReplicationFactor() const { return m_newReplicationFactor; }
55 inline bool NewReplicationFactorHasBeenSet() const { return m_newReplicationFactorHasBeenSet; }
56 inline void SetNewReplicationFactor(int value) { m_newReplicationFactorHasBeenSet = true; m_newReplicationFactor = value; }
59
61
64 inline const Aws::Vector<Aws::String>& GetAvailabilityZones() const { return m_availabilityZones; }
65 inline bool AvailabilityZonesHasBeenSet() const { return m_availabilityZonesHasBeenSet; }
66 template<typename AvailabilityZonesT = Aws::Vector<Aws::String>>
67 void SetAvailabilityZones(AvailabilityZonesT&& value) { m_availabilityZonesHasBeenSet = true; m_availabilityZones = std::forward<AvailabilityZonesT>(value); }
68 template<typename AvailabilityZonesT = Aws::Vector<Aws::String>>
69 DecreaseReplicationFactorRequest& WithAvailabilityZones(AvailabilityZonesT&& value) { SetAvailabilityZones(std::forward<AvailabilityZonesT>(value)); return *this;}
70 template<typename AvailabilityZonesT = Aws::String>
71 DecreaseReplicationFactorRequest& AddAvailabilityZones(AvailabilityZonesT&& value) { m_availabilityZonesHasBeenSet = true; m_availabilityZones.emplace_back(std::forward<AvailabilityZonesT>(value)); return *this; }
73
75
78 inline const Aws::Vector<Aws::String>& GetNodeIdsToRemove() const { return m_nodeIdsToRemove; }
79 inline bool NodeIdsToRemoveHasBeenSet() const { return m_nodeIdsToRemoveHasBeenSet; }
80 template<typename NodeIdsToRemoveT = Aws::Vector<Aws::String>>
81 void SetNodeIdsToRemove(NodeIdsToRemoveT&& value) { m_nodeIdsToRemoveHasBeenSet = true; m_nodeIdsToRemove = std::forward<NodeIdsToRemoveT>(value); }
82 template<typename NodeIdsToRemoveT = Aws::Vector<Aws::String>>
83 DecreaseReplicationFactorRequest& WithNodeIdsToRemove(NodeIdsToRemoveT&& value) { SetNodeIdsToRemove(std::forward<NodeIdsToRemoveT>(value)); return *this;}
84 template<typename NodeIdsToRemoveT = Aws::String>
85 DecreaseReplicationFactorRequest& AddNodeIdsToRemove(NodeIdsToRemoveT&& value) { m_nodeIdsToRemoveHasBeenSet = true; m_nodeIdsToRemove.emplace_back(std::forward<NodeIdsToRemoveT>(value)); return *this; }
87 private:
88
89 Aws::String m_clusterName;
90 bool m_clusterNameHasBeenSet = false;
91
92 int m_newReplicationFactor{0};
93 bool m_newReplicationFactorHasBeenSet = false;
94
95 Aws::Vector<Aws::String> m_availabilityZones;
96 bool m_availabilityZonesHasBeenSet = false;
97
98 Aws::Vector<Aws::String> m_nodeIdsToRemove;
99 bool m_nodeIdsToRemoveHasBeenSet = false;
100 };
101
102} // namespace Model
103} // namespace DAX
104} // namespace Aws
AWS_DAX_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
AWS_DAX_API Aws::String SerializePayload() const override
DecreaseReplicationFactorRequest & WithNewReplicationFactor(int value)
const Aws::Vector< Aws::String > & GetNodeIdsToRemove() const
DecreaseReplicationFactorRequest & AddNodeIdsToRemove(NodeIdsToRemoveT &&value)
DecreaseReplicationFactorRequest & AddAvailabilityZones(AvailabilityZonesT &&value)
const Aws::Vector< Aws::String > & GetAvailabilityZones() const
DecreaseReplicationFactorRequest & WithAvailabilityZones(AvailabilityZonesT &&value)
DecreaseReplicationFactorRequest & WithClusterName(ClusterNameT &&value)
DecreaseReplicationFactorRequest & WithNodeIdsToRemove(NodeIdsToRemoveT &&value)
Aws::Map< Aws::String, Aws::String > HeaderValueCollection
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector