/*
* Copyright 2018-2023 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with
* the License. A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
* CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions
* and limitations under the License.
*/
package com.amazonaws.services.resiliencehub.model;
import java.io.Serializable;
import javax.annotation.Generated;
/**
*
* @see AWS API Documentation
*/
@Generated("com.amazonaws:aws-java-sdk-code-generator")
public class DescribeAppVersionTemplateResult extends com.amazonaws.AmazonWebServiceResult
* The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:
*
* A JSON string that provides information about your application structure. To learn more about the
*
* The
*
* The list of logical resources that must be included in the Resilience Hub application.
*
* Type: Array
*
* Don't add the resources that you want to exclude.
*
* Each
*
* The logical identifier of the resource.
*
* Type: Object
*
* Each
*
* The identifier of the resource.
*
* Type: String
*
*
* The name of the CloudFormation stack this resource belongs to.
*
* Type: String
*
*
* The name of the resource group this resource belongs to.
*
* Type: String
*
*
* The name of the Terraform S3 state file this resource belongs to.
*
* Type: String
*
*
* The name of the Amazon Elastic Kubernetes Service cluster and namespace this resource belongs to.
*
* This parameter accepts values in "eks-cluster/namespace" format.
*
* Type: String
*
*
* The type of resource.
*
* Type: string
*
*
* The name of the resource.
*
* Type: String
*
*
* Additional configuration parameters for an Resilience Hub application. If you want to implement
*
* Currently, this parameter accepts a key-value mapping (in a string format) of only one failover region and one
* associated account.
*
* Key:
* Value:
*
* The list of Application Components that this resource belongs to. If an Application Component is not part of the
* Resilience Hub application, it will be added.
*
* Type: Array
*
* Each
*
* The name of the Application Component.
*
* Type: String
*
*
* The type of Application Component. For more information about the types of Application Component, see Grouping resources
* in an AppComponent.
*
* Type: String
*
*
* The list of included resources that are assigned to the Application Component.
*
* Type: Array of strings
*
*
* Additional configuration parameters for an Resilience Hub application. If you want to implement
*
* Currently, this parameter accepts a key-value mapping (in a string format) of only one failover region and one
* associated account.
*
* Key:
* Value:
*
* The list of logical resource identifiers to be excluded from the application.
*
* Type: Array
*
* Don't add the resources that you want to include.
*
* Each
*
* The logical identifier of the resource.
*
* Type: Object
*
* You can configure only one of the following fields:
*
*
*
*
*
* Each
*
* The identifier of the resource.
*
* Type: String
*
*
* The name of the CloudFormation stack this resource belongs to.
*
* Type: String
*
*
* The name of the resource group this resource belongs to.
*
* Type: String
*
*
* The name of the Terraform S3 state file this resource belongs to.
*
* Type: String
*
*
* The name of the Amazon Elastic Kubernetes Service cluster and namespace this resource belongs to.
*
* This parameter accepts values in "eks-cluster/namespace" format.
*
* Type: String
*
*
* The Resilience Hub application version.
*
*
* Additional configuration parameters for an Resilience Hub application. If you want to implement
*
* Currently, this parameter accepts a key-value mapping (in a string format) of only one failover region and one
* associated account.
*
* Key:
* Value:
* The version of the application.
*
* The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:
*
* The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:
*
* The Amazon Resource Name (ARN) of the Resilience Hub application. The format for this ARN is: arn:
*
* A JSON string that provides information about your application structure. To learn more about the
*
* The
*
* The list of logical resources that must be included in the Resilience Hub application.
*
* Type: Array
*
* Don't add the resources that you want to exclude.
*
* Each
*
* The logical identifier of the resource.
*
* Type: Object
*
* Each
*
* The identifier of the resource.
*
* Type: String
*
*
* The name of the CloudFormation stack this resource belongs to.
*
* Type: String
*
*
* The name of the resource group this resource belongs to.
*
* Type: String
*
*
* The name of the Terraform S3 state file this resource belongs to.
*
* Type: String
*
*
* The name of the Amazon Elastic Kubernetes Service cluster and namespace this resource belongs to.
*
* This parameter accepts values in "eks-cluster/namespace" format.
*
* Type: String
*
*
* The type of resource.
*
* Type: string
*
*
* The name of the resource.
*
* Type: String
*
*
* Additional configuration parameters for an Resilience Hub application. If you want to implement
*
* Currently, this parameter accepts a key-value mapping (in a string format) of only one failover region and one
* associated account.
*
* Key:
* Value:
*
* The list of Application Components that this resource belongs to. If an Application Component is not part of the
* Resilience Hub application, it will be added.
*
* Type: Array
*
* Each
*
* The name of the Application Component.
*
* Type: String
*
*
* The type of Application Component. For more information about the types of Application Component, see Grouping resources
* in an AppComponent.
*
* Type: String
*
*
* The list of included resources that are assigned to the Application Component.
*
* Type: Array of strings
*
*
* Additional configuration parameters for an Resilience Hub application. If you want to implement
*
* Currently, this parameter accepts a key-value mapping (in a string format) of only one failover region and one
* associated account.
*
* Key:
* Value:
*
* The list of logical resource identifiers to be excluded from the application.
*
* Type: Array
*
* Don't add the resources that you want to include.
*
* Each
*
* The logical identifier of the resource.
*
* Type: Object
*
* You can configure only one of the following fields:
*
*
*
*
*
* Each
*
* The identifier of the resource.
*
* Type: String
*
*
* The name of the CloudFormation stack this resource belongs to.
*
* Type: String
*
*
* The name of the resource group this resource belongs to.
*
* Type: String
*
*
* The name of the Terraform S3 state file this resource belongs to.
*
* Type: String
*
*
* The name of the Amazon Elastic Kubernetes Service cluster and namespace this resource belongs to.
*
* This parameter accepts values in "eks-cluster/namespace" format.
*
* Type: String
*
*
* The Resilience Hub application version.
*
*
* Additional configuration parameters for an Resilience Hub application. If you want to implement
*
* Currently, this parameter accepts a key-value mapping (in a string format) of only one failover region and one
* associated account.
*
* Key:
* Value: partition
:resiliencehub:region
:account
:app/app-id
. For more
* information about ARNs, see
* Amazon Resource Names (ARNs) in the AWS General Reference guide.
* appTemplateBody
template, see the sample template provided in the Examples section.
* appTemplateBody
JSON string has the following structure:
*
*
*/
private String appTemplateBody;
/**
* resources
* resources
array item includes the following fields:
*
*
* logicalResourceId
* logicalResourceId
object includes the following fields:
*
*
* identifier
* logicalStackName
* resourceGroupName
* terraformSourceName
* eksSourceName
* type
* name
* additionalInfo
* additionalInfo
through the Resilience Hub console rather than using an API call, see Configure the
* application configuration parameters.
* "failover-regions"
* "[{"region":"<REGION>", "accounts":[{"id":"<ACCOUNT_ID>"}]}]"
* appComponents
* appComponents
array item includes the following fields:
*
*
* name
* type
* resourceNames
* additionalInfo
* additionalInfo
through the Resilience Hub console rather than using an API call, see Configure the
* application configuration parameters.
* "failover-regions"
* "[{"region":"<REGION>", "accounts":[{"id":"<ACCOUNT_ID>"}]}]"
* excludedResources
* excludedResources
array item includes the following fields:
*
*
* logicalResourceIds
*
*
* logicalStackName
* resourceGroupName
* terraformSourceName
* eksSourceName
* logicalResourceIds
object includes the following fields:
*
*
* identifier
* logicalStackName
* resourceGroupName
* terraformSourceName
* eksSourceName
* version
* additionalInfo
* additionalInfo
through the Resilience Hub console rather than using an API call, see Configure the
* application configuration parameters.
* "failover-regions"
* "[{"region":"<REGION>", "accounts":[{"id":"<ACCOUNT_ID>"}]}]"
* partition
:resiliencehub:region
:account
:app/app-id
. For more
* information about ARNs, see
* Amazon Resource Names (ARNs) in the AWS General Reference guide.
* partition
:resiliencehub:region
:account
:app/app-id
. For
* more information about ARNs, see Amazon Resource Names
* (ARNs) in the AWS General Reference guide.
*/
public void setAppArn(String appArn) {
this.appArn = appArn;
}
/**
* partition
:resiliencehub:region
:account
:app/app-id
. For more
* information about ARNs, see
* Amazon Resource Names (ARNs) in the AWS General Reference guide.
* partition
:resiliencehub:region
:account
:app/app-id
.
* For more information about ARNs, see Amazon Resource Names
* (ARNs) in the AWS General Reference guide.
*/
public String getAppArn() {
return this.appArn;
}
/**
* partition
:resiliencehub:region
:account
:app/app-id
. For more
* information about ARNs, see
* Amazon Resource Names (ARNs) in the AWS General Reference guide.
* partition
:resiliencehub:region
:account
:app/app-id
. For
* more information about ARNs, see Amazon Resource Names
* (ARNs) in the AWS General Reference guide.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public DescribeAppVersionTemplateResult withAppArn(String appArn) {
setAppArn(appArn);
return this;
}
/**
* appTemplateBody
template, see the sample template provided in the Examples section.
* appTemplateBody
JSON string has the following structure:
*
*
*
* @param appTemplateBody
* A JSON string that provides information about your application structure. To learn more about the
* resources
* resources
array item includes the following fields:
*
*
* logicalResourceId
* logicalResourceId
object includes the following fields:
*
*
* identifier
* logicalStackName
* resourceGroupName
* terraformSourceName
* eksSourceName
* type
* name
* additionalInfo
* additionalInfo
through the Resilience Hub console rather than using an API call, see Configure the
* application configuration parameters.
* "failover-regions"
* "[{"region":"<REGION>", "accounts":[{"id":"<ACCOUNT_ID>"}]}]"
* appComponents
* appComponents
array item includes the following fields:
*
*
* name
* type
* resourceNames
* additionalInfo
* additionalInfo
through the Resilience Hub console rather than using an API call, see Configure the
* application configuration parameters.
* "failover-regions"
* "[{"region":"<REGION>", "accounts":[{"id":"<ACCOUNT_ID>"}]}]"
* excludedResources
* excludedResources
array item includes the following fields:
*
*
* logicalResourceIds
*
*
* logicalStackName
* resourceGroupName
* terraformSourceName
* eksSourceName
* logicalResourceIds
object includes the following fields:
*
*
* identifier
* logicalStackName
* resourceGroupName
* terraformSourceName
* eksSourceName
* version
* additionalInfo
* additionalInfo
through the Resilience Hub console rather than using an API call, see Configure the
* application configuration parameters.
* "failover-regions"
* "[{"region":"<REGION>", "accounts":[{"id":"<ACCOUNT_ID>"}]}]"
* appTemplateBody
template, see the sample template provided in the Examples
* section.
* The appTemplateBody
JSON string has the following structure:
*
* resources
*
* The list of logical resources that must be included in the Resilience Hub application. *
** Type: Array *
** Don't add the resources that you want to exclude. *
*
* Each resources
array item includes the following fields:
*
* logicalResourceId
*
* The logical identifier of the resource. *
** Type: Object *
*
* Each logicalResourceId
object includes the following fields:
*
* identifier
*
* The identifier of the resource. *
** Type: String *
*
* logicalStackName
*
* The name of the CloudFormation stack this resource belongs to. *
** Type: String *
*
* resourceGroupName
*
* The name of the resource group this resource belongs to. *
** Type: String *
*
* terraformSourceName
*
* The name of the Terraform S3 state file this resource belongs to. *
** Type: String *
*
* eksSourceName
*
* The name of the Amazon Elastic Kubernetes Service cluster and namespace this resource belongs to. *
** This parameter accepts values in "eks-cluster/namespace" format. *
** Type: String *
*
* type
*
* The type of resource. *
** Type: string *
*
* name
*
* The name of the resource. *
** Type: String *
*
* additionalInfo
*
* Additional configuration parameters for an Resilience Hub application. If you want to implement
* additionalInfo
through the Resilience Hub console rather than using an API call, see Configure the
* application configuration parameters.
*
* Currently, this parameter accepts a key-value mapping (in a string format) of only one failover region and * one associated account. *
*
* Key: "failover-regions"
*
* Value: "[{"region":"<REGION>", "accounts":[{"id":"<ACCOUNT_ID>"}]}]"
*
* appComponents
*
* The list of Application Components that this resource belongs to. If an Application Component is not part * of the Resilience Hub application, it will be added. *
** Type: Array *
*
* Each appComponents
array item includes the following fields:
*
* name
*
* The name of the Application Component. *
** Type: String *
*
* type
*
* The type of Application Component. For more information about the types of Application Component, see Grouping * resources in an AppComponent. *
** Type: String *
*
* resourceNames
*
* The list of included resources that are assigned to the Application Component. *
** Type: Array of strings *
*
* additionalInfo
*
* Additional configuration parameters for an Resilience Hub application. If you want to implement
* additionalInfo
through the Resilience Hub console rather than using an API call, see Configure the
* application configuration parameters.
*
* Currently, this parameter accepts a key-value mapping (in a string format) of only one failover region and * one associated account. *
*
* Key: "failover-regions"
*
* Value: "[{"region":"<REGION>", "accounts":[{"id":"<ACCOUNT_ID>"}]}]"
*
* excludedResources
*
* The list of logical resource identifiers to be excluded from the application. *
** Type: Array *
** Don't add the resources that you want to include. *
*
* Each excludedResources
array item includes the following fields:
*
* logicalResourceIds
*
* The logical identifier of the resource. *
** Type: Object *
** You can configure only one of the following fields: *
*
* logicalStackName
*
* resourceGroupName
*
* terraformSourceName
*
* eksSourceName
*
* Each logicalResourceIds
object includes the following fields:
*
* identifier
*
* The identifier of the resource. *
** Type: String *
*
* logicalStackName
*
* The name of the CloudFormation stack this resource belongs to. *
** Type: String *
*
* resourceGroupName
*
* The name of the resource group this resource belongs to. *
** Type: String *
*
* terraformSourceName
*
* The name of the Terraform S3 state file this resource belongs to. *
** Type: String *
*
* eksSourceName
*
* The name of the Amazon Elastic Kubernetes Service cluster and namespace this resource belongs to. *
** This parameter accepts values in "eks-cluster/namespace" format. *
** Type: String *
*
* version
*
* The Resilience Hub application version. *
*
* additionalInfo
*
* Additional configuration parameters for an Resilience Hub application. If you want to implement
* additionalInfo
through the Resilience Hub console rather than using an API call, see Configure the
* application configuration parameters.
*
* Currently, this parameter accepts a key-value mapping (in a string format) of only one failover region and * one associated account. *
*
* Key: "failover-regions"
*
* Value: "[{"region":"<REGION>", "accounts":[{"id":"<ACCOUNT_ID>"}]}]"
*
* A JSON string that provides information about your application structure. To learn more about the
* appTemplateBody
template, see the sample template provided in the Examples section.
*
* The appTemplateBody
JSON string has the following structure:
*
* resources
*
* The list of logical resources that must be included in the Resilience Hub application. *
** Type: Array *
** Don't add the resources that you want to exclude. *
*
* Each resources
array item includes the following fields:
*
* logicalResourceId
*
* The logical identifier of the resource. *
** Type: Object *
*
* Each logicalResourceId
object includes the following fields:
*
* identifier
*
* The identifier of the resource. *
** Type: String *
*
* logicalStackName
*
* The name of the CloudFormation stack this resource belongs to. *
** Type: String *
*
* resourceGroupName
*
* The name of the resource group this resource belongs to. *
** Type: String *
*
* terraformSourceName
*
* The name of the Terraform S3 state file this resource belongs to. *
** Type: String *
*
* eksSourceName
*
* The name of the Amazon Elastic Kubernetes Service cluster and namespace this resource belongs to. *
** This parameter accepts values in "eks-cluster/namespace" format. *
** Type: String *
*
* type
*
* The type of resource. *
** Type: string *
*
* name
*
* The name of the resource. *
** Type: String *
*
* additionalInfo
*
* Additional configuration parameters for an Resilience Hub application. If you want to implement
* additionalInfo
through the Resilience Hub console rather than using an API call, see Configure the
* application configuration parameters.
*
* Currently, this parameter accepts a key-value mapping (in a string format) of only one failover region and one * associated account. *
*
* Key: "failover-regions"
*
* Value: "[{"region":"<REGION>", "accounts":[{"id":"<ACCOUNT_ID>"}]}]"
*
* appComponents
*
* The list of Application Components that this resource belongs to. If an Application Component is not part of the * Resilience Hub application, it will be added. *
** Type: Array *
*
* Each appComponents
array item includes the following fields:
*
* name
*
* The name of the Application Component. *
** Type: String *
*
* type
*
* The type of Application Component. For more information about the types of Application Component, see Grouping resources * in an AppComponent. *
** Type: String *
*
* resourceNames
*
* The list of included resources that are assigned to the Application Component. *
** Type: Array of strings *
*
* additionalInfo
*
* Additional configuration parameters for an Resilience Hub application. If you want to implement
* additionalInfo
through the Resilience Hub console rather than using an API call, see Configure the
* application configuration parameters.
*
* Currently, this parameter accepts a key-value mapping (in a string format) of only one failover region and one * associated account. *
*
* Key: "failover-regions"
*
* Value: "[{"region":"<REGION>", "accounts":[{"id":"<ACCOUNT_ID>"}]}]"
*
* excludedResources
*
* The list of logical resource identifiers to be excluded from the application. *
** Type: Array *
** Don't add the resources that you want to include. *
*
* Each excludedResources
array item includes the following fields:
*
* logicalResourceIds
*
* The logical identifier of the resource. *
** Type: Object *
** You can configure only one of the following fields: *
*
* logicalStackName
*
* resourceGroupName
*
* terraformSourceName
*
* eksSourceName
*
* Each logicalResourceIds
object includes the following fields:
*
* identifier
*
* The identifier of the resource. *
** Type: String *
*
* logicalStackName
*
* The name of the CloudFormation stack this resource belongs to. *
** Type: String *
*
* resourceGroupName
*
* The name of the resource group this resource belongs to. *
** Type: String *
*
* terraformSourceName
*
* The name of the Terraform S3 state file this resource belongs to. *
** Type: String *
*
* eksSourceName
*
* The name of the Amazon Elastic Kubernetes Service cluster and namespace this resource belongs to. *
** This parameter accepts values in "eks-cluster/namespace" format. *
** Type: String *
*
* version
*
* The Resilience Hub application version. *
*
* additionalInfo
*
* Additional configuration parameters for an Resilience Hub application. If you want to implement
* additionalInfo
through the Resilience Hub console rather than using an API call, see Configure the
* application configuration parameters.
*
* Currently, this parameter accepts a key-value mapping (in a string format) of only one failover region and one * associated account. *
*
* Key: "failover-regions"
*
* Value: "[{"region":"<REGION>", "accounts":[{"id":"<ACCOUNT_ID>"}]}]"
*
appTemplateBody
template, see the sample template provided in the Examples
* section.
*
* The appTemplateBody
JSON string has the following structure:
*
* resources
*
* The list of logical resources that must be included in the Resilience Hub application. *
** Type: Array *
** Don't add the resources that you want to exclude. *
*
* Each resources
array item includes the following fields:
*
* logicalResourceId
*
* The logical identifier of the resource. *
** Type: Object *
*
* Each logicalResourceId
object includes the following fields:
*
* identifier
*
* The identifier of the resource. *
** Type: String *
*
* logicalStackName
*
* The name of the CloudFormation stack this resource belongs to. *
** Type: String *
*
* resourceGroupName
*
* The name of the resource group this resource belongs to. *
** Type: String *
*
* terraformSourceName
*
* The name of the Terraform S3 state file this resource belongs to. *
** Type: String *
*
* eksSourceName
*
* The name of the Amazon Elastic Kubernetes Service cluster and namespace this resource belongs to. *
** This parameter accepts values in "eks-cluster/namespace" format. *
** Type: String *
*
* type
*
* The type of resource. *
** Type: string *
*
* name
*
* The name of the resource. *
** Type: String *
*
* additionalInfo
*
* Additional configuration parameters for an Resilience Hub application. If you want to implement
* additionalInfo
through the Resilience Hub console rather than using an API call, see Configure the
* application configuration parameters.
*
* Currently, this parameter accepts a key-value mapping (in a string format) of only one failover region * and one associated account. *
*
* Key: "failover-regions"
*
* Value: "[{"region":"<REGION>", "accounts":[{"id":"<ACCOUNT_ID>"}]}]"
*
* appComponents
*
* The list of Application Components that this resource belongs to. If an Application Component is not part * of the Resilience Hub application, it will be added. *
** Type: Array *
*
* Each appComponents
array item includes the following fields:
*
* name
*
* The name of the Application Component. *
** Type: String *
*
* type
*
* The type of Application Component. For more information about the types of Application Component, see Grouping * resources in an AppComponent. *
** Type: String *
*
* resourceNames
*
* The list of included resources that are assigned to the Application Component. *
** Type: Array of strings *
*
* additionalInfo
*
* Additional configuration parameters for an Resilience Hub application. If you want to implement
* additionalInfo
through the Resilience Hub console rather than using an API call, see Configure the
* application configuration parameters.
*
* Currently, this parameter accepts a key-value mapping (in a string format) of only one failover region * and one associated account. *
*
* Key: "failover-regions"
*
* Value: "[{"region":"<REGION>", "accounts":[{"id":"<ACCOUNT_ID>"}]}]"
*
* excludedResources
*
* The list of logical resource identifiers to be excluded from the application. *
** Type: Array *
** Don't add the resources that you want to include. *
*
* Each excludedResources
array item includes the following fields:
*
* logicalResourceIds
*
* The logical identifier of the resource. *
** Type: Object *
** You can configure only one of the following fields: *
*
* logicalStackName
*
* resourceGroupName
*
* terraformSourceName
*
* eksSourceName
*
* Each logicalResourceIds
object includes the following fields:
*
* identifier
*
* The identifier of the resource. *
** Type: String *
*
* logicalStackName
*
* The name of the CloudFormation stack this resource belongs to. *
** Type: String *
*
* resourceGroupName
*
* The name of the resource group this resource belongs to. *
** Type: String *
*
* terraformSourceName
*
* The name of the Terraform S3 state file this resource belongs to. *
** Type: String *
*
* eksSourceName
*
* The name of the Amazon Elastic Kubernetes Service cluster and namespace this resource belongs to. *
** This parameter accepts values in "eks-cluster/namespace" format. *
** Type: String *
*
* version
*
* The Resilience Hub application version. *
*
* additionalInfo
*
* Additional configuration parameters for an Resilience Hub application. If you want to implement
* additionalInfo
through the Resilience Hub console rather than using an API call, see Configure the
* application configuration parameters.
*
* Currently, this parameter accepts a key-value mapping (in a string format) of only one failover region * and one associated account. *
*
* Key: "failover-regions"
*
* Value: "[{"region":"<REGION>", "accounts":[{"id":"<ACCOUNT_ID>"}]}]"
*
* A JSON string that provides information about your application structure. To learn more about the
* appTemplateBody
template, see the sample template provided in the Examples section.
*
* The appTemplateBody
JSON string has the following structure:
*
* resources
*
* The list of logical resources that must be included in the Resilience Hub application. *
** Type: Array *
** Don't add the resources that you want to exclude. *
*
* Each resources
array item includes the following fields:
*
* logicalResourceId
*
* The logical identifier of the resource. *
** Type: Object *
*
* Each logicalResourceId
object includes the following fields:
*
* identifier
*
* The identifier of the resource. *
** Type: String *
*
* logicalStackName
*
* The name of the CloudFormation stack this resource belongs to. *
** Type: String *
*
* resourceGroupName
*
* The name of the resource group this resource belongs to. *
** Type: String *
*
* terraformSourceName
*
* The name of the Terraform S3 state file this resource belongs to. *
** Type: String *
*
* eksSourceName
*
* The name of the Amazon Elastic Kubernetes Service cluster and namespace this resource belongs to. *
** This parameter accepts values in "eks-cluster/namespace" format. *
** Type: String *
*
* type
*
* The type of resource. *
** Type: string *
*
* name
*
* The name of the resource. *
** Type: String *
*
* additionalInfo
*
* Additional configuration parameters for an Resilience Hub application. If you want to implement
* additionalInfo
through the Resilience Hub console rather than using an API call, see Configure the
* application configuration parameters.
*
* Currently, this parameter accepts a key-value mapping (in a string format) of only one failover region and one * associated account. *
*
* Key: "failover-regions"
*
* Value: "[{"region":"<REGION>", "accounts":[{"id":"<ACCOUNT_ID>"}]}]"
*
* appComponents
*
* The list of Application Components that this resource belongs to. If an Application Component is not part of the * Resilience Hub application, it will be added. *
** Type: Array *
*
* Each appComponents
array item includes the following fields:
*
* name
*
* The name of the Application Component. *
** Type: String *
*
* type
*
* The type of Application Component. For more information about the types of Application Component, see Grouping resources * in an AppComponent. *
** Type: String *
*
* resourceNames
*
* The list of included resources that are assigned to the Application Component. *
** Type: Array of strings *
*
* additionalInfo
*
* Additional configuration parameters for an Resilience Hub application. If you want to implement
* additionalInfo
through the Resilience Hub console rather than using an API call, see Configure the
* application configuration parameters.
*
* Currently, this parameter accepts a key-value mapping (in a string format) of only one failover region and one * associated account. *
*
* Key: "failover-regions"
*
* Value: "[{"region":"<REGION>", "accounts":[{"id":"<ACCOUNT_ID>"}]}]"
*
* excludedResources
*
* The list of logical resource identifiers to be excluded from the application. *
** Type: Array *
** Don't add the resources that you want to include. *
*
* Each excludedResources
array item includes the following fields:
*
* logicalResourceIds
*
* The logical identifier of the resource. *
** Type: Object *
** You can configure only one of the following fields: *
*
* logicalStackName
*
* resourceGroupName
*
* terraformSourceName
*
* eksSourceName
*
* Each logicalResourceIds
object includes the following fields:
*
* identifier
*
* The identifier of the resource. *
** Type: String *
*
* logicalStackName
*
* The name of the CloudFormation stack this resource belongs to. *
** Type: String *
*
* resourceGroupName
*
* The name of the resource group this resource belongs to. *
** Type: String *
*
* terraformSourceName
*
* The name of the Terraform S3 state file this resource belongs to. *
** Type: String *
*
* eksSourceName
*
* The name of the Amazon Elastic Kubernetes Service cluster and namespace this resource belongs to. *
** This parameter accepts values in "eks-cluster/namespace" format. *
** Type: String *
*
* version
*
* The Resilience Hub application version. *
*
* additionalInfo
*
* Additional configuration parameters for an Resilience Hub application. If you want to implement
* additionalInfo
through the Resilience Hub console rather than using an API call, see Configure the
* application configuration parameters.
*
* Currently, this parameter accepts a key-value mapping (in a string format) of only one failover region and one * associated account. *
*
* Key: "failover-regions"
*
* Value: "[{"region":"<REGION>", "accounts":[{"id":"<ACCOUNT_ID>"}]}]"
*
appTemplateBody
template, see the sample template provided in the Examples
* section.
*
* The appTemplateBody
JSON string has the following structure:
*
* resources
*
* The list of logical resources that must be included in the Resilience Hub application. *
** Type: Array *
** Don't add the resources that you want to exclude. *
*
* Each resources
array item includes the following fields:
*
* logicalResourceId
*
* The logical identifier of the resource. *
** Type: Object *
*
* Each logicalResourceId
object includes the following fields:
*
* identifier
*
* The identifier of the resource. *
** Type: String *
*
* logicalStackName
*
* The name of the CloudFormation stack this resource belongs to. *
** Type: String *
*
* resourceGroupName
*
* The name of the resource group this resource belongs to. *
** Type: String *
*
* terraformSourceName
*
* The name of the Terraform S3 state file this resource belongs to. *
** Type: String *
*
* eksSourceName
*
* The name of the Amazon Elastic Kubernetes Service cluster and namespace this resource belongs to. *
** This parameter accepts values in "eks-cluster/namespace" format. *
** Type: String *
*
* type
*
* The type of resource. *
** Type: string *
*
* name
*
* The name of the resource. *
** Type: String *
*
* additionalInfo
*
* Additional configuration parameters for an Resilience Hub application. If you want to implement
* additionalInfo
through the Resilience Hub console rather than using an API call, see Configure the
* application configuration parameters.
*
* Currently, this parameter accepts a key-value mapping (in a string format) of only one failover region and * one associated account. *
*
* Key: "failover-regions"
*
* Value: "[{"region":"<REGION>", "accounts":[{"id":"<ACCOUNT_ID>"}]}]"
*
* appComponents
*
* The list of Application Components that this resource belongs to. If an Application Component is not part * of the Resilience Hub application, it will be added. *
** Type: Array *
*
* Each appComponents
array item includes the following fields:
*
* name
*
* The name of the Application Component. *
** Type: String *
*
* type
*
* The type of Application Component. For more information about the types of Application Component, see Grouping * resources in an AppComponent. *
** Type: String *
*
* resourceNames
*
* The list of included resources that are assigned to the Application Component. *
** Type: Array of strings *
*
* additionalInfo
*
* Additional configuration parameters for an Resilience Hub application. If you want to implement
* additionalInfo
through the Resilience Hub console rather than using an API call, see Configure the
* application configuration parameters.
*
* Currently, this parameter accepts a key-value mapping (in a string format) of only one failover region and * one associated account. *
*
* Key: "failover-regions"
*
* Value: "[{"region":"<REGION>", "accounts":[{"id":"<ACCOUNT_ID>"}]}]"
*
* excludedResources
*
* The list of logical resource identifiers to be excluded from the application. *
** Type: Array *
** Don't add the resources that you want to include. *
*
* Each excludedResources
array item includes the following fields:
*
* logicalResourceIds
*
* The logical identifier of the resource. *
** Type: Object *
** You can configure only one of the following fields: *
*
* logicalStackName
*
* resourceGroupName
*
* terraformSourceName
*
* eksSourceName
*
* Each logicalResourceIds
object includes the following fields:
*
* identifier
*
* The identifier of the resource. *
** Type: String *
*
* logicalStackName
*
* The name of the CloudFormation stack this resource belongs to. *
** Type: String *
*
* resourceGroupName
*
* The name of the resource group this resource belongs to. *
** Type: String *
*
* terraformSourceName
*
* The name of the Terraform S3 state file this resource belongs to. *
** Type: String *
*
* eksSourceName
*
* The name of the Amazon Elastic Kubernetes Service cluster and namespace this resource belongs to. *
** This parameter accepts values in "eks-cluster/namespace" format. *
** Type: String *
*
* version
*
* The Resilience Hub application version. *
*
* additionalInfo
*
* Additional configuration parameters for an Resilience Hub application. If you want to implement
* additionalInfo
through the Resilience Hub console rather than using an API call, see Configure the
* application configuration parameters.
*
* Currently, this parameter accepts a key-value mapping (in a string format) of only one failover region and * one associated account. *
*
* Key: "failover-regions"
*
* Value: "[{"region":"<REGION>", "accounts":[{"id":"<ACCOUNT_ID>"}]}]"
*
* The version of the application. *
* * @param appVersion * The version of the application. */ public void setAppVersion(String appVersion) { this.appVersion = appVersion; } /** ** The version of the application. *
* * @return The version of the application. */ public String getAppVersion() { return this.appVersion; } /** ** The version of the application. *
* * @param appVersion * The version of the application. * @return Returns a reference to this object so that method calls can be chained together. */ public DescribeAppVersionTemplateResult withAppVersion(String appVersion) { setAppVersion(appVersion); return this; } /** * Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be * redacted from this string using a placeholder value. * * @return A string representation of this object. * * @see java.lang.Object#toString() */ @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); if (getAppArn() != null) sb.append("AppArn: ").append(getAppArn()).append(","); if (getAppTemplateBody() != null) sb.append("AppTemplateBody: ").append(getAppTemplateBody()).append(","); if (getAppVersion() != null) sb.append("AppVersion: ").append(getAppVersion()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof DescribeAppVersionTemplateResult == false) return false; DescribeAppVersionTemplateResult other = (DescribeAppVersionTemplateResult) obj; if (other.getAppArn() == null ^ this.getAppArn() == null) return false; if (other.getAppArn() != null && other.getAppArn().equals(this.getAppArn()) == false) return false; if (other.getAppTemplateBody() == null ^ this.getAppTemplateBody() == null) return false; if (other.getAppTemplateBody() != null && other.getAppTemplateBody().equals(this.getAppTemplateBody()) == false) return false; if (other.getAppVersion() == null ^ this.getAppVersion() == null) return false; if (other.getAppVersion() != null && other.getAppVersion().equals(this.getAppVersion()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getAppArn() == null) ? 0 : getAppArn().hashCode()); hashCode = prime * hashCode + ((getAppTemplateBody() == null) ? 0 : getAppTemplateBody().hashCode()); hashCode = prime * hashCode + ((getAppVersion() == null) ? 0 : getAppVersion().hashCode()); return hashCode; } @Override public DescribeAppVersionTemplateResult clone() { try { return (DescribeAppVersionTemplateResult) super.clone(); } catch (CloneNotSupportedException e) { throw new IllegalStateException("Got a CloneNotSupportedException from Object.clone() " + "even though we're Cloneable!", e); } } }