/* * 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 opsworks-2013-02-18.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.OpsWorks.Model { /// /// Container for the parameters to the UpdateLayer operation. /// Updates a specified layer. /// /// /// /// Required Permissions: To use this action, an IAM user must have a Manage permissions /// level for the stack, or an attached policy that explicitly grants permissions. For /// more information on user permissions, see Managing /// User Permissions. /// /// public partial class UpdateLayerRequest : AmazonOpsWorksRequest { private Dictionary _attributes = new Dictionary(); private bool? _autoAssignElasticIps; private bool? _autoAssignPublicIps; private CloudWatchLogsConfiguration _cloudWatchLogsConfiguration; private string _customInstanceProfileArn; private string _customJson; private Recipes _customRecipes; private List _customSecurityGroupIds = new List(); private bool? _enableAutoHealing; private bool? _installUpdatesOnBoot; private string _layerId; private LifecycleEventConfiguration _lifecycleEventConfiguration; private string _name; private List _packages = new List(); private string _shortname; private bool? _useEbsOptimizedInstances; private List _volumeConfigurations = new List(); /// /// Gets and sets the property Attributes. /// /// One or more user-defined key/value pairs to be added to the stack attributes. /// /// public Dictionary Attributes { get { return this._attributes; } set { this._attributes = value; } } // Check to see if Attributes property is set internal bool IsSetAttributes() { return this._attributes != null && this._attributes.Count > 0; } /// /// Gets and sets the property AutoAssignElasticIps. /// /// Whether to automatically assign an Elastic /// IP address to the layer's instances. For more information, see How /// to Edit a Layer. /// /// public bool AutoAssignElasticIps { get { return this._autoAssignElasticIps.GetValueOrDefault(); } set { this._autoAssignElasticIps = value; } } // Check to see if AutoAssignElasticIps property is set internal bool IsSetAutoAssignElasticIps() { return this._autoAssignElasticIps.HasValue; } /// /// Gets and sets the property AutoAssignPublicIps. /// /// For stacks that are running in a VPC, whether to automatically assign a public IP /// address to the layer's instances. For more information, see How /// to Edit a Layer. /// /// public bool AutoAssignPublicIps { get { return this._autoAssignPublicIps.GetValueOrDefault(); } set { this._autoAssignPublicIps = value; } } // Check to see if AutoAssignPublicIps property is set internal bool IsSetAutoAssignPublicIps() { return this._autoAssignPublicIps.HasValue; } /// /// Gets and sets the property CloudWatchLogsConfiguration. /// /// Specifies CloudWatch Logs configuration options for the layer. For more information, /// see CloudWatchLogsLogStream. /// /// public CloudWatchLogsConfiguration CloudWatchLogsConfiguration { get { return this._cloudWatchLogsConfiguration; } set { this._cloudWatchLogsConfiguration = value; } } // Check to see if CloudWatchLogsConfiguration property is set internal bool IsSetCloudWatchLogsConfiguration() { return this._cloudWatchLogsConfiguration != null; } /// /// Gets and sets the property CustomInstanceProfileArn. /// /// The ARN of an IAM profile to be used for all of the layer's EC2 instances. For more /// information about IAM ARNs, see Using /// Identifiers. /// /// public string CustomInstanceProfileArn { get { return this._customInstanceProfileArn; } set { this._customInstanceProfileArn = value; } } // Check to see if CustomInstanceProfileArn property is set internal bool IsSetCustomInstanceProfileArn() { return this._customInstanceProfileArn != null; } /// /// Gets and sets the property CustomJson. /// /// A JSON-formatted string containing custom stack configuration and deployment attributes /// to be installed on the layer's instances. For more information, see /// Using Custom JSON. /// /// public string CustomJson { get { return this._customJson; } set { this._customJson = value; } } // Check to see if CustomJson property is set internal bool IsSetCustomJson() { return this._customJson != null; } /// /// Gets and sets the property CustomRecipes. /// /// A LayerCustomRecipes object that specifies the layer's custom recipes. /// /// public Recipes CustomRecipes { get { return this._customRecipes; } set { this._customRecipes = value; } } // Check to see if CustomRecipes property is set internal bool IsSetCustomRecipes() { return this._customRecipes != null; } /// /// Gets and sets the property CustomSecurityGroupIds. /// /// An array containing the layer's custom security group IDs. /// /// public List CustomSecurityGroupIds { get { return this._customSecurityGroupIds; } set { this._customSecurityGroupIds = value; } } // Check to see if CustomSecurityGroupIds property is set internal bool IsSetCustomSecurityGroupIds() { return this._customSecurityGroupIds != null && this._customSecurityGroupIds.Count > 0; } /// /// Gets and sets the property EnableAutoHealing. /// /// Whether to disable auto healing for the layer. /// /// public bool EnableAutoHealing { get { return this._enableAutoHealing.GetValueOrDefault(); } set { this._enableAutoHealing = value; } } // Check to see if EnableAutoHealing property is set internal bool IsSetEnableAutoHealing() { return this._enableAutoHealing.HasValue; } /// /// Gets and sets the property InstallUpdatesOnBoot. /// /// Whether to install operating system and package updates when the instance boots. The /// default value is true. To control when updates are installed, set this /// value to false. You must then update your instances manually by using /// CreateDeployment to run the update_dependencies stack command /// or manually running yum (Amazon Linux) or apt-get (Ubuntu) /// on the instances. /// /// /// /// We strongly recommend using the default value of true, to ensure that /// your instances have the latest security updates. /// /// /// public bool InstallUpdatesOnBoot { get { return this._installUpdatesOnBoot.GetValueOrDefault(); } set { this._installUpdatesOnBoot = value; } } // Check to see if InstallUpdatesOnBoot property is set internal bool IsSetInstallUpdatesOnBoot() { return this._installUpdatesOnBoot.HasValue; } /// /// Gets and sets the property LayerId. /// /// The layer ID. /// /// [AWSProperty(Required=true)] public string LayerId { get { return this._layerId; } set { this._layerId = value; } } // Check to see if LayerId property is set internal bool IsSetLayerId() { return this._layerId != null; } /// /// Gets and sets the property LifecycleEventConfiguration. /// public LifecycleEventConfiguration LifecycleEventConfiguration { get { return this._lifecycleEventConfiguration; } set { this._lifecycleEventConfiguration = value; } } // Check to see if LifecycleEventConfiguration property is set internal bool IsSetLifecycleEventConfiguration() { return this._lifecycleEventConfiguration != null; } /// /// Gets and sets the property Name. /// /// The layer name, which is used by the console. /// /// 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 Packages. /// /// An array of Package objects that describe the layer's packages. /// /// public List Packages { get { return this._packages; } set { this._packages = value; } } // Check to see if Packages property is set internal bool IsSetPackages() { return this._packages != null && this._packages.Count > 0; } /// /// Gets and sets the property Shortname. /// /// For custom layers only, use this parameter to specify the layer's short name, which /// is used internally by AWS OpsWorks Stacks and by Chef. The short name is also used /// as the name for the directory where your app files are installed. It can have a maximum /// of 200 characters and must be in the following format: /\A[a-z0-9\-\_\.]+\Z/. /// /// /// /// The built-in layers' short names are defined by AWS OpsWorks Stacks. For more information, /// see the Layer /// Reference /// /// public string Shortname { get { return this._shortname; } set { this._shortname = value; } } // Check to see if Shortname property is set internal bool IsSetShortname() { return this._shortname != null; } /// /// Gets and sets the property UseEbsOptimizedInstances. /// /// Whether to use Amazon EBS-optimized instances. /// /// public bool UseEbsOptimizedInstances { get { return this._useEbsOptimizedInstances.GetValueOrDefault(); } set { this._useEbsOptimizedInstances = value; } } // Check to see if UseEbsOptimizedInstances property is set internal bool IsSetUseEbsOptimizedInstances() { return this._useEbsOptimizedInstances.HasValue; } /// /// Gets and sets the property VolumeConfigurations. /// /// A VolumeConfigurations object that describes the layer's Amazon EBS volumes. /// /// public List VolumeConfigurations { get { return this._volumeConfigurations; } set { this._volumeConfigurations = value; } } // Check to see if VolumeConfigurations property is set internal bool IsSetVolumeConfigurations() { return this._volumeConfigurations != null && this._volumeConfigurations.Count > 0; } } }