<?php
# Generated by the protocol buffer compiler.  DO NOT EDIT!
# NO CHECKED-IN PROTOBUF GENCODE
# source: rpc.proto

namespace OS\PB;

use UnexpectedValueException;

/**
 * Protobuf type <code>OS.PB.HTTPStatusType</code>
 */
class HTTPStatusType
{
    /**
     * Generated from protobuf enum <code>HTTPStatus_Notset = 0;</code>
     */
    const HTTPStatus_Notset = 0;
    /**
     * Informational
     *
     * Generated from protobuf enum <code>HTTPStatus_100_Continue = 100;</code>
     */
    const HTTPStatus_100_Continue = 100;
    /**
     * Generated from protobuf enum <code>HTTPStatus_101_SwitchingProtocols = 101;</code>
     */
    const HTTPStatus_101_SwitchingProtocols = 101;
    /**
     * Generated from protobuf enum <code>HTTPStatus_102_Processing = 102;</code>
     */
    const HTTPStatus_102_Processing = 102;
    /**
     * Generated from protobuf enum <code>HTTPStatus_103_EarlyHints = 103;</code>
     */
    const HTTPStatus_103_EarlyHints = 103;
    /**
     * Successful
     *
     * Generated from protobuf enum <code>HTTPStatus_200_Ok = 200;</code>
     */
    const HTTPStatus_200_Ok = 200;
    /**
     * Generated from protobuf enum <code>HTTPStatus_201_Created = 201;</code>
     */
    const HTTPStatus_201_Created = 201;
    /**
     * Generated from protobuf enum <code>HTTPStatus_202_Accepted = 202;</code>
     */
    const HTTPStatus_202_Accepted = 202;
    /**
     * Generated from protobuf enum <code>HTTPStatus_203_NonAuthoritativeInformation = 203;</code>
     */
    const HTTPStatus_203_NonAuthoritativeInformation = 203;
    /**
     * Generated from protobuf enum <code>HTTPStatus_204_NoContent = 204;</code>
     */
    const HTTPStatus_204_NoContent = 204;
    /**
     * Generated from protobuf enum <code>HTTPStatus_205_ResetContent = 205;</code>
     */
    const HTTPStatus_205_ResetContent = 205;
    /**
     * Generated from protobuf enum <code>HTTPStatus_206_PartialContent = 206;</code>
     */
    const HTTPStatus_206_PartialContent = 206;
    /**
     * Generated from protobuf enum <code>HTTPStatus_207_MultiStatus = 207;</code>
     */
    const HTTPStatus_207_MultiStatus = 207;
    /**
     * Generated from protobuf enum <code>HTTPStatus_208_AlreadyReported = 208;</code>
     */
    const HTTPStatus_208_AlreadyReported = 208;
    /**
     * Generated from protobuf enum <code>HTTPStatus_226_ImUsed = 226;</code>
     */
    const HTTPStatus_226_ImUsed = 226;
    /**
     * Generated from protobuf enum <code>HTTPStatus_300_MultipleChoices = 300;</code>
     */
    const HTTPStatus_300_MultipleChoices = 300;
    /**
     * Redirection
     *
     * Generated from protobuf enum <code>HTTPStatus_301_MovedPermanently = 301;</code>
     */
    const HTTPStatus_301_MovedPermanently = 301;
    /**
     * Generated from protobuf enum <code>HTTPStatus_302_Found = 302;</code>
     */
    const HTTPStatus_302_Found = 302;
    /**
     * Generated from protobuf enum <code>HTTPStatus_303_SeeOther = 303;</code>
     */
    const HTTPStatus_303_SeeOther = 303;
    /**
     * Generated from protobuf enum <code>HTTPStatus_304_NotModified = 304;</code>
     */
    const HTTPStatus_304_NotModified = 304;
    /**
     * Generated from protobuf enum <code>HTTPStatus_305_UseProxy = 305;</code>
     */
    const HTTPStatus_305_UseProxy = 305;
    /**
     * Generated from protobuf enum <code>HTTPStatus_306_Unused = 306;</code>
     */
    const HTTPStatus_306_Unused = 306;
    /**
     * Generated from protobuf enum <code>HTTPStatus_307_TemporaryRedirect = 307;</code>
     */
    const HTTPStatus_307_TemporaryRedirect = 307;
    /**
     * Generated from protobuf enum <code>HTTPStatus_308_PermanentRedirect = 308;</code>
     */
    const HTTPStatus_308_PermanentRedirect = 308;
    /**
     * Client Error Codes
     *
     * Generated from protobuf enum <code>HTTPStatus_400_BadRequest = 400;</code>
     */
    const HTTPStatus_400_BadRequest = 400;
    /**
     * Generated from protobuf enum <code>HTTPStatus_401_Unauthorized = 401;</code>
     */
    const HTTPStatus_401_Unauthorized = 401;
    /**
     * Generated from protobuf enum <code>HTTPStatus_402_PaymentRequired = 402;</code>
     */
    const HTTPStatus_402_PaymentRequired = 402;
    /**
     * Generated from protobuf enum <code>HTTPStatus_403_Forbidden = 403;</code>
     */
    const HTTPStatus_403_Forbidden = 403;
    /**
     * Generated from protobuf enum <code>HTTPStatus_404_NotFound = 404;</code>
     */
    const HTTPStatus_404_NotFound = 404;
    /**
     * Generated from protobuf enum <code>HTTPStatus_405_MethodNotAllowed = 405;</code>
     */
    const HTTPStatus_405_MethodNotAllowed = 405;
    /**
     * Generated from protobuf enum <code>HTTPStatus_406_NotAcceptable = 406;</code>
     */
    const HTTPStatus_406_NotAcceptable = 406;
    /**
     * Generated from protobuf enum <code>HTTPStatus_407_ProxyAuthenticationRequired = 407;</code>
     */
    const HTTPStatus_407_ProxyAuthenticationRequired = 407;
    /**
     * Generated from protobuf enum <code>HTTPStatus_408_RequestTimeout = 408;</code>
     */
    const HTTPStatus_408_RequestTimeout = 408;
    /**
     * Generated from protobuf enum <code>HTTPStatus_409_Conflict = 409;</code>
     */
    const HTTPStatus_409_Conflict = 409;
    /**
     * Generated from protobuf enum <code>HTTPStatus_410_Gone = 410;</code>
     */
    const HTTPStatus_410_Gone = 410;
    /**
     * Generated from protobuf enum <code>HTTPStatus_411_LengthRequired = 411;</code>
     */
    const HTTPStatus_411_LengthRequired = 411;
    /**
     * Generated from protobuf enum <code>HTTPStatus_412_PreconditionFailed = 412;</code>
     */
    const HTTPStatus_412_PreconditionFailed = 412;
    /**
     * Generated from protobuf enum <code>HTTPStatus_413_PayloadTooLarge = 413;</code>
     */
    const HTTPStatus_413_PayloadTooLarge = 413;
    /**
     * Generated from protobuf enum <code>HTTPStatus_414_UriTooLong = 414;</code>
     */
    const HTTPStatus_414_UriTooLong = 414;
    /**
     * Generated from protobuf enum <code>HTTPStatus_415_UnsupportedMediaType = 415;</code>
     */
    const HTTPStatus_415_UnsupportedMediaType = 415;
    /**
     * Generated from protobuf enum <code>HTTPStatus_416_RangeNotSatisfiable = 416;</code>
     */
    const HTTPStatus_416_RangeNotSatisfiable = 416;
    /**
     * Generated from protobuf enum <code>HTTPStatus_417_ExpectationFailed = 417;</code>
     */
    const HTTPStatus_417_ExpectationFailed = 417;
    /**
     * Generated from protobuf enum <code>HTTPStatus_418_ImATeapot = 418;</code>
     */
    const HTTPStatus_418_ImATeapot = 418;
    /**
     * Generated from protobuf enum <code>HTTPStatus_421_MisdirectedRequest = 421;</code>
     */
    const HTTPStatus_421_MisdirectedRequest = 421;
    /**
     * Generated from protobuf enum <code>HTTPStatus_422_UnprocessableEntity = 422;</code>
     */
    const HTTPStatus_422_UnprocessableEntity = 422;
    /**
     * Generated from protobuf enum <code>HTTPStatus_423_Locked = 423;</code>
     */
    const HTTPStatus_423_Locked = 423;
    /**
     * Generated from protobuf enum <code>HTTPStatus_424_FailedDependency = 424;</code>
     */
    const HTTPStatus_424_FailedDependency = 424;
    /**
     * Generated from protobuf enum <code>HTTPStatus_425_TooEarly = 425;</code>
     */
    const HTTPStatus_425_TooEarly = 425;
    /**
     * Generated from protobuf enum <code>HTTPStatus_426_UpgradeRequired = 426;</code>
     */
    const HTTPStatus_426_UpgradeRequired = 426;
    /**
     * Generated from protobuf enum <code>HTTPStatus_428_PreconditionRequired = 428;</code>
     */
    const HTTPStatus_428_PreconditionRequired = 428;
    /**
     * Generated from protobuf enum <code>HTTPStatus_429_TooManyRequests = 429;</code>
     */
    const HTTPStatus_429_TooManyRequests = 429;
    /**
     * Generated from protobuf enum <code>HTTPStatus_431_RequestHeaderFieldsTooLarge = 431;</code>
     */
    const HTTPStatus_431_RequestHeaderFieldsTooLarge = 431;
    /**
     * Generated from protobuf enum <code>HTTPStatus_451_UnavailableForLegalReasons = 451;</code>
     */
    const HTTPStatus_451_UnavailableForLegalReasons = 451;
    /**
     * Server Error Codes
     *
     * Generated from protobuf enum <code>HTTPStatus_500_InternalServerError = 500;</code>
     */
    const HTTPStatus_500_InternalServerError = 500;
    /**
     * Generated from protobuf enum <code>HTTPStatus_501_NotImplemented = 501;</code>
     */
    const HTTPStatus_501_NotImplemented = 501;
    /**
     * Generated from protobuf enum <code>HTTPStatus_502_BadGateway = 502;</code>
     */
    const HTTPStatus_502_BadGateway = 502;
    /**
     * Generated from protobuf enum <code>HTTPStatus_503_ServiceUnavailable = 503;</code>
     */
    const HTTPStatus_503_ServiceUnavailable = 503;
    /**
     * Generated from protobuf enum <code>HTTPStatus_504_GatewayTimeout = 504;</code>
     */
    const HTTPStatus_504_GatewayTimeout = 504;
    /**
     * Generated from protobuf enum <code>HTTPStatus_505_HTTPStatusVersionNotSupported = 505;</code>
     */
    const HTTPStatus_505_HTTPStatusVersionNotSupported = 505;
    /**
     * Generated from protobuf enum <code>HTTPStatus_506_VariantAlsoNegotiates = 506;</code>
     */
    const HTTPStatus_506_VariantAlsoNegotiates = 506;
    /**
     * Generated from protobuf enum <code>HTTPStatus_507_InsufficientStorage = 507;</code>
     */
    const HTTPStatus_507_InsufficientStorage = 507;
    /**
     * Generated from protobuf enum <code>HTTPStatus_508_LoopDetected = 508;</code>
     */
    const HTTPStatus_508_LoopDetected = 508;
    /**
     * Generated from protobuf enum <code>HTTPStatus_510_NotExtended = 510;</code>
     */
    const HTTPStatus_510_NotExtended = 510;
    /**
     * Generated from protobuf enum <code>HTTPStatus_511_NetworkAuthenticationRequired = 511;</code>
     */
    const HTTPStatus_511_NetworkAuthenticationRequired = 511;

