AWS SDK for C++

AWS SDK for C++ Version 1.11.926

Loading...
Searching...
No Matches
StartMigrationRequest.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/elasticache/ElastiCacheRequest.h>
10#include <aws/elasticache/ElastiCache_EXPORTS.h>
11#include <aws/elasticache/model/CustomerNodeEndpoint.h>
12
13#include <utility>
14
15namespace Aws {
16namespace ElastiCache {
17namespace Model {
18
22 public:
23 AWS_ELASTICACHE_API StartMigrationRequest() = default;
24
25 // Service request name is the Operation name which will send this request out,
26 // each operation should has unique request name, so that we can get operation's name from this request.
27 // Note: this is not true for response, multiple operations may have the same response name,
28 // so we can not get operation's name from response.
29 inline virtual const char* GetServiceRequestName() const override { return "StartMigration"; }
30
31 AWS_ELASTICACHE_API Aws::String SerializePayload() const override;
32
33 protected:
34 AWS_ELASTICACHE_API void DumpBodyToUrl(Aws::Http::URI& uri) const override;
35
36 public:
38
41 inline const Aws::String& GetServerlessCacheName() const { return m_serverlessCacheName; }
42 inline bool ServerlessCacheNameHasBeenSet() const { return m_serverlessCacheNameHasBeenSet; }
43 template <typename ServerlessCacheNameT = Aws::String>
44 void SetServerlessCacheName(ServerlessCacheNameT&& value) {
45 m_serverlessCacheNameHasBeenSet = true;
46 m_serverlessCacheName = std::forward<ServerlessCacheNameT>(value);
47 }
48 template <typename ServerlessCacheNameT = Aws::String>
49 StartMigrationRequest& WithServerlessCacheName(ServerlessCacheNameT&& value) {
50 SetServerlessCacheName(std::forward<ServerlessCacheNameT>(value));
51 return *this;
52 }
54
56
59 inline const Aws::String& GetReplicationGroupId() const { return m_replicationGroupId; }
60 inline bool ReplicationGroupIdHasBeenSet() const { return m_replicationGroupIdHasBeenSet; }
61 template <typename ReplicationGroupIdT = Aws::String>
62 void SetReplicationGroupId(ReplicationGroupIdT&& value) {
63 m_replicationGroupIdHasBeenSet = true;
64 m_replicationGroupId = std::forward<ReplicationGroupIdT>(value);
65 }
66 template <typename ReplicationGroupIdT = Aws::String>
67 StartMigrationRequest& WithReplicationGroupId(ReplicationGroupIdT&& value) {
68 SetReplicationGroupId(std::forward<ReplicationGroupIdT>(value));
69 return *this;
70 }
72
74
80 inline const Aws::Vector<CustomerNodeEndpoint>& GetCustomerNodeEndpointList() const { return m_customerNodeEndpointList; }
81 inline bool CustomerNodeEndpointListHasBeenSet() const { return m_customerNodeEndpointListHasBeenSet; }
82 template <typename CustomerNodeEndpointListT = Aws::Vector<CustomerNodeEndpoint>>
83 void SetCustomerNodeEndpointList(CustomerNodeEndpointListT&& value) {
84 m_customerNodeEndpointListHasBeenSet = true;
85 m_customerNodeEndpointList = std::forward<CustomerNodeEndpointListT>(value);
86 }
87 template <typename CustomerNodeEndpointListT = Aws::Vector<CustomerNodeEndpoint>>
88 StartMigrationRequest& WithCustomerNodeEndpointList(CustomerNodeEndpointListT&& value) {
89 SetCustomerNodeEndpointList(std::forward<CustomerNodeEndpointListT>(value));
90 return *this;
91 }
92 template <typename CustomerNodeEndpointListT = CustomerNodeEndpoint>
93 StartMigrationRequest& AddCustomerNodeEndpointList(CustomerNodeEndpointListT&& value) {
94 m_customerNodeEndpointListHasBeenSet = true;
95 m_customerNodeEndpointList.emplace_back(std::forward<CustomerNodeEndpointListT>(value));
96 return *this;
97 }
99
101
105 inline bool GetAutoCutover() const { return m_autoCutover; }
106 inline bool AutoCutoverHasBeenSet() const { return m_autoCutoverHasBeenSet; }
107 inline void SetAutoCutover(bool value) {
108 m_autoCutoverHasBeenSet = true;
109 m_autoCutover = value;
110 }
112 SetAutoCutover(value);
113 return *this;
114 }
116
118
123 inline bool GetClearTargetCacheData() const { return m_clearTargetCacheData; }
124 inline bool ClearTargetCacheDataHasBeenSet() const { return m_clearTargetCacheDataHasBeenSet; }
125 inline void SetClearTargetCacheData(bool value) {
126 m_clearTargetCacheDataHasBeenSet = true;
127 m_clearTargetCacheData = value;
128 }
131 return *this;
132 }
134 private:
135 Aws::String m_serverlessCacheName;
136
137 Aws::String m_replicationGroupId;
138
139 Aws::Vector<CustomerNodeEndpoint> m_customerNodeEndpointList;
140
141 bool m_autoCutover{false};
142
143 bool m_clearTargetCacheData{false};
144 bool m_serverlessCacheNameHasBeenSet = false;
145 bool m_replicationGroupIdHasBeenSet = false;
146 bool m_customerNodeEndpointListHasBeenSet = false;
147 bool m_autoCutoverHasBeenSet = false;
148 bool m_clearTargetCacheDataHasBeenSet = false;
149};
150
151} // namespace Model
152} // namespace ElastiCache
153} // namespace Aws
const Aws::Vector< CustomerNodeEndpoint > & GetCustomerNodeEndpointList() const
StartMigrationRequest & WithAutoCutover(bool value)
StartMigrationRequest & WithServerlessCacheName(ServerlessCacheNameT &&value)
StartMigrationRequest & WithClearTargetCacheData(bool value)
AWS_ELASTICACHE_API Aws::String SerializePayload() const override
void SetServerlessCacheName(ServerlessCacheNameT &&value)
StartMigrationRequest & WithCustomerNodeEndpointList(CustomerNodeEndpointListT &&value)
AWS_ELASTICACHE_API StartMigrationRequest()=default
void SetCustomerNodeEndpointList(CustomerNodeEndpointListT &&value)
void SetReplicationGroupId(ReplicationGroupIdT &&value)
StartMigrationRequest & WithReplicationGroupId(ReplicationGroupIdT &&value)
AWS_ELASTICACHE_API void DumpBodyToUrl(Aws::Http::URI &uri) const override
StartMigrationRequest & AddCustomerNodeEndpointList(CustomerNodeEndpointListT &&value)
virtual const char * GetServiceRequestName() const override
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector