AWS SDK for C++

AWS SDK for C++ Version 1.11.612

Loading...
Searching...
No Matches
CreateLaunchConfigurationTemplateRequest.h
1
6#pragma once
7#include <aws/drs/Drs_EXPORTS.h>
8#include <aws/drs/DrsRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/drs/model/LaunchDisposition.h>
11#include <aws/drs/model/Licensing.h>
12#include <aws/core/utils/memory/stl/AWSMap.h>
13#include <aws/drs/model/TargetInstanceTypeRightSizingMethod.h>
14#include <utility>
15
16namespace Aws
17{
18namespace drs
19{
20namespace Model
21{
22
26 {
27 public:
29
30 // Service request name is the Operation name which will send this request out,
31 // each operation should has unique request name, so that we can get operation's name from this request.
32 // Note: this is not true for response, multiple operations may have the same response name,
33 // so we can not get operation's name from response.
34 inline virtual const char* GetServiceRequestName() const override { return "CreateLaunchConfigurationTemplate"; }
35
36 AWS_DRS_API Aws::String SerializePayload() const override;
37
38
40
43 inline bool GetCopyPrivateIp() const { return m_copyPrivateIp; }
44 inline bool CopyPrivateIpHasBeenSet() const { return m_copyPrivateIpHasBeenSet; }
45 inline void SetCopyPrivateIp(bool value) { m_copyPrivateIpHasBeenSet = true; m_copyPrivateIp = value; }
48
50
53 inline bool GetCopyTags() const { return m_copyTags; }
54 inline bool CopyTagsHasBeenSet() const { return m_copyTagsHasBeenSet; }
55 inline void SetCopyTags(bool value) { m_copyTagsHasBeenSet = true; m_copyTags = value; }
56 inline CreateLaunchConfigurationTemplateRequest& WithCopyTags(bool value) { SetCopyTags(value); return *this;}
58
60
63 inline const Aws::String& GetExportBucketArn() const { return m_exportBucketArn; }
64 inline bool ExportBucketArnHasBeenSet() const { return m_exportBucketArnHasBeenSet; }
65 template<typename ExportBucketArnT = Aws::String>
66 void SetExportBucketArn(ExportBucketArnT&& value) { m_exportBucketArnHasBeenSet = true; m_exportBucketArn = std::forward<ExportBucketArnT>(value); }
67 template<typename ExportBucketArnT = Aws::String>
68 CreateLaunchConfigurationTemplateRequest& WithExportBucketArn(ExportBucketArnT&& value) { SetExportBucketArn(std::forward<ExportBucketArnT>(value)); return *this;}
70
72
75 inline LaunchDisposition GetLaunchDisposition() const { return m_launchDisposition; }
76 inline bool LaunchDispositionHasBeenSet() const { return m_launchDispositionHasBeenSet; }
77 inline void SetLaunchDisposition(LaunchDisposition value) { m_launchDispositionHasBeenSet = true; m_launchDisposition = value; }
80
82
87 inline bool GetLaunchIntoSourceInstance() const { return m_launchIntoSourceInstance; }
88 inline bool LaunchIntoSourceInstanceHasBeenSet() const { return m_launchIntoSourceInstanceHasBeenSet; }
89 inline void SetLaunchIntoSourceInstance(bool value) { m_launchIntoSourceInstanceHasBeenSet = true; m_launchIntoSourceInstance = value; }
92
94
97 inline const Licensing& GetLicensing() const { return m_licensing; }
98 inline bool LicensingHasBeenSet() const { return m_licensingHasBeenSet; }
99 template<typename LicensingT = Licensing>
100 void SetLicensing(LicensingT&& value) { m_licensingHasBeenSet = true; m_licensing = std::forward<LicensingT>(value); }
101 template<typename LicensingT = Licensing>
102 CreateLaunchConfigurationTemplateRequest& WithLicensing(LicensingT&& value) { SetLicensing(std::forward<LicensingT>(value)); return *this;}
104
106
109 inline bool GetPostLaunchEnabled() const { return m_postLaunchEnabled; }
110 inline bool PostLaunchEnabledHasBeenSet() const { return m_postLaunchEnabledHasBeenSet; }
111 inline void SetPostLaunchEnabled(bool value) { m_postLaunchEnabledHasBeenSet = true; m_postLaunchEnabled = value; }
114
116
120 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
121 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
122 template<typename TagsT = Aws::Map<Aws::String, Aws::String>>
123 void SetTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags = std::forward<TagsT>(value); }
124 template<typename TagsT = Aws::Map<Aws::String, Aws::String>>
125 CreateLaunchConfigurationTemplateRequest& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
126 template<typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
127 CreateLaunchConfigurationTemplateRequest& AddTags(TagsKeyT&& key, TagsValueT&& value) {
128 m_tagsHasBeenSet = true; m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value)); return *this;
129 }
131
133
136 inline TargetInstanceTypeRightSizingMethod GetTargetInstanceTypeRightSizingMethod() const { return m_targetInstanceTypeRightSizingMethod; }
137 inline bool TargetInstanceTypeRightSizingMethodHasBeenSet() const { return m_targetInstanceTypeRightSizingMethodHasBeenSet; }
138 inline void SetTargetInstanceTypeRightSizingMethod(TargetInstanceTypeRightSizingMethod value) { m_targetInstanceTypeRightSizingMethodHasBeenSet = true; m_targetInstanceTypeRightSizingMethod = value; }
141 private:
142
143 bool m_copyPrivateIp{false};
144 bool m_copyPrivateIpHasBeenSet = false;
145
146 bool m_copyTags{false};
147 bool m_copyTagsHasBeenSet = false;
148
149 Aws::String m_exportBucketArn;
150 bool m_exportBucketArnHasBeenSet = false;
151
153 bool m_launchDispositionHasBeenSet = false;
154
155 bool m_launchIntoSourceInstance{false};
156 bool m_launchIntoSourceInstanceHasBeenSet = false;
157
158 Licensing m_licensing;
159 bool m_licensingHasBeenSet = false;
160
161 bool m_postLaunchEnabled{false};
162 bool m_postLaunchEnabledHasBeenSet = false;
163
165 bool m_tagsHasBeenSet = false;
166
168 bool m_targetInstanceTypeRightSizingMethodHasBeenSet = false;
169 };
170
171} // namespace Model
172} // namespace drs
173} // 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