<PackageReference Include="Azure.Storage.Common" Version="12.24.0-beta.1" />

TransferValidationOptionsExtensions

using System; namespace Azure.Storage { internal static class TransferValidationOptionsExtensions { public static StorageChecksumAlgorithm ResolveAuto(this StorageChecksumAlgorithm checksumAlgorithm) { if (checksumAlgorithm == StorageChecksumAlgorithm.Auto) return StorageChecksumAlgorithm.StorageCrc64; return checksumAlgorithm; } public static UploadTransferValidationOptions ToValidationOptions(this byte[] md5) { if (md5 != null) return new UploadTransferValidationOptions { ChecksumAlgorithm = StorageChecksumAlgorithm.MD5, PrecalculatedChecksum = (ReadOnlyMemory<byte>)md5 }; return null; } public static DownloadTransferValidationOptions ToValidationOptions(this bool requestTransactionalMD5) { if (!requestTransactionalMD5) return null; return new DownloadTransferValidationOptions { ChecksumAlgorithm = StorageChecksumAlgorithm.MD5, AutoValidateChecksum = false }; } public static void CopyTo(this TransferValidationOptions source, TransferValidationOptions dest) { source.Upload.CopyTo(dest.Upload); source.Download.CopyTo(dest.Download); } public static void CopyTo(this UploadTransferValidationOptions source, UploadTransferValidationOptions dest) { dest.ChecksumAlgorithm = source.ChecksumAlgorithm; dest.PrecalculatedChecksum = source.PrecalculatedChecksum; } public static void CopyTo(this DownloadTransferValidationOptions source, DownloadTransferValidationOptions dest) { dest.ChecksumAlgorithm = source.ChecksumAlgorithm; dest.AutoValidateChecksum = source.AutoValidateChecksum; } } }