/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Specifies a target for an experiment. You must specify at least one Amazon
* Resource Name (ARN) or at least one resource tag. You cannot specify both ARNs
* and tags. For more information, see Targets
* in the Fault Injection Simulator User Guide.See Also:
* AWS
* API Reference
The resource type. The resource type must be supported for the specified * action.
*/ inline const Aws::String& GetResourceType() const{ return m_resourceType; } /** *The resource type. The resource type must be supported for the specified * action.
*/ inline bool ResourceTypeHasBeenSet() const { return m_resourceTypeHasBeenSet; } /** *The resource type. The resource type must be supported for the specified * action.
*/ inline void SetResourceType(const Aws::String& value) { m_resourceTypeHasBeenSet = true; m_resourceType = value; } /** *The resource type. The resource type must be supported for the specified * action.
*/ inline void SetResourceType(Aws::String&& value) { m_resourceTypeHasBeenSet = true; m_resourceType = std::move(value); } /** *The resource type. The resource type must be supported for the specified * action.
*/ inline void SetResourceType(const char* value) { m_resourceTypeHasBeenSet = true; m_resourceType.assign(value); } /** *The resource type. The resource type must be supported for the specified * action.
*/ inline CreateExperimentTemplateTargetInput& WithResourceType(const Aws::String& value) { SetResourceType(value); return *this;} /** *The resource type. The resource type must be supported for the specified * action.
*/ inline CreateExperimentTemplateTargetInput& WithResourceType(Aws::String&& value) { SetResourceType(std::move(value)); return *this;} /** *The resource type. The resource type must be supported for the specified * action.
*/ inline CreateExperimentTemplateTargetInput& WithResourceType(const char* value) { SetResourceType(value); return *this;} /** *The Amazon Resource Names (ARNs) of the resources.
*/ inline const Aws::VectorThe Amazon Resource Names (ARNs) of the resources.
*/ inline bool ResourceArnsHasBeenSet() const { return m_resourceArnsHasBeenSet; } /** *The Amazon Resource Names (ARNs) of the resources.
*/ inline void SetResourceArns(const Aws::VectorThe Amazon Resource Names (ARNs) of the resources.
*/ inline void SetResourceArns(Aws::VectorThe Amazon Resource Names (ARNs) of the resources.
*/ inline CreateExperimentTemplateTargetInput& WithResourceArns(const Aws::VectorThe Amazon Resource Names (ARNs) of the resources.
*/ inline CreateExperimentTemplateTargetInput& WithResourceArns(Aws::VectorThe Amazon Resource Names (ARNs) of the resources.
*/ inline CreateExperimentTemplateTargetInput& AddResourceArns(const Aws::String& value) { m_resourceArnsHasBeenSet = true; m_resourceArns.push_back(value); return *this; } /** *The Amazon Resource Names (ARNs) of the resources.
*/ inline CreateExperimentTemplateTargetInput& AddResourceArns(Aws::String&& value) { m_resourceArnsHasBeenSet = true; m_resourceArns.push_back(std::move(value)); return *this; } /** *The Amazon Resource Names (ARNs) of the resources.
*/ inline CreateExperimentTemplateTargetInput& AddResourceArns(const char* value) { m_resourceArnsHasBeenSet = true; m_resourceArns.push_back(value); return *this; } /** *The tags for the target resources.
*/ inline const Aws::MapThe tags for the target resources.
*/ inline bool ResourceTagsHasBeenSet() const { return m_resourceTagsHasBeenSet; } /** *The tags for the target resources.
*/ inline void SetResourceTags(const Aws::MapThe tags for the target resources.
*/ inline void SetResourceTags(Aws::MapThe tags for the target resources.
*/ inline CreateExperimentTemplateTargetInput& WithResourceTags(const Aws::MapThe tags for the target resources.
*/ inline CreateExperimentTemplateTargetInput& WithResourceTags(Aws::MapThe tags for the target resources.
*/ inline CreateExperimentTemplateTargetInput& AddResourceTags(const Aws::String& key, const Aws::String& value) { m_resourceTagsHasBeenSet = true; m_resourceTags.emplace(key, value); return *this; } /** *The tags for the target resources.
*/ inline CreateExperimentTemplateTargetInput& AddResourceTags(Aws::String&& key, const Aws::String& value) { m_resourceTagsHasBeenSet = true; m_resourceTags.emplace(std::move(key), value); return *this; } /** *The tags for the target resources.
*/ inline CreateExperimentTemplateTargetInput& AddResourceTags(const Aws::String& key, Aws::String&& value) { m_resourceTagsHasBeenSet = true; m_resourceTags.emplace(key, std::move(value)); return *this; } /** *The tags for the target resources.
*/ inline CreateExperimentTemplateTargetInput& AddResourceTags(Aws::String&& key, Aws::String&& value) { m_resourceTagsHasBeenSet = true; m_resourceTags.emplace(std::move(key), std::move(value)); return *this; } /** *The tags for the target resources.
*/ inline CreateExperimentTemplateTargetInput& AddResourceTags(const char* key, Aws::String&& value) { m_resourceTagsHasBeenSet = true; m_resourceTags.emplace(key, std::move(value)); return *this; } /** *The tags for the target resources.
*/ inline CreateExperimentTemplateTargetInput& AddResourceTags(Aws::String&& key, const char* value) { m_resourceTagsHasBeenSet = true; m_resourceTags.emplace(std::move(key), value); return *this; } /** *The tags for the target resources.
*/ inline CreateExperimentTemplateTargetInput& AddResourceTags(const char* key, const char* value) { m_resourceTagsHasBeenSet = true; m_resourceTags.emplace(key, value); return *this; } /** *The filters to apply to identify target resources using specific * attributes.
*/ inline const Aws::VectorThe filters to apply to identify target resources using specific * attributes.
*/ inline bool FiltersHasBeenSet() const { return m_filtersHasBeenSet; } /** *The filters to apply to identify target resources using specific * attributes.
*/ inline void SetFilters(const Aws::VectorThe filters to apply to identify target resources using specific * attributes.
*/ inline void SetFilters(Aws::VectorThe filters to apply to identify target resources using specific * attributes.
*/ inline CreateExperimentTemplateTargetInput& WithFilters(const Aws::VectorThe filters to apply to identify target resources using specific * attributes.
*/ inline CreateExperimentTemplateTargetInput& WithFilters(Aws::VectorThe filters to apply to identify target resources using specific * attributes.
*/ inline CreateExperimentTemplateTargetInput& AddFilters(const ExperimentTemplateTargetInputFilter& value) { m_filtersHasBeenSet = true; m_filters.push_back(value); return *this; } /** *The filters to apply to identify target resources using specific * attributes.
*/ inline CreateExperimentTemplateTargetInput& AddFilters(ExperimentTemplateTargetInputFilter&& value) { m_filtersHasBeenSet = true; m_filters.push_back(std::move(value)); return *this; } /** *Scopes the identified resources to a specific count of the resources at * random, or a percentage of the resources. All identified resources are included * in the target.
ALL - Run the action on all identified targets. * This is the default.
COUNT(n) - Run the action on the * specified number of targets, chosen from the identified targets at random. For * example, COUNT(1) selects one of the targets.
PERCENT(n) - Run * the action on the specified percentage of targets, chosen from the identified * targets at random. For example, PERCENT(25) selects 25% of the targets.
*Scopes the identified resources to a specific count of the resources at * random, or a percentage of the resources. All identified resources are included * in the target.
ALL - Run the action on all identified targets. * This is the default.
COUNT(n) - Run the action on the * specified number of targets, chosen from the identified targets at random. For * example, COUNT(1) selects one of the targets.
PERCENT(n) - Run * the action on the specified percentage of targets, chosen from the identified * targets at random. For example, PERCENT(25) selects 25% of the targets.
*Scopes the identified resources to a specific count of the resources at * random, or a percentage of the resources. All identified resources are included * in the target.
ALL - Run the action on all identified targets. * This is the default.
COUNT(n) - Run the action on the * specified number of targets, chosen from the identified targets at random. For * example, COUNT(1) selects one of the targets.
PERCENT(n) - Run * the action on the specified percentage of targets, chosen from the identified * targets at random. For example, PERCENT(25) selects 25% of the targets.
*Scopes the identified resources to a specific count of the resources at * random, or a percentage of the resources. All identified resources are included * in the target.
ALL - Run the action on all identified targets. * This is the default.
COUNT(n) - Run the action on the * specified number of targets, chosen from the identified targets at random. For * example, COUNT(1) selects one of the targets.
PERCENT(n) - Run * the action on the specified percentage of targets, chosen from the identified * targets at random. For example, PERCENT(25) selects 25% of the targets.
*Scopes the identified resources to a specific count of the resources at * random, or a percentage of the resources. All identified resources are included * in the target.
ALL - Run the action on all identified targets. * This is the default.
COUNT(n) - Run the action on the * specified number of targets, chosen from the identified targets at random. For * example, COUNT(1) selects one of the targets.
PERCENT(n) - Run * the action on the specified percentage of targets, chosen from the identified * targets at random. For example, PERCENT(25) selects 25% of the targets.
*Scopes the identified resources to a specific count of the resources at * random, or a percentage of the resources. All identified resources are included * in the target.
ALL - Run the action on all identified targets. * This is the default.
COUNT(n) - Run the action on the * specified number of targets, chosen from the identified targets at random. For * example, COUNT(1) selects one of the targets.
PERCENT(n) - Run * the action on the specified percentage of targets, chosen from the identified * targets at random. For example, PERCENT(25) selects 25% of the targets.
*Scopes the identified resources to a specific count of the resources at * random, or a percentage of the resources. All identified resources are included * in the target.
ALL - Run the action on all identified targets. * This is the default.
COUNT(n) - Run the action on the * specified number of targets, chosen from the identified targets at random. For * example, COUNT(1) selects one of the targets.
PERCENT(n) - Run * the action on the specified percentage of targets, chosen from the identified * targets at random. For example, PERCENT(25) selects 25% of the targets.
*Scopes the identified resources to a specific count of the resources at * random, or a percentage of the resources. All identified resources are included * in the target.
ALL - Run the action on all identified targets. * This is the default.
COUNT(n) - Run the action on the * specified number of targets, chosen from the identified targets at random. For * example, COUNT(1) selects one of the targets.
PERCENT(n) - Run * the action on the specified percentage of targets, chosen from the identified * targets at random. For example, PERCENT(25) selects 25% of the targets.
*The resource type parameters.
*/ inline const Aws::MapThe resource type parameters.
*/ inline bool ParametersHasBeenSet() const { return m_parametersHasBeenSet; } /** *The resource type parameters.
*/ inline void SetParameters(const Aws::MapThe resource type parameters.
*/ inline void SetParameters(Aws::MapThe resource type parameters.
*/ inline CreateExperimentTemplateTargetInput& WithParameters(const Aws::MapThe resource type parameters.
*/ inline CreateExperimentTemplateTargetInput& WithParameters(Aws::MapThe resource type parameters.
*/ inline CreateExperimentTemplateTargetInput& AddParameters(const Aws::String& key, const Aws::String& value) { m_parametersHasBeenSet = true; m_parameters.emplace(key, value); return *this; } /** *The resource type parameters.
*/ inline CreateExperimentTemplateTargetInput& AddParameters(Aws::String&& key, const Aws::String& value) { m_parametersHasBeenSet = true; m_parameters.emplace(std::move(key), value); return *this; } /** *The resource type parameters.
*/ inline CreateExperimentTemplateTargetInput& AddParameters(const Aws::String& key, Aws::String&& value) { m_parametersHasBeenSet = true; m_parameters.emplace(key, std::move(value)); return *this; } /** *The resource type parameters.
*/ inline CreateExperimentTemplateTargetInput& AddParameters(Aws::String&& key, Aws::String&& value) { m_parametersHasBeenSet = true; m_parameters.emplace(std::move(key), std::move(value)); return *this; } /** *The resource type parameters.
*/ inline CreateExperimentTemplateTargetInput& AddParameters(const char* key, Aws::String&& value) { m_parametersHasBeenSet = true; m_parameters.emplace(key, std::move(value)); return *this; } /** *The resource type parameters.
*/ inline CreateExperimentTemplateTargetInput& AddParameters(Aws::String&& key, const char* value) { m_parametersHasBeenSet = true; m_parameters.emplace(std::move(key), value); return *this; } /** *The resource type parameters.
*/ inline CreateExperimentTemplateTargetInput& AddParameters(const char* key, const char* value) { m_parametersHasBeenSet = true; m_parameters.emplace(key, value); return *this; } private: Aws::String m_resourceType; bool m_resourceTypeHasBeenSet = false; Aws::Vector