log.info(String.format("Multipart uploading %s (%s) to vault %s with part size %s (%s).", uploadFile.getName(),
hTotalSize, vaultName, partSize, hPartSize));
try {
final String uploadId = this.initiateMultipartUpload(vaultName, partSize, uploadFile.getName());
final String checksum = this.uploadParts(uploadId, uploadFile, vaultName, partSize);
final CompleteMultipartUploadResult result = this.completeMultiPartUpload(uploadId, uploadFile, vaultName,
checksum);
log.info("Uploaded Archive ID: " + result.getArchiveId());
log.info("Local Checksum: " + checksum);
log.info("Remote Checksum: " + result.getChecksum());
if (checksum.equals(result.getChecksum())) {
log.info("Checksums are identical, upload succeeded.");
} else {
log.error("Checksums are different, upload failed.");
}