public class Bucket extends BucketInfo
Objects of this class are immutable. Operations that modify the bucket like update(com.google.cloud.storage.Storage.BucketTargetOption...)
return a new object. To get a Bucket object with the most recent information use
reload(com.google.cloud.storage.Bucket.BucketSourceOption...). Bucket adds a layer of service-related functionality over
BucketInfo.
| Modifier and Type | Class and Description |
|---|---|
static class |
Bucket.BlobTargetOption
Class for specifying blob target options when
Bucket methods are used. |
static class |
Bucket.BlobWriteOption
Class for specifying blob write options when
Bucket methods are used. |
static class |
Bucket.BucketSourceOption
Class for specifying bucket source options when
Bucket methods are used. |
static class |
Bucket.Builder
Builder for
Bucket. |
BucketInfo.AgeDeleteRule, BucketInfo.CreatedBeforeDeleteRule, BucketInfo.DeleteRule, BucketInfo.IsLiveDeleteRule, BucketInfo.NumNewerVersionsDeleteRule| Modifier and Type | Method and Description |
|---|---|
Blob |
create(String blob,
byte[] content,
Bucket.BlobTargetOption... options)
Creates a new blob in this bucket.
|
Blob |
create(String blob,
byte[] content,
String contentType,
Bucket.BlobTargetOption... options)
Creates a new blob in this bucket.
|
Blob |
create(String blob,
InputStream content,
Bucket.BlobWriteOption... options)
Creates a new blob in this bucket.
|
Blob |
create(String blob,
InputStream content,
String contentType,
Bucket.BlobWriteOption... options)
Creates a new blob in this bucket.
|
boolean |
delete(Bucket.BucketSourceOption... options)
Deletes this bucket.
|
boolean |
equals(Object obj) |
boolean |
exists(Bucket.BucketSourceOption... options)
Checks if this bucket exists.
|
List<Blob> |
get(Iterable<String> blobNames)
Returns a list of requested blobs in this bucket.
|
Blob |
get(String blob,
Storage.BlobGetOption... options)
Returns the requested blob in this bucket or
null if not found. |
List<Blob> |
get(String blobName1,
String blobName2,
String... blobNames)
Returns a list of requested blobs in this bucket.
|
int |
hashCode() |
Page<Blob> |
list(Storage.BlobListOption... options)
Returns the paginated list of
Blob in this bucket. |
Bucket |
reload(Bucket.BucketSourceOption... options)
Fetches current bucket's latest information.
|
Storage |
storage()
Returns the bucket's
Storage object used to issue requests. |
Bucket.Builder |
toBuilder()
Returns a builder for the current bucket.
|
Bucket |
update(Storage.BucketTargetOption... options)
Updates the bucket's information.
|
acl, builder, cors, createTime, defaultAcl, deleteRules, etag, generatedId, indexPage, location, metageneration, name, notFoundPage, of, owner, selfLink, storageClass, toString, versioningEnabledpublic boolean exists(Bucket.BucketSourceOption... options)
Example of checking if the bucket exists.
boolean exists = bucket.exists();
if (exists) {
// the bucket exists
} else {
// the bucket was not found
}
StorageException - upon failurepublic Bucket reload(Bucket.BucketSourceOption... options)
null if the bucket does not exist.
Example of getting the bucket's latest information, if its generation does not match the
BucketInfo.metageneration() value, otherwise a StorageException is thrown.
Bucket latestBucket = bucket.reload(BucketSourceOption.metagenerationMatch());
if (latestBucket == null) {
// the bucket was not found
}
options - bucket read optionsBucket object with latest information or null if not foundStorageException - upon failurepublic Bucket update(Storage.BucketTargetOption... options)
Bucket object
is returned. By default no checks are made on the metadata generation of the current bucket.
If you want to update the information only if the current bucket metadata are at their latest
version use the metagenerationMatch option:
bucket.update(BucketTargetOption.metagenerationMatch())
Example of updating the bucket's information.
Bucket updatedBucket = bucket.toBuilder().versioningEnabled(true).build().update();
options - update optionsBucket object with updated informationStorageException - upon failurepublic boolean delete(Bucket.BucketSourceOption... options)
Example of deleting the bucket, if its metageneration matches the
BucketInfo.metageneration() value, otherwise a StorageException is thrown.
boolean deleted = bucket.delete(BucketSourceOption.metagenerationMatch());
if (deleted) {
// the bucket was deleted
} else {
// the bucket was not found
}
options - bucket delete optionstrue if bucket was deleted, false if it was not foundStorageException - upon failurepublic Page<Blob> list(Storage.BlobListOption... options)
Blob in this bucket.
Example of listing the blobs in the bucket.
Iterator<Blob> blobIterator = bucket.list().iterateAll();
while (blobIterator.hasNext()) {
Blob blob = blobIterator.next();
// do something with the blob
}
options - options for listing blobsStorageException - upon failurepublic Blob get(String blob, Storage.BlobGetOption... options)
null if not found.
Example of getting a blob in the bucket, only if its metageneration matches a value, otherwise
a StorageException is thrown.
String blobName = "my_blob_name";
long generation = 42;
Blob blob = bucket.get(blobName, BlobGetOption.generationMatch(generation));
blob - name of the requested bloboptions - blob search optionsStorageException - upon failurepublic List<Blob> get(String blobName1, String blobName2, String... blobNames)
Example of getting some blobs in the bucket, using a batch request.
String blobName1 = "my_blob_name1";
String blobName2 = "my_blob_name2";
List<Blob> blobs = bucket.get(blobName1, blobName2);
for (Blob blob : blobs) {
if (blob == null) {
// the blob was not found
}
}
blobName1 - first blob to getblobName2 - second blob to getblobNames - other blobs to getBlob objectsStorageException - upon failurepublic List<Blob> get(Iterable<String> blobNames)
Example of getting some blobs in the bucket, using a batch request.
String blobName1 = "my_blob_name1";
String blobName2 = "my_blob_name2";
List<String> blobNames = new LinkedList<>();
blobNames.add(blobName1);
blobNames.add(blobName2);
List<Blob> blobs = bucket.get(blobNames);
for (Blob blob : blobs) {
if (blob == null) {
// the blob was not found
}
}
blobNames - blobs to getBlob objectsStorageException - upon failurepublic Blob create(String blob, byte[] content, String contentType, Bucket.BlobTargetOption... options)
content.
For large content, Blob.writer(com.google.cloud.storage.Storage.BlobWriteOption...)
is recommended as it uses resumable upload. MD5 and CRC32C hashes of content are
computed and used for validating transferred data.
Example of creating a blob in the bucket from a byte array with a content type.
String blobName = "my_blob_name";
Blob blob = bucket.create(blobName, "Hello, World!".getBytes(UTF_8), "text/plain");
blob - a blob namecontent - the blob contentcontentType - the blob content typeoptions - options for blob creationStorageException - upon failurepublic Blob create(String blob, InputStream content, String contentType, Bucket.BlobWriteOption... options)
content.
For large content, Blob.writer(com.google.cloud.storage.Storage.BlobWriteOption...)
is recommended as it uses resumable upload.
Example of creating a blob in the bucket from an input stream with a content type.
String blobName = "my_blob_name";
InputStream content = new ByteArrayInputStream("Hello, World!".getBytes(UTF_8));
Blob blob = bucket.create(blobName, content, "text/plain");
blob - a blob namecontent - the blob content as a streamcontentType - the blob content typeoptions - options for blob creationStorageException - upon failurepublic Blob create(String blob, byte[] content, Bucket.BlobTargetOption... options)
content.
For large content, Blob.writer(com.google.cloud.storage.Storage.BlobWriteOption...)
is recommended as it uses resumable upload. MD5 and CRC32C hashes of content are
computed and used for validating transferred data.
Example of creating a blob in the bucket from a byte array.
String blobName = "my_blob_name";
Blob blob = bucket.create(blobName, "Hello, World!".getBytes(UTF_8));
blob - a blob namecontent - the blob contentoptions - options for blob creationStorageException - upon failurepublic Blob create(String blob, InputStream content, Bucket.BlobWriteOption... options)
content.
For large content, Blob.writer(com.google.cloud.storage.Storage.BlobWriteOption...)
is recommended as it uses resumable upload.
Example of creating a blob in the bucket from an input stream.
String blobName = "my_blob_name";
InputStream content = new ByteArrayInputStream("Hello, World!".getBytes(UTF_8));
Blob blob = bucket.create(blobName, content);
blob - a blob namecontent - the blob content as a streamoptions - options for blob creationStorageException - upon failurepublic Storage storage()
Storage object used to issue requests.public Bucket.Builder toBuilder()
BucketInfotoBuilder in class BucketInfopublic final boolean equals(Object obj)
equals in class BucketInfopublic final int hashCode()
hashCode in class BucketInfoCopyright © 2016 Google. All rights reserved.