AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
ExperimentTemplate.h
1
6#pragma once
7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSMap.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/fis/FIS_EXPORTS.h>
12#include <aws/fis/model/ExperimentTemplateAction.h>
13#include <aws/fis/model/ExperimentTemplateExperimentOptions.h>
14#include <aws/fis/model/ExperimentTemplateLogConfiguration.h>
15#include <aws/fis/model/ExperimentTemplateReportConfiguration.h>
16#include <aws/fis/model/ExperimentTemplateStopCondition.h>
17#include <aws/fis/model/ExperimentTemplateTarget.h>
18
19#include <utility>
20
21namespace Aws {
22namespace Utils {
23namespace Json {
24class JsonValue;
25class JsonView;
26} // namespace Json
27} // namespace Utils
28namespace FIS {
29namespace Model {
30
37 public:
38 AWS_FIS_API ExperimentTemplate() = default;
42
44
47 inline const Aws::String& GetId() const { return m_id; }
48 inline bool IdHasBeenSet() const { return m_idHasBeenSet; }
49 template <typename IdT = Aws::String>
50 void SetId(IdT&& value) {
51 m_idHasBeenSet = true;
52 m_id = std::forward<IdT>(value);
53 }
54 template <typename IdT = Aws::String>
55 ExperimentTemplate& WithId(IdT&& value) {
56 SetId(std::forward<IdT>(value));
57 return *this;
58 }
60
62
65 inline const Aws::String& GetArn() const { return m_arn; }
66 inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; }
67 template <typename ArnT = Aws::String>
68 void SetArn(ArnT&& value) {
69 m_arnHasBeenSet = true;
70 m_arn = std::forward<ArnT>(value);
71 }
72 template <typename ArnT = Aws::String>
73 ExperimentTemplate& WithArn(ArnT&& value) {
74 SetArn(std::forward<ArnT>(value));
75 return *this;
76 }
78
80
83 inline const Aws::String& GetDescription() const { return m_description; }
84 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
85 template <typename DescriptionT = Aws::String>
86 void SetDescription(DescriptionT&& value) {
87 m_descriptionHasBeenSet = true;
88 m_description = std::forward<DescriptionT>(value);
89 }
90 template <typename DescriptionT = Aws::String>
91 ExperimentTemplate& WithDescription(DescriptionT&& value) {
92 SetDescription(std::forward<DescriptionT>(value));
93 return *this;
94 }
96
98
101 inline const Aws::Map<Aws::String, ExperimentTemplateTarget>& GetTargets() const { return m_targets; }
102 inline bool TargetsHasBeenSet() const { return m_targetsHasBeenSet; }
103 template <typename TargetsT = Aws::Map<Aws::String, ExperimentTemplateTarget>>
104 void SetTargets(TargetsT&& value) {
105 m_targetsHasBeenSet = true;
106 m_targets = std::forward<TargetsT>(value);
107 }
108 template <typename TargetsT = Aws::Map<Aws::String, ExperimentTemplateTarget>>
109 ExperimentTemplate& WithTargets(TargetsT&& value) {
110 SetTargets(std::forward<TargetsT>(value));
111 return *this;
112 }
113 template <typename TargetsKeyT = Aws::String, typename TargetsValueT = ExperimentTemplateTarget>
114 ExperimentTemplate& AddTargets(TargetsKeyT&& key, TargetsValueT&& value) {
115 m_targetsHasBeenSet = true;
116 m_targets.emplace(std::forward<TargetsKeyT>(key), std::forward<TargetsValueT>(value));
117 return *this;
118 }
120
122
125 inline const Aws::Map<Aws::String, ExperimentTemplateAction>& GetActions() const { return m_actions; }
126 inline bool ActionsHasBeenSet() const { return m_actionsHasBeenSet; }
127 template <typename ActionsT = Aws::Map<Aws::String, ExperimentTemplateAction>>
128 void SetActions(ActionsT&& value) {
129 m_actionsHasBeenSet = true;
130 m_actions = std::forward<ActionsT>(value);
131 }
132 template <typename ActionsT = Aws::Map<Aws::String, ExperimentTemplateAction>>
133 ExperimentTemplate& WithActions(ActionsT&& value) {
134 SetActions(std::forward<ActionsT>(value));
135 return *this;
136 }
137 template <typename ActionsKeyT = Aws::String, typename ActionsValueT = ExperimentTemplateAction>
138 ExperimentTemplate& AddActions(ActionsKeyT&& key, ActionsValueT&& value) {
139 m_actionsHasBeenSet = true;
140 m_actions.emplace(std::forward<ActionsKeyT>(key), std::forward<ActionsValueT>(value));
141 return *this;
142 }
144
146
149 inline const Aws::Vector<ExperimentTemplateStopCondition>& GetStopConditions() const { return m_stopConditions; }
150 inline bool StopConditionsHasBeenSet() const { return m_stopConditionsHasBeenSet; }
151 template <typename StopConditionsT = Aws::Vector<ExperimentTemplateStopCondition>>
152 void SetStopConditions(StopConditionsT&& value) {
153 m_stopConditionsHasBeenSet = true;
154 m_stopConditions = std::forward<StopConditionsT>(value);
155 }
156 template <typename StopConditionsT = Aws::Vector<ExperimentTemplateStopCondition>>
157 ExperimentTemplate& WithStopConditions(StopConditionsT&& value) {
158 SetStopConditions(std::forward<StopConditionsT>(value));
159 return *this;
160 }
161 template <typename StopConditionsT = ExperimentTemplateStopCondition>
162 ExperimentTemplate& AddStopConditions(StopConditionsT&& value) {
163 m_stopConditionsHasBeenSet = true;
164 m_stopConditions.emplace_back(std::forward<StopConditionsT>(value));
165 return *this;
166 }
168
170
173 inline const Aws::Utils::DateTime& GetCreationTime() const { return m_creationTime; }
174 inline bool CreationTimeHasBeenSet() const { return m_creationTimeHasBeenSet; }
175 template <typename CreationTimeT = Aws::Utils::DateTime>
176 void SetCreationTime(CreationTimeT&& value) {
177 m_creationTimeHasBeenSet = true;
178 m_creationTime = std::forward<CreationTimeT>(value);
179 }
180 template <typename CreationTimeT = Aws::Utils::DateTime>
181 ExperimentTemplate& WithCreationTime(CreationTimeT&& value) {
182 SetCreationTime(std::forward<CreationTimeT>(value));
183 return *this;
184 }
186
188
191 inline const Aws::Utils::DateTime& GetLastUpdateTime() const { return m_lastUpdateTime; }
192 inline bool LastUpdateTimeHasBeenSet() const { return m_lastUpdateTimeHasBeenSet; }
193 template <typename LastUpdateTimeT = Aws::Utils::DateTime>
194 void SetLastUpdateTime(LastUpdateTimeT&& value) {
195 m_lastUpdateTimeHasBeenSet = true;
196 m_lastUpdateTime = std::forward<LastUpdateTimeT>(value);
197 }
198 template <typename LastUpdateTimeT = Aws::Utils::DateTime>
199 ExperimentTemplate& WithLastUpdateTime(LastUpdateTimeT&& value) {
200 SetLastUpdateTime(std::forward<LastUpdateTimeT>(value));
201 return *this;
202 }
204
206
209 inline const Aws::String& GetRoleArn() const { return m_roleArn; }
210 inline bool RoleArnHasBeenSet() const { return m_roleArnHasBeenSet; }
211 template <typename RoleArnT = Aws::String>
212 void SetRoleArn(RoleArnT&& value) {
213 m_roleArnHasBeenSet = true;
214 m_roleArn = std::forward<RoleArnT>(value);
215 }
216 template <typename RoleArnT = Aws::String>
217 ExperimentTemplate& WithRoleArn(RoleArnT&& value) {
218 SetRoleArn(std::forward<RoleArnT>(value));
219 return *this;
220 }
222
224
227 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
228 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
229 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
230 void SetTags(TagsT&& value) {
231 m_tagsHasBeenSet = true;
232 m_tags = std::forward<TagsT>(value);
233 }
234 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
235 ExperimentTemplate& WithTags(TagsT&& value) {
236 SetTags(std::forward<TagsT>(value));
237 return *this;
238 }
239 template <typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
240 ExperimentTemplate& AddTags(TagsKeyT&& key, TagsValueT&& value) {
241 m_tagsHasBeenSet = true;
242 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
243 return *this;
244 }
246
248
251 inline const ExperimentTemplateLogConfiguration& GetLogConfiguration() const { return m_logConfiguration; }
252 inline bool LogConfigurationHasBeenSet() const { return m_logConfigurationHasBeenSet; }
253 template <typename LogConfigurationT = ExperimentTemplateLogConfiguration>
254 void SetLogConfiguration(LogConfigurationT&& value) {
255 m_logConfigurationHasBeenSet = true;
256 m_logConfiguration = std::forward<LogConfigurationT>(value);
257 }
258 template <typename LogConfigurationT = ExperimentTemplateLogConfiguration>
259 ExperimentTemplate& WithLogConfiguration(LogConfigurationT&& value) {
260 SetLogConfiguration(std::forward<LogConfigurationT>(value));
261 return *this;
262 }
264
266
269 inline const ExperimentTemplateExperimentOptions& GetExperimentOptions() const { return m_experimentOptions; }
270 inline bool ExperimentOptionsHasBeenSet() const { return m_experimentOptionsHasBeenSet; }
271 template <typename ExperimentOptionsT = ExperimentTemplateExperimentOptions>
272 void SetExperimentOptions(ExperimentOptionsT&& value) {
273 m_experimentOptionsHasBeenSet = true;
274 m_experimentOptions = std::forward<ExperimentOptionsT>(value);
275 }
276 template <typename ExperimentOptionsT = ExperimentTemplateExperimentOptions>
277 ExperimentTemplate& WithExperimentOptions(ExperimentOptionsT&& value) {
278 SetExperimentOptions(std::forward<ExperimentOptionsT>(value));
279 return *this;
280 }
282
284
287 inline long long GetTargetAccountConfigurationsCount() const { return m_targetAccountConfigurationsCount; }
288 inline bool TargetAccountConfigurationsCountHasBeenSet() const { return m_targetAccountConfigurationsCountHasBeenSet; }
289 inline void SetTargetAccountConfigurationsCount(long long value) {
290 m_targetAccountConfigurationsCountHasBeenSet = true;
291 m_targetAccountConfigurationsCount = value;
292 }
295 return *this;
296 }
298
300
303 inline const ExperimentTemplateReportConfiguration& GetExperimentReportConfiguration() const { return m_experimentReportConfiguration; }
304 inline bool ExperimentReportConfigurationHasBeenSet() const { return m_experimentReportConfigurationHasBeenSet; }
305 template <typename ExperimentReportConfigurationT = ExperimentTemplateReportConfiguration>
306 void SetExperimentReportConfiguration(ExperimentReportConfigurationT&& value) {
307 m_experimentReportConfigurationHasBeenSet = true;
308 m_experimentReportConfiguration = std::forward<ExperimentReportConfigurationT>(value);
309 }
310 template <typename ExperimentReportConfigurationT = ExperimentTemplateReportConfiguration>
311 ExperimentTemplate& WithExperimentReportConfiguration(ExperimentReportConfigurationT&& value) {
312 SetExperimentReportConfiguration(std::forward<ExperimentReportConfigurationT>(value));
313 return *this;
314 }
316 private:
317 Aws::String m_id;
318
319 Aws::String m_arn;
320
321 Aws::String m_description;
322
324
326
328
329 Aws::Utils::DateTime m_creationTime{};
330
331 Aws::Utils::DateTime m_lastUpdateTime{};
332
333 Aws::String m_roleArn;
334
336
337 ExperimentTemplateLogConfiguration m_logConfiguration;
338
339 ExperimentTemplateExperimentOptions m_experimentOptions;
340
341 long long m_targetAccountConfigurationsCount{0};
342
343 ExperimentTemplateReportConfiguration m_experimentReportConfiguration;
344 bool m_idHasBeenSet = false;
345 bool m_arnHasBeenSet = false;
346 bool m_descriptionHasBeenSet = false;
347 bool m_targetsHasBeenSet = false;
348 bool m_actionsHasBeenSet = false;
349 bool m_stopConditionsHasBeenSet = false;
350 bool m_creationTimeHasBeenSet = false;
351 bool m_lastUpdateTimeHasBeenSet = false;
352 bool m_roleArnHasBeenSet = false;
353 bool m_tagsHasBeenSet = false;
354 bool m_logConfigurationHasBeenSet = false;
355 bool m_experimentOptionsHasBeenSet = false;
356 bool m_targetAccountConfigurationsCountHasBeenSet = false;
357 bool m_experimentReportConfigurationHasBeenSet = false;
358};
359
360} // namespace Model
361} // namespace FIS
362} // namespace Aws
void SetLastUpdateTime(LastUpdateTimeT &&value)
ExperimentTemplate & WithId(IdT &&value)
AWS_FIS_API ExperimentTemplate & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetExperimentOptions(ExperimentOptionsT &&value)
ExperimentTemplate & WithActions(ActionsT &&value)
const Aws::Map< Aws::String, ExperimentTemplateTarget > & GetTargets() const
ExperimentTemplate & AddTargets(TargetsKeyT &&key, TargetsValueT &&value)
const Aws::String & GetId() const
ExperimentTemplate & AddStopConditions(StopConditionsT &&value)
const Aws::String & GetRoleArn() const
void SetCreationTime(CreationTimeT &&value)
ExperimentTemplate & WithTargets(TargetsT &&value)
const ExperimentTemplateExperimentOptions & GetExperimentOptions() const
const Aws::Vector< ExperimentTemplateStopCondition > & GetStopConditions() const
ExperimentTemplate & WithDescription(DescriptionT &&value)
ExperimentTemplate & WithRoleArn(RoleArnT &&value)
ExperimentTemplate & WithExperimentReportConfiguration(ExperimentReportConfigurationT &&value)
const Aws::String & GetArn() const
ExperimentTemplate & WithTargetAccountConfigurationsCount(long long value)
ExperimentTemplate & WithLogConfiguration(LogConfigurationT &&value)
const Aws::String & GetDescription() const
ExperimentTemplate & AddActions(ActionsKeyT &&key, ActionsValueT &&value)
ExperimentTemplate & WithStopConditions(StopConditionsT &&value)
void SetStopConditions(StopConditionsT &&value)
const Aws::Utils::DateTime & GetLastUpdateTime() const
const Aws::Map< Aws::String, ExperimentTemplateAction > & GetActions() const
AWS_FIS_API Aws::Utils::Json::JsonValue Jsonize() const
long long GetTargetAccountConfigurationsCount() const
ExperimentTemplate & WithArn(ArnT &&value)
ExperimentTemplate & WithExperimentOptions(ExperimentOptionsT &&value)
void SetDescription(DescriptionT &&value)
const Aws::Map< Aws::String, Aws::String > & GetTags() const
ExperimentTemplate & WithLastUpdateTime(LastUpdateTimeT &&value)
const ExperimentTemplateReportConfiguration & GetExperimentReportConfiguration() const
ExperimentTemplate & WithTags(TagsT &&value)
AWS_FIS_API ExperimentTemplate()=default
void SetTargetAccountConfigurationsCount(long long value)
void SetLogConfiguration(LogConfigurationT &&value)
ExperimentTemplate & WithCreationTime(CreationTimeT &&value)
const ExperimentTemplateLogConfiguration & GetLogConfiguration() const
const Aws::Utils::DateTime & GetCreationTime() const
AWS_FIS_API ExperimentTemplate(Aws::Utils::Json::JsonView jsonValue)
void SetExperimentReportConfiguration(ExperimentReportConfigurationT &&value)
ExperimentTemplate & 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
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue