/*
* 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 ssm-2014-11-06.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.SimpleSystemsManagement.Model
{
///
/// Describes an Amazon Web Services Systems Manager document (SSM document).
///
public partial class DocumentDescription
{
private string _approvedVersion;
private List _attachmentsInformation = new List();
private string _author;
private List _category = new List();
private List _categoryEnum = new List();
private DateTime? _createdDate;
private string _defaultVersion;
private string _description;
private string _displayName;
private DocumentFormat _documentFormat;
private DocumentType _documentType;
private string _documentVersion;
private string _hash;
private DocumentHashType _hashType;
private string _latestVersion;
private string _name;
private string _owner;
private List _parameters = new List();
private string _pendingReviewVersion;
private List _platformTypes = new List();
private List _requires = new List();
private List _reviewInformation = new List();
private ReviewStatus _reviewStatus;
private string _schemaVersion;
private string _sha1;
private DocumentStatus _status;
private string _statusInformation;
private List _tags = new List();
private string _targetType;
private string _versionName;
///
/// Gets and sets the property ApprovedVersion.
///
/// The version of the document currently approved for use in the organization.
///
///
public string ApprovedVersion
{
get { return this._approvedVersion; }
set { this._approvedVersion = value; }
}
// Check to see if ApprovedVersion property is set
internal bool IsSetApprovedVersion()
{
return this._approvedVersion != null;
}
///
/// Gets and sets the property AttachmentsInformation.
///
/// Details about the document attachments, including names, locations, sizes, and so
/// on.
///
///
public List AttachmentsInformation
{
get { return this._attachmentsInformation; }
set { this._attachmentsInformation = value; }
}
// Check to see if AttachmentsInformation property is set
internal bool IsSetAttachmentsInformation()
{
return this._attachmentsInformation != null && this._attachmentsInformation.Count > 0;
}
///
/// Gets and sets the property Author.
///
/// The user in your organization who created the document.
///
///
public string Author
{
get { return this._author; }
set { this._author = value; }
}
// Check to see if Author property is set
internal bool IsSetAuthor()
{
return this._author != null;
}
///
/// Gets and sets the property Category.
///
/// The classification of a document to help you identify and categorize its use.
///
///
[AWSProperty(Min=0, Max=3)]
public List Category
{
get { return this._category; }
set { this._category = value; }
}
// Check to see if Category property is set
internal bool IsSetCategory()
{
return this._category != null && this._category.Count > 0;
}
///
/// Gets and sets the property CategoryEnum.
///
/// The value that identifies a document's category.
///
///
[AWSProperty(Min=0, Max=3)]
public List CategoryEnum
{
get { return this._categoryEnum; }
set { this._categoryEnum = value; }
}
// Check to see if CategoryEnum property is set
internal bool IsSetCategoryEnum()
{
return this._categoryEnum != null && this._categoryEnum.Count > 0;
}
///
/// Gets and sets the property CreatedDate.
///
/// The date when the document was created.
///
///
public DateTime CreatedDate
{
get { return this._createdDate.GetValueOrDefault(); }
set { this._createdDate = value; }
}
// Check to see if CreatedDate property is set
internal bool IsSetCreatedDate()
{
return this._createdDate.HasValue;
}
///
/// Gets and sets the property DefaultVersion.
///
/// The default version.
///
///
public string DefaultVersion
{
get { return this._defaultVersion; }
set { this._defaultVersion = value; }
}
// Check to see if DefaultVersion property is set
internal bool IsSetDefaultVersion()
{
return this._defaultVersion != null;
}
///
/// Gets and sets the property Description.
///
/// A description of the document.
///
///
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 DisplayName.
///
/// The friendly name of the SSM document. This value can differ for each version of the
/// document. If you want to update this value, see UpdateDocument.
///
///
[AWSProperty(Max=1024)]
public string DisplayName
{
get { return this._displayName; }
set { this._displayName = value; }
}
// Check to see if DisplayName property is set
internal bool IsSetDisplayName()
{
return this._displayName != null;
}
///
/// Gets and sets the property DocumentFormat.
///
/// The document format, either JSON or YAML.
///
///
public DocumentFormat DocumentFormat
{
get { return this._documentFormat; }
set { this._documentFormat = value; }
}
// Check to see if DocumentFormat property is set
internal bool IsSetDocumentFormat()
{
return this._documentFormat != null;
}
///
/// Gets and sets the property DocumentType.
///
/// The type of document.
///
///
public DocumentType DocumentType
{
get { return this._documentType; }
set { this._documentType = value; }
}
// Check to see if DocumentType property is set
internal bool IsSetDocumentType()
{
return this._documentType != null;
}
///
/// Gets and sets the property DocumentVersion.
///
/// The document version.
///
///
public string DocumentVersion
{
get { return this._documentVersion; }
set { this._documentVersion = value; }
}
// Check to see if DocumentVersion property is set
internal bool IsSetDocumentVersion()
{
return this._documentVersion != null;
}
///
/// Gets and sets the property Hash.
///
/// The Sha256 or Sha1 hash created by the system when the document was created.
///
///
///
/// Sha1 hashes have been deprecated.
///
///
///
[AWSProperty(Max=256)]
public string Hash
{
get { return this._hash; }
set { this._hash = value; }
}
// Check to see if Hash property is set
internal bool IsSetHash()
{
return this._hash != null;
}
///
/// Gets and sets the property HashType.
///
/// The hash type of the document. Valid values include Sha256
or Sha1
.
///
///
///
/// Sha1 hashes have been deprecated.
///
///
///
public DocumentHashType HashType
{
get { return this._hashType; }
set { this._hashType = value; }
}
// Check to see if HashType property is set
internal bool IsSetHashType()
{
return this._hashType != null;
}
///
/// Gets and sets the property LatestVersion.
///
/// The latest version of the document.
///
///
public string LatestVersion
{
get { return this._latestVersion; }
set { this._latestVersion = value; }
}
// Check to see if LatestVersion property is set
internal bool IsSetLatestVersion()
{
return this._latestVersion != null;
}
///
/// Gets and sets the property Name.
///
/// The name of the SSM document.
///
///
public string Name
{
get { return this._name; }
set { this._name = value; }
}
// Check to see if Name property is set
internal bool IsSetName()
{
return this._name != null;
}
///
/// Gets and sets the property Owner.
///
/// The Amazon Web Services user that created the document.
///
///
public string Owner
{
get { return this._owner; }
set { this._owner = value; }
}
// Check to see if Owner property is set
internal bool IsSetOwner()
{
return this._owner != null;
}
///
/// Gets and sets the property Parameters.
///
/// A description of the parameters for a document.
///
///
public List Parameters
{
get { return this._parameters; }
set { this._parameters = value; }
}
// Check to see if Parameters property is set
internal bool IsSetParameters()
{
return this._parameters != null && this._parameters.Count > 0;
}
///
/// Gets and sets the property PendingReviewVersion.
///
/// The version of the document that is currently under review.
///
///
public string PendingReviewVersion
{
get { return this._pendingReviewVersion; }
set { this._pendingReviewVersion = value; }
}
// Check to see if PendingReviewVersion property is set
internal bool IsSetPendingReviewVersion()
{
return this._pendingReviewVersion != null;
}
///
/// Gets and sets the property PlatformTypes.
///
/// The list of operating system (OS) platforms compatible with this SSM document.
///
///
public List PlatformTypes
{
get { return this._platformTypes; }
set { this._platformTypes = value; }
}
// Check to see if PlatformTypes property is set
internal bool IsSetPlatformTypes()
{
return this._platformTypes != null && this._platformTypes.Count > 0;
}
///
/// Gets and sets the property Requires.
///
/// A list of SSM documents required by a document. For example, an ApplicationConfiguration
/// document requires an ApplicationConfigurationSchema
document.
///
///
[AWSProperty(Min=1)]
public List Requires
{
get { return this._requires; }
set { this._requires = value; }
}
// Check to see if Requires property is set
internal bool IsSetRequires()
{
return this._requires != null && this._requires.Count > 0;
}
///
/// Gets and sets the property ReviewInformation.
///
/// Details about the review of a document.
///
///
[AWSProperty(Min=1)]
public List ReviewInformation
{
get { return this._reviewInformation; }
set { this._reviewInformation = value; }
}
// Check to see if ReviewInformation property is set
internal bool IsSetReviewInformation()
{
return this._reviewInformation != null && this._reviewInformation.Count > 0;
}
///
/// Gets and sets the property ReviewStatus.
///
/// The current status of the review.
///
///
public ReviewStatus ReviewStatus
{
get { return this._reviewStatus; }
set { this._reviewStatus = value; }
}
// Check to see if ReviewStatus property is set
internal bool IsSetReviewStatus()
{
return this._reviewStatus != null;
}
///
/// Gets and sets the property SchemaVersion.
///
/// The schema version.
///
///
public string SchemaVersion
{
get { return this._schemaVersion; }
set { this._schemaVersion = value; }
}
// Check to see if SchemaVersion property is set
internal bool IsSetSchemaVersion()
{
return this._schemaVersion != null;
}
///
/// Gets and sets the property Sha1.
///
/// The SHA1 hash of the document, which you can use for verification.
///
///
public string Sha1
{
get { return this._sha1; }
set { this._sha1 = value; }
}
// Check to see if Sha1 property is set
internal bool IsSetSha1()
{
return this._sha1 != null;
}
///
/// Gets and sets the property Status.
///
/// The status of the SSM document.
///
///
public DocumentStatus 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 StatusInformation.
///
/// A message returned by Amazon Web Services Systems Manager that explains the Status
/// value. For example, a Failed
status might be explained by the StatusInformation
/// message, "The specified S3 bucket doesn't exist. Verify that the URL of the S3 bucket
/// is correct."
///
///
public string StatusInformation
{
get { return this._statusInformation; }
set { this._statusInformation = value; }
}
// Check to see if StatusInformation property is set
internal bool IsSetStatusInformation()
{
return this._statusInformation != null;
}
///
/// Gets and sets the property Tags.
///
/// The tags, or metadata, that have been applied to the document.
///
///
[AWSProperty(Max=1000)]
public List Tags
{
get { return this._tags; }
set { this._tags = value; }
}
// Check to see if Tags property is set
internal bool IsSetTags()
{
return this._tags != null && this._tags.Count > 0;
}
///
/// Gets and sets the property TargetType.
///
/// The target type which defines the kinds of resources the document can run on. For
/// example, /AWS::EC2::Instance
. For a list of valid resource types, see
/// Amazon
/// Web Services resource and property types reference in the CloudFormation User
/// Guide.
///
///
[AWSProperty(Max=200)]
public string TargetType
{
get { return this._targetType; }
set { this._targetType = value; }
}
// Check to see if TargetType property is set
internal bool IsSetTargetType()
{
return this._targetType != null;
}
///
/// Gets and sets the property VersionName.
///
/// The version of the artifact associated with the document.
///
///
public string VersionName
{
get { return this._versionName; }
set { this._versionName = value; }
}
// Check to see if VersionName property is set
internal bool IsSetVersionName()
{
return this._versionName != null;
}
}
}