@Override public String call() throws Exception { return upload.waitForUploadResult().getETag(); } }, OPERATION_MPU);
@Override public void put(String uri, File f) throws AmazonClientException { LOG.trace("Uploading " + uri); String[] parts = pieces(uri); ObjectMetadata om = new ObjectMetadata(); om.setContentLength(f.length()); if (f.getName().endsWith("gzip")) { om.setContentEncoding("gzip"); } uploadsInProgress.incrementAndGet(); try { PutObjectRequest req = new PutObjectRequest(parts[0],parts[1],f); req.setMetadata(om); UploadResult resp = svc.upload(req).waitForUploadResult(); LOG.trace("Uploaded " + uri + " with ETag " + resp.getETag()); } catch (InterruptedException ie) { LOG.error("Interrupted while uploading {} to {}.", f.getPath(), uri); throw Throwables.propagate(ie); } finally { uploadsInProgress.decrementAndGet(); } }
UploadResult result = transferManager.upload(req).waitForUploadResult(); return result.getETag();