Class StorageGrpc.StorageFutureStub (2.48.1)

public static final class StorageGrpc.StorageFutureStub extends AbstractFutureStub<StorageGrpc.StorageFutureStub>

A stub to allow clients to do ListenableFuture-style rpc calls to service Storage.

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).

Inheritance

java.lang.Object > io.grpc.stub.AbstractStub > io.grpc.stub.AbstractFutureStub > StorageGrpc.StorageFutureStub

Methods

build(Channel channel, CallOptions callOptions)

protected StorageGrpc.StorageFutureStub build(Channel channel, CallOptions callOptions)
Parameters
Name Description
channel io.grpc.Channel
callOptions io.grpc.CallOptions
Returns
Type Description
StorageGrpc.StorageFutureStub
Overrides
io.grpc.stub.AbstractStub.build(io.grpc.Channel,io.grpc.CallOptions)

cancelResumableWrite(CancelResumableWriteRequest request)

public ListenableFuture<CancelResumableWriteResponse> cancelResumableWrite(CancelResumableWriteRequest request)

Cancels an in-progress resumable upload. Any attempts to write to the resumable upload after cancelling the upload will fail. The behavior for currently in progress write operations is not guaranteed - they could either complete before the cancellation or fail if the cancellation completes first.

Parameter
Name Description
request CancelResumableWriteRequest
Returns
Type Description
com.google.common.util.concurrent.ListenableFuture<CancelResumableWriteResponse>

composeObject(ComposeObjectRequest request)

public ListenableFuture<Object> composeObject(ComposeObjectRequest request)

Concatenates a list of existing objects into a new object in the same bucket.

Parameter
Name Description
request ComposeObjectRequest
Returns
Type Description
com.google.common.util.concurrent.ListenableFuture<Object>

createBucket(CreateBucketRequest request)

public ListenableFuture<Bucket> createBucket(CreateBucketRequest request)

Creates a new bucket.

Parameter
Name Description
request CreateBucketRequest
Returns
Type Description
com.google.common.util.concurrent.ListenableFuture<Bucket>

deleteBucket(DeleteBucketRequest request)

public ListenableFuture<Empty> deleteBucket(DeleteBucketRequest request)

Permanently deletes an empty bucket.

Parameter
Name Description
request DeleteBucketRequest
Returns
Type Description
com.google.common.util.concurrent.ListenableFuture<Empty>

deleteObject(DeleteObjectRequest request)

public ListenableFuture<Empty> deleteObject(DeleteObjectRequest request)

Deletes an object and its metadata. Deletions are permanent if versioning is not enabled for the bucket, or if the generation parameter is used, or if soft delete is not enabled for the bucket. When this API is used to delete an object from a bucket that has soft delete policy enabled, the object becomes soft deleted, and the softDeleteTime and hardDeleteTime properties are set on the object. This API cannot be used to permanently delete soft-deleted objects. Soft-deleted objects are permanently deleted according to their hardDeleteTime. You can use the RestoreObject API to restore soft-deleted objects until the soft delete retention period has passed. IAM Permissions: Requires storage.objects.delete IAM permission on the bucket.

Parameter
Name Description
request DeleteObjectRequest
Returns
Type Description
com.google.common.util.concurrent.ListenableFuture<Empty>

getBucket(GetBucketRequest request)

public ListenableFuture<Bucket> getBucket(GetBucketRequest request)

Returns metadata for the specified bucket.

Parameter
Name Description
request GetBucketRequest
Returns
Type Description
com.google.common.util.concurrent.ListenableFuture<Bucket>

getIamPolicy(GetIamPolicyRequest request)

public ListenableFuture<Policy> getIamPolicy(GetIamPolicyRequest request)

Gets the IAM policy for a specified bucket. The resource field in the request should be projects/_/buckets/{bucket}.

Parameter
Name Description
request com.google.iam.v1.GetIamPolicyRequest
Returns
Type Description
com.google.common.util.concurrent.ListenableFuture<com.google.iam.v1.Policy>

getObject(GetObjectRequest request)

public ListenableFuture<Object> getObject(GetObjectRequest request)

Retrieves object metadata. IAM Permissions: Requires storage.objects.get IAM permission on the bucket. To return object ACLs, the authenticated user must also have the storage.objects.getIamPolicy permission.

Parameter
Name Description
request GetObjectRequest
Returns
Type Description
com.google.common.util.concurrent.ListenableFuture<Object>

listBuckets(ListBucketsRequest request)

public ListenableFuture<ListBucketsResponse> listBuckets(ListBucketsRequest request)

Retrieves a list of buckets for a given project.

Parameter
Name Description
request ListBucketsRequest
Returns
Type Description
com.google.common.util.concurrent.ListenableFuture<ListBucketsResponse>

listObjects(ListObjectsRequest request)

public ListenableFuture<ListObjectsResponse> listObjects(ListObjectsRequest request)

Retrieves a list of objects matching the criteria. IAM Permissions: The authenticated user requires storage.objects.list IAM permission to use this method. To return object ACLs, the authenticated user must also have the storage.objects.getIamPolicy permission.

