/*
* 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 elasticbeanstalk-2010-12-01.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.ElasticBeanstalk.Model
{
///
/// Describes the properties of an application version.
///
public partial class ApplicationVersionDescription
{
private string _applicationName;
private string _applicationVersionArn;
private string _buildArn;
private DateTime? _dateCreated;
private DateTime? _dateUpdated;
private string _description;
private SourceBuildInformation _sourceBuildInformation;
private S3Location _sourceBundle;
private ApplicationVersionStatus _status;
private string _versionLabel;
///
/// Empty constructor used to set properties independently even when a simple constructor is available
///
public ApplicationVersionDescription() { }
///
/// Gets and sets the property ApplicationName.
///
/// The name of the application to which the application version belongs.
///
///
[AWSProperty(Min=1, Max=100)]
public string ApplicationName
{
get { return this._applicationName; }
set { this._applicationName = value; }
}
// Check to see if ApplicationName property is set
internal bool IsSetApplicationName()
{
return this._applicationName != null;
}
///
/// Gets and sets the property ApplicationVersionArn.
///
/// The Amazon Resource Name (ARN) of the application version.
///
///
public string ApplicationVersionArn
{
get { return this._applicationVersionArn; }
set { this._applicationVersionArn = value; }
}
// Check to see if ApplicationVersionArn property is set
internal bool IsSetApplicationVersionArn()
{
return this._applicationVersionArn != null;
}
///
/// Gets and sets the property BuildArn.
///
/// Reference to the artifact from the AWS CodeBuild build.
///
///
public string BuildArn
{
get { return this._buildArn; }
set { this._buildArn = value; }
}
// Check to see if BuildArn property is set
internal bool IsSetBuildArn()
{
return this._buildArn != null;
}
///
/// Gets and sets the property DateCreated.
///
/// The creation date of the application version.
///
///
public DateTime DateCreated
{
get { return this._dateCreated.GetValueOrDefault(); }
set { this._dateCreated = value; }
}
// Check to see if DateCreated property is set
internal bool IsSetDateCreated()
{
return this._dateCreated.HasValue;
}
///
/// Gets and sets the property DateUpdated.
///
/// The last modified date of the application version.
///
///
public DateTime DateUpdated
{
get { return this._dateUpdated.GetValueOrDefault(); }
set { this._dateUpdated = value; }
}
// Check to see if DateUpdated property is set
internal bool IsSetDateUpdated()
{
return this._dateUpdated.HasValue;
}
///
/// Gets and sets the property Description.
///
/// The description of the application version.
///
///
[AWSProperty(Max=200)]
public string Description
{
get { return this._description; }
set { this._description = value; }
}
// Check to see if Description property is set
internal bool IsSetDescription()
{
return this._description != null;
}
///
/// Gets and sets the property SourceBuildInformation.
///
/// If the version's source code was retrieved from AWS CodeCommit, the location of the
/// source code for the application version.
///
///
public SourceBuildInformation SourceBuildInformation
{
get { return this._sourceBuildInformation; }
set { this._sourceBuildInformation = value; }
}
// Check to see if SourceBuildInformation property is set
internal bool IsSetSourceBuildInformation()
{
return this._sourceBuildInformation != null;
}
///
/// Gets and sets the property SourceBundle.
///
/// The storage location of the application version's source bundle in Amazon S3.
///
///
public S3Location SourceBundle
{
get { return this._sourceBundle; }
set { this._sourceBundle = value; }
}
// Check to see if SourceBundle property is set
internal bool IsSetSourceBundle()
{
return this._sourceBundle != null;
}
///
/// Gets and sets the property Status.
///
/// The processing status of the application version. Reflects the state of the application
/// version during its creation. Many of the values are only applicable if you specified
/// True
for the Process
parameter of the CreateApplicationVersion
/// action. The following list describes the possible values.
///
/// -
///
///
Unprocessed
– Application version wasn't pre-processed or validated.
/// Elastic Beanstalk will validate configuration files during deployment of the application
/// version to an environment.
///
/// -
///
///
Processing
– Elastic Beanstalk is currently processing the application
/// version.
///
/// -
///
///
Building
– Application version is currently undergoing an AWS CodeBuild
/// build.
///
/// -
///
///
Processed
– Elastic Beanstalk was successfully pre-processed and validated.
///
/// -
///
///
Failed
– Either the AWS CodeBuild build failed or configuration files
/// didn't pass validation. This application version isn't usable.
///
///
///
public ApplicationVersionStatus Status
{
get { return this._status; }
set { this._status = value; }
}
// Check to see if Status property is set
internal bool IsSetStatus()
{
return this._status != null;
}
///
/// Gets and sets the property VersionLabel.
///
/// A unique identifier for the application version.
///
///
[AWSProperty(Min=1, Max=100)]
public string VersionLabel
{
get { return this._versionLabel; }
set { this._versionLabel = value; }
}
// Check to see if VersionLabel property is set
internal bool IsSetVersionLabel()
{
return this._versionLabel != null;
}
}
}