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/ExperimentAction.h>
13#include <aws/fis/model/ExperimentLogConfiguration.h>
14#include <aws/fis/model/ExperimentOptions.h>
15#include <aws/fis/model/ExperimentReport.h>
16#include <aws/fis/model/ExperimentReportConfiguration.h>
17#include <aws/fis/model/ExperimentState.h>
18#include <aws/fis/model/ExperimentStopCondition.h>
19#include <aws/fis/model/ExperimentTarget.h>
51 template <
typename IdT = Aws::String>
53 m_idHasBeenSet =
true;
54 m_id = std::forward<IdT>(value);
56 template <
typename IdT = Aws::String>
58 SetId(std::forward<IdT>(value));
69 template <
typename ArnT = Aws::String>
71 m_arnHasBeenSet =
true;
72 m_arn = std::forward<ArnT>(value);
74 template <
typename ArnT = Aws::String>
76 SetArn(std::forward<ArnT>(value));
87 template <
typename ExperimentTemplateIdT = Aws::String>
89 m_experimentTemplateIdHasBeenSet =
true;
90 m_experimentTemplateId = std::forward<ExperimentTemplateIdT>(value);
92 template <
typename ExperimentTemplateIdT = Aws::String>
106 template <
typename RoleArnT = Aws::String>
108 m_roleArnHasBeenSet =
true;
109 m_roleArn = std::forward<RoleArnT>(value);
111 template <
typename RoleArnT = Aws::String>
124 template <
typename StateT = ExperimentState>
126 m_stateHasBeenSet =
true;
127 m_state = std::forward<StateT>(value);
129 template <
typename StateT = ExperimentState>
131 SetState(std::forward<StateT>(value));
142 template <
typename TargetsT = Aws::Map<Aws::String, ExperimentTarget>>
144 m_targetsHasBeenSet =
true;
145 m_targets = std::forward<TargetsT>(value);
147 template <
typename TargetsT = Aws::Map<Aws::String, ExperimentTarget>>
152 template <
typename TargetsKeyT = Aws::String,
typename TargetsValueT = ExperimentTarget>
154 m_targetsHasBeenSet =
true;
155 m_targets.emplace(std::forward<TargetsKeyT>(key), std::forward<TargetsValueT>(value));
166 template <
typename ActionsT = Aws::Map<Aws::String, ExperimentAction>>
168 m_actionsHasBeenSet =
true;
169 m_actions = std::forward<ActionsT>(value);
171 template <
typename ActionsT = Aws::Map<Aws::String, ExperimentAction>>
176 template <
typename ActionsKeyT = Aws::String,
typename ActionsValueT = ExperimentAction>
178 m_actionsHasBeenSet =
true;
179 m_actions.emplace(std::forward<ActionsKeyT>(key), std::forward<ActionsValueT>(value));
190 template <
typename StopConditionsT = Aws::Vector<ExperimentStopCondition>>
192 m_stopConditionsHasBeenSet =
true;
193 m_stopConditions = std::forward<StopConditionsT>(value);
195 template <
typename StopConditionsT = Aws::Vector<ExperimentStopCondition>>
200 template <
typename StopConditionsT = ExperimentStopCondition>
202 m_stopConditionsHasBeenSet =
true;
203 m_stopConditions.emplace_back(std::forward<StopConditionsT>(value));
214 template <
typename CreationTimeT = Aws::Utils::DateTime>
216 m_creationTimeHasBeenSet =
true;
217 m_creationTime = std::forward<CreationTimeT>(value);
219 template <
typename CreationTimeT = Aws::Utils::DateTime>
232 template <
typename StartTimeT = Aws::Utils::DateTime>
234 m_startTimeHasBeenSet =
true;
235 m_startTime = std::forward<StartTimeT>(value);
237 template <
typename StartTimeT = Aws::Utils::DateTime>
250 template <
typename EndTimeT = Aws::Utils::DateTime>
252 m_endTimeHasBeenSet =
true;
253 m_endTime = std::forward<EndTimeT>(value);
255 template <
typename EndTimeT = Aws::Utils::DateTime>
268 template <
typename TagsT = Aws::Map<Aws::String, Aws::String>>
270 m_tagsHasBeenSet =
true;
271 m_tags = std::forward<TagsT>(value);
273 template <
typename TagsT = Aws::Map<Aws::String, Aws::String>>
275 SetTags(std::forward<TagsT>(value));
278 template <
typename TagsKeyT = Aws::String,
typename TagsValueT = Aws::String>
280 m_tagsHasBeenSet =
true;
281 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
292 template <
typename LogConfigurationT = ExperimentLogConfiguration>
294 m_logConfigurationHasBeenSet =
true;
295 m_logConfiguration = std::forward<LogConfigurationT>(value);
297 template <
typename LogConfigurationT = ExperimentLogConfiguration>
310 template <
typename ExperimentOptionsT = ExperimentOptions>
312 m_experimentOptionsHasBeenSet =
true;
313 m_experimentOptions = std::forward<ExperimentOptionsT>(value);
315 template <
typename ExperimentOptionsT = ExperimentOptions>
329 m_targetAccountConfigurationsCountHasBeenSet =
true;
330 m_targetAccountConfigurationsCount = value;
344 template <
typename ExperimentReportConfigurationT = ExperimentReportConfiguration>
346 m_experimentReportConfigurationHasBeenSet =
true;
347 m_experimentReportConfiguration = std::forward<ExperimentReportConfigurationT>(value);
349 template <
typename ExperimentReportConfigurationT = ExperimentReportConfiguration>
362 template <
typename ExperimentReportT = ExperimentReport>
364 m_experimentReportHasBeenSet =
true;
365 m_experimentReport = std::forward<ExperimentReportT>(value);
367 template <
typename ExperimentReportT = ExperimentReport>
398 ExperimentLogConfiguration m_logConfiguration;
400 ExperimentOptions m_experimentOptions;
402 long long m_targetAccountConfigurationsCount{0};
404 ExperimentReportConfiguration m_experimentReportConfiguration;
406 ExperimentReport m_experimentReport;
407 bool m_idHasBeenSet =
false;
408 bool m_arnHasBeenSet =
false;
409 bool m_experimentTemplateIdHasBeenSet =
false;
410 bool m_roleArnHasBeenSet =
false;
411 bool m_stateHasBeenSet =
false;
412 bool m_targetsHasBeenSet =
false;
413 bool m_actionsHasBeenSet =
false;
414 bool m_stopConditionsHasBeenSet =
false;
415 bool m_creationTimeHasBeenSet =
false;
416 bool m_startTimeHasBeenSet =
false;
417 bool m_endTimeHasBeenSet =
false;
418 bool m_tagsHasBeenSet =
false;
419 bool m_logConfigurationHasBeenSet =
false;
420 bool m_experimentOptionsHasBeenSet =
false;
421 bool m_targetAccountConfigurationsCountHasBeenSet =
false;
422 bool m_experimentReportConfigurationHasBeenSet =
false;
423 bool m_experimentReportHasBeenSet =
false;
Experiment & WithTargetAccountConfigurationsCount(long long value)
void SetEndTime(EndTimeT &&value)
Experiment & WithTags(TagsT &&value)
const Aws::Map< Aws::String, Aws::String > & GetTags() const
const Aws::Map< Aws::String, ExperimentTarget > & GetTargets() const
void SetStopConditions(StopConditionsT &&value)
void SetExperimentReportConfiguration(ExperimentReportConfigurationT &&value)
const ExperimentReportConfiguration & GetExperimentReportConfiguration() const
void SetLogConfiguration(LogConfigurationT &&value)
void SetTargets(TargetsT &&value)
Experiment & WithStopConditions(StopConditionsT &&value)
Experiment & WithActions(ActionsT &&value)
Experiment & WithExperimentOptions(ExperimentOptionsT &&value)
void SetExperimentTemplateId(ExperimentTemplateIdT &&value)
void SetArn(ArnT &&value)
void SetStartTime(StartTimeT &&value)
bool ExperimentOptionsHasBeenSet() const
const Aws::Utils::DateTime & GetCreationTime() const
Experiment & WithExperimentReport(ExperimentReportT &&value)
bool EndTimeHasBeenSet() const
bool StateHasBeenSet() const
Experiment & WithEndTime(EndTimeT &&value)
const ExperimentLogConfiguration & GetLogConfiguration() const
bool CreationTimeHasBeenSet() const
bool TargetsHasBeenSet() const
bool StartTimeHasBeenSet() const
Experiment & WithRoleArn(RoleArnT &&value)
Experiment & AddTags(TagsKeyT &&key, TagsValueT &&value)
const Aws::String & GetRoleArn() const
bool IdHasBeenSet() const
const ExperimentOptions & GetExperimentOptions() const
void SetExperimentOptions(ExperimentOptionsT &&value)
void SetActions(ActionsT &&value)
bool TagsHasBeenSet() const
Experiment & WithTargets(TargetsT &&value)
Experiment & AddActions(ActionsKeyT &&key, ActionsValueT &&value)
const Aws::String & GetArn() const
AWS_FIS_API Aws::Utils::Json::JsonValue Jsonize() const
long long GetTargetAccountConfigurationsCount() const
Experiment & WithId(IdT &&value)
const Aws::String & GetId() const
Experiment & AddStopConditions(StopConditionsT &&value)
Experiment & AddTargets(TargetsKeyT &&key, TargetsValueT &&value)
const Aws::Utils::DateTime & GetEndTime() const
Experiment & WithExperimentReportConfiguration(ExperimentReportConfigurationT &&value)
const ExperimentState & GetState() const
const Aws::String & GetExperimentTemplateId() const
bool StopConditionsHasBeenSet() const
void SetExperimentReport(ExperimentReportT &&value)
bool LogConfigurationHasBeenSet() const
Experiment & WithState(StateT &&value)
bool TargetAccountConfigurationsCountHasBeenSet() const
bool RoleArnHasBeenSet() const
Experiment & WithStartTime(StartTimeT &&value)
bool ExperimentReportConfigurationHasBeenSet() const
Experiment & WithLogConfiguration(LogConfigurationT &&value)
const ExperimentReport & GetExperimentReport() const
void SetState(StateT &&value)
bool ExperimentReportHasBeenSet() const
AWS_FIS_API Experiment(Aws::Utils::Json::JsonView jsonValue)
void SetCreationTime(CreationTimeT &&value)
bool ExperimentTemplateIdHasBeenSet() const
void SetTags(TagsT &&value)
Experiment & WithArn(ArnT &&value)
bool ArnHasBeenSet() const
const Aws::Utils::DateTime & GetStartTime() const
Experiment & WithExperimentTemplateId(ExperimentTemplateIdT &&value)
const Aws::Vector< ExperimentStopCondition > & GetStopConditions() const
void SetTargetAccountConfigurationsCount(long long value)
bool ActionsHasBeenSet() const
void SetRoleArn(RoleArnT &&value)
const Aws::Map< Aws::String, ExperimentAction > & GetActions() const
AWS_FIS_API Experiment()=default
AWS_FIS_API Experiment & operator=(Aws::Utils::Json::JsonView jsonValue)
Experiment & WithCreationTime(CreationTimeT &&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