Esempio n. 1
0
        /// <summary>
        /// Determines the tier of the blob.
        /// </summary>
        /// <param name="blobType">A <see cref="BlobType" /> indicating the type of blob.</param>
        /// <param name="blobTierString">The blob tier as a string</param>
        /// <param name="standardBlobTier">A nullable <see cref="StandardBlobTier"/>. This value will be populated if the blob type is unspecified or is a block blob.</param>
        /// <param name="premiumPageBlobTier">A nullable <see cref="PremiumPageBlobTier"/>. This value will be populated if the blob type is unspecified or is a page blob.</param>
        internal static void GetBlobTier(BlobType blobType, string blobTierString, out StandardBlobTier?standardBlobTier, out PremiumPageBlobTier?premiumPageBlobTier)
        {
            standardBlobTier    = null;
            premiumPageBlobTier = null;

            if (blobType.Equals(BlobType.BlockBlob))
            {
                StandardBlobTier standardBlobTierFromResponse;
                if (Enum.TryParse(blobTierString, true, out standardBlobTierFromResponse))
                {
                    standardBlobTier = standardBlobTierFromResponse;
                }
                else
                {
                    standardBlobTier = StandardBlobTier.Unknown;
                }
            }
            else if (blobType.Equals(BlobType.PageBlob))
            {
                PremiumPageBlobTier pageBlobTierFromResponse;
                if (Enum.TryParse(blobTierString, true, out pageBlobTierFromResponse))
                {
                    premiumPageBlobTier = pageBlobTierFromResponse;
                }
                else
                {
                    premiumPageBlobTier = PremiumPageBlobTier.Unknown;
                }
            }
            else if (blobType.Equals(BlobType.Unspecified))
            {
                StandardBlobTier    standardBlobTierFromResponse;
                PremiumPageBlobTier pageBlobTierFromResponse;
                if (Enum.TryParse(blobTierString, true, out standardBlobTierFromResponse))
                {
                    standardBlobTier = standardBlobTierFromResponse;
                }
                else if (Enum.TryParse(blobTierString, true, out pageBlobTierFromResponse))
                {
                    premiumPageBlobTier = pageBlobTierFromResponse;
                }
                else
                {
                    standardBlobTier    = StandardBlobTier.Unknown;
                    premiumPageBlobTier = PremiumPageBlobTier.Unknown;
                }
            }
        }