示例#1
0
        AWSArchiveResult CompleteMPU(string uploadID, AmazonGlacier client, List <string> partChecksumList, FileInfo fio)
        {
            try
            {
                long fileLength = fio.Length;

                fileLength = new FileInfo(archiveToUpload).Length;

                FileStream inputFile     = File.Open(archiveToUpload, FileMode.Open, FileAccess.Read);
                byte[]     treeHash      = Form1.ComputeSHA256TreeHash(inputFile);
                String     localChecksum = BitConverter.ToString(treeHash).Replace("-", "").ToLower();

                CompleteMultipartUploadRequest completeMPUrequest = new CompleteMultipartUploadRequest()
                {
                    UploadId    = uploadID,
                    ArchiveSize = fileLength.ToString(),
                    Checksum    = localChecksum,
                    VaultName   = vaultName
                };

                CompleteMultipartUploadResponse completeMPUresponse = client.CompleteMultipartUpload(completeMPUrequest);

                AWSArchiveResult ar = new AWSArchiveResult();
                ar.ArchiveID = completeMPUresponse.CompleteMultipartUploadResult.ArchiveId;
                ar.Checksum  = localChecksum;

                return(ar);
            }
            catch (Exception e)
            {
                Form1.log.Error(e.ToString());
                return(new AWSArchiveResult());
            }
        }
示例#2
0
        static string CompleteMPU(string uploadID, AmazonGlacier client, List <string> partChecksumList)
        {
            long fileLength         = new FileInfo(BackupFilePath).Length;
            var  completeMPUrequest = new CompleteMultipartUploadRequest()
            {
                UploadId    = uploadID,
                ArchiveSize = fileLength.ToString(),
                Checksum    = TreeHashGenerator.CalculateTreeHash(partChecksumList),
                VaultName   = VaultName
            };

            var completeMPUresponse = client.CompleteMultipartUpload(completeMPUrequest);

            return(completeMPUresponse.CompleteMultipartUploadResult.ArchiveId);
        }
示例#3
0
        static string CompleteMPU(string uploadID, AmazonGlacier client, List<string> partChecksumList)
        {
            long fileLength = new FileInfo(BackupFilePath).Length;
            var completeMPUrequest = new CompleteMultipartUploadRequest()
            {
                UploadId = uploadID,
                ArchiveSize = fileLength.ToString(),
                Checksum = TreeHashGenerator.CalculateTreeHash(partChecksumList),
                VaultName = VaultName
            };

            var completeMPUresponse = client.CompleteMultipartUpload(completeMPUrequest);
            return completeMPUresponse.CompleteMultipartUploadResult.ArchiveId;
        }