/* * 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 { /// /// Container for the parameters to the CreatePatchBaseline operation. /// Creates a patch baseline. /// /// /// /// For information about valid key-value pairs in PatchFilters for each /// supported operating system type, see PatchFilter. /// /// /// public partial class CreatePatchBaselineRequest : AmazonSimpleSystemsManagementRequest { private PatchRuleGroup _approvalRules; private List _approvedPatches = new List(); private PatchComplianceLevel _approvedPatchesComplianceLevel; private bool? _approvedPatchesEnableNonSecurity; private string _clientToken; private string _description; private PatchFilterGroup _globalFilters; private string _name; private OperatingSystem _operatingSystem; private List _rejectedPatches = new List(); private PatchAction _rejectedPatchesAction; private List _sources = new List(); private List _tags = new List(); /// /// Gets and sets the property ApprovalRules. /// /// A set of rules used to include patches in the baseline. /// /// public PatchRuleGroup ApprovalRules { get { return this._approvalRules; } set { this._approvalRules = value; } } // Check to see if ApprovalRules property is set internal bool IsSetApprovalRules() { return this._approvalRules != null; } /// /// Gets and sets the property ApprovedPatches. /// /// A list of explicitly approved patches for the baseline. /// /// /// /// For information about accepted formats for lists of approved patches and rejected /// patches, see About /// package name formats for approved and rejected patch lists in the Amazon Web /// Services Systems Manager User Guide. /// /// [AWSProperty(Min=0, Max=50)] public List ApprovedPatches { get { return this._approvedPatches; } set { this._approvedPatches = value; } } // Check to see if ApprovedPatches property is set internal bool IsSetApprovedPatches() { return this._approvedPatches != null && this._approvedPatches.Count > 0; } /// /// Gets and sets the property ApprovedPatchesComplianceLevel. /// /// Defines the compliance level for approved patches. When an approved patch is reported /// as missing, this value describes the severity of the compliance violation. The default /// value is UNSPECIFIED. /// /// public PatchComplianceLevel ApprovedPatchesComplianceLevel { get { return this._approvedPatchesComplianceLevel; } set { this._approvedPatchesComplianceLevel = value; } } // Check to see if ApprovedPatchesComplianceLevel property is set internal bool IsSetApprovedPatchesComplianceLevel() { return this._approvedPatchesComplianceLevel != null; } /// /// Gets and sets the property ApprovedPatchesEnableNonSecurity. /// /// Indicates whether the list of approved patches includes non-security updates that /// should be applied to the managed nodes. The default value is false. Applies /// to Linux managed nodes only. /// /// public bool ApprovedPatchesEnableNonSecurity { get { return this._approvedPatchesEnableNonSecurity.GetValueOrDefault(); } set { this._approvedPatchesEnableNonSecurity = value; } } // Check to see if ApprovedPatchesEnableNonSecurity property is set internal bool IsSetApprovedPatchesEnableNonSecurity() { return this._approvedPatchesEnableNonSecurity.HasValue; } /// /// Gets and sets the property ClientToken. /// /// User-provided idempotency token. /// /// [AWSProperty(Min=1, Max=64)] 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 Description. /// /// A description of the patch baseline. /// /// [AWSProperty(Min=1, Max=1024)] 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 GlobalFilters. /// /// A set of global filters used to include patches in the baseline. /// /// public PatchFilterGroup GlobalFilters { get { return this._globalFilters; } set { this._globalFilters = value; } } // Check to see if GlobalFilters property is set internal bool IsSetGlobalFilters() { return this._globalFilters != null; } /// /// Gets and sets the property Name. /// /// The name of the patch baseline. /// /// [AWSProperty(Required=true, Min=3, Max=128)] 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 OperatingSystem. /// /// Defines the operating system the patch baseline applies to. The default value is WINDOWS. /// /// public OperatingSystem OperatingSystem { get { return this._operatingSystem; } set { this._operatingSystem = value; } } // Check to see if OperatingSystem property is set internal bool IsSetOperatingSystem() { return this._operatingSystem != null; } /// /// Gets and sets the property RejectedPatches. /// /// A list of explicitly rejected patches for the baseline. /// /// /// /// For information about accepted formats for lists of approved patches and rejected /// patches, see About /// package name formats for approved and rejected patch lists in the Amazon Web /// Services Systems Manager User Guide. /// /// [AWSProperty(Min=0, Max=50)] public List RejectedPatches { get { return this._rejectedPatches; } set { this._rejectedPatches = value; } } // Check to see if RejectedPatches property is set internal bool IsSetRejectedPatches() { return this._rejectedPatches != null && this._rejectedPatches.Count > 0; } /// /// Gets and sets the property RejectedPatchesAction. /// /// The action for Patch Manager to take on patches included in the RejectedPackages /// list. /// ///
  • /// /// ALLOW_AS_DEPENDENCY : A package in the Rejected /// patches list is installed only if it is a dependency of another package. It is considered /// compliant with the patch baseline, and its status is reported as InstalledOther. /// This is the default action if no option is specified. /// ///
  • /// /// BLOCK : Packages in the RejectedPatches list, and /// packages that include them as dependencies, aren't installed under any circumstances. /// If a package was installed before it was added to the Rejected patches list, it is /// considered non-compliant with the patch baseline, and its status is reported as InstalledRejected. /// ///
///
public PatchAction RejectedPatchesAction { get { return this._rejectedPatchesAction; } set { this._rejectedPatchesAction = value; } } // Check to see if RejectedPatchesAction property is set internal bool IsSetRejectedPatchesAction() { return this._rejectedPatchesAction != null; } /// /// Gets and sets the property Sources. /// /// Information about the patches to use to update the managed nodes, including target /// operating systems and source repositories. Applies to Linux managed nodes only. /// /// [AWSProperty(Min=0, Max=20)] public List Sources { get { return this._sources; } set { this._sources = value; } } // Check to see if Sources property is set internal bool IsSetSources() { return this._sources != null && this._sources.Count > 0; } /// /// Gets and sets the property Tags. /// /// Optional metadata that you assign to a resource. Tags enable you to categorize a resource /// in different ways, such as by purpose, owner, or environment. For example, you might /// want to tag a patch baseline to identify the severity level of patches it specifies /// and the operating system family it applies to. In this case, you could specify the /// following key-value pairs: /// ///
  • /// /// Key=PatchSeverity,Value=Critical /// ///
  • /// /// Key=OS,Value=Windows /// ///
/// /// To add tags to an existing patch baseline, use the AddTagsToResource operation. /// /// ///
[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; } } }