google-cloud-storage overview (2.36.1)

com.google.cloud.storage

A client for Cloud Storage - Unified object storage.

Here's a simple usage example the Java Storage client. This example shows how to create a Storage object.

   
 Storage 
  
 storage 
  
 = 
  
 StorageOptions 
 . 
 getDefaultInstance 
 (). 
 getService 
 (); 
  
 BlobId 
  
 blobId 
  
 = 
  
 BlobId 
 . 
 of 
 ( 
 "bucket" 
 , 
  
 "blob_name" 
 ); 
  
 BlobInfo 
  
 blobInfo 
  
 = 
  
 BlobInfo 
 . 
 newBuilder 
 ( 
 blobId 
 ). 
 setContentType 
 ( 
 "text/plain" 
 ). 
 build 
 (); 
  
 Blob 
  
 blob 
  
 = 
  
 storage 
 . 
 create 
 ( 
 blobInfo 
 , 
  
 "Hello, Cloud Storage!" 
 . 
 getBytes 
 ( 
 UTF_8 
 )); 
  
 

This second example shows how to update an object's content if the object exists.

   
 Storage 
  
 storage 
  
 = 
  
 StorageOptions 
 . 
 getDefaultInstance 
 (). 
 getService 
 (); 
  
 BlobId 
  
 blobId 
  
 = 
  
 BlobId 
 . 
 of 
 ( 
 "bucket" 
 , 
  
 "blob_name" 
 ); 
  
 Blob 
  
 blob 
  
 = 
  
 storage 
 . 
 get 
 ( 
 blobId 
 ); 
  
 if 
  
 ( 
 blob 
  
 != 
  
 null 
 ) 
  
 { 
  
 byte 
 [] 
  
 prevContent 
  
 = 
  
 blob 
 . 
 getContent 
 (); 
  
 System 
 . 
 out 
 . 
 println 
 ( 
 new 
  
 String 
 ( 
 prevContent 
 , 
  
 UTF_8 
 )); 
  
 WritableByteChannel 
  
 channel 
  
 = 
  
 blob 
 . 
 writer 
 (); 
  
 channel 
 . 
 write 
 ( 
 ByteBuffer 
 . 
 wrap 
 ( 
 "Updated content" 
 . 
 getBytes 
 ( 
 UTF_8 
 ))); 
  
 channel 
 . 
 close 
 (); 
  
 } 
  
 

For more detailed code examples, see the sample library .

When using google-cloud from outside of App/Compute Engine, you have to specify a project ID and provide credentials .

Operations in this library are generally thread safe, except for the use of BlobReadChannel and BlobWriteChannel .

The GCS Java client library includes support to GCS via gRPC. When using GCS from Google Compute Engine (GCE) this library enable higher total throughput across large workloads that run on hundreds or thousands of VMs.

At present, GCS gRPC is GA with Allowlist. To access this API, kindly contact the Google Cloud Storage gRPC team at gcs-grpc-contact@google.com with a list of GCS buckets you would like to Allowlist. Please note that while the serviceis GA (with Allowlist), the client library features remain experimental and subject to change without notice. The methods to create, list, query, and delete HMAC keys and notifications are unavailable in gRPC transport.

This example shows how to enable gRPC with Direct Google Access only supported on Google Compute Engine.

   
 StorageOptions 
  
 options 
  
 = 
  
 StorageOptions 
 . 
 grpc 
 (). 
 setAttemptDirectPath 
 ( 
 true 
 ). 
 build 
 (); 
  
 try 
  
 ( 
 Storage 
  
 storage 
  
 = 
  
 options 
 . 
 getService 
 ()) 
  
 { 
  
 BlobId 
  
 blobId 
  
 = 
  
 BlobId 
 . 
 of 
 ( 
 "bucket" 
 , 
  
 "blob_name" 
 ); 
  
 Blob 
  
 blob 
  
 = 
  
 storage 
 . 
 get 
 ( 
 blobId 
 ); 
  
 if 
  
 ( 
 blob 
  
 != 
  
 null 
 ) 
  
 { 
  
 byte 
 [] 
  
 prevContent 
  
 = 
  
 blob 
 . 
 getContent 
 (); 
  
 System 
 . 
 out 
 . 
 println 
 ( 
 new 
  
 String 
 ( 
 prevContent 
 , 
  
 UTF_8 
 )); 
  
 WritableByteChannel 
  
 channel 
  
 = 
  
 blob 
 . 
 writer 
 (); 
  
 channel 
 . 
 write 
 ( 
 ByteBuffer 
 . 
 wrap 
 ( 
 "Updated content" 
 . 
 getBytes 
 ( 
 UTF_8 
 ))); 
  
 channel 
 . 
 close 
 (); 
  
 } 
  
 } 
  
 

