LeaseStateExtensions
using System;
namespace Azure.Storage.Blobs.Models
{
internal static class LeaseStateExtensions
{
public static string ToSerialString(this LeaseState value)
{
switch (value) {
case LeaseState.Available:
return "available";
case LeaseState.Leased:
return "leased";
case LeaseState.Expired:
return "expired";
case LeaseState.Breaking:
return "breaking";
case LeaseState.Broken:
return "broken";
default:
throw new ArgumentOutOfRangeException("value", value, "Unknown LeaseState value.");
}
}
public static LeaseState ToLeaseState(this string value)
{
if (StringComparer.OrdinalIgnoreCase.Equals(value, "available"))
return LeaseState.Available;
if (StringComparer.OrdinalIgnoreCase.Equals(value, "leased"))
return LeaseState.Leased;
if (StringComparer.OrdinalIgnoreCase.Equals(value, "expired"))
return LeaseState.Expired;
if (StringComparer.OrdinalIgnoreCase.Equals(value, "breaking"))
return LeaseState.Breaking;
if (StringComparer.OrdinalIgnoreCase.Equals(value, "broken"))
return LeaseState.Broken;
throw new ArgumentOutOfRangeException("value", value, "Unknown LeaseState value.");
}
}
}