CLOUDSTACK-3027:Object_Store_Refactor - Uploaded template S3

content-type is not appropriate
This commit is contained in:
Min Chen 2013-06-19 16:50:27 -07:00
parent bd84005b4e
commit f0ebb0596d

View File

@ -209,6 +209,13 @@ public class S3TemplateDownloader implements TemplateDownloader {
remoteSize = maxTemplateSizeInByte; remoteSize = maxTemplateSizeInByte;
} }
// get content type
String contentType = null;
Header contentTypeHeader = request.getResponseHeader("Content-Type");
if ( contentTypeHeader != null ){
contentType = contentTypeHeader.getValue();
}
InputStream in = !chunked ? new BufferedInputStream(request.getResponseBodyAsStream()) InputStream in = !chunked ? new BufferedInputStream(request.getResponseBodyAsStream())
: new ChunkedInputStream(request.getResponseBodyAsStream()); : new ChunkedInputStream(request.getResponseBodyAsStream());
@ -225,6 +232,9 @@ public class S3TemplateDownloader implements TemplateDownloader {
// download using S3 API // download using S3 API
ObjectMetadata metadata = new ObjectMetadata(); ObjectMetadata metadata = new ObjectMetadata();
metadata.setContentLength(remoteSize); metadata.setContentLength(remoteSize);
if ( contentType != null ){
metadata.setContentType(contentType);
}
PutObjectRequest putObjectRequest = new PutObjectRequest(s3.getBucketName(), s3Key, in, metadata); PutObjectRequest putObjectRequest = new PutObjectRequest(s3.getBucketName(), s3Key, in, metadata);
// check if RRS is enabled // check if RRS is enabled
if (s3.getEnableRRS()){ if (s3.getEnableRRS()){