/* * 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 elasticloadbalancing-2012-06-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.ElasticLoadBalancing.Model { /// /// Container for the parameters to the CreateLoadBalancer operation. /// Creates a Classic Load Balancer. /// /// /// /// You can add listeners, security groups, subnets, and tags when you create your load /// balancer, or you can add them later using CreateLoadBalancerListeners, ApplySecurityGroupsToLoadBalancer, /// AttachLoadBalancerToSubnets, and AddTags. /// /// /// /// To describe your current load balancers, see DescribeLoadBalancers. When you /// are finished with a load balancer, you can delete it using DeleteLoadBalancer. /// /// /// /// You can create up to 20 load balancers per region per account. You can request an /// increase for the number of load balancers for your account. For more information, /// see Limits /// for Your Classic Load Balancer in the Classic Load Balancers Guide. /// /// public partial class CreateLoadBalancerRequest : AmazonElasticLoadBalancingRequest { private List _availabilityZones = new List(); private List _listeners = new List(); private string _loadBalancerName; private string _scheme; private List _securityGroups = new List(); private List _subnets = new List(); private List _tags = new List(); /// /// Empty constructor used to set properties independently even when a simple constructor is available /// public CreateLoadBalancerRequest() { } /// /// Instantiates CreateLoadBalancerRequest with the parameterized properties /// /// The name of the load balancer. This name must be unique within your set of load balancers for the region, must have a maximum of 32 characters, must contain only alphanumeric characters or hyphens, and cannot begin or end with a hyphen. public CreateLoadBalancerRequest(string loadBalancerName) { _loadBalancerName = loadBalancerName; } /// /// Instantiates CreateLoadBalancerRequest with the parameterized properties /// /// The name of the load balancer. This name must be unique within your set of load balancers for the region, must have a maximum of 32 characters, must contain only alphanumeric characters or hyphens, and cannot begin or end with a hyphen. /// The listeners. For more information, see Listeners for Your Classic Load Balancer in the Classic Load Balancers Guide. /// One or more Availability Zones from the same region as the load balancer. You must specify at least one Availability Zone. You can add more Availability Zones after you create the load balancer using EnableAvailabilityZonesForLoadBalancer. public CreateLoadBalancerRequest(string loadBalancerName, List listeners, List availabilityZones) { _loadBalancerName = loadBalancerName; _listeners = listeners; _availabilityZones = availabilityZones; } /// /// Gets and sets the property AvailabilityZones. /// /// One or more Availability Zones from the same region as the load balancer. /// /// /// /// You must specify at least one Availability Zone. /// /// /// /// You can add more Availability Zones after you create the load balancer using EnableAvailabilityZonesForLoadBalancer. /// /// public List AvailabilityZones { get { return this._availabilityZones; } set { this._availabilityZones = value; } } // Check to see if AvailabilityZones property is set internal bool IsSetAvailabilityZones() { return this._availabilityZones != null && this._availabilityZones.Count > 0; } /// /// Gets and sets the property Listeners. /// /// The listeners. /// /// /// /// For more information, see Listeners /// for Your Classic Load Balancer in the Classic Load Balancers Guide. /// /// [AWSProperty(Required=true)] public List Listeners { get { return this._listeners; } set { this._listeners = value; } } // Check to see if Listeners property is set internal bool IsSetListeners() { return this._listeners != null && this._listeners.Count > 0; } /// /// Gets and sets the property LoadBalancerName. /// /// The name of the load balancer. /// /// /// /// This name must be unique within your set of load balancers for the region, must have /// a maximum of 32 characters, must contain only alphanumeric characters or hyphens, /// and cannot begin or end with a hyphen. /// /// [AWSProperty(Required=true)] public string LoadBalancerName { get { return this._loadBalancerName; } set { this._loadBalancerName = value; } } // Check to see if LoadBalancerName property is set internal bool IsSetLoadBalancerName() { return this._loadBalancerName != null; } /// /// Gets and sets the property Scheme. /// /// The type of a load balancer. Valid only for load balancers in a VPC. /// /// /// /// By default, Elastic Load Balancing creates an Internet-facing load balancer with a /// DNS name that resolves to public IP addresses. For more information about Internet-facing /// and Internal load balancers, see Load /// Balancer Scheme in the Elastic Load Balancing User Guide. /// /// /// /// Specify internal to create a load balancer with a DNS name that resolves /// to private IP addresses. /// /// public string Scheme { get { return this._scheme; } set { this._scheme = value; } } // Check to see if Scheme property is set internal bool IsSetScheme() { return this._scheme != null; } /// /// Gets and sets the property SecurityGroups. /// /// The IDs of the security groups to assign to the load balancer. /// /// public List SecurityGroups { get { return this._securityGroups; } set { this._securityGroups = value; } } // Check to see if SecurityGroups property is set internal bool IsSetSecurityGroups() { return this._securityGroups != null && this._securityGroups.Count > 0; } /// /// Gets and sets the property Subnets. /// /// The IDs of the subnets in your VPC to attach to the load balancer. Specify one subnet /// per Availability Zone specified in AvailabilityZones. /// /// public List Subnets { get { return this._subnets; } set { this._subnets = value; } } // Check to see if Subnets property is set internal bool IsSetSubnets() { return this._subnets != null && this._subnets.Count > 0; } /// /// Gets and sets the property Tags. /// /// A list of tags to assign to the load balancer. /// /// /// /// For more information about tagging your load balancer, see Tag /// Your Classic Load Balancer in the Classic Load Balancers Guide. /// /// [AWSProperty(Min=1)] 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; } } }