This example shows how to enable gRPC.

   
 StorageOptions 
  
 options 
  
 = 
  
 StorageOptions 
 . 
 grpc 
 (). 
 build 
 (); 
  
 try 
  
 ( 
 Storage 
  
 storage 
  
 = 
  
 options 
 . 
 getService 
 ()) 
  
 { 
  
 BlobId 
  
 blobId 
  
 = 
  
 BlobId 
 . 
 of 
 ( 
 "bucket" 
 , 
  
 "blob_name" 
 ); 
  
 Blob 
  
 blob 
  
 = 
  
 storage 
 . 
 get 
 ( 
 blobId 
 ); 
  
 if 
  
 ( 
 blob 
  
 != 
  
 null 
 ) 
  
 { 
  
 byte 
 [] 
  
 prevContent 
  
 = 
  
 blob 
 . 
 getContent 
 (); 
  
 System 
 . 
 out 
 . 
 println 
 ( 
 new 
  
 String 
 ( 
 prevContent 
 , 
  
 UTF_8 
 )); 
  
 WritableByteChannel 
  
 channel 
  
 = 
  
 blob 
 . 
 writer 
 (); 
  
 channel 
 . 
 write 
 ( 
 ByteBuffer 
 . 
 wrap 
 ( 
 "Updated content" 
 . 
 getBytes 
 ( 
 UTF_8 
 ))); 
  
 channel 
 . 
 close 
 (); 
  
 } 
  
 } 
  
 

See Also: Google Cloud Storage

com.google.cloud.storage.spi

com.google.cloud.storage.spi.v1

com.google.cloud.storage.testing

A testing helper for Google Cloud Storage.

A simple usage example:

Before the test:

   
 RemoteStorageHelper 
  
 helper 
  
 = 
  
 RemoteStorageHelper 
 . 
 create 
 (); 
  
 Storage 
  
 storage 
  
 = 
  
 helper 
 . 
 getOptions 
 (). 
 getService 
 (); 
  
 String 
  
 bucket 
  
 = 
  
 RemoteStorageHelper 
 . 
 generateBucketName 
 (); 
  
 storage 
 . 
 create 
 ( 
 BucketInfo 
 . 
 of 
 ( 
 bucket 
 )); 
  
 

After the test:

   
 RemoteStorageHelper 
 . 
 forceDelete 
 ( 
 storage 
 , 
  
 bucket 
 , 
  
 5 
 , 
  
 TimeUnit 
 . 
 SECONDS 
 ); 
  
 

See Also: Google Cloud Storage testing

com.google.cloud.storage.transfermanager

com.google.storage.control.v2

A client to Cloud Storage API

The interfaces provided are listed below, along with usage samples.

StorageControlClient

Service Description: StorageControl service includes selected control plane operations.

Sample for StorageControlClient:

   
 // This snippet has been automatically generated and should be regarded as a code template only. 
  
 // It will require modifications to work: 
  
 // - It may require correct/in-range values for request initialization. 
  
 // - It may require specifying regional endpoints when creating the service client as shown in 
  
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library 
  
 try 
  
 ( 
 StorageControlClient 
  
 storageControlClient 
  
 = 
  
 StorageControlClient 
 . 
 create 
 ()) 
  
 { 
  
 BucketName 
  
 parent 
  
 = 
  
 BucketName 
 . 
 of 
 ( 
 "[PROJECT]" 
 , 
  
 "[BUCKET]" 
 ); 
  
 Folder 
  
 folder 
  
 = 
  
 Folder 
 . 
 newBuilder 
 (). 
 build 
 (); 
  
 String 
  
 folderId 
  
 = 
  
 "folderId294109737" 
 ; 
  
 Folder 
  
 response 
  
 = 
  
 storageControlClient 
 . 
 createFolder 
 ( 
 parent 
 , 
  
 folder 
 , 
  
 folderId 
 ); 
  
 } 
  
 

com.google.storage.control.v2.stub

com.google.storage.v2

A client to Cloud Storage API

The interfaces provided are listed below, along with usage samples.

StorageClient

Service Description: ## API Overview and Naming Syntax

The Cloud Storage gRPC API allows applications to read and write data through the abstractions of buckets and objects. For a description of these abstractions please see https://cloud.google.com/storage/docs .

Resources are named as follows: - Projects are referred to as they are defined by the Resource Manager API, using strings like projects/123456 or projects/my-string-id . - Buckets are named using string names of the form: projects/{project}/buckets/{bucket} For globally unique buckets, _ may be substituted for the project. - Objects are uniquely identified by their name along with the name of the bucket they belong to, as separate strings in this API. For example:

ReadObjectRequest { bucket: 'projects/_/buckets/my-bucket' object: 'my-object' } Note that object names can contain / characters, which are treated as any other character (no special directory semantics).

Sample for StorageClient:

   
 // This snippet has been automatically generated and should be regarded as a code template only. 
  
 // It will require modifications to work: 
  
 // - It may require correct/in-range values for request initialization. 
  
 // - It may require specifying regional endpoints when creating the service client as shown in 
  
 // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library 
  
 try 
  
 ( 
 StorageClient 
  
 storageClient 
  
 = 
  
 StorageClient 
 . 
 create 
 ()) 
  
 { 
  
 BucketName 
  
 name 
  
 = 
  
 BucketName 
 . 
 of 
 ( 
 "[PROJECT]" 
 , 
  
 "[BUCKET]" 
 ); 
  
 storageClient 
 . 
 deleteBucket 
 ( 
 name 
 ); 
  
 } 
  
 

com.google.storage.v2.stub

Design a Mobile Site
View Site in Mobile | Classic
Share by: