/*
* 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
{
///
/// The attributes for a load balancer.
///
public partial class LoadBalancerAttributes
{
private AccessLog _accessLog;
private List _additionalAttributes = new List();
private ConnectionDraining _connectionDraining;
private ConnectionSettings _connectionSettings;
private CrossZoneLoadBalancing _crossZoneLoadBalancing;
///
/// Gets and sets the property AccessLog.
///
/// If enabled, the load balancer captures detailed information of all requests and delivers
/// the information to the Amazon S3 bucket that you specify.
///
///
///
/// For more information, see Enable
/// Access Logs in the Classic Load Balancers Guide.
///
///
public AccessLog AccessLog
{
get { return this._accessLog; }
set { this._accessLog = value; }
}
// Check to see if AccessLog property is set
internal bool IsSetAccessLog()
{
return this._accessLog != null;
}
///
/// Gets and sets the property AdditionalAttributes.
///
/// Any additional attributes.
///
///
[AWSProperty(Max=10)]
public List AdditionalAttributes
{
get { return this._additionalAttributes; }
set { this._additionalAttributes = value; }
}
// Check to see if AdditionalAttributes property is set
internal bool IsSetAdditionalAttributes()
{
return this._additionalAttributes != null && this._additionalAttributes.Count > 0;
}
///
/// Gets and sets the property ConnectionDraining.
///
/// If enabled, the load balancer allows existing requests to complete before the load
/// balancer shifts traffic away from a deregistered or unhealthy instance.
///
///
///
/// For more information, see Configure
/// Connection Draining in the Classic Load Balancers Guide.
///
///
public ConnectionDraining ConnectionDraining
{
get { return this._connectionDraining; }
set { this._connectionDraining = value; }
}
// Check to see if ConnectionDraining property is set
internal bool IsSetConnectionDraining()
{
return this._connectionDraining != null;
}
///
/// Gets and sets the property ConnectionSettings.
///
/// If enabled, the load balancer allows the connections to remain idle (no data is sent
/// over the connection) for the specified duration.
///
///
///
/// By default, Elastic Load Balancing maintains a 60-second idle connection timeout for
/// both front-end and back-end connections of your load balancer. For more information,
/// see Configure
/// Idle Connection Timeout in the Classic Load Balancers Guide.
///
///
public ConnectionSettings ConnectionSettings
{
get { return this._connectionSettings; }
set { this._connectionSettings = value; }
}
// Check to see if ConnectionSettings property is set
internal bool IsSetConnectionSettings()
{
return this._connectionSettings != null;
}
///
/// Gets and sets the property CrossZoneLoadBalancing.
///
/// If enabled, the load balancer routes the request traffic evenly across all instances
/// regardless of the Availability Zones.
///
///
///
/// For more information, see Configure
/// Cross-Zone Load Balancing in the Classic Load Balancers Guide.
///
///
public CrossZoneLoadBalancing CrossZoneLoadBalancing
{
get { return this._crossZoneLoadBalancing; }
set { this._crossZoneLoadBalancing = value; }
}
// Check to see if CrossZoneLoadBalancing property is set
internal bool IsSetCrossZoneLoadBalancing()
{
return this._crossZoneLoadBalancing != null;
}
}
}