/* * 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 association of a Amazon Web Services Systems Manager document (SSM document) /// and a managed node. /// public partial class Association { private string _associationId; private string _associationName; private string _associationVersion; private string _documentVersion; private string _instanceId; private DateTime? _lastExecutionDate; private string _name; private AssociationOverview _overview; private string _scheduleExpression; private int? _scheduleOffset; private List>> _targetMaps = new List>>(); private List _targets = new List(); /// /// Gets and sets the property AssociationId. /// /// The ID created by the system when you create an association. An association is a binding /// between a document and a set of targets with a schedule. /// /// public string AssociationId { get { return this._associationId; } set { this._associationId = value; } } // Check to see if AssociationId property is set internal bool IsSetAssociationId() { return this._associationId != null; } /// /// Gets and sets the property AssociationName. /// /// The association name. /// /// public string AssociationName { get { return this._associationName; } set { this._associationName = value; } } // Check to see if AssociationName property is set internal bool IsSetAssociationName() { return this._associationName != null; } /// /// Gets and sets the property AssociationVersion. /// /// The association version. /// /// public string AssociationVersion { get { return this._associationVersion; } set { this._associationVersion = value; } } // Check to see if AssociationVersion property is set internal bool IsSetAssociationVersion() { return this._associationVersion != null; } /// /// Gets and sets the property DocumentVersion. /// /// The version of the document used in the association. If you change a document version /// for a State Manager association, Systems Manager immediately runs the association /// unless you previously specifed the apply-only-at-cron-interval parameter. /// /// /// /// State Manager doesn't support running associations that use a new version of a document /// if that document is shared from another account. State Manager always runs the default /// version of a document if shared from another account, even though the Systems Manager /// console shows that a new version was processed. If you want to run an association /// using a new version of a document shared form another account, you must set the document /// version to default. /// /// /// 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 InstanceId. /// /// The managed node ID. /// /// public string InstanceId { get { return this._instanceId; } set { this._instanceId = value; } } // Check to see if InstanceId property is set internal bool IsSetInstanceId() { return this._instanceId != null; } /// /// Gets and sets the property LastExecutionDate. /// /// The date on which the association was last run. /// /// public DateTime LastExecutionDate { get { return this._lastExecutionDate.GetValueOrDefault(); } set { this._lastExecutionDate = value; } } // Check to see if LastExecutionDate property is set internal bool IsSetLastExecutionDate() { return this._lastExecutionDate.HasValue; } /// /// 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 Overview. /// /// Information about the association. /// /// public AssociationOverview Overview { get { return this._overview; } set { this._overview = value; } } // Check to see if Overview property is set internal bool IsSetOverview() { return this._overview != null; } /// /// Gets and sets the property ScheduleExpression. /// /// A cron expression that specifies a schedule when the association runs. The schedule /// runs in Coordinated Universal Time (UTC). /// /// [AWSProperty(Min=1, Max=256)] public string ScheduleExpression { get { return this._scheduleExpression; } set { this._scheduleExpression = value; } } // Check to see if ScheduleExpression property is set internal bool IsSetScheduleExpression() { return this._scheduleExpression != null; } /// /// Gets and sets the property ScheduleOffset. /// /// Number of days to wait after the scheduled day to run an association. /// /// [AWSProperty(Min=1, Max=6)] public int ScheduleOffset { get { return this._scheduleOffset.GetValueOrDefault(); } set { this._scheduleOffset = value; } } // Check to see if ScheduleOffset property is set internal bool IsSetScheduleOffset() { return this._scheduleOffset.HasValue; } /// /// Gets and sets the property TargetMaps. /// /// A key-value mapping of document parameters to target resources. Both Targets and TargetMaps /// can't be specified together. /// /// [AWSProperty(Min=0, Max=300)] public List>> TargetMaps { get { return this._targetMaps; } set { this._targetMaps = value; } } // Check to see if TargetMaps property is set internal bool IsSetTargetMaps() { return this._targetMaps != null && this._targetMaps.Count > 0; } /// /// Gets and sets the property Targets. /// /// The managed nodes targeted by the request to create an association. You can target /// all managed nodes in an Amazon Web Services account by specifying the InstanceIds /// key with a value of *. /// /// [AWSProperty(Min=0, Max=5)] public List Targets { get { return this._targets; } set { this._targets = value; } } // Check to see if Targets property is set internal bool IsSetTargets() { return this._targets != null && this._targets.Count > 0; } } }