/*
* 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 elasticloadbalancingv2-2015-12-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.ElasticLoadBalancingV2.Model
{
///
/// Information about the current health of a target.
///
public partial class TargetHealth
{
private string _description;
private TargetHealthReasonEnum _reason;
private TargetHealthStateEnum _state;
///
/// Gets and sets the property Description.
///
/// A description of the target health that provides additional details. If the state
/// is healthy
, a description is not provided.
///
///
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 Reason.
///
/// The reason code.
///
///
///
/// If the target state is healthy
, a reason code is not provided.
///
///
///
/// If the target state is initial
, the reason code can be one of the following
/// values:
///
/// -
///
///
Elb.RegistrationInProgress
- The target is in the process of being registered
/// with the load balancer.
///
/// -
///
///
Elb.InitialHealthChecking
- The load balancer is still sending the target
/// the minimum number of health checks required to determine its health status.
///
///
///
/// If the target state is unhealthy
, the reason code can be one of the following
/// values:
///
/// -
///
///
Target.ResponseCodeMismatch
- The health checks did not return an expected
/// HTTP code. Applies only to Application Load Balancers and Gateway Load Balancers.
///
/// -
///
///
Target.Timeout
- The health check requests timed out. Applies only to
/// Application Load Balancers and Gateway Load Balancers.
///
/// -
///
///
Target.FailedHealthChecks
- The load balancer received an error while
/// establishing a connection to the target or the target response was malformed.
///
/// -
///
///
Elb.InternalError
- The health checks failed due to an internal error.
/// Applies only to Application Load Balancers.
///
///
///
/// If the target state is unused
, the reason code can be one of the following
/// values:
///
/// -
///
///
Target.NotRegistered
- The target is not registered with the target
/// group.
///
/// -
///
///
Target.NotInUse
- The target group is not used by any load balancer
/// or the target is in an Availability Zone that is not enabled for its load balancer.
///
/// -
///
///
Target.InvalidState
- The target is in the stopped or terminated state.
///
/// -
///
///
Target.IpUnusable
- The target IP address is reserved for use by a load
/// balancer.
///
///
///
/// If the target state is draining
, the reason code can be the following
/// value:
///
/// -
///
///
Target.DeregistrationInProgress
- The target is in the process of being
/// deregistered and the deregistration delay period has not expired.
///
///
///
/// If the target state is unavailable
, the reason code can be the following
/// value:
///
/// -
///
///
Target.HealthCheckDisabled
- Health checks are disabled for the target
/// group. Applies only to Application Load Balancers.
///
/// -
///
///
Elb.InternalError
- Target health is unavailable due to an internal
/// error. Applies only to Network Load Balancers.
///
///
///
public TargetHealthReasonEnum Reason
{
get { return this._reason; }
set { this._reason = value; }
}
// Check to see if Reason property is set
internal bool IsSetReason()
{
return this._reason != null;
}
///
/// Gets and sets the property State.
///
/// The state of the target.
///
///
public TargetHealthStateEnum State
{
get { return this._state; }
set { this._state = value; }
}
// Check to see if State property is set
internal bool IsSetState()
{
return this._state != null;
}
}
}