Пример #1
0
        public void Run()
        {
            short retries = 0;

            while (retries++ < NUM_RETRIES)
            {
                try
                {
                    GlacierFilePart part = new GlacierFilePart(ref data, checksum, start, end, uploadId);
                    api.UploadPart(part, OnTransferProgress);
                    metric.incrementTransferredParts();
                    return;
                }
                catch (Exception ex)
                {
                    // Remove what we've uploaded so far from the metrics just to be precise.
                    metric.removeTransferredBytes(lastBytesCount);

                    // Reset the last byte count to zero or we're going to mess things up later.
                    lastBytesCount = 0;

                    Console.WriteLine("Upload exception: " + ex.Message);
                }
            }
        }
Пример #2
0
        public void Run()
        {
            short retries = 0;

            while (retries++ < NUM_RETRIES)
            {
                try
                {
                    GlacierFilePart part = new GlacierFilePart(ref data, checksum, start, end, uploadId);
                    api.UploadPart(part, OnTransferProgress);
                    metric.incrementTransferredParts();
                    return;
                }
                catch (Exception ex)
                {
                    // Remove what we've uploaded so far from the metrics just to be precise.
                    metric.removeTransferredBytes(lastBytesCount);

                    // Reset the last byte count to zero or we're going to mess things up later.
                    lastBytesCount = 0;

                    Console.WriteLine("Upload exception: " + ex.Message);
                }
            }
        }
Пример #3
0
        public bool UploadPart(GlacierFilePart part, System.EventHandler <Amazon.Runtime.StreamTransferProgressArgs> progressCallback)
        {
            UploadMultipartPartRequest uploadRequest = new UploadMultipartPartRequest()
            {
                Body     = new MemoryStream(part.Data),
                Checksum = part.Checksum,
                Range    = part.Range,
                StreamTransferProgress = progressCallback,
                UploadId  = part.UploadId,
                VaultName = _vault
            };

            UploadMultipartPartResponse response = _amazonGlacierClient.UploadMultipartPart(uploadRequest);

            if (part.Checksum == response.UploadMultipartPartResult.Checksum)
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }
Пример #4
0
        public bool UploadPart(GlacierFilePart part, System.EventHandler<Amazon.Runtime.StreamTransferProgressArgs> progressCallback)
        {
            UploadMultipartPartRequest uploadRequest = new UploadMultipartPartRequest()
            {
                Body = new MemoryStream(part.Data),
                Checksum = part.Checksum,
                Range = part.Range,
                StreamTransferProgress = progressCallback,
                UploadId = part.UploadId,
                VaultName = _vault
            };

            UploadMultipartPartResponse response = _amazonGlacierClient.UploadMultipartPart(uploadRequest);

            if (part.Checksum == response.UploadMultipartPartResult.Checksum)
                return true;
            else
                return false;
        }