/* * 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 globalaccelerator-2018-08-08.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.GlobalAccelerator.Model { /// /// A complex type for the endpoint group. An Amazon Web Services Region can have only /// one endpoint group for a specific listener. /// public partial class EndpointGroup { private List _endpointDescriptions = new List(); private string _endpointGroupArn; private string _endpointGroupRegion; private int? _healthCheckIntervalSeconds; private string _healthCheckPath; private int? _healthCheckPort; private HealthCheckProtocol _healthCheckProtocol; private List _portOverrides = new List(); private int? _thresholdCount; private float? _trafficDialPercentage; /// /// Gets and sets the property EndpointDescriptions. /// /// The list of endpoint objects. /// /// public List EndpointDescriptions { get { return this._endpointDescriptions; } set { this._endpointDescriptions = value; } } // Check to see if EndpointDescriptions property is set internal bool IsSetEndpointDescriptions() { return this._endpointDescriptions != null && this._endpointDescriptions.Count > 0; } /// /// Gets and sets the property EndpointGroupArn. /// /// The Amazon Resource Name (ARN) of the endpoint group. /// /// [AWSProperty(Max=255)] public string EndpointGroupArn { get { return this._endpointGroupArn; } set { this._endpointGroupArn = value; } } // Check to see if EndpointGroupArn property is set internal bool IsSetEndpointGroupArn() { return this._endpointGroupArn != null; } /// /// Gets and sets the property EndpointGroupRegion. /// /// The Amazon Web Services Region where the endpoint group is located. /// /// [AWSProperty(Max=255)] public string EndpointGroupRegion { get { return this._endpointGroupRegion; } set { this._endpointGroupRegion = value; } } // Check to see if EndpointGroupRegion property is set internal bool IsSetEndpointGroupRegion() { return this._endpointGroupRegion != null; } /// /// Gets and sets the property HealthCheckIntervalSeconds. /// /// The time—10 seconds or 30 seconds—between health checks for each endpoint. The default /// value is 30. /// /// [AWSProperty(Min=10, Max=30)] public int HealthCheckIntervalSeconds { get { return this._healthCheckIntervalSeconds.GetValueOrDefault(); } set { this._healthCheckIntervalSeconds = value; } } // Check to see if HealthCheckIntervalSeconds property is set internal bool IsSetHealthCheckIntervalSeconds() { return this._healthCheckIntervalSeconds.HasValue; } /// /// Gets and sets the property HealthCheckPath. /// /// If the protocol is HTTP/S, then this value provides the ping path that Global Accelerator /// uses for the destination on the endpoints for health checks. The default is slash /// (/). /// /// [AWSProperty(Max=255)] public string HealthCheckPath { get { return this._healthCheckPath; } set { this._healthCheckPath = value; } } // Check to see if HealthCheckPath property is set internal bool IsSetHealthCheckPath() { return this._healthCheckPath != null; } /// /// Gets and sets the property HealthCheckPort. /// /// The port that Global Accelerator uses to perform health checks on endpoints that are /// part of this endpoint group. /// /// /// /// The default port is the port for the listener that this endpoint group is associated /// with. If the listener port is a list, Global Accelerator uses the first specified /// port in the list of ports. /// /// [AWSProperty(Min=1, Max=65535)] public int HealthCheckPort { get { return this._healthCheckPort.GetValueOrDefault(); } set { this._healthCheckPort = value; } } // Check to see if HealthCheckPort property is set internal bool IsSetHealthCheckPort() { return this._healthCheckPort.HasValue; } /// /// Gets and sets the property HealthCheckProtocol. /// /// The protocol that Global Accelerator uses to perform health checks on endpoints that /// are part of this endpoint group. The default value is TCP. /// /// public HealthCheckProtocol HealthCheckProtocol { get { return this._healthCheckProtocol; } set { this._healthCheckProtocol = value; } } // Check to see if HealthCheckProtocol property is set internal bool IsSetHealthCheckProtocol() { return this._healthCheckProtocol != null; } /// /// Gets and sets the property PortOverrides. /// /// Allows you to override the destination ports used to route traffic to an endpoint. /// Using a port override lets you map a list of external destination ports (that your /// users send traffic to) to a list of internal destination ports that you want an application /// endpoint to receive traffic on. /// /// [AWSProperty(Min=0, Max=10)] public List PortOverrides { get { return this._portOverrides; } set { this._portOverrides = value; } } // Check to see if PortOverrides property is set internal bool IsSetPortOverrides() { return this._portOverrides != null && this._portOverrides.Count > 0; } /// /// Gets and sets the property ThresholdCount. /// /// The number of consecutive health checks required to set the state of a healthy endpoint /// to unhealthy, or to set an unhealthy endpoint to healthy. The default value is 3. /// /// [AWSProperty(Min=1, Max=10)] public int ThresholdCount { get { return this._thresholdCount.GetValueOrDefault(); } set { this._thresholdCount = value; } } // Check to see if ThresholdCount property is set internal bool IsSetThresholdCount() { return this._thresholdCount.HasValue; } /// /// Gets and sets the property TrafficDialPercentage. /// /// The percentage of traffic to send to an Amazon Web Services Region. Additional traffic /// is distributed to other endpoint groups for this listener. /// /// /// /// Use this action to increase (dial up) or decrease (dial down) traffic to a specific /// Region. The percentage is applied to the traffic that would otherwise have been routed /// to the Region based on optimal routing. /// /// /// /// The default value is 100. /// /// [AWSProperty(Min=0, Max=100)] public float TrafficDialPercentage { get { return this._trafficDialPercentage.GetValueOrDefault(); } set { this._trafficDialPercentage = value; } } // Check to see if TrafficDialPercentage property is set internal bool IsSetTrafficDialPercentage() { return this._trafficDialPercentage.HasValue; } } }