/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include namespace Aws { namespace ResilienceHub { namespace Model { /** */ class RemoveDraftAppVersionResourceMappingsRequest : public ResilienceHubRequest { public: AWS_RESILIENCEHUB_API RemoveDraftAppVersionResourceMappingsRequest(); // Service request name is the Operation name which will send this request out, // each operation should has unique request name, so that we can get operation's name from this request. // Note: this is not true for response, multiple operations may have the same response name, // so we can not get operation's name from response. inline virtual const char* GetServiceRequestName() const override { return "RemoveDraftAppVersionResourceMappings"; } AWS_RESILIENCEHUB_API Aws::String SerializePayload() const override; /** *

The Amazon Resource Name (ARN) of the Resilience Hub application. The format * for this ARN is: * arn:partition:resiliencehub:region:account:app/app-id. * For more information about ARNs, see * Amazon Resource Names (ARNs) in the AWS General Reference guide.

*/ inline const Aws::String& GetAppArn() const{ return m_appArn; } /** *

The Amazon Resource Name (ARN) of the Resilience Hub application. The format * for this ARN is: * arn:partition:resiliencehub:region:account:app/app-id. * For more information about ARNs, see * Amazon Resource Names (ARNs) in the AWS General Reference guide.

*/ inline bool AppArnHasBeenSet() const { return m_appArnHasBeenSet; } /** *

The Amazon Resource Name (ARN) of the Resilience Hub application. The format * for this ARN is: * arn:partition:resiliencehub:region:account:app/app-id. * For more information about ARNs, see * Amazon Resource Names (ARNs) in the AWS General Reference guide.

*/ inline void SetAppArn(const Aws::String& value) { m_appArnHasBeenSet = true; m_appArn = value; } /** *

The Amazon Resource Name (ARN) of the Resilience Hub application. The format * for this ARN is: * arn:partition:resiliencehub:region:account:app/app-id. * For more information about ARNs, see * Amazon Resource Names (ARNs) in the AWS General Reference guide.

*/ inline void SetAppArn(Aws::String&& value) { m_appArnHasBeenSet = true; m_appArn = std::move(value); } /** *

The Amazon Resource Name (ARN) of the Resilience Hub application. The format * for this ARN is: * arn:partition:resiliencehub:region:account:app/app-id. * For more information about ARNs, see * Amazon Resource Names (ARNs) in the AWS General Reference guide.

*/ inline void SetAppArn(const char* value) { m_appArnHasBeenSet = true; m_appArn.assign(value); } /** *

The Amazon Resource Name (ARN) of the Resilience Hub application. The format * for this ARN is: * arn:partition:resiliencehub:region:account:app/app-id. * For more information about ARNs, see * Amazon Resource Names (ARNs) in the AWS General Reference guide.

*/ inline RemoveDraftAppVersionResourceMappingsRequest& WithAppArn(const Aws::String& value) { SetAppArn(value); return *this;} /** *

The Amazon Resource Name (ARN) of the Resilience Hub application. The format * for this ARN is: * arn:partition:resiliencehub:region:account:app/app-id. * For more information about ARNs, see * Amazon Resource Names (ARNs) in the AWS General Reference guide.

*/ inline RemoveDraftAppVersionResourceMappingsRequest& WithAppArn(Aws::String&& value) { SetAppArn(std::move(value)); return *this;} /** *

The Amazon Resource Name (ARN) of the Resilience Hub application. The format * for this ARN is: * arn:partition:resiliencehub:region:account:app/app-id. * For more information about ARNs, see * Amazon Resource Names (ARNs) in the AWS General Reference guide.

*/ inline RemoveDraftAppVersionResourceMappingsRequest& WithAppArn(const char* value) { SetAppArn(value); return *this;} /** *

The names of the registered applications you want to remove from the resource * mappings.

*/ inline const Aws::Vector& GetAppRegistryAppNames() const{ return m_appRegistryAppNames; } /** *

The names of the registered applications you want to remove from the resource * mappings.

*/ inline bool AppRegistryAppNamesHasBeenSet() const { return m_appRegistryAppNamesHasBeenSet; } /** *

The names of the registered applications you want to remove from the resource * mappings.

*/ inline void SetAppRegistryAppNames(const Aws::Vector& value) { m_appRegistryAppNamesHasBeenSet = true; m_appRegistryAppNames = value; } /** *

The names of the registered applications you want to remove from the resource * mappings.

*/ inline void SetAppRegistryAppNames(Aws::Vector&& value) { m_appRegistryAppNamesHasBeenSet = true; m_appRegistryAppNames = std::move(value); } /** *

The names of the registered applications you want to remove from the resource * mappings.

*/ inline RemoveDraftAppVersionResourceMappingsRequest& WithAppRegistryAppNames(const Aws::Vector& value) { SetAppRegistryAppNames(value); return *this;} /** *

The names of the registered applications you want to remove from the resource * mappings.

*/ inline RemoveDraftAppVersionResourceMappingsRequest& WithAppRegistryAppNames(Aws::Vector&& value) { SetAppRegistryAppNames(std::move(value)); return *this;} /** *

The names of the registered applications you want to remove from the resource * mappings.

*/ inline RemoveDraftAppVersionResourceMappingsRequest& AddAppRegistryAppNames(const Aws::String& value) { m_appRegistryAppNamesHasBeenSet = true; m_appRegistryAppNames.push_back(value); return *this; } /** *

The names of the registered applications you want to remove from the resource * mappings.

*/ inline RemoveDraftAppVersionResourceMappingsRequest& AddAppRegistryAppNames(Aws::String&& value) { m_appRegistryAppNamesHasBeenSet = true; m_appRegistryAppNames.push_back(std::move(value)); return *this; } /** *

The names of the registered applications you want to remove from the resource * mappings.

*/ inline RemoveDraftAppVersionResourceMappingsRequest& AddAppRegistryAppNames(const char* value) { m_appRegistryAppNamesHasBeenSet = true; m_appRegistryAppNames.push_back(value); return *this; } /** *

The names of the Amazon Elastic Kubernetes Service clusters and namespaces * you want to remove from the resource mappings.

This parameter * accepts values in "eks-cluster/namespace" format.

*/ inline const Aws::Vector& GetEksSourceNames() const{ return m_eksSourceNames; } /** *

The names of the Amazon Elastic Kubernetes Service clusters and namespaces * you want to remove from the resource mappings.

This parameter * accepts values in "eks-cluster/namespace" format.

*/ inline bool EksSourceNamesHasBeenSet() const { return m_eksSourceNamesHasBeenSet; } /** *

The names of the Amazon Elastic Kubernetes Service clusters and namespaces * you want to remove from the resource mappings.

This parameter * accepts values in "eks-cluster/namespace" format.

*/ inline void SetEksSourceNames(const Aws::Vector& value) { m_eksSourceNamesHasBeenSet = true; m_eksSourceNames = value; } /** *

The names of the Amazon Elastic Kubernetes Service clusters and namespaces * you want to remove from the resource mappings.

This parameter * accepts values in "eks-cluster/namespace" format.

*/ inline void SetEksSourceNames(Aws::Vector&& value) { m_eksSourceNamesHasBeenSet = true; m_eksSourceNames = std::move(value); } /** *

The names of the Amazon Elastic Kubernetes Service clusters and namespaces * you want to remove from the resource mappings.

This parameter * accepts values in "eks-cluster/namespace" format.

*/ inline RemoveDraftAppVersionResourceMappingsRequest& WithEksSourceNames(const Aws::Vector& value) { SetEksSourceNames(value); return *this;} /** *

The names of the Amazon Elastic Kubernetes Service clusters and namespaces * you want to remove from the resource mappings.

This parameter * accepts values in "eks-cluster/namespace" format.

*/ inline RemoveDraftAppVersionResourceMappingsRequest& WithEksSourceNames(Aws::Vector&& value) { SetEksSourceNames(std::move(value)); return *this;} /** *

The names of the Amazon Elastic Kubernetes Service clusters and namespaces * you want to remove from the resource mappings.

This parameter * accepts values in "eks-cluster/namespace" format.

*/ inline RemoveDraftAppVersionResourceMappingsRequest& AddEksSourceNames(const Aws::String& value) { m_eksSourceNamesHasBeenSet = true; m_eksSourceNames.push_back(value); return *this; } /** *

The names of the Amazon Elastic Kubernetes Service clusters and namespaces * you want to remove from the resource mappings.

This parameter * accepts values in "eks-cluster/namespace" format.

*/ inline RemoveDraftAppVersionResourceMappingsRequest& AddEksSourceNames(Aws::String&& value) { m_eksSourceNamesHasBeenSet = true; m_eksSourceNames.push_back(std::move(value)); return *this; } /** *

The names of the Amazon Elastic Kubernetes Service clusters and namespaces * you want to remove from the resource mappings.

This parameter * accepts values in "eks-cluster/namespace" format.

*/ inline RemoveDraftAppVersionResourceMappingsRequest& AddEksSourceNames(const char* value) { m_eksSourceNamesHasBeenSet = true; m_eksSourceNames.push_back(value); return *this; } /** *

The names of the CloudFormation stacks you want to remove from the resource * mappings.

*/ inline const Aws::Vector& GetLogicalStackNames() const{ return m_logicalStackNames; } /** *

The names of the CloudFormation stacks you want to remove from the resource * mappings.

*/ inline bool LogicalStackNamesHasBeenSet() const { return m_logicalStackNamesHasBeenSet; } /** *

The names of the CloudFormation stacks you want to remove from the resource * mappings.

*/ inline void SetLogicalStackNames(const Aws::Vector& value) { m_logicalStackNamesHasBeenSet = true; m_logicalStackNames = value; } /** *

The names of the CloudFormation stacks you want to remove from the resource * mappings.

*/ inline void SetLogicalStackNames(Aws::Vector&& value) { m_logicalStackNamesHasBeenSet = true; m_logicalStackNames = std::move(value); } /** *

The names of the CloudFormation stacks you want to remove from the resource * mappings.

*/ inline RemoveDraftAppVersionResourceMappingsRequest& WithLogicalStackNames(const Aws::Vector& value) { SetLogicalStackNames(value); return *this;} /** *

The names of the CloudFormation stacks you want to remove from the resource * mappings.

*/ inline RemoveDraftAppVersionResourceMappingsRequest& WithLogicalStackNames(Aws::Vector&& value) { SetLogicalStackNames(std::move(value)); return *this;} /** *

The names of the CloudFormation stacks you want to remove from the resource * mappings.

*/ inline RemoveDraftAppVersionResourceMappingsRequest& AddLogicalStackNames(const Aws::String& value) { m_logicalStackNamesHasBeenSet = true; m_logicalStackNames.push_back(value); return *this; } /** *

The names of the CloudFormation stacks you want to remove from the resource * mappings.

*/ inline RemoveDraftAppVersionResourceMappingsRequest& AddLogicalStackNames(Aws::String&& value) { m_logicalStackNamesHasBeenSet = true; m_logicalStackNames.push_back(std::move(value)); return *this; } /** *

The names of the CloudFormation stacks you want to remove from the resource * mappings.

*/ inline RemoveDraftAppVersionResourceMappingsRequest& AddLogicalStackNames(const char* value) { m_logicalStackNamesHasBeenSet = true; m_logicalStackNames.push_back(value); return *this; } /** *

The names of the resource groups you want to remove from the resource * mappings.

*/ inline const Aws::Vector& GetResourceGroupNames() const{ return m_resourceGroupNames; } /** *

The names of the resource groups you want to remove from the resource * mappings.

*/ inline bool ResourceGroupNamesHasBeenSet() const { return m_resourceGroupNamesHasBeenSet; } /** *

The names of the resource groups you want to remove from the resource * mappings.

*/ inline void SetResourceGroupNames(const Aws::Vector& value) { m_resourceGroupNamesHasBeenSet = true; m_resourceGroupNames = value; } /** *

The names of the resource groups you want to remove from the resource * mappings.

*/ inline void SetResourceGroupNames(Aws::Vector&& value) { m_resourceGroupNamesHasBeenSet = true; m_resourceGroupNames = std::move(value); } /** *

The names of the resource groups you want to remove from the resource * mappings.

*/ inline RemoveDraftAppVersionResourceMappingsRequest& WithResourceGroupNames(const Aws::Vector& value) { SetResourceGroupNames(value); return *this;} /** *

The names of the resource groups you want to remove from the resource * mappings.

*/ inline RemoveDraftAppVersionResourceMappingsRequest& WithResourceGroupNames(Aws::Vector&& value) { SetResourceGroupNames(std::move(value)); return *this;} /** *

The names of the resource groups you want to remove from the resource * mappings.

*/ inline RemoveDraftAppVersionResourceMappingsRequest& AddResourceGroupNames(const Aws::String& value) { m_resourceGroupNamesHasBeenSet = true; m_resourceGroupNames.push_back(value); return *this; } /** *

The names of the resource groups you want to remove from the resource * mappings.

*/ inline RemoveDraftAppVersionResourceMappingsRequest& AddResourceGroupNames(Aws::String&& value) { m_resourceGroupNamesHasBeenSet = true; m_resourceGroupNames.push_back(std::move(value)); return *this; } /** *

The names of the resource groups you want to remove from the resource * mappings.

*/ inline RemoveDraftAppVersionResourceMappingsRequest& AddResourceGroupNames(const char* value) { m_resourceGroupNamesHasBeenSet = true; m_resourceGroupNames.push_back(value); return *this; } /** *

The names of the resources you want to remove from the resource mappings.

*/ inline const Aws::Vector& GetResourceNames() const{ return m_resourceNames; } /** *

The names of the resources you want to remove from the resource mappings.

*/ inline bool ResourceNamesHasBeenSet() const { return m_resourceNamesHasBeenSet; } /** *

The names of the resources you want to remove from the resource mappings.

*/ inline void SetResourceNames(const Aws::Vector& value) { m_resourceNamesHasBeenSet = true; m_resourceNames = value; } /** *

The names of the resources you want to remove from the resource mappings.

*/ inline void SetResourceNames(Aws::Vector&& value) { m_resourceNamesHasBeenSet = true; m_resourceNames = std::move(value); } /** *

The names of the resources you want to remove from the resource mappings.

*/ inline RemoveDraftAppVersionResourceMappingsRequest& WithResourceNames(const Aws::Vector& value) { SetResourceNames(value); return *this;} /** *

The names of the resources you want to remove from the resource mappings.

*/ inline RemoveDraftAppVersionResourceMappingsRequest& WithResourceNames(Aws::Vector&& value) { SetResourceNames(std::move(value)); return *this;} /** *

The names of the resources you want to remove from the resource mappings.

*/ inline RemoveDraftAppVersionResourceMappingsRequest& AddResourceNames(const Aws::String& value) { m_resourceNamesHasBeenSet = true; m_resourceNames.push_back(value); return *this; } /** *

The names of the resources you want to remove from the resource mappings.

*/ inline RemoveDraftAppVersionResourceMappingsRequest& AddResourceNames(Aws::String&& value) { m_resourceNamesHasBeenSet = true; m_resourceNames.push_back(std::move(value)); return *this; } /** *

The names of the resources you want to remove from the resource mappings.

*/ inline RemoveDraftAppVersionResourceMappingsRequest& AddResourceNames(const char* value) { m_resourceNamesHasBeenSet = true; m_resourceNames.push_back(value); return *this; } /** *

The names of the Terraform sources you want to remove from the resource * mappings.

*/ inline const Aws::Vector& GetTerraformSourceNames() const{ return m_terraformSourceNames; } /** *

The names of the Terraform sources you want to remove from the resource * mappings.

*/ inline bool TerraformSourceNamesHasBeenSet() const { return m_terraformSourceNamesHasBeenSet; } /** *

The names of the Terraform sources you want to remove from the resource * mappings.

*/ inline void SetTerraformSourceNames(const Aws::Vector& value) { m_terraformSourceNamesHasBeenSet = true; m_terraformSourceNames = value; } /** *

The names of the Terraform sources you want to remove from the resource * mappings.

*/ inline void SetTerraformSourceNames(Aws::Vector&& value) { m_terraformSourceNamesHasBeenSet = true; m_terraformSourceNames = std::move(value); } /** *

The names of the Terraform sources you want to remove from the resource * mappings.

*/ inline RemoveDraftAppVersionResourceMappingsRequest& WithTerraformSourceNames(const Aws::Vector& value) { SetTerraformSourceNames(value); return *this;} /** *

The names of the Terraform sources you want to remove from the resource * mappings.

*/ inline RemoveDraftAppVersionResourceMappingsRequest& WithTerraformSourceNames(Aws::Vector&& value) { SetTerraformSourceNames(std::move(value)); return *this;} /** *

The names of the Terraform sources you want to remove from the resource * mappings.

*/ inline RemoveDraftAppVersionResourceMappingsRequest& AddTerraformSourceNames(const Aws::String& value) { m_terraformSourceNamesHasBeenSet = true; m_terraformSourceNames.push_back(value); return *this; } /** *

The names of the Terraform sources you want to remove from the resource * mappings.

*/ inline RemoveDraftAppVersionResourceMappingsRequest& AddTerraformSourceNames(Aws::String&& value) { m_terraformSourceNamesHasBeenSet = true; m_terraformSourceNames.push_back(std::move(value)); return *this; } /** *

The names of the Terraform sources you want to remove from the resource * mappings.

*/ inline RemoveDraftAppVersionResourceMappingsRequest& AddTerraformSourceNames(const char* value) { m_terraformSourceNamesHasBeenSet = true; m_terraformSourceNames.push_back(value); return *this; } private: Aws::String m_appArn; bool m_appArnHasBeenSet = false; Aws::Vector m_appRegistryAppNames; bool m_appRegistryAppNamesHasBeenSet = false; Aws::Vector m_eksSourceNames; bool m_eksSourceNamesHasBeenSet = false; Aws::Vector m_logicalStackNames; bool m_logicalStackNamesHasBeenSet = false; Aws::Vector m_resourceGroupNames; bool m_resourceGroupNamesHasBeenSet = false; Aws::Vector m_resourceNames; bool m_resourceNamesHasBeenSet = false; Aws::Vector m_terraformSourceNames; bool m_terraformSourceNamesHasBeenSet = false; }; } // namespace Model } // namespace ResilienceHub } // namespace Aws