<?php
# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: google/cloud/compute/v1/compute.proto

namespace Google\Cloud\Compute\V1\NetworkEndpointGroupsListEndpointsRequest;

use UnexpectedValueException;

/**
 * Optional query parameter for showing the health status of each network endpoint. Valid options are SKIP or SHOW. If you don't specify this parameter, the health status of network endpoints will not be provided.
 *
 * Protobuf type <code>google.cloud.compute.v1.NetworkEndpointGroupsListEndpointsRequest.HealthStatus</code>
 */
class HealthStatus
{
    /**
     * A value indicating that the enum field is not set.
     *
     * Generated from protobuf enum <code>UNDEFINED_HEALTH_STATUS = 0;</code>
     */
    const UNDEFINED_HEALTH_STATUS = 0;
    /**
     * Show the health status for each network endpoint. Impacts latency of the call.
     *
     * Generated from protobuf enum <code>SHOW = 2544381;</code>
     */
    const SHOW = 2544381;
    /**
     * Health status for network endpoints will not be provided.
     *
     * Generated from protobuf enum <code>SKIP = 2547071;</code>
     */
    const SKIP = 2547071;

    private static $valueToName = [
        self::UNDEFINED_HEALTH_STATUS => 'UNDEFINED_HEALTH_STATUS',
        self::SHOW => 'SHOW',
        self::SKIP => 'SKIP',
    ];

    public static function name($value)
    {
        if (!isset(self::$valueToName[$value])) {
            throw new UnexpectedValueException(sprintf(
                    'Enum %s has no name defined for value %s', __CLASS__, $value));
        }
        return self::$valueToName[$value];
    }


    public static function value($name)
    {
        $const = __CLASS__ . '::' . strtoupper($name);
        if (!defined($const)) {
            throw new UnexpectedValueException(sprintf(
                    'Enum %s has no value defined for name %s', __CLASS__, $name));
        }
        return constant($const);
    }
}


