Author: ningjiang Date: Tue Dec 18 07:57:47 2012 New Revision: 1423306 URL: http://svn.apache.org/viewvc?rev=1423306&view=rev Log: CAMEL-5781 revert the patch as we cannot upgrade the aws-sdk version here
Modified: camel/branches/camel-2.9.x/components/camel-aws/src/main/java/org/apache/camel/component/aws/s3/S3Constants.java camel/branches/camel-2.9.x/components/camel-aws/src/main/java/org/apache/camel/component/aws/s3/S3Producer.java Modified: camel/branches/camel-2.9.x/components/camel-aws/src/main/java/org/apache/camel/component/aws/s3/S3Constants.java URL: http://svn.apache.org/viewvc/camel/branches/camel-2.9.x/components/camel-aws/src/main/java/org/apache/camel/component/aws/s3/S3Constants.java?rev=1423306&r1=1423305&r2=1423306&view=diff ============================================================================== --- camel/branches/camel-2.9.x/components/camel-aws/src/main/java/org/apache/camel/component/aws/s3/S3Constants.java (original) +++ camel/branches/camel-2.9.x/components/camel-aws/src/main/java/org/apache/camel/component/aws/s3/S3Constants.java Tue Dec 18 07:57:47 2012 @@ -18,22 +18,20 @@ package org.apache.camel.component.aws.s /** * Constants used in Camel AWS S3 module - * + * */ public interface S3Constants { - String BUCKET_NAME = "CamelAwsS3BucketName"; - String CACHE_CONTROL = "CamelAwsS3ContentControl"; + String BUCKET_NAME = "CamelAwsS3BucketName"; + String CACHE_CONTROL = "CamelAwsS3ContentControl"; String CONTENT_DISPOSITION = "CamelAwsS3ContentDisposition"; - String CONTENT_ENCODING = "CamelAwsS3ContentEncoding"; - String CONTENT_LENGTH = "CamelAwsS3ContentLength"; - String CONTENT_MD5 = "CamelAwsS3ContentMD5"; - String CONTENT_TYPE = "CamelAwsS3ContentType"; - String E_TAG = "CamelAwsS3ETag"; - String KEY = "CamelAwsS3Key"; - String LAST_MODIFIED = "CamelAwsS3LastModified"; - String STORAGE_CLASS = "CamelAwsS3StorageClass"; - String VERSION_ID = "CamelAwsS3VersionId"; - String CANNED_ACL = "CamelAwsS3CannedAcl"; - String ACL = "CamelAwsS3Acl"; + String CONTENT_ENCODING = "CamelAwsS3ContentEncoding"; + String CONTENT_LENGTH = "CamelAwsS3ContentLength"; + String CONTENT_MD5 = "CamelAwsS3ContentMD5"; + String CONTENT_TYPE = "CamelAwsS3ContentType"; + String E_TAG = "CamelAwsS3ETag"; + String KEY = "CamelAwsS3Key"; + String LAST_MODIFIED = "CamelAwsS3LastModified"; + String STORAGE_CLASS = "CamelAwsS3StorageClass"; + String VERSION_ID = "CamelAwsS3VersionId"; } \ No newline at end of file Modified: camel/branches/camel-2.9.x/components/camel-aws/src/main/java/org/apache/camel/component/aws/s3/S3Producer.java URL: http://svn.apache.org/viewvc/camel/branches/camel-2.9.x/components/camel-aws/src/main/java/org/apache/camel/component/aws/s3/S3Producer.java?rev=1423306&r1=1423305&r2=1423306&view=diff ============================================================================== --- camel/branches/camel-2.9.x/components/camel-aws/src/main/java/org/apache/camel/component/aws/s3/S3Producer.java (original) +++ camel/branches/camel-2.9.x/components/camel-aws/src/main/java/org/apache/camel/component/aws/s3/S3Producer.java Tue Dec 18 07:57:47 2012 @@ -19,8 +19,6 @@ package org.apache.camel.component.aws.s import java.io.InputStream; import java.util.Date; -import com.amazonaws.services.s3.model.AccessControlList; -import com.amazonaws.services.s3.model.CannedAccessControlList; import com.amazonaws.services.s3.model.ObjectMetadata; import com.amazonaws.services.s3.model.PutObjectRequest; import com.amazonaws.services.s3.model.PutObjectResult; @@ -34,125 +32,115 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; /** - * A Producer which sends messages to the Amazon Web Service Simple Storage Service <a - * href="http://aws.amazon.com/s3/">AWS S3</a> + * A Producer which sends messages to the Amazon Web Service Simple Storage Service + * <a href="http://aws.amazon.com/s3/">AWS S3</a> */ public class S3Producer extends DefaultProducer { private static final Logger LOG = LoggerFactory.getLogger(S3Producer.class); - public S3Producer(final Endpoint endpoint) { + public S3Producer(Endpoint endpoint) { super(endpoint); } - @Override - public void process(final Exchange exchange) throws Exception { + public void process(Exchange exchange) throws Exception { ObjectMetadata objectMetadata = new ObjectMetadata(); - + Long contentLength = exchange.getIn().getHeader(S3Constants.CONTENT_LENGTH, Long.class); if (contentLength != null) { objectMetadata.setContentLength(contentLength); } - + String contentType = exchange.getIn().getHeader(S3Constants.CONTENT_TYPE, String.class); if (contentType != null) { objectMetadata.setContentType(contentType); } - + String cacheControl = exchange.getIn().getHeader(S3Constants.CACHE_CONTROL, String.class); if (cacheControl != null) { objectMetadata.setCacheControl(cacheControl); } - + String contentDisposition = exchange.getIn().getHeader(S3Constants.CONTENT_DISPOSITION, String.class); if (contentDisposition != null) { objectMetadata.setContentDisposition(contentDisposition); } - + String contentEncoding = exchange.getIn().getHeader(S3Constants.CONTENT_ENCODING, String.class); if (contentEncoding != null) { objectMetadata.setContentEncoding(contentEncoding); } - + String contentMD5 = exchange.getIn().getHeader(S3Constants.CONTENT_MD5, String.class); if (contentMD5 != null) { objectMetadata.setContentMD5(contentMD5); } - + Date lastModified = exchange.getIn().getHeader(S3Constants.LAST_MODIFIED, Date.class); if (lastModified != null) { objectMetadata.setLastModified(lastModified); } - - PutObjectRequest putObjectRequest = new PutObjectRequest(getConfiguration().getBucketName(), - determineKey(exchange), exchange.getIn().getMandatoryBody(InputStream.class), objectMetadata); + + PutObjectRequest putObjectRequest = new PutObjectRequest( + getConfiguration().getBucketName(), + determineKey(exchange), + exchange.getIn().getMandatoryBody(InputStream.class), + 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); - } 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()); + message.setHeader(S3Constants.VERSION_ID, putObjectResult.getVersionId()); } } - - private String determineKey(final Exchange exchange) { + + private String determineKey(Exchange exchange) { String key = exchange.getIn().getHeader(S3Constants.KEY, String.class); if (key == null) { throw new IllegalArgumentException("AWS S3 Key header missing."); } return key; } - - private String determineStorageClass(final Exchange exchange) { + + private String determineStorageClass(Exchange exchange) { String storageClass = exchange.getIn().getHeader(S3Constants.STORAGE_CLASS, String.class); if (storageClass == null) { storageClass = getConfiguration().getStorageClass(); } - + return storageClass; } - private Message getMessageForResponse(final Exchange exchange) { + private Message getMessageForResponse(Exchange exchange) { if (exchange.getPattern().isOutCapable()) { Message out = exchange.getOut(); out.copyFrom(exchange.getIn()); return out; } - + return exchange.getIn(); } - + protected S3Configuration getConfiguration() { return getEndpoint().getConfiguration(); } - + @Override public String toString() { return "S3Producer[" + URISupport.sanitizeUri(getEndpoint().getEndpointUri()) + "]"; } - + @Override public S3Endpoint getEndpoint() { return (S3Endpoint) super.getEndpoint();