Parameter
Name Description
request ListObjectsRequest
Returns
Type Description
com.google.common.util.concurrent.ListenableFuture<ListObjectsResponse>

lockBucketRetentionPolicy(LockBucketRetentionPolicyRequest request)

public ListenableFuture<Bucket> lockBucketRetentionPolicy(LockBucketRetentionPolicyRequest request)

Locks retention policy on a bucket.

Parameter
Name Description
request LockBucketRetentionPolicyRequest
Returns
Type Description
com.google.common.util.concurrent.ListenableFuture<Bucket>

moveObject(MoveObjectRequest request)

public ListenableFuture<Object> moveObject(MoveObjectRequest request)

Moves the source object to the destination object in the same bucket.

Parameter
Name Description
request MoveObjectRequest
Returns
Type Description
com.google.common.util.concurrent.ListenableFuture<Object>

queryWriteStatus(QueryWriteStatusRequest request)

public ListenableFuture<QueryWriteStatusResponse> queryWriteStatus(QueryWriteStatusRequest request)

Determines the persisted_size of an object that is being written. This method is part of the resumable upload feature. The returned value is the size of the object that has been persisted so far. The value can be used as the write_offset for the next Write() call. If the object does not exist, meaning if it was deleted, or the first Write() has not yet reached the service, this method returns the error NOT_FOUND. This method is useful for clients that buffer data and need to know which data can be safely evicted. The client can call QueryWriteStatus() at any time to determine how much data has been logged for this object. For any sequence of QueryWriteStatus() calls for a given object name, the sequence of returned persisted_size values are non-decreasing.

Parameter
Name Description
request QueryWriteStatusRequest
Returns
Type Description
com.google.common.util.concurrent.ListenableFuture<QueryWriteStatusResponse>

restoreObject(RestoreObjectRequest request)

public ListenableFuture<Object> restoreObject(RestoreObjectRequest request)

Restores a soft-deleted object.

Parameter
Name Description
request RestoreObjectRequest
Returns
Type Description
com.google.common.util.concurrent.ListenableFuture<Object>

rewriteObject(RewriteObjectRequest request)

public ListenableFuture<RewriteResponse> rewriteObject(RewriteObjectRequest request)

Rewrites a source object to a destination object. Optionally overrides metadata.

Parameter
Name Description
request RewriteObjectRequest
Returns
Type Description
com.google.common.util.concurrent.ListenableFuture<RewriteResponse>

setIamPolicy(SetIamPolicyRequest request)

public ListenableFuture<Policy> setIamPolicy(SetIamPolicyRequest request)

Updates an IAM policy for the specified bucket. The resource field in the request should be projects/_/buckets/{bucket}.

Parameter
Name Description
request com.google.iam.v1.SetIamPolicyRequest
Returns
Type Description
com.google.common.util.concurrent.ListenableFuture<com.google.iam.v1.Policy>

startResumableWrite(StartResumableWriteRequest request)

public ListenableFuture<StartResumableWriteResponse> startResumableWrite(StartResumableWriteRequest request)

Starts a resumable write operation. This method is part of the Resumable upload feature. This allows you to upload large objects in multiple chunks, which is more resilient to network interruptions than a single upload. The validity duration of the write operation, and the consequences of it becoming invalid, are service-dependent. IAM Permissions: Requires storage.objects.create IAM permission on the bucket.

Parameter
Name Description
request StartResumableWriteRequest
Returns
Type Description
com.google.common.util.concurrent.ListenableFuture<StartResumableWriteResponse>

testIamPermissions(TestIamPermissionsRequest request)

public ListenableFuture<TestIamPermissionsResponse> testIamPermissions(TestIamPermissionsRequest request)

Tests a set of permissions on the given bucket, object, or managed folder to see which, if any, are held by the caller. The resource field in the request should be projects//buckets/{bucket} for a bucket, projects//buckets/{bucket}/objects/{object} for an object, or projects/_/buckets/{bucket}/managedFolders/{managedFolder} for a managed folder.

Parameter
Name Description
request com.google.iam.v1.TestIamPermissionsRequest
Returns
Type Description
com.google.common.util.concurrent.ListenableFuture<com.google.iam.v1.TestIamPermissionsResponse>

updateBucket(UpdateBucketRequest request)

public ListenableFuture<Bucket> updateBucket(UpdateBucketRequest request)

Updates a bucket. Equivalent to JSON API's storage.buckets.patch method.

Parameter
Name Description
request UpdateBucketRequest
Returns
Type Description
com.google.common.util.concurrent.ListenableFuture<Bucket>

updateObject(UpdateObjectRequest request)

public ListenableFuture<Object> updateObject(UpdateObjectRequest request)

Updates an object's metadata. Equivalent to JSON API's storage.objects.patch.

Parameter
Name Description
request UpdateObjectRequest
Returns
Type Description
com.google.common.util.concurrent.ListenableFuture<Object>