AWS SDK for C++

AWS SDK for C++ Version 1.11.847

Loading...
Searching...
No Matches
CreateLaunchConfigurationTemplateRequest.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSMap.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/drs/DrsRequest.h>
10#include <aws/drs/Drs_EXPORTS.h>
11#include <aws/drs/model/LaunchDisposition.h>
12#include <aws/drs/model/Licensing.h>
13#include <aws/drs/model/RecoveryMode.h>
14#include <aws/drs/model/TargetInstanceTypeRightSizingMethod.h>
15
16#include <utility>
17
18namespace Aws {
19namespace drs {
20namespace Model {
21
25 public:
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 "CreateLaunchConfigurationTemplate"; }
33
34 AWS_DRS_API Aws::String SerializePayload() const override;
35
37
41 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
42 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
43 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
44 void SetTags(TagsT&& value) {
45 m_tagsHasBeenSet = true;
46 m_tags = std::forward<TagsT>(value);
47 }
48 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
50 SetTags(std::forward<TagsT>(value));
51 return *this;
52 }
53 template <typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
54 CreateLaunchConfigurationTemplateRequest& AddTags(TagsKeyT&& key, TagsValueT&& value) {
55 m_tagsHasBeenSet = true;
56 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
57 return *this;
58 }
60
62
65 inline LaunchDisposition GetLaunchDisposition() const { return m_launchDisposition; }
66 inline bool LaunchDispositionHasBeenSet() const { return m_launchDispositionHasBeenSet; }
68 m_launchDispositionHasBeenSet = true;
69 m_launchDisposition = value;
70 }
73 return *this;
74 }
76
78
82 return m_targetInstanceTypeRightSizingMethod;
83 }
84 inline bool TargetInstanceTypeRightSizingMethodHasBeenSet() const { return m_targetInstanceTypeRightSizingMethodHasBeenSet; }
86 m_targetInstanceTypeRightSizingMethodHasBeenSet = true;
87 m_targetInstanceTypeRightSizingMethod = value;
88 }
91 return *this;
92 }
94
96
99 inline bool GetCopyPrivateIp() const { return m_copyPrivateIp; }
100 inline bool CopyPrivateIpHasBeenSet() const { return m_copyPrivateIpHasBeenSet; }
101 inline void SetCopyPrivateIp(bool value) {
102 m_copyPrivateIpHasBeenSet = true;
103 m_copyPrivateIp = value;
104 }
106 SetCopyPrivateIp(value);
107 return *this;
108 }
110
112
115 inline bool GetCopyTags() const { return m_copyTags; }
116 inline bool CopyTagsHasBeenSet() const { return m_copyTagsHasBeenSet; }
117 inline void SetCopyTags(bool value) {
118 m_copyTagsHasBeenSet = true;
119 m_copyTags = value;
120 }
122 SetCopyTags(value);
123 return *this;
124 }
126
128
131 inline const Licensing& GetLicensing() const { return m_licensing; }
132 inline bool LicensingHasBeenSet() const { return m_licensingHasBeenSet; }
133 template <typename LicensingT = Licensing>
134 void SetLicensing(LicensingT&& value) {
135 m_licensingHasBeenSet = true;
136 m_licensing = std::forward<LicensingT>(value);
137 }
138 template <typename LicensingT = Licensing>
140 SetLicensing(std::forward<LicensingT>(value));
141 return *this;
142 }
144
146
149 inline const Aws::String& GetExportBucketArn() const { return m_exportBucketArn; }
150 inline bool ExportBucketArnHasBeenSet() const { return m_exportBucketArnHasBeenSet; }
151 template <typename ExportBucketArnT = Aws::String>
152 void SetExportBucketArn(ExportBucketArnT&& value) {
153 m_exportBucketArnHasBeenSet = true;
154 m_exportBucketArn = std::forward<ExportBucketArnT>(value);
155 }
156 template <typename ExportBucketArnT = Aws::String>
158 SetExportBucketArn(std::forward<ExportBucketArnT>(value));
159 return *this;
160 }
162
164
167 inline bool GetPostLaunchEnabled() const { return m_postLaunchEnabled; }
168 inline bool PostLaunchEnabledHasBeenSet() const { return m_postLaunchEnabledHasBeenSet; }
169 inline void SetPostLaunchEnabled(bool value) {
170 m_postLaunchEnabledHasBeenSet = true;
171 m_postLaunchEnabled = value;
172 }
175 return *this;
176 }
178
180
185 inline bool GetLaunchIntoSourceInstance() const { return m_launchIntoSourceInstance; }
186 inline bool LaunchIntoSourceInstanceHasBeenSet() const { return m_launchIntoSourceInstanceHasBeenSet; }
187 inline void SetLaunchIntoSourceInstance(bool value) {
188 m_launchIntoSourceInstanceHasBeenSet = true;
189 m_launchIntoSourceInstance = value;
190 }
193 return *this;
194 }
196
198
201 inline RecoveryMode GetRecoveryMode() const { return m_recoveryMode; }
202 inline bool RecoveryModeHasBeenSet() const { return m_recoveryModeHasBeenSet; }
203 inline void SetRecoveryMode(RecoveryMode value) {
204 m_recoveryModeHasBeenSet = true;
205 m_recoveryMode = value;
206 }
208 SetRecoveryMode(value);
209 return *this;
210 }
212 private:
214
216
218
219 bool m_copyPrivateIp{false};
220
221 bool m_copyTags{false};
222
223 Licensing m_licensing;
224
225 Aws::String m_exportBucketArn;
226
227 bool m_postLaunchEnabled{false};
228
229 bool m_launchIntoSourceInstance{false};
230
231 RecoveryMode m_recoveryMode{RecoveryMode::NOT_SET};
232 bool m_tagsHasBeenSet = false;
233 bool m_launchDispositionHasBeenSet = false;
234 bool m_targetInstanceTypeRightSizingMethodHasBeenSet = false;
235 bool m_copyPrivateIpHasBeenSet = false;
236 bool m_copyTagsHasBeenSet = false;
237 bool m_licensingHasBeenSet = false;
238 bool m_exportBucketArnHasBeenSet = false;
239 bool m_postLaunchEnabledHasBeenSet = false;
240 bool m_launchIntoSourceInstanceHasBeenSet = false;
241 bool m_recoveryModeHasBeenSet = false;
242};
243
244} // namespace Model
245} // namespace drs
246} // namespace Aws
CreateLaunchConfigurationTemplateRequest & WithTags(TagsT &&value)
AWS_DRS_API Aws::String SerializePayload() const override
CreateLaunchConfigurationTemplateRequest & WithLaunchDisposition(LaunchDisposition value)
CreateLaunchConfigurationTemplateRequest & WithExportBucketArn(ExportBucketArnT &&value)
void SetTargetInstanceTypeRightSizingMethod(TargetInstanceTypeRightSizingMethod value)
CreateLaunchConfigurationTemplateRequest & WithCopyTags(bool value)
CreateLaunchConfigurationTemplateRequest & WithLaunchIntoSourceInstance(bool value)
CreateLaunchConfigurationTemplateRequest & WithCopyPrivateIp(bool value)
CreateLaunchConfigurationTemplateRequest & WithRecoveryMode(RecoveryMode value)
CreateLaunchConfigurationTemplateRequest & WithLicensing(LicensingT &&value)
CreateLaunchConfigurationTemplateRequest & WithPostLaunchEnabled(bool value)
CreateLaunchConfigurationTemplateRequest & WithTargetInstanceTypeRightSizingMethod(TargetInstanceTypeRightSizingMethod value)
CreateLaunchConfigurationTemplateRequest & AddTags(TagsKeyT &&key, TagsValueT &&value)
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String