    private static $valueToName = [
        self::HTTPStatus_Notset => 'HTTPStatus_Notset',
        self::HTTPStatus_100_Continue => 'HTTPStatus_100_Continue',
        self::HTTPStatus_101_SwitchingProtocols => 'HTTPStatus_101_SwitchingProtocols',
        self::HTTPStatus_102_Processing => 'HTTPStatus_102_Processing',
        self::HTTPStatus_103_EarlyHints => 'HTTPStatus_103_EarlyHints',
        self::HTTPStatus_200_Ok => 'HTTPStatus_200_Ok',
        self::HTTPStatus_201_Created => 'HTTPStatus_201_Created',
        self::HTTPStatus_202_Accepted => 'HTTPStatus_202_Accepted',
        self::HTTPStatus_203_NonAuthoritativeInformation => 'HTTPStatus_203_NonAuthoritativeInformation',
        self::HTTPStatus_204_NoContent => 'HTTPStatus_204_NoContent',
        self::HTTPStatus_205_ResetContent => 'HTTPStatus_205_ResetContent',
        self::HTTPStatus_206_PartialContent => 'HTTPStatus_206_PartialContent',
        self::HTTPStatus_207_MultiStatus => 'HTTPStatus_207_MultiStatus',
        self::HTTPStatus_208_AlreadyReported => 'HTTPStatus_208_AlreadyReported',
        self::HTTPStatus_226_ImUsed => 'HTTPStatus_226_ImUsed',
        self::HTTPStatus_300_MultipleChoices => 'HTTPStatus_300_MultipleChoices',
        self::HTTPStatus_301_MovedPermanently => 'HTTPStatus_301_MovedPermanently',
        self::HTTPStatus_302_Found => 'HTTPStatus_302_Found',
        self::HTTPStatus_303_SeeOther => 'HTTPStatus_303_SeeOther',
        self::HTTPStatus_304_NotModified => 'HTTPStatus_304_NotModified',
        self::HTTPStatus_305_UseProxy => 'HTTPStatus_305_UseProxy',
        self::HTTPStatus_306_Unused => 'HTTPStatus_306_Unused',
        self::HTTPStatus_307_TemporaryRedirect => 'HTTPStatus_307_TemporaryRedirect',
        self::HTTPStatus_308_PermanentRedirect => 'HTTPStatus_308_PermanentRedirect',
        self::HTTPStatus_400_BadRequest => 'HTTPStatus_400_BadRequest',
        self::HTTPStatus_401_Unauthorized => 'HTTPStatus_401_Unauthorized',
        self::HTTPStatus_402_PaymentRequired => 'HTTPStatus_402_PaymentRequired',
        self::HTTPStatus_403_Forbidden => 'HTTPStatus_403_Forbidden',
        self::HTTPStatus_404_NotFound => 'HTTPStatus_404_NotFound',
        self::HTTPStatus_405_MethodNotAllowed => 'HTTPStatus_405_MethodNotAllowed',
        self::HTTPStatus_406_NotAcceptable => 'HTTPStatus_406_NotAcceptable',
        self::HTTPStatus_407_ProxyAuthenticationRequired => 'HTTPStatus_407_ProxyAuthenticationRequired',
        self::HTTPStatus_408_RequestTimeout => 'HTTPStatus_408_RequestTimeout',
        self::HTTPStatus_409_Conflict => 'HTTPStatus_409_Conflict',
        self::HTTPStatus_410_Gone => 'HTTPStatus_410_Gone',
        self::HTTPStatus_411_LengthRequired => 'HTTPStatus_411_LengthRequired',
        self::HTTPStatus_412_PreconditionFailed => 'HTTPStatus_412_PreconditionFailed',
        self::HTTPStatus_413_PayloadTooLarge => 'HTTPStatus_413_PayloadTooLarge',
        self::HTTPStatus_414_UriTooLong => 'HTTPStatus_414_UriTooLong',
        self::HTTPStatus_415_UnsupportedMediaType => 'HTTPStatus_415_UnsupportedMediaType',
        self::HTTPStatus_416_RangeNotSatisfiable => 'HTTPStatus_416_RangeNotSatisfiable',
        self::HTTPStatus_417_ExpectationFailed => 'HTTPStatus_417_ExpectationFailed',
        self::HTTPStatus_418_ImATeapot => 'HTTPStatus_418_ImATeapot',
        self::HTTPStatus_421_MisdirectedRequest => 'HTTPStatus_421_MisdirectedRequest',
        self::HTTPStatus_422_UnprocessableEntity => 'HTTPStatus_422_UnprocessableEntity',
        self::HTTPStatus_423_Locked => 'HTTPStatus_423_Locked',
        self::HTTPStatus_424_FailedDependency => 'HTTPStatus_424_FailedDependency',
        self::HTTPStatus_425_TooEarly => 'HTTPStatus_425_TooEarly',
        self::HTTPStatus_426_UpgradeRequired => 'HTTPStatus_426_UpgradeRequired',
        self::HTTPStatus_428_PreconditionRequired => 'HTTPStatus_428_PreconditionRequired',
        self::HTTPStatus_429_TooManyRequests => 'HTTPStatus_429_TooManyRequests',
        self::HTTPStatus_431_RequestHeaderFieldsTooLarge => 'HTTPStatus_431_RequestHeaderFieldsTooLarge',
        self::HTTPStatus_451_UnavailableForLegalReasons => 'HTTPStatus_451_UnavailableForLegalReasons',
        self::HTTPStatus_500_InternalServerError => 'HTTPStatus_500_InternalServerError',
        self::HTTPStatus_501_NotImplemented => 'HTTPStatus_501_NotImplemented',
        self::HTTPStatus_502_BadGateway => 'HTTPStatus_502_BadGateway',
        self::HTTPStatus_503_ServiceUnavailable => 'HTTPStatus_503_ServiceUnavailable',
        self::HTTPStatus_504_GatewayTimeout => 'HTTPStatus_504_GatewayTimeout',
        self::HTTPStatus_505_HTTPStatusVersionNotSupported => 'HTTPStatus_505_HTTPStatusVersionNotSupported',
        self::HTTPStatus_506_VariantAlsoNegotiates => 'HTTPStatus_506_VariantAlsoNegotiates',
        self::HTTPStatus_507_InsufficientStorage => 'HTTPStatus_507_InsufficientStorage',
        self::HTTPStatus_508_LoopDetected => 'HTTPStatus_508_LoopDetected',
        self::HTTPStatus_510_NotExtended => 'HTTPStatus_510_NotExtended',
        self::HTTPStatus_511_NetworkAuthenticationRequired => 'HTTPStatus_511_NetworkAuthenticationRequired',
    ];

    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);
    }
}

