AWS SDK for C++

AWS SDK for C++ Version 1.11.719

Loading...
Searching...
No Matches
FastLaunchConfiguration.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/imagebuilder/Imagebuilder_EXPORTS.h>
9#include <aws/imagebuilder/model/FastLaunchLaunchTemplateSpecification.h>
10#include <aws/imagebuilder/model/FastLaunchSnapshotConfiguration.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace imagebuilder {
22namespace Model {
23
31 public:
32 AWS_IMAGEBUILDER_API FastLaunchConfiguration() = default;
33 AWS_IMAGEBUILDER_API FastLaunchConfiguration(Aws::Utils::Json::JsonView jsonValue);
35 AWS_IMAGEBUILDER_API Aws::Utils::Json::JsonValue Jsonize() const;
36
38
43 inline bool GetEnabled() const { return m_enabled; }
44 inline bool EnabledHasBeenSet() const { return m_enabledHasBeenSet; }
45 inline void SetEnabled(bool value) {
46 m_enabledHasBeenSet = true;
47 m_enabled = value;
48 }
50 SetEnabled(value);
51 return *this;
52 }
54
56
61 inline const FastLaunchSnapshotConfiguration& GetSnapshotConfiguration() const { return m_snapshotConfiguration; }
62 inline bool SnapshotConfigurationHasBeenSet() const { return m_snapshotConfigurationHasBeenSet; }
63 template <typename SnapshotConfigurationT = FastLaunchSnapshotConfiguration>
64 void SetSnapshotConfiguration(SnapshotConfigurationT&& value) {
65 m_snapshotConfigurationHasBeenSet = true;
66 m_snapshotConfiguration = std::forward<SnapshotConfigurationT>(value);
67 }
68 template <typename SnapshotConfigurationT = FastLaunchSnapshotConfiguration>
69 FastLaunchConfiguration& WithSnapshotConfiguration(SnapshotConfigurationT&& value) {
70 SetSnapshotConfiguration(std::forward<SnapshotConfigurationT>(value));
71 return *this;
72 }
74
76
80 inline int GetMaxParallelLaunches() const { return m_maxParallelLaunches; }
81 inline bool MaxParallelLaunchesHasBeenSet() const { return m_maxParallelLaunchesHasBeenSet; }
82 inline void SetMaxParallelLaunches(int value) {
83 m_maxParallelLaunchesHasBeenSet = true;
84 m_maxParallelLaunches = value;
85 }
88 return *this;
89 }
91
93
97 inline const FastLaunchLaunchTemplateSpecification& GetLaunchTemplate() const { return m_launchTemplate; }
98 inline bool LaunchTemplateHasBeenSet() const { return m_launchTemplateHasBeenSet; }
99 template <typename LaunchTemplateT = FastLaunchLaunchTemplateSpecification>
100 void SetLaunchTemplate(LaunchTemplateT&& value) {
101 m_launchTemplateHasBeenSet = true;
102 m_launchTemplate = std::forward<LaunchTemplateT>(value);
103 }
104 template <typename LaunchTemplateT = FastLaunchLaunchTemplateSpecification>
105 FastLaunchConfiguration& WithLaunchTemplate(LaunchTemplateT&& value) {
106 SetLaunchTemplate(std::forward<LaunchTemplateT>(value));
107 return *this;
108 }
110
112
115 inline const Aws::String& GetAccountId() const { return m_accountId; }
116 inline bool AccountIdHasBeenSet() const { return m_accountIdHasBeenSet; }
117 template <typename AccountIdT = Aws::String>
118 void SetAccountId(AccountIdT&& value) {
119 m_accountIdHasBeenSet = true;
120 m_accountId = std::forward<AccountIdT>(value);
121 }
122 template <typename AccountIdT = Aws::String>
124 SetAccountId(std::forward<AccountIdT>(value));
125 return *this;
126 }
128 private:
129 bool m_enabled{false};
130
131 FastLaunchSnapshotConfiguration m_snapshotConfiguration;
132
133 int m_maxParallelLaunches{0};
134
135 FastLaunchLaunchTemplateSpecification m_launchTemplate;
136
137 Aws::String m_accountId;
138 bool m_enabledHasBeenSet = false;
139 bool m_snapshotConfigurationHasBeenSet = false;
140 bool m_maxParallelLaunchesHasBeenSet = false;
141 bool m_launchTemplateHasBeenSet = false;
142 bool m_accountIdHasBeenSet = false;
143};
144
145} // namespace Model
146} // namespace imagebuilder
147} // namespace Aws
FastLaunchConfiguration & WithSnapshotConfiguration(SnapshotConfigurationT &&value)
AWS_IMAGEBUILDER_API FastLaunchConfiguration(Aws::Utils::Json::JsonView jsonValue)
FastLaunchConfiguration & WithEnabled(bool value)
const FastLaunchSnapshotConfiguration & GetSnapshotConfiguration() const
AWS_IMAGEBUILDER_API FastLaunchConfiguration()=default
void SetSnapshotConfiguration(SnapshotConfigurationT &&value)
const FastLaunchLaunchTemplateSpecification & GetLaunchTemplate() const
FastLaunchConfiguration & WithMaxParallelLaunches(int value)
AWS_IMAGEBUILDER_API FastLaunchConfiguration & operator=(Aws::Utils::Json::JsonView jsonValue)
FastLaunchConfiguration & WithLaunchTemplate(LaunchTemplateT &&value)
FastLaunchConfiguration & WithAccountId(AccountIdT &&value)
AWS_IMAGEBUILDER_API Aws::Utils::Json::JsonValue Jsonize() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue