List of usage examples for com.amazonaws.services.s3.model UploadPartRequest getPartNumber
public int getPartNumber()
From source file:alluxio.underfs.s3a.S3ALowLevelOutputStream.java
License:Apache License
/** * Executes the upload part request.//w ww . j av a2s.c o m * * @param request the upload part request */ private void execUpload(UploadPartRequest request) { File file = request.getFile(); ListenableFuture<PartETag> futureTag = mExecutor.submit((Callable) () -> { PartETag partETag; AmazonClientException lastException; try { do { try { partETag = mClient.uploadPart(request).getPartETag(); return partETag; } catch (AmazonClientException e) { lastException = e; } } while (mRetryPolicy.attempt()); } finally { // Delete the uploaded or failed to upload file if (!file.delete()) { LOG.error("Failed to delete temporary file @ {}", file.getPath()); } } throw new IOException("Fail to upload part " + request.getPartNumber() + " to " + request.getKey(), lastException); }); mTagFutures.add(futureTag); LOG.debug("Submit upload part request. key={}, partNum={}, file={}, fileSize={}, lastPart={}.", mKey, request.getPartNumber(), file.getPath(), file.length(), request.isLastPart()); }
From source file:com.netflix.exhibitor.core.backup.s3.MockS3Client.java
License:Apache License
@Override public synchronized UploadPartResult uploadPart(UploadPartRequest request) throws Exception { ByteArrayOutputStream out = new ByteArrayOutputStream(); ByteStreams.copy(request.getInputStream(), out); uploadedBytes.add(out.toByteArray()); byte[] md5bytes = S3Utils.md5(out.toByteArray(), out.size()); UploadPartResult result = new UploadPartResult(); result.setPartNumber(request.getPartNumber()); result.setETag(S3Utils.toHex(md5bytes)); return result; }