List of usage examples for com.amazonaws.services.s3.model PutObjectRequest PutObjectRequest
public PutObjectRequest(String bucketName, String key, InputStream input, ObjectMetadata metadata)
From source file:io.druid.storage.s3.ServerSideEncryptingAmazonS3.java
License:Apache License
public PutObjectResult putObject(String bucket, String key, InputStream in, ObjectMetadata objectMetadata) { return putObject(new PutObjectRequest(bucket, key, in, objectMetadata)); }
From source file:io.jeffrey.web.assemble.S3PutObjectTarget.java
@Override public void upload(String key, String md5, String contentType, InputStream body, long contentLength) throws Exception { ObjectMetadata metadata = new ObjectMetadata(); metadata.setContentLength(contentLength); metadata.setContentType(contentType); if (md5.equalsIgnoreCase(etags.get(key))) { System.out.println("skipping:" + key); return;//ww w . j a v a 2 s . com } System.out.println("uploading:" + key); s3.putObject(new PutObjectRequest(bucket, key, body, metadata) .withCannedAcl(CannedAccessControlList.PublicRead)); }
From source file:io.konig.camel.aws.s3.DeleteObjectProducer.java
License:Apache License
public void processSingleOp(final Exchange exchange) throws Exception { ObjectMetadata objectMetadata = determineMetadata(exchange); File filePayload = null;//from w w w. j a va 2 s . c o m InputStream is = null; ByteArrayOutputStream baos = null; Object obj = exchange.getIn().getMandatoryBody(); PutObjectRequest putObjectRequest = null; // Need to check if the message body is WrappedFile if (obj instanceof WrappedFile) { obj = ((WrappedFile<?>) obj).getFile(); } if (obj instanceof File) { filePayload = (File) obj; is = new FileInputStream(filePayload); } else { is = exchange.getIn().getMandatoryBody(InputStream.class); baos = determineLengthInputStream(is); objectMetadata.setContentLength(baos.size()); is = new ByteArrayInputStream(baos.toByteArray()); } putObjectRequest = new PutObjectRequest(getConfiguration().getBucketName(), determineKey(exchange), is, objectMetadata); String storageClass = determineStorageClass(exchange); if (storageClass != null) { putObjectRequest.setStorageClass(storageClass); } String cannedAcl = exchange.getIn().getHeader(S3Constants.CANNED_ACL, String.class); if (cannedAcl != null) { CannedAccessControlList objectAcl = CannedAccessControlList.valueOf(cannedAcl); putObjectRequest.setCannedAcl(objectAcl); } AccessControlList acl = exchange.getIn().getHeader(S3Constants.ACL, AccessControlList.class); if (acl != null) { // note: if cannedacl and acl are both specified the last one will // be used. refer to // PutObjectRequest#setAccessControlList for more details putObjectRequest.setAccessControlList(acl); } if (getConfiguration().isUseAwsKMS()) { SSEAwsKeyManagementParams keyManagementParams; if (ObjectHelper.isNotEmpty(getConfiguration().getAwsKMSKeyId())) { keyManagementParams = new SSEAwsKeyManagementParams(getConfiguration().getAwsKMSKeyId()); } else { keyManagementParams = new SSEAwsKeyManagementParams(); } putObjectRequest.setSSEAwsKeyManagementParams(keyManagementParams); } LOG.trace("Put object [{}] from exchange [{}]...", putObjectRequest, exchange); PutObjectResult putObjectResult = getEndpoint().getS3Client().putObject(putObjectRequest); LOG.trace("Received result [{}]", putObjectResult); Message message = getMessageForResponse(exchange); message.setHeader(S3Constants.E_TAG, putObjectResult.getETag()); if (putObjectResult.getVersionId() != null) { message.setHeader(S3Constants.VERSION_ID, putObjectResult.getVersionId()); } if (getConfiguration().isDeleteAfterWrite() && filePayload != null) { // close streams IOHelper.close(putObjectRequest.getInputStream()); IOHelper.close(is); FileUtil.deleteFile(filePayload); } }
From source file:it.polimi.modaclouds.cpimlibrary.blobmng.AmazonBlobManager.java
License:Apache License
@Override public void uploadBlob(byte[] file, String fileName) { System.out.println("uploadBlob " + fileName + "."); //System.out.println("Creating bucket " + bucketName + "\n"); //s3.putObject(new PutObjectRequest(bucketName, name, input, metadata)); ByteArrayInputStream is = new ByteArrayInputStream(file); ObjectMetadata omd = new ObjectMetadata(); omd.setContentLength(file.length);// w w w . ja v a 2s . c om PutObjectRequest pur = new PutObjectRequest(bucketName, fileName, is, omd); s3.putObject(pur); }
From source file:jenkins.plugins.itemstorage.s3.Uploads.java
License:Open Source License
public void startUploading(TransferManager manager, File file, InputStream inputStream, Destination dest, ObjectMetadata metadata) throws AmazonServiceException { final PutObjectRequest request = new PutObjectRequest(dest.bucketName, dest.objectName, inputStream, metadata);//from w w w . jav a 2 s. c o m // Set the buffer size (ReadLimit) equal to the multipart upload size, // allowing us to resend data if the connection breaks. request.getRequestClientOptions().setReadLimit(MULTIPART_UPLOAD_THRESHOLD); manager.getConfiguration().setMultipartUploadThreshold((long) MULTIPART_UPLOAD_THRESHOLD); final Upload upload = manager.upload(request); startedUploads.put(file, upload); openedStreams.put(file, inputStream); }
From source file:net.smartcosmos.plugin.service.aws.storage.AwsS3StorageService.java
License:Apache License
@Override public StorageResponse store(StorageRequest request) throws IOException { final IFile requestFile = request.getFile(); AmazonS3 s3 = new AmazonS3Client(credentials, new ClientConfiguration().withProtocol(Protocol.HTTPS)); Map<String, String> fileMetadata = new HashMap<String, String>(); fileMetadata.put("accountUrn", request.getUser().getAccount().getUrn()); fileMetadata.put("userUrn", request.getUser().getUrn()); fileMetadata.put("fileUrn", requestFile.getUrn()); fileMetadata.put("entityReferenceType", requestFile.getEntityReferenceType().name()); fileMetadata.put("referenceUrn", requestFile.getReferenceUrn()); fileMetadata.put("recordedTimestamp", Long.toString(request.getFile().getTimestamp())); // fileMetadata.put("mimeType", request.getVfsObject().getMimeType()); ObjectMetadata metadata = new ObjectMetadata(); if (request.getContentLength() > 0) { LOG.debug("Including content length : " + request.getContentLength()); metadata.setContentLength(request.getContentLength()); }/*ww w. j a v a 2s.c o m*/ // metadata.setContentMD5(streamMD5); metadata.setUserMetadata(fileMetadata); try { LOG.trace("Bucket name: " + getBucketName()); LOG.trace("File name: " + request.getFileName()); LOG.trace("inputStream == null? " + (request.getInputStream() == null)); HashingInputStream his = new HashingInputStream(request.getInputStream(), "SHA-256"); PutObjectResult putResult = s3 .putObject(new PutObjectRequest(getBucketName(), request.getFileName(), his, metadata)); String finalUrl = getUrl(request.getFileName()); LOG.trace("File URL: " + finalUrl); requestFile.setUrl(getUrl(request.getFileName())); byte[] signature = his.getSignature(); JSONObject jsonObject = HashUtil.signFile(requestFile, signature); LOG.info("File Signature\n\n{}\n\n", jsonObject.toString(3)); return new StorageResponse(requestFile, finalUrl, jsonObject.toString(3)); } catch (AmazonS3Exception e) { e.printStackTrace(); throw e; } catch (JSONException | NoSuchAlgorithmException e) { e.printStackTrace(); throw new IOException(e); } }
From source file:net.solarnetwork.node.backup.s3.SdkS3Client.java
License:Open Source License
@Override public S3ObjectReference putObject(String key, InputStream in, ObjectMetadata objectMetadata) throws IOException { AmazonS3 client = getClient();/*from w w w .j ava 2s. c o m*/ try { PutObjectRequest req = new PutObjectRequest(bucketName, key, in, objectMetadata); client.putObject(req); return new S3ObjectReference(key, objectMetadata.getContentLength(), objectMetadata.getLastModified()); } catch (AmazonServiceException e) { log.warn("AWS error: {}; HTTP code {}; AWS code {}; type {}; request ID {}", e.getMessage(), e.getStatusCode(), e.getErrorCode(), e.getErrorType(), e.getRequestId()); throw new RemoteServiceException("Error putting S3 object at " + key, e); } catch (AmazonClientException e) { log.debug("Error communicating with AWS: {}", e.getMessage()); throw new IOException("Error communicating with AWS", e); } }
From source file:nl.kpmg.lcm.server.data.s3.S3FileAdapter.java
License:Apache License
@Override public void write(InputStream stream, Long size) throws IOException { if (size == null || size <= 0) { throw new LcmExposableException("Error! Unable to transfer file to s3 storage with unknown size."); }// w w w . j a v a 2 s . c o m ObjectMetadata metadata = new ObjectMetadata(); metadata.setContentLength(size); if (!s3Client.doesBucketExist(bucketName)) { s3Client.createBucket(bucketName); } s3Client.putObject(new PutObjectRequest(bucketName, fileName, stream, metadata)); LOGGER.info("Successfully written data in s3 storage. Bucket: " + bucketName); }
From source file:onl.area51.filesystem.s3.S3Sender.java
License:Apache License
@Override public void send(char[] path) throws IOException { String pathValue = String.valueOf(path); ObjectMetadata meta = new ObjectMetadata(); meta.setContentLength(getDelegate().size(path)); meta.setContentType(pathValue);/*from w ww . j ava 2s .c o m*/ try (InputStream is = getDelegate().newInputStream(path)) { LOG.log(Level.FINE, () -> "Sending " + getBucketName() + ":" + pathValue); getS3().putObject(new PutObjectRequest(getBucketName(), pathValue, is, meta)); LOG.log(Level.FINE, () -> "Sent " + getBucketName() + ":" + pathValue); } catch (AmazonS3Exception ex) { LOG.log(Level.FINE, () -> "Send error " + ex.getStatusCode() + " " + getBucketName() + ":" + pathValue); throw new IOException(ex.getStatusCode() + ": Failed to put " + pathValue, ex); } catch (IOException ex) { throw new IOException("Failed to put " + pathValue, ex); } }
From source file:org.adroitlogic.build.aws.maven.SimpleStorageServiceWagon.java
License:Apache License
@Override protected void putResource(File source, String destination, TransferProgress transferProgress) throws TransferFailedException, ResourceDoesNotExistException { String key = getKey(destination); mkdirs(key, 0);/*from w w w .ja va 2 s . com*/ InputStream in = null; try { ObjectMetadata objectMetadata = new ObjectMetadata(); objectMetadata.setContentLength(source.length()); objectMetadata.setContentType(Mimetypes.getInstance().getMimetype(source)); in = new TransferProgressFileInputStream(source, transferProgress); this.amazonS3.putObject(new PutObjectRequest(this.bucketName, key, in, objectMetadata)); } catch (AmazonServiceException e) { throw new TransferFailedException(String.format("Cannot write file to '%s'", destination), e); } catch (FileNotFoundException e) { throw new ResourceDoesNotExistException(String.format("Cannot read file from '%s'", source), e); } finally { IoUtils.closeQuietly(in); } }