public MutableObjectMetadataImpl(ObjectMetadata from) { this.storageClass = StorageClass.STANDARD; this.contentMetadata = new BaseMutableContentMetadata(); HttpUtils.copy(from.getContentMetadata(), this.contentMetadata); this.key = from.getKey(); this.uri = from.getUri(); this.bucket = from.getBucket(); }
/** *{@inheritDoc} */ @Override public int compareTo(ObjectMetadata o) { return (this == o) ? 0 : getETag().compareTo(o.getETag()); }
public MutableBlobMetadata apply(ObjectMetadata from) { if (from == null) return null; MutableBlobMetadata to = new MutableBlobMetadataImpl(); HttpUtils.copy(from.getContentMetadata(), to.getContentMetadata()); to.setUri(from.getUri()); to.setContainer(from.getBucket()); to.setETag(from.getETag()); to.setName(from.getKey()); to.setLastModified(from.getLastModified()); to.setUserMetadata(from.getUserMetadata()); to.setLocation(locationOfBucket.apply(from.getBucket())); to.setType(StorageType.BLOB); to.setSize(from.getContentMetadata().getContentLength()); to.setTier((from.getStorageClass() == null ? ObjectMetadata.StorageClass.STANDARD : from.getStorageClass()).toTier()); return to; } }
public void testCanParseListContainerResult() throws HttpException { ListBucketResponse container = runParseListContainerResult(); assert !container.isTruncated(); assert container.getName().equals("adrianjbosstest"); assert container.size() == 1; ObjectMetadata object = container.iterator().next(); assert object.getKey().equals("3366"); Date expected = new SimpleDateFormatDateService().iso8601DateParse("2009-03-12T02:00:13.000Z"); assert object.getLastModified().equals(expected) : String.format("expected %1$s, but got %1$s", expected, object .getLastModified()); assertEquals(object.getETag(), "\"9d7bb64e8e18ee34eec06dd2cf37b766\""); assert object.getContentMetadata().getContentLength() == 136; CanonicalUser owner = new CanonicalUser("e1a5f66a480ca99a4fdfe8e318c3020446c9989d7004e7778029fbcc5d990fa0"); owner.setDisplayName("ferncam"); assert object.getOwner().equals(owner); assert object.getStorageClass().equals(StorageClass.STANDARD); }
checkArgument(md.getKey() != null, "objectMetadata.getKey() must be set!"); request = metadataPrefixer.bindToRequest(request, md.getUserMetadata()); if (md.getCacheControl() != null) { headers.put(HttpHeaders.CACHE_CONTROL, md.getCacheControl()); if (md.getContentMetadata().getContentDisposition() != null) { headers.put("Content-Disposition", md.getContentMetadata().getContentDisposition()); if (md.getContentMetadata().getContentEncoding() != null) { headers.put("Content-Encoding", md.getContentMetadata().getContentEncoding()); if (md.getContentMetadata().getContentType() != null) { headers.put(HttpHeaders.CONTENT_TYPE, md.getContentMetadata().getContentType()); } else { headers.put(HttpHeaders.CONTENT_TYPE, "binary/octet-stream"); if (md.getContentMetadata().getContentMD5() != null) { headers.put("Content-MD5", base64().encode(md.getContentMetadata().getContentMD5()));
checkArgument(md.getKey() != null, "objectMetadata.getKey() must be set!"); request = metadataPrefixer.bindToRequest(request, md.getUserMetadata()); if (md.getContentMetadata().getCacheControl() != null) { headers.put(HttpHeaders.CACHE_CONTROL, md.getContentMetadata().getCacheControl()); if (md.getContentMetadata().getContentDisposition() != null) { headers.put("Content-Disposition", md.getContentMetadata().getContentDisposition()); if (md.getContentMetadata().getContentEncoding() != null) { headers.put("Content-Encoding", md.getContentMetadata().getContentEncoding()); String contentLanguage = md.getContentMetadata().getContentLanguage(); if (contentLanguage != null) { headers.put(HttpHeaders.CONTENT_LANGUAGE, contentLanguage); if (md.getContentMetadata().getContentType() != null) { headers.put(HttpHeaders.CONTENT_TYPE, md.getContentMetadata().getContentType()); } else { headers.put(HttpHeaders.CONTENT_TYPE, "binary/octet-stream"); if (md.getContentMetadata().getContentMD5() != null) { headers.put("Content-MD5", base64().encode(md.getContentMetadata().getContentMD5())); ObjectMetadata.StorageClass storageClass = md.getStorageClass(); if (storageClass != ObjectMetadata.StorageClass.STANDARD) { headers.put("x-amz-storage-class", storageClass.toString());
checkArgument(md.getKey() != null, "objectMetadata.getKey() must be set!"); request = metadataPrefixer.bindToRequest(request, md.getUserMetadata()); if (md.getContentMetadata().getCacheControl() != null) { headers.put(HttpHeaders.CACHE_CONTROL, md.getContentMetadata().getCacheControl()); if (md.getContentMetadata().getContentDisposition() != null) { headers.put("Content-Disposition", md.getContentMetadata().getContentDisposition()); if (md.getContentMetadata().getContentEncoding() != null) { headers.put("Content-Encoding", md.getContentMetadata().getContentEncoding()); String contentLanguage = md.getContentMetadata().getContentLanguage(); if (contentLanguage != null) { headers.put(HttpHeaders.CONTENT_LANGUAGE, contentLanguage); if (md.getContentMetadata().getContentType() != null) { headers.put(HttpHeaders.CONTENT_TYPE, md.getContentMetadata().getContentType()); } else { headers.put(HttpHeaders.CONTENT_TYPE, "binary/octet-stream"); if (md.getContentMetadata().getContentMD5() != null) { headers.put("Content-MD5", base64().encode(md.getContentMetadata().getContentMD5()));
public String apply(Object from) { return ((ObjectMetadata) from).getKey(); }
public void testCanParseCopyObjectResult() throws HttpException { ObjectMetadata metadata = runParseCopyObjectResult(); Date expected = new SimpleDateFormatDateService().iso8601DateParse("2009-03-19T13:23:27.000Z"); assertEquals(metadata.getLastModified(), expected); assertEquals(metadata.getETag(), "\"92836a3ea45a6984d1b4d23a747d46bb\""); }
public void testCopyWithMetadata() throws InterruptedException, ExecutionException, TimeoutException, IOException { String containerName = getContainerName(); String destinationContainer = getContainerName(); try { addToContainerAndValidate(containerName, sourceKey); Map<String, String> metadata = Maps.newHashMap(); metadata.put("adrian", "cole"); getApi().copyObject(containerName, sourceKey, destinationContainer, destinationKey, overrideMetadataWith(metadata)); validateContent(destinationContainer, destinationKey); ObjectMetadata objectMeta = getApi().headObject(destinationContainer, destinationKey); assertEquals(objectMeta.getUserMetadata(), metadata); } finally { returnContainer(containerName); returnContainer(destinationContainer); } }
assertEquals(getApi().headObject(containerName, key).getContentMetadata().getContentMD5(), null);
public void testPutWithReducedRedundancyStorage() throws InterruptedException { String containerName = getContainerName(); try { String blobName = "test-rrs"; BlobStore blobStore = view.getBlobStore(); blobStore.createContainerInLocation(null, containerName); Blob blob = blobStore.blobBuilder(blobName).payload("something").build(); blobStore.putBlob(containerName, blob, storageClass(StorageClass.REDUCED_REDUNDANCY)); S3Client s3Client = S3Client.class.cast(view.unwrap(AWSS3ApiMetadata.CONTEXT_TOKEN).getApi()); ListBucketResponse response = s3Client.listBucket(containerName, withPrefix(blobName)); ObjectMetadata metadata = response.iterator().next(); assertEquals(metadata.getStorageClass(), StorageClass.REDUCED_REDUNDANCY); } finally { returnContainer(containerName); } }
/** *{@inheritDoc} */ @Override public int compareTo(ObjectMetadata o) { return (this == o) ? 0 : getUri().compareTo(o.getUri()); }
/** * Verifies that the parser doesn't barf if the timestamp returned in the * list bucket response has time zone designators in it. */ @Test public void testListMyBucketsWithSecondsDate() { ListBucketResponse bucket = createParser().parse( Strings2.toInputStream(listBucketWithSecondsDate)); ObjectMetadata expected = new CopyObjectResult( new SimpleDateFormatDateService() .iso8601SecondsDateParse("2014-07-23T20:53:17+0000"), "\"92836a3ea45a6984d1b4d23a747d46bb\""); // Verify that the date was parsed successfully. ObjectMetadata metadata = bucket.iterator().next(); assertEquals(metadata.getLastModified(), expected.getLastModified()); } }
public MutableBlobMetadata apply(ObjectMetadata from) { if (from == null) return null; MutableBlobMetadata to = new MutableBlobMetadataImpl(); HttpUtils.copy(from.getContentMetadata(), to.getContentMetadata()); to.setUri(from.getUri()); to.setContainer(from.getBucket()); to.setETag(from.getETag()); to.setName(from.getKey()); to.setLastModified(from.getLastModified()); to.setUserMetadata(from.getUserMetadata()); to.setLocation(locationOfBucket.apply(from.getBucket())); to.setType(StorageType.BLOB); to.setSize(from.getContentMetadata().getContentLength()); return to; } }
public void testCanParseListContainerResult() throws HttpException { ListBucketResponse container = runParseListContainerResult(); assert !container.isTruncated(); assert container.getName().equals("adrianjbosstest"); assert container.size() == 1; ObjectMetadata object = container.iterator().next(); assert object.getKey().equals("3366"); Date expected = new SimpleDateFormatDateService().iso8601DateParse("2009-03-12T02:00:13.000Z"); assert object.getLastModified().equals(expected) : String.format("expected %1$s, but got %2$s", expected, object .getLastModified()); assertEquals(object.getETag(), "\"9d7bb64e8e18ee34eec06dd2cf37b766\""); assert object.getContentMetadata().getContentLength() == 136; CanonicalUser owner = new CanonicalUser("e1a5f66a480ca99a4fdfe8e318c3020446c9989d7004e7778029fbcc5d990fa0"); owner.setDisplayName("ferncam"); assert object.getOwner().equals(owner); assert object.getStorageClass().equals(StorageClass.STANDARD); }
checkArgument(md.getKey() != null, "objectMetadata.getKey() must be set!"); request = metadataPrefixer.bindToRequest(request, md.getUserMetadata()); if (md.getCacheControl() != null) { headers.put(HttpHeaders.CACHE_CONTROL, md.getCacheControl()); if (md.getContentMetadata().getContentDisposition() != null) { headers.put("Content-Disposition", md.getContentMetadata().getContentDisposition()); if (md.getContentMetadata().getContentEncoding() != null) { headers.put("Content-Encoding", md.getContentMetadata().getContentEncoding()); if (md.getContentMetadata().getContentType() != null) { headers.put(HttpHeaders.CONTENT_TYPE, md.getContentMetadata().getContentType()); } else { headers.put(HttpHeaders.CONTENT_TYPE, "binary/octet-stream"); if (md.getContentMetadata().getContentMD5() != null) { headers.put("Content-MD5", base64().encode(md.getContentMetadata().getContentMD5()));
checkArgument(md.getKey() != null, "objectMetadata.getKey() must be set!"); request = metadataPrefixer.bindToRequest(request, md.getUserMetadata()); if (md.getContentMetadata().getCacheControl() != null) { headers.put(HttpHeaders.CACHE_CONTROL, md.getContentMetadata().getCacheControl()); if (md.getContentMetadata().getContentDisposition() != null) { headers.put("Content-Disposition", md.getContentMetadata().getContentDisposition()); if (md.getContentMetadata().getContentEncoding() != null) { headers.put("Content-Encoding", md.getContentMetadata().getContentEncoding()); String contentLanguage = md.getContentMetadata().getContentLanguage(); if (contentLanguage != null) { headers.put(HttpHeaders.CONTENT_LANGUAGE, contentLanguage); if (md.getContentMetadata().getContentType() != null) { headers.put(HttpHeaders.CONTENT_TYPE, md.getContentMetadata().getContentType()); } else { headers.put(HttpHeaders.CONTENT_TYPE, "binary/octet-stream"); if (md.getContentMetadata().getContentMD5() != null) { headers.put("Content-MD5", base64().encode(md.getContentMetadata().getContentMD5())); ObjectMetadata.StorageClass storageClass = md.getStorageClass(); if (storageClass != ObjectMetadata.StorageClass.STANDARD) { headers.put("x-amz-storage-class", storageClass.toString());
public String apply(Object from) { return ((ObjectMetadata) from).getKey(); }
public void testCanParseCopyObjectResult() throws HttpException { ObjectMetadata metadata = runParseCopyObjectResult(); Date expected = new SimpleDateFormatDateService().iso8601DateParse("2009-03-19T13:23:27.000Z"); assertEquals(metadata.getLastModified(), expected); assertEquals(metadata.getETag(), "\"92836a3ea45a6984d1b4d23a747d46bb\""); }