AWS SDK for C++

AWS SDK for C++ Version 1.11.787

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
40 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
41 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
42 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
43 void SetTags(TagsT&& value) {
44 m_tagsHasBeenSet = true;
45 m_tags = std::forward<TagsT>(value);
46 }
47 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
49 SetTags(std::forward<TagsT>(value));
50 return *this;
51 }
52 template <typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
53 CreateLaunchConfigurationTemplateRequest& AddTags(TagsKeyT&& key, TagsValueT&& value) {
54 m_tagsHasBeenSet = true;
55 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
56 return *this;
57 }
59
61
64 inline LaunchDisposition GetLaunchDisposition() const { return m_launchDisposition; }
65 inline bool LaunchDispositionHasBeenSet() const { return m_launchDispositionHasBeenSet; }
67 m_launchDispositionHasBeenSet = true;
68 m_launchDisposition = value;
69 }
72 return *this;
73 }
75
77
81 return m_targetInstanceTypeRightSizingMethod;
82 }
83 inline bool TargetInstanceTypeRightSizingMethodHasBeenSet() const { return m_targetInstanceTypeRightSizingMethodHasBeenSet; }
85 m_targetInstanceTypeRightSizingMethodHasBeenSet = true;
86 m_targetInstanceTypeRightSizingMethod = value;
87 }
90 return *this;
91 }
93
95
98 inline bool GetCopyPrivateIp() const { return m_copyPrivateIp; }
99 inline bool CopyPrivateIpHasBeenSet() const { return m_copyPrivateIpHasBeenSet; }
100 inline void SetCopyPrivateIp(bool value) {
101 m_copyPrivateIpHasBeenSet = true;
102 m_copyPrivateIp = value;
103 }
105 SetCopyPrivateIp(value);
106 return *this;
107 }
109
111
114 inline bool GetCopyTags() const { return m_copyTags; }
115 inline bool CopyTagsHasBeenSet() const { return m_copyTagsHasBeenSet; }
116 inline void SetCopyTags(bool value) {
117 m_copyTagsHasBeenSet = true;
118 m_copyTags = value;
119 }
121 SetCopyTags(value);
122 return *this;
123 }
125
127
130 inline const Licensing& GetLicensing() const { return m_licensing; }
131 inline bool LicensingHasBeenSet() const { return m_licensingHasBeenSet; }
132 template <typename LicensingT = Licensing>
133 void SetLicensing(LicensingT&& value) {
134 m_licensingHasBeenSet = true;
135 m_licensing = std::forward<LicensingT>(value);
136 }
137 template <typename LicensingT = Licensing>
139 SetLicensing(std::forward<LicensingT>(value));
140 return *this;
141 }
143
145
148 inline const Aws::String& GetExportBucketArn() const { return m_exportBucketArn; }
149 inline bool ExportBucketArnHasBeenSet() const { return m_exportBucketArnHasBeenSet; }
150 template <typename ExportBucketArnT = Aws::String>
151 void SetExportBucketArn(ExportBucketArnT&& value) {
152 m_exportBucketArnHasBeenSet = true;
153 m_exportBucketArn = std::forward<ExportBucketArnT>(value);
154 }
155 template <typename ExportBucketArnT = Aws::String>
157 SetExportBucketArn(std::forward<ExportBucketArnT>(value));
158 return *this;
159 }
161
163
166 inline bool GetPostLaunchEnabled() const { return m_postLaunchEnabled; }
167 inline bool PostLaunchEnabledHasBeenSet() const { return m_postLaunchEnabledHasBeenSet; }
168 inline void SetPostLaunchEnabled(bool value) {
169 m_postLaunchEnabledHasBeenSet = true;
170 m_postLaunchEnabled = value;
171 }
174 return *this;
175 }
177
179
184 inline bool GetLaunchIntoSourceInstance() const { return m_launchIntoSourceInstance; }
185 inline bool LaunchIntoSourceInstanceHasBeenSet() const { return m_launchIntoSourceInstanceHasBeenSet; }
186 inline void SetLaunchIntoSourceInstance(bool value) {
187 m_launchIntoSourceInstanceHasBeenSet = true;
188 m_launchIntoSourceInstance = value;
189 }
192 return *this;
193 }
195 private:
197
199
201
202 bool m_copyPrivateIp{false};
203
204 bool m_copyTags{false};
205
206 Licensing m_licensing;
207
208 Aws::String m_exportBucketArn;
209
210 bool m_postLaunchEnabled{false};
211
212 bool m_launchIntoSourceInstance{false};
213 bool m_tagsHasBeenSet = false;
214 bool m_launchDispositionHasBeenSet = false;
215 bool m_targetInstanceTypeRightSizingMethodHasBeenSet = false;
216 bool m_copyPrivateIpHasBeenSet = false;
217 bool m_copyTagsHasBeenSet = false;
218 bool m_licensingHasBeenSet = false;
219 bool m_exportBucketArnHasBeenSet = false;
220 bool m_postLaunchEnabledHasBeenSet = false;
221 bool m_launchIntoSourceInstanceHasBeenSet = 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