AWS SDK for C++

AWS SDK for C++ Version 1.11.740

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/TargetInstanceTypeRightSizingMethod.h>
14
15#include <utility>
16
17namespace Aws {
18namespace drs {
19namespace Model {
20
24 public:
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 "CreateLaunchConfigurationTemplate"; }
32
33 AWS_DRS_API Aws::String SerializePayload() const override;
34
36
39 inline bool GetCopyPrivateIp() const { return m_copyPrivateIp; }
40 inline bool CopyPrivateIpHasBeenSet() const { return m_copyPrivateIpHasBeenSet; }
41 inline void SetCopyPrivateIp(bool value) {
42 m_copyPrivateIpHasBeenSet = true;
43 m_copyPrivateIp = value;
44 }
46 SetCopyPrivateIp(value);
47 return *this;
48 }
50
52
55 inline bool GetCopyTags() const { return m_copyTags; }
56 inline bool CopyTagsHasBeenSet() const { return m_copyTagsHasBeenSet; }
57 inline void SetCopyTags(bool value) {
58 m_copyTagsHasBeenSet = true;
59 m_copyTags = value;
60 }
62 SetCopyTags(value);
63 return *this;
64 }
66
68
71 inline const Aws::String& GetExportBucketArn() const { return m_exportBucketArn; }
72 inline bool ExportBucketArnHasBeenSet() const { return m_exportBucketArnHasBeenSet; }
73 template <typename ExportBucketArnT = Aws::String>
74 void SetExportBucketArn(ExportBucketArnT&& value) {
75 m_exportBucketArnHasBeenSet = true;
76 m_exportBucketArn = std::forward<ExportBucketArnT>(value);
77 }
78 template <typename ExportBucketArnT = Aws::String>
80 SetExportBucketArn(std::forward<ExportBucketArnT>(value));
81 return *this;
82 }
84
86
89 inline LaunchDisposition GetLaunchDisposition() const { return m_launchDisposition; }
90 inline bool LaunchDispositionHasBeenSet() const { return m_launchDispositionHasBeenSet; }
92 m_launchDispositionHasBeenSet = true;
93 m_launchDisposition = value;
94 }
97 return *this;
98 }
100
102
107 inline bool GetLaunchIntoSourceInstance() const { return m_launchIntoSourceInstance; }
108 inline bool LaunchIntoSourceInstanceHasBeenSet() const { return m_launchIntoSourceInstanceHasBeenSet; }
109 inline void SetLaunchIntoSourceInstance(bool value) {
110 m_launchIntoSourceInstanceHasBeenSet = true;
111 m_launchIntoSourceInstance = value;
112 }
115 return *this;
116 }
118
120
123 inline const Licensing& GetLicensing() const { return m_licensing; }
124 inline bool LicensingHasBeenSet() const { return m_licensingHasBeenSet; }
125 template <typename LicensingT = Licensing>
126 void SetLicensing(LicensingT&& value) {
127 m_licensingHasBeenSet = true;
128 m_licensing = std::forward<LicensingT>(value);
129 }
130 template <typename LicensingT = Licensing>
132 SetLicensing(std::forward<LicensingT>(value));
133 return *this;
134 }
136
138
141 inline bool GetPostLaunchEnabled() const { return m_postLaunchEnabled; }
142 inline bool PostLaunchEnabledHasBeenSet() const { return m_postLaunchEnabledHasBeenSet; }
143 inline void SetPostLaunchEnabled(bool value) {
144 m_postLaunchEnabledHasBeenSet = true;
145 m_postLaunchEnabled = value;
146 }
149 return *this;
150 }
152
154
158 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
159 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
160 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
161 void SetTags(TagsT&& value) {
162 m_tagsHasBeenSet = true;
163 m_tags = std::forward<TagsT>(value);
164 }
165 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
167 SetTags(std::forward<TagsT>(value));
168 return *this;
169 }
170 template <typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
171 CreateLaunchConfigurationTemplateRequest& AddTags(TagsKeyT&& key, TagsValueT&& value) {
172 m_tagsHasBeenSet = true;
173 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
174 return *this;
175 }
177
179
183 return m_targetInstanceTypeRightSizingMethod;
184 }
185 inline bool TargetInstanceTypeRightSizingMethodHasBeenSet() const { return m_targetInstanceTypeRightSizingMethodHasBeenSet; }
187 m_targetInstanceTypeRightSizingMethodHasBeenSet = true;
188 m_targetInstanceTypeRightSizingMethod = value;
189 }
192 return *this;
193 }
195 private:
196 bool m_copyPrivateIp{false};
197
198 bool m_copyTags{false};
199
200 Aws::String m_exportBucketArn;
201
203
204 bool m_launchIntoSourceInstance{false};
205
206 Licensing m_licensing;
207
208 bool m_postLaunchEnabled{false};
209
211
213 bool m_copyPrivateIpHasBeenSet = false;
214 bool m_copyTagsHasBeenSet = false;
215 bool m_exportBucketArnHasBeenSet = false;
216 bool m_launchDispositionHasBeenSet = false;
217 bool m_launchIntoSourceInstanceHasBeenSet = false;
218 bool m_licensingHasBeenSet = false;
219 bool m_postLaunchEnabledHasBeenSet = false;
220 bool m_tagsHasBeenSet = false;
221 bool m_targetInstanceTypeRightSizingMethodHasBeenSet = false;
222};
223
224} // namespace Model
225} // namespace drs
226} // 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 & 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