AWS SDK for C++

AWS SDK for C++ Version 1.11.612

Loading...
Searching...
No Matches
DecreaseReplicaCountRequest.h
1
6#pragma once
7#include <aws/elasticache/ElastiCache_EXPORTS.h>
8#include <aws/elasticache/ElastiCacheRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/elasticache/model/ConfigureShard.h>
12#include <utility>
13
14namespace Aws
15{
16namespace ElastiCache
17{
18namespace Model
19{
20
24 {
25 public:
26 AWS_ELASTICACHE_API DecreaseReplicaCountRequest() = default;
27
28 // Service request name is the Operation name which will send this request out,
29 // each operation should has unique request name, so that we can get operation's name from this request.
30 // Note: this is not true for response, multiple operations may have the same response name,
31 // so we can not get operation's name from response.
32 inline virtual const char* GetServiceRequestName() const override { return "DecreaseReplicaCount"; }
33
34 AWS_ELASTICACHE_API Aws::String SerializePayload() const override;
35
36 protected:
37 AWS_ELASTICACHE_API void DumpBodyToUrl(Aws::Http::URI& uri ) const override;
38
39 public:
40
42
46 inline const Aws::String& GetReplicationGroupId() const { return m_replicationGroupId; }
47 inline bool ReplicationGroupIdHasBeenSet() const { return m_replicationGroupIdHasBeenSet; }
48 template<typename ReplicationGroupIdT = Aws::String>
49 void SetReplicationGroupId(ReplicationGroupIdT&& value) { m_replicationGroupIdHasBeenSet = true; m_replicationGroupId = std::forward<ReplicationGroupIdT>(value); }
50 template<typename ReplicationGroupIdT = Aws::String>
51 DecreaseReplicaCountRequest& WithReplicationGroupId(ReplicationGroupIdT&& value) { SetReplicationGroupId(std::forward<ReplicationGroupIdT>(value)); return *this;}
53
55
67 inline int GetNewReplicaCount() const { return m_newReplicaCount; }
68 inline bool NewReplicaCountHasBeenSet() const { return m_newReplicaCountHasBeenSet; }
69 inline void SetNewReplicaCount(int value) { m_newReplicaCountHasBeenSet = true; m_newReplicaCount = value; }
70 inline DecreaseReplicaCountRequest& WithNewReplicaCount(int value) { SetNewReplicaCount(value); return *this;}
72
74
80 inline const Aws::Vector<ConfigureShard>& GetReplicaConfiguration() const { return m_replicaConfiguration; }
81 inline bool ReplicaConfigurationHasBeenSet() const { return m_replicaConfigurationHasBeenSet; }
82 template<typename ReplicaConfigurationT = Aws::Vector<ConfigureShard>>
83 void SetReplicaConfiguration(ReplicaConfigurationT&& value) { m_replicaConfigurationHasBeenSet = true; m_replicaConfiguration = std::forward<ReplicaConfigurationT>(value); }
84 template<typename ReplicaConfigurationT = Aws::Vector<ConfigureShard>>
85 DecreaseReplicaCountRequest& WithReplicaConfiguration(ReplicaConfigurationT&& value) { SetReplicaConfiguration(std::forward<ReplicaConfigurationT>(value)); return *this;}
86 template<typename ReplicaConfigurationT = ConfigureShard>
87 DecreaseReplicaCountRequest& AddReplicaConfiguration(ReplicaConfigurationT&& value) { m_replicaConfigurationHasBeenSet = true; m_replicaConfiguration.emplace_back(std::forward<ReplicaConfigurationT>(value)); return *this; }
89
91
95 inline const Aws::Vector<Aws::String>& GetReplicasToRemove() const { return m_replicasToRemove; }
96 inline bool ReplicasToRemoveHasBeenSet() const { return m_replicasToRemoveHasBeenSet; }
97 template<typename ReplicasToRemoveT = Aws::Vector<Aws::String>>
98 void SetReplicasToRemove(ReplicasToRemoveT&& value) { m_replicasToRemoveHasBeenSet = true; m_replicasToRemove = std::forward<ReplicasToRemoveT>(value); }
99 template<typename ReplicasToRemoveT = Aws::Vector<Aws::String>>
100 DecreaseReplicaCountRequest& WithReplicasToRemove(ReplicasToRemoveT&& value) { SetReplicasToRemove(std::forward<ReplicasToRemoveT>(value)); return *this;}
101 template<typename ReplicasToRemoveT = Aws::String>
102 DecreaseReplicaCountRequest& AddReplicasToRemove(ReplicasToRemoveT&& value) { m_replicasToRemoveHasBeenSet = true; m_replicasToRemove.emplace_back(std::forward<ReplicasToRemoveT>(value)); return *this; }
104
106
110 inline bool GetApplyImmediately() const { return m_applyImmediately; }
111 inline bool ApplyImmediatelyHasBeenSet() const { return m_applyImmediatelyHasBeenSet; }
112 inline void SetApplyImmediately(bool value) { m_applyImmediatelyHasBeenSet = true; m_applyImmediately = value; }
113 inline DecreaseReplicaCountRequest& WithApplyImmediately(bool value) { SetApplyImmediately(value); return *this;}
115 private:
116
117 Aws::String m_replicationGroupId;
118 bool m_replicationGroupIdHasBeenSet = false;
119
120 int m_newReplicaCount{0};
121 bool m_newReplicaCountHasBeenSet = false;
122
123 Aws::Vector<ConfigureShard> m_replicaConfiguration;
124 bool m_replicaConfigurationHasBeenSet = false;
125
126 Aws::Vector<Aws::String> m_replicasToRemove;
127 bool m_replicasToRemoveHasBeenSet = false;
128
129 bool m_applyImmediately{false};
130 bool m_applyImmediatelyHasBeenSet = false;
131 };
132
133} // namespace Model
134} // namespace ElastiCache
135} // namespace Aws
DecreaseReplicaCountRequest & WithReplicasToRemove(ReplicasToRemoveT &&value)
AWS_ELASTICACHE_API void DumpBodyToUrl(Aws::Http::URI &uri) const override
DecreaseReplicaCountRequest & WithReplicaConfiguration(ReplicaConfigurationT &&value)
AWS_ELASTICACHE_API Aws::String SerializePayload() const override
DecreaseReplicaCountRequest & WithApplyImmediately(bool value)
const Aws::Vector< Aws::String > & GetReplicasToRemove() const
DecreaseReplicaCountRequest & AddReplicasToRemove(ReplicasToRemoveT &&value)
const Aws::Vector< ConfigureShard > & GetReplicaConfiguration() const
DecreaseReplicaCountRequest & AddReplicaConfiguration(ReplicaConfigurationT &&value)
DecreaseReplicaCountRequest & WithNewReplicaCount(int value)
AWS_ELASTICACHE_API DecreaseReplicaCountRequest()=default
DecreaseReplicaCountRequest & WithReplicationGroupId(ReplicationGroupIdT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector