BlobGeoReplicationStatusExtensions
using System;
namespace Azure.Storage.Blobs.Models
{
    internal static class BlobGeoReplicationStatusExtensions
    {
        public static string ToSerialString(this BlobGeoReplicationStatus value)
        {
            switch (value) {
            case BlobGeoReplicationStatus.Live:
                return "live";
            case BlobGeoReplicationStatus.Bootstrap:
                return "bootstrap";
            case BlobGeoReplicationStatus.Unavailable:
                return "unavailable";
            default:
                throw new ArgumentOutOfRangeException("value", value, "Unknown BlobGeoReplicationStatus value.");
            }
        }
        public static BlobGeoReplicationStatus ToBlobGeoReplicationStatus(this string value)
        {
            if (StringComparer.OrdinalIgnoreCase.Equals(value, "live"))
                return BlobGeoReplicationStatus.Live;
            if (StringComparer.OrdinalIgnoreCase.Equals(value, "bootstrap"))
                return BlobGeoReplicationStatus.Bootstrap;
            if (StringComparer.OrdinalIgnoreCase.Equals(value, "unavailable"))
                return BlobGeoReplicationStatus.Unavailable;
            throw new ArgumentOutOfRangeException("value", value, "Unknown BlobGeoReplicationStatus value.");
        }
    }
}