Class StorageGrpc.StorageBlockingStub

java.lang.Object
io.grpc.stub.AbstractStub<S>
io.grpc.stub.AbstractBlockingStub<StorageGrpc.StorageBlockingStub>
com.google.storage.v2.StorageGrpc.StorageBlockingStub
Enclosing class:
StorageGrpc

public static final class StorageGrpc.StorageBlockingStub extends io.grpc.stub.AbstractBlockingStub<StorageGrpc.StorageBlockingStub>
A stub to allow clients to do synchronous 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).
 
  • Method Details

    • build

      protected StorageGrpc.StorageBlockingStub build(io.grpc.Channel channel, io.grpc.CallOptions callOptions)
      Specified by:
      build in class io.grpc.stub.AbstractStub<StorageGrpc.StorageBlockingStub>
    • deleteBucket

      public com.google.protobuf.Empty deleteBucket(DeleteBucketRequest request)
       Permanently deletes an empty bucket.
       
    • getBucket

      public Bucket getBucket(GetBucketRequest request)
       Returns metadata for the specified bucket.
       
    • createBucket

      public Bucket createBucket(CreateBucketRequest request)
       Creates a new bucket.
       
    • listBuckets

      public ListBucketsResponse listBuckets(ListBucketsRequest request)
       Retrieves a list of buckets for a given project.
       
    • lockBucketRetentionPolicy

      public Bucket lockBucketRetentionPolicy(LockBucketRetentionPolicyRequest request)
       Locks retention policy on a bucket.
       
    • getIamPolicy

      public com.google.iam.v1.Policy getIamPolicy(com.google.iam.v1.GetIamPolicyRequest request)
       Gets the IAM policy for a specified bucket.
       The `resource` field in the request should be
       `projects/_/buckets/{bucket}`.
       
    • setIamPolicy

      public com.google.iam.v1.Policy setIamPolicy(com.google.iam.v1.SetIamPolicyRequest request)
       Updates an IAM policy for the specified bucket.
       The `resource` field in the request should be
       `projects/_/buckets/{bucket}`.
       
    • testIamPermissions

      public com.google.iam.v1.TestIamPermissionsResponse testIamPermissions(com.google.iam.v1.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.
       
    • updateBucket

      public Bucket updateBucket(UpdateBucketRequest request)
       Updates a bucket. Equivalent to JSON API's storage.buckets.patch method.
       
    • composeObject

      public Object composeObject(ComposeObjectRequest request)
       Concatenates a list of existing objects into a new object in the same
       bucket.
       
    • deleteObject

      public com.google.protobuf.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](https://cloud.google.com/storage/docs/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`][google.storage.v2.Storage.RestoreObject]
       API to restore soft-deleted objects until the soft delete retention period
       has passed.
       **IAM Permissions**:
       Requires `storage.objects.delete`
       [IAM permission](https://cloud.google.com/iam/docs/overview#permissions) on
       the bucket.
       
    • restoreObject

      public Object restoreObject(RestoreObjectRequest request)
       Restores a soft-deleted object.
       
    • cancelResumableWrite

      public 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.
       
    • getObject

      public Object getObject(GetObjectRequest request)
       Retrieves object metadata.
       **IAM Permissions**:
       Requires `storage.objects.get`
       [IAM permission](https://cloud.google.com/iam/docs/overview#permissions) on
       the bucket. To return object ACLs, the authenticated user must also have
       the `storage.objects.getIamPolicy` permission.
       
    • readObject

      public Iterator<ReadObjectResponse> readObject(ReadObjectRequest request)
       Retrieves object data.
       **IAM Permissions**:
       Requires `storage.objects.get`
       [IAM permission](https://cloud.google.com/iam/docs/overview#permissions) on
       the bucket.
       
    • updateObject

      public Object updateObject(UpdateObjectRequest request)
       Updates an object's metadata.
       Equivalent to JSON API's storage.objects.patch.
       
    • listObjects

      public ListObjectsResponse listObjects(ListObjectsRequest request)
       Retrieves a list of objects matching the criteria.
       **IAM Permissions**:
       The authenticated user requires `storage.objects.list`
       [IAM permission](https://cloud.google.com/iam/docs/overview#permissions)
       to use this method. To return object ACLs, the authenticated user must also
       have the `storage.objects.getIamPolicy` permission.
       
    • rewriteObject

      public RewriteResponse rewriteObject(RewriteObjectRequest request)
       Rewrites a source object to a destination object. Optionally overrides
       metadata.
       
    • startResumableWrite

      public StartResumableWriteResponse startResumableWrite(StartResumableWriteRequest request)
       Starts a resumable write operation. This
       method is part of the [Resumable
       upload](https://cloud.google.com/storage/docs/resumable-uploads) 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](https://cloud.google.com/iam/docs/overview#permissions) on
       the bucket.
       
    • queryWriteStatus

      public QueryWriteStatusResponse queryWriteStatus(QueryWriteStatusRequest request)
       Determines the `persisted_size` of an object that is being written. This
       method is part of the [resumable
       upload](https://cloud.google.com/storage/docs/resumable-uploads) 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.
       
    • moveObject

      public Object moveObject(MoveObjectRequest request)
       Moves the source object to the destination object in the same bucket.