/*
* Copyright 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.
*/
/*
* Do not modify this file. This file is generated from the resiliencehub-2020-04-30.normal.json service model.
*/
using System;
using System.Collections.Generic;
using System.Xml.Serialization;
using System.Text;
using System.IO;
using System.Net;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
namespace Amazon.ResilienceHub.Model
{
///
/// Container for the parameters to the CreateAppVersionResource operation.
/// Adds a resource to the Resilience Hub application and assigns it to the specified
/// Application Components. If you specify a new Application Component, Resilience Hub
/// will automatically create the Application Component.
///
/// -
///
/// This action has no effect outside Resilience Hub.
///
///
-
///
/// This API updates the Resilience Hub application draft version. To use this resource
/// for running resiliency assessments, you must publish the Resilience Hub application
/// using the
PublishAppVersion
API.
///
/// -
///
/// To update application version with new
physicalResourceID
, you must call
/// ResolveAppVersionResources
API.
///
///
///
public partial class CreateAppVersionResourceRequest : AmazonResilienceHubRequest
{
private Dictionary> _additionalInfo = new Dictionary>();
private string _appArn;
private List _appComponents = new List();
private string _awsAccountId;
private string _awsRegion;
private string _clientToken;
private LogicalResourceId _logicalResourceId;
private string _physicalResourceId;
private string _resourceName;
private string _resourceType;
///
/// Gets and sets the property AdditionalInfo.
///
/// Currently, there is no supported additional information for resources.
///
///
public Dictionary> AdditionalInfo
{
get { return this._additionalInfo; }
set { this._additionalInfo = value; }
}
// Check to see if AdditionalInfo property is set
internal bool IsSetAdditionalInfo()
{
return this._additionalInfo != null && this._additionalInfo.Count > 0;
}
///
/// Gets and sets the property 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.
///
///
[AWSProperty(Required=true)]
public string AppArn
{
get { return this._appArn; }
set { this._appArn = value; }
}
// Check to see if AppArn property is set
internal bool IsSetAppArn()
{
return this._appArn != null;
}
///
/// Gets and sets the property 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.
///
///
[AWSProperty(Required=true)]
public List AppComponents
{
get { return this._appComponents; }
set { this._appComponents = value; }
}
// Check to see if AppComponents property is set
internal bool IsSetAppComponents()
{
return this._appComponents != null && this._appComponents.Count > 0;
}
///
/// Gets and sets the property AwsAccountId.
///
/// The Amazon Web Services account that owns the physical resource.
///
///
public string AwsAccountId
{
get { return this._awsAccountId; }
set { this._awsAccountId = value; }
}
// Check to see if AwsAccountId property is set
internal bool IsSetAwsAccountId()
{
return this._awsAccountId != null;
}
///
/// Gets and sets the property AwsRegion.
///
/// The Amazon Web Services region that owns the physical resource.
///
///
public string AwsRegion
{
get { return this._awsRegion; }
set { this._awsRegion = value; }
}
// Check to see if AwsRegion property is set
internal bool IsSetAwsRegion()
{
return this._awsRegion != null;
}
///
/// Gets and sets the property ClientToken.
///
/// Used for an idempotency token. A client token is a unique, case-sensitive string of
/// up to 64 ASCII characters. You should not reuse the same client token for other API
/// requests.
///
///
[AWSProperty(Min=1, Max=63)]
public string ClientToken
{
get { return this._clientToken; }
set { this._clientToken = value; }
}
// Check to see if ClientToken property is set
internal bool IsSetClientToken()
{
return this._clientToken != null;
}
///
/// Gets and sets the property LogicalResourceId.
///
/// The logical identifier of the resource.
///
///
[AWSProperty(Required=true)]
public LogicalResourceId LogicalResourceId
{
get { return this._logicalResourceId; }
set { this._logicalResourceId = value; }
}
// Check to see if LogicalResourceId property is set
internal bool IsSetLogicalResourceId()
{
return this._logicalResourceId != null;
}
///
/// Gets and sets the property PhysicalResourceId.
///
/// The physical identifier of the resource.
///
///
[AWSProperty(Required=true, Min=1, Max=2048)]
public string PhysicalResourceId
{
get { return this._physicalResourceId; }
set { this._physicalResourceId = value; }
}
// Check to see if PhysicalResourceId property is set
internal bool IsSetPhysicalResourceId()
{
return this._physicalResourceId != null;
}
///
/// Gets and sets the property ResourceName.
///
/// The name of the resource.
///
///
public string ResourceName
{
get { return this._resourceName; }
set { this._resourceName = value; }
}
// Check to see if ResourceName property is set
internal bool IsSetResourceName()
{
return this._resourceName != null;
}
///
/// Gets and sets the property ResourceType.
///
/// The type of resource.
///
///
[AWSProperty(Required=true, Min=1, Max=255)]
public string ResourceType
{
get { return this._resourceType; }
set { this._resourceType = value; }
}
// Check to see if ResourceType property is set
internal bool IsSetResourceType()
{
return this._resourceType != null;
}
}
}