示例#1
0
        public async Task CopyFromAsync(AzureBlob source)
        {
            await blob.StartCopyAsync(source.blob);

            var start   = DateTime.Now;
            var timeout = TimeSpan.FromMinutes(2);
            var delay   = TimeSpan.FromSeconds(1);

            while (blob.CopyState.Status == CopyStatus.Pending && (DateTime.Now - start) < timeout)
            {
                await Task.Delay(delay);
            }

            if (blob.CopyState.Status != CopyStatus.Success)
            {
                throw new InvalidOperationException(blob.CopyState.StatusDescription);
            }
        }
示例#2
0
 public PackageBlob(PackageName name, AzureBlob blob)
 {
     Name = name;
     Blob = blob;
 }