/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include This structure contains all information about one canary in your
* account.See Also:
AWS
* API Reference
The unique ID of this canary.
*/ inline const Aws::String& GetId() const{ return m_id; } /** *The unique ID of this canary.
*/ inline bool IdHasBeenSet() const { return m_idHasBeenSet; } /** *The unique ID of this canary.
*/ inline void SetId(const Aws::String& value) { m_idHasBeenSet = true; m_id = value; } /** *The unique ID of this canary.
*/ inline void SetId(Aws::String&& value) { m_idHasBeenSet = true; m_id = std::move(value); } /** *The unique ID of this canary.
*/ inline void SetId(const char* value) { m_idHasBeenSet = true; m_id.assign(value); } /** *The unique ID of this canary.
*/ inline Canary& WithId(const Aws::String& value) { SetId(value); return *this;} /** *The unique ID of this canary.
*/ inline Canary& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;} /** *The unique ID of this canary.
*/ inline Canary& WithId(const char* value) { SetId(value); return *this;} /** *The name of the canary.
*/ inline const Aws::String& GetName() const{ return m_name; } /** *The name of the canary.
*/ inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } /** *The name of the canary.
*/ inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } /** *The name of the canary.
*/ inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } /** *The name of the canary.
*/ inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } /** *The name of the canary.
*/ inline Canary& WithName(const Aws::String& value) { SetName(value); return *this;} /** *The name of the canary.
*/ inline Canary& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} /** *The name of the canary.
*/ inline Canary& WithName(const char* value) { SetName(value); return *this;} inline const CanaryCodeOutput& GetCode() const{ return m_code; } inline bool CodeHasBeenSet() const { return m_codeHasBeenSet; } inline void SetCode(const CanaryCodeOutput& value) { m_codeHasBeenSet = true; m_code = value; } inline void SetCode(CanaryCodeOutput&& value) { m_codeHasBeenSet = true; m_code = std::move(value); } inline Canary& WithCode(const CanaryCodeOutput& value) { SetCode(value); return *this;} inline Canary& WithCode(CanaryCodeOutput&& value) { SetCode(std::move(value)); return *this;} /** *The ARN of the IAM role used to run the canary. This role must include
* lambda.amazonaws.com as a principal in the trust policy.
The ARN of the IAM role used to run the canary. This role must include
* lambda.amazonaws.com as a principal in the trust policy.
The ARN of the IAM role used to run the canary. This role must include
* lambda.amazonaws.com as a principal in the trust policy.
The ARN of the IAM role used to run the canary. This role must include
* lambda.amazonaws.com as a principal in the trust policy.
The ARN of the IAM role used to run the canary. This role must include
* lambda.amazonaws.com as a principal in the trust policy.
The ARN of the IAM role used to run the canary. This role must include
* lambda.amazonaws.com as a principal in the trust policy.
The ARN of the IAM role used to run the canary. This role must include
* lambda.amazonaws.com as a principal in the trust policy.
The ARN of the IAM role used to run the canary. This role must include
* lambda.amazonaws.com as a principal in the trust policy.
A structure that contains information about how often the canary is to run, * and when these runs are to stop.
*/ inline const CanaryScheduleOutput& GetSchedule() const{ return m_schedule; } /** *A structure that contains information about how often the canary is to run, * and when these runs are to stop.
*/ inline bool ScheduleHasBeenSet() const { return m_scheduleHasBeenSet; } /** *A structure that contains information about how often the canary is to run, * and when these runs are to stop.
*/ inline void SetSchedule(const CanaryScheduleOutput& value) { m_scheduleHasBeenSet = true; m_schedule = value; } /** *A structure that contains information about how often the canary is to run, * and when these runs are to stop.
*/ inline void SetSchedule(CanaryScheduleOutput&& value) { m_scheduleHasBeenSet = true; m_schedule = std::move(value); } /** *A structure that contains information about how often the canary is to run, * and when these runs are to stop.
*/ inline Canary& WithSchedule(const CanaryScheduleOutput& value) { SetSchedule(value); return *this;} /** *A structure that contains information about how often the canary is to run, * and when these runs are to stop.
*/ inline Canary& WithSchedule(CanaryScheduleOutput&& value) { SetSchedule(std::move(value)); return *this;} inline const CanaryRunConfigOutput& GetRunConfig() const{ return m_runConfig; } inline bool RunConfigHasBeenSet() const { return m_runConfigHasBeenSet; } inline void SetRunConfig(const CanaryRunConfigOutput& value) { m_runConfigHasBeenSet = true; m_runConfig = value; } inline void SetRunConfig(CanaryRunConfigOutput&& value) { m_runConfigHasBeenSet = true; m_runConfig = std::move(value); } inline Canary& WithRunConfig(const CanaryRunConfigOutput& value) { SetRunConfig(value); return *this;} inline Canary& WithRunConfig(CanaryRunConfigOutput&& value) { SetRunConfig(std::move(value)); return *this;} /** *The number of days to retain data about successful runs of this canary.
*/ inline int GetSuccessRetentionPeriodInDays() const{ return m_successRetentionPeriodInDays; } /** *The number of days to retain data about successful runs of this canary.
*/ inline bool SuccessRetentionPeriodInDaysHasBeenSet() const { return m_successRetentionPeriodInDaysHasBeenSet; } /** *The number of days to retain data about successful runs of this canary.
*/ inline void SetSuccessRetentionPeriodInDays(int value) { m_successRetentionPeriodInDaysHasBeenSet = true; m_successRetentionPeriodInDays = value; } /** *The number of days to retain data about successful runs of this canary.
*/ inline Canary& WithSuccessRetentionPeriodInDays(int value) { SetSuccessRetentionPeriodInDays(value); return *this;} /** *The number of days to retain data about failed runs of this canary.
*/ inline int GetFailureRetentionPeriodInDays() const{ return m_failureRetentionPeriodInDays; } /** *The number of days to retain data about failed runs of this canary.
*/ inline bool FailureRetentionPeriodInDaysHasBeenSet() const { return m_failureRetentionPeriodInDaysHasBeenSet; } /** *The number of days to retain data about failed runs of this canary.
*/ inline void SetFailureRetentionPeriodInDays(int value) { m_failureRetentionPeriodInDaysHasBeenSet = true; m_failureRetentionPeriodInDays = value; } /** *The number of days to retain data about failed runs of this canary.
*/ inline Canary& WithFailureRetentionPeriodInDays(int value) { SetFailureRetentionPeriodInDays(value); return *this;} /** *A structure that contains information about the canary's status.
*/ inline const CanaryStatus& GetStatus() const{ return m_status; } /** *A structure that contains information about the canary's status.
*/ inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; } /** *A structure that contains information about the canary's status.
*/ inline void SetStatus(const CanaryStatus& value) { m_statusHasBeenSet = true; m_status = value; } /** *A structure that contains information about the canary's status.
*/ inline void SetStatus(CanaryStatus&& value) { m_statusHasBeenSet = true; m_status = std::move(value); } /** *A structure that contains information about the canary's status.
*/ inline Canary& WithStatus(const CanaryStatus& value) { SetStatus(value); return *this;} /** *A structure that contains information about the canary's status.
*/ inline Canary& WithStatus(CanaryStatus&& value) { SetStatus(std::move(value)); return *this;} /** *A structure that contains information about when the canary was created, * modified, and most recently run.
*/ inline const CanaryTimeline& GetTimeline() const{ return m_timeline; } /** *A structure that contains information about when the canary was created, * modified, and most recently run.
*/ inline bool TimelineHasBeenSet() const { return m_timelineHasBeenSet; } /** *A structure that contains information about when the canary was created, * modified, and most recently run.
*/ inline void SetTimeline(const CanaryTimeline& value) { m_timelineHasBeenSet = true; m_timeline = value; } /** *A structure that contains information about when the canary was created, * modified, and most recently run.
*/ inline void SetTimeline(CanaryTimeline&& value) { m_timelineHasBeenSet = true; m_timeline = std::move(value); } /** *A structure that contains information about when the canary was created, * modified, and most recently run.
*/ inline Canary& WithTimeline(const CanaryTimeline& value) { SetTimeline(value); return *this;} /** *A structure that contains information about when the canary was created, * modified, and most recently run.
*/ inline Canary& WithTimeline(CanaryTimeline&& value) { SetTimeline(std::move(value)); return *this;} /** *The location in Amazon S3 where Synthetics stores artifacts from the runs of * this canary. Artifacts include the log file, screenshots, and HAR files.
*/ inline const Aws::String& GetArtifactS3Location() const{ return m_artifactS3Location; } /** *The location in Amazon S3 where Synthetics stores artifacts from the runs of * this canary. Artifacts include the log file, screenshots, and HAR files.
*/ inline bool ArtifactS3LocationHasBeenSet() const { return m_artifactS3LocationHasBeenSet; } /** *The location in Amazon S3 where Synthetics stores artifacts from the runs of * this canary. Artifacts include the log file, screenshots, and HAR files.
*/ inline void SetArtifactS3Location(const Aws::String& value) { m_artifactS3LocationHasBeenSet = true; m_artifactS3Location = value; } /** *The location in Amazon S3 where Synthetics stores artifacts from the runs of * this canary. Artifacts include the log file, screenshots, and HAR files.
*/ inline void SetArtifactS3Location(Aws::String&& value) { m_artifactS3LocationHasBeenSet = true; m_artifactS3Location = std::move(value); } /** *The location in Amazon S3 where Synthetics stores artifacts from the runs of * this canary. Artifacts include the log file, screenshots, and HAR files.
*/ inline void SetArtifactS3Location(const char* value) { m_artifactS3LocationHasBeenSet = true; m_artifactS3Location.assign(value); } /** *The location in Amazon S3 where Synthetics stores artifacts from the runs of * this canary. Artifacts include the log file, screenshots, and HAR files.
*/ inline Canary& WithArtifactS3Location(const Aws::String& value) { SetArtifactS3Location(value); return *this;} /** *The location in Amazon S3 where Synthetics stores artifacts from the runs of * this canary. Artifacts include the log file, screenshots, and HAR files.
*/ inline Canary& WithArtifactS3Location(Aws::String&& value) { SetArtifactS3Location(std::move(value)); return *this;} /** *The location in Amazon S3 where Synthetics stores artifacts from the runs of * this canary. Artifacts include the log file, screenshots, and HAR files.
*/ inline Canary& WithArtifactS3Location(const char* value) { SetArtifactS3Location(value); return *this;} /** *The ARN of the Lambda function that is used as your canary's engine. For more * information about Lambda ARN format, see Resources * and Conditions for Lambda Actions.
*/ inline const Aws::String& GetEngineArn() const{ return m_engineArn; } /** *The ARN of the Lambda function that is used as your canary's engine. For more * information about Lambda ARN format, see Resources * and Conditions for Lambda Actions.
*/ inline bool EngineArnHasBeenSet() const { return m_engineArnHasBeenSet; } /** *The ARN of the Lambda function that is used as your canary's engine. For more * information about Lambda ARN format, see Resources * and Conditions for Lambda Actions.
*/ inline void SetEngineArn(const Aws::String& value) { m_engineArnHasBeenSet = true; m_engineArn = value; } /** *The ARN of the Lambda function that is used as your canary's engine. For more * information about Lambda ARN format, see Resources * and Conditions for Lambda Actions.
*/ inline void SetEngineArn(Aws::String&& value) { m_engineArnHasBeenSet = true; m_engineArn = std::move(value); } /** *The ARN of the Lambda function that is used as your canary's engine. For more * information about Lambda ARN format, see Resources * and Conditions for Lambda Actions.
*/ inline void SetEngineArn(const char* value) { m_engineArnHasBeenSet = true; m_engineArn.assign(value); } /** *The ARN of the Lambda function that is used as your canary's engine. For more * information about Lambda ARN format, see Resources * and Conditions for Lambda Actions.
*/ inline Canary& WithEngineArn(const Aws::String& value) { SetEngineArn(value); return *this;} /** *The ARN of the Lambda function that is used as your canary's engine. For more * information about Lambda ARN format, see Resources * and Conditions for Lambda Actions.
*/ inline Canary& WithEngineArn(Aws::String&& value) { SetEngineArn(std::move(value)); return *this;} /** *The ARN of the Lambda function that is used as your canary's engine. For more * information about Lambda ARN format, see Resources * and Conditions for Lambda Actions.
*/ inline Canary& WithEngineArn(const char* value) { SetEngineArn(value); return *this;} /** *Specifies the runtime version to use for the canary. Currently, the only
* valid value is syn-1.0. For more information about runtime
* versions, see
* Canary Runtime Versions.
Specifies the runtime version to use for the canary. Currently, the only
* valid value is syn-1.0. For more information about runtime
* versions, see
* Canary Runtime Versions.
Specifies the runtime version to use for the canary. Currently, the only
* valid value is syn-1.0. For more information about runtime
* versions, see
* Canary Runtime Versions.
Specifies the runtime version to use for the canary. Currently, the only
* valid value is syn-1.0. For more information about runtime
* versions, see
* Canary Runtime Versions.
Specifies the runtime version to use for the canary. Currently, the only
* valid value is syn-1.0. For more information about runtime
* versions, see
* Canary Runtime Versions.
Specifies the runtime version to use for the canary. Currently, the only
* valid value is syn-1.0. For more information about runtime
* versions, see
* Canary Runtime Versions.
Specifies the runtime version to use for the canary. Currently, the only
* valid value is syn-1.0. For more information about runtime
* versions, see
* Canary Runtime Versions.
Specifies the runtime version to use for the canary. Currently, the only
* valid value is syn-1.0. For more information about runtime
* versions, see
* Canary Runtime Versions.
The list of key-value pairs that are associated with the canary.
*/ inline const Aws::MapThe list of key-value pairs that are associated with the canary.
*/ inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } /** *The list of key-value pairs that are associated with the canary.
*/ inline void SetTags(const Aws::MapThe list of key-value pairs that are associated with the canary.
*/ inline void SetTags(Aws::MapThe list of key-value pairs that are associated with the canary.
*/ inline Canary& WithTags(const Aws::MapThe list of key-value pairs that are associated with the canary.
*/ inline Canary& WithTags(Aws::MapThe list of key-value pairs that are associated with the canary.
*/ inline Canary& AddTags(const Aws::String& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; } /** *The list of key-value pairs that are associated with the canary.
*/ inline Canary& AddTags(Aws::String&& key, const Aws::String& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; } /** *The list of key-value pairs that are associated with the canary.
*/ inline Canary& AddTags(const Aws::String& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; } /** *The list of key-value pairs that are associated with the canary.
*/ inline Canary& AddTags(Aws::String&& key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), std::move(value)); return *this; } /** *The list of key-value pairs that are associated with the canary.
*/ inline Canary& AddTags(const char* key, Aws::String&& value) { m_tagsHasBeenSet = true; m_tags.emplace(key, std::move(value)); return *this; } /** *The list of key-value pairs that are associated with the canary.
*/ inline Canary& AddTags(Aws::String&& key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(std::move(key), value); return *this; } /** *The list of key-value pairs that are associated with the canary.
*/ inline Canary& AddTags(const char* key, const char* value) { m_tagsHasBeenSet = true; m_tags.emplace(key, value); return *this; } private: Aws::String m_id; bool m_idHasBeenSet; Aws::String m_name; bool m_nameHasBeenSet; CanaryCodeOutput m_code; bool m_codeHasBeenSet; Aws::String m_executionRoleArn; bool m_executionRoleArnHasBeenSet; CanaryScheduleOutput m_schedule; bool m_scheduleHasBeenSet; CanaryRunConfigOutput m_runConfig; bool m_runConfigHasBeenSet; int m_successRetentionPeriodInDays; bool m_successRetentionPeriodInDaysHasBeenSet; int m_failureRetentionPeriodInDays; bool m_failureRetentionPeriodInDaysHasBeenSet; CanaryStatus m_status; bool m_statusHasBeenSet; CanaryTimeline m_timeline; bool m_timelineHasBeenSet; Aws::String m_artifactS3Location; bool m_artifactS3LocationHasBeenSet; Aws::String m_engineArn; bool m_engineArnHasBeenSet; Aws::String m_runtimeVersion; bool m_runtimeVersionHasBeenSet; VpcConfigOutput m_vpcConfig; bool m_vpcConfigHasBeenSet; Aws::Map