Class DatabaseAdminGrpc.DatabaseAdminFutureStub

java.lang.Object
io.grpc.stub.AbstractStub<S>
io.grpc.stub.AbstractFutureStub<DatabaseAdminGrpc.DatabaseAdminFutureStub>
com.google.spanner.admin.database.v1.DatabaseAdminGrpc.DatabaseAdminFutureStub
Enclosing class:
DatabaseAdminGrpc

public static final class DatabaseAdminGrpc.DatabaseAdminFutureStub extends io.grpc.stub.AbstractFutureStub<DatabaseAdminGrpc.DatabaseAdminFutureStub>
A stub to allow clients to do ListenableFuture-style rpc calls to service DatabaseAdmin.
 Cloud Spanner Database Admin API
 The Cloud Spanner Database Admin API can be used to:
   * create, drop, and list databases
   * update the schema of pre-existing databases
   * create, delete, copy and list backups for a database
   * restore a database from an existing backup
 
  • Method Details

    • build

      protected DatabaseAdminGrpc.DatabaseAdminFutureStub build(io.grpc.Channel channel, io.grpc.CallOptions callOptions)
      Specified by:
      build in class io.grpc.stub.AbstractStub<DatabaseAdminGrpc.DatabaseAdminFutureStub>
    • listDatabases

      public com.google.common.util.concurrent.ListenableFuture<ListDatabasesResponse> listDatabases(ListDatabasesRequest request)
       Lists Cloud Spanner databases.
       
    • createDatabase

      public com.google.common.util.concurrent.ListenableFuture<com.google.longrunning.Operation> createDatabase(CreateDatabaseRequest request)
       Creates a new Cloud Spanner database and starts to prepare it for serving.
       The returned [long-running operation][google.longrunning.Operation] will
       have a name of the format `<database_name>/operations/<operation_id>` and
       can be used to track preparation of the database. The
       [metadata][google.longrunning.Operation.metadata] field type is
       [CreateDatabaseMetadata][google.spanner.admin.database.v1.CreateDatabaseMetadata].
       The [response][google.longrunning.Operation.response] field type is
       [Database][google.spanner.admin.database.v1.Database], if successful.
       
    • getDatabase

      public com.google.common.util.concurrent.ListenableFuture<Database> getDatabase(GetDatabaseRequest request)
       Gets the state of a Cloud Spanner database.
       
    • updateDatabase

      public com.google.common.util.concurrent.ListenableFuture<com.google.longrunning.Operation> updateDatabase(UpdateDatabaseRequest request)
       Updates a Cloud Spanner database. The returned
       [long-running operation][google.longrunning.Operation] can be used to track
       the progress of updating the database. If the named database does not
       exist, returns `NOT_FOUND`.
       While the operation is pending:
         * The database's
           [reconciling][google.spanner.admin.database.v1.Database.reconciling]
           field is set to true.
         * Cancelling the operation is best-effort. If the cancellation succeeds,
           the operation metadata's
           [cancel_time][google.spanner.admin.database.v1.UpdateDatabaseMetadata.cancel_time]
           is set, the updates are reverted, and the operation terminates with a
           `CANCELLED` status.
         * New UpdateDatabase requests will return a `FAILED_PRECONDITION` error
           until the pending operation is done (returns successfully or with
           error).
         * Reading the database via the API continues to give the pre-request
           values.
       Upon completion of the returned operation:
         * The new values are in effect and readable via the API.
         * The database's
           [reconciling][google.spanner.admin.database.v1.Database.reconciling]
           field becomes false.
       The returned [long-running operation][google.longrunning.Operation] will
       have a name of the format
       `projects/<project>/instances/<instance>/databases/<database>/operations/<operation_id>`
       and can be used to track the database modification. The
       [metadata][google.longrunning.Operation.metadata] field type is
       [UpdateDatabaseMetadata][google.spanner.admin.database.v1.UpdateDatabaseMetadata].
       The [response][google.longrunning.Operation.response] field type is
       [Database][google.spanner.admin.database.v1.Database], if successful.
       
    • updateDatabaseDdl

      public com.google.common.util.concurrent.ListenableFuture<com.google.longrunning.Operation> updateDatabaseDdl(UpdateDatabaseDdlRequest request)
       Updates the schema of a Cloud Spanner database by
       creating/altering/dropping tables, columns, indexes, etc. The returned
       [long-running operation][google.longrunning.Operation] will have a name of
       the format `<database_name>/operations/<operation_id>` and can be used to
       track execution of the schema change(s). The
       [metadata][google.longrunning.Operation.metadata] field type is
       [UpdateDatabaseDdlMetadata][google.spanner.admin.database.v1.UpdateDatabaseDdlMetadata].
       The operation has no response.
       
    • dropDatabase

      public com.google.common.util.concurrent.ListenableFuture<com.google.protobuf.Empty> dropDatabase(DropDatabaseRequest request)
       Drops (aka deletes) a Cloud Spanner database.
       Completed backups for the database will be retained according to their
       `expire_time`.
       Note: Cloud Spanner might continue to accept requests for a few seconds
       after the database has been deleted.
       
    • getDatabaseDdl

      public com.google.common.util.concurrent.ListenableFuture<GetDatabaseDdlResponse> getDatabaseDdl(GetDatabaseDdlRequest request)
       Returns the schema of a Cloud Spanner database as a list of formatted
       DDL statements. This method does not show pending schema updates, those may
       be queried using the [Operations][google.longrunning.Operations] API.
       
    • setIamPolicy

      public com.google.common.util.concurrent.ListenableFuture<com.google.iam.v1.Policy> setIamPolicy(com.google.iam.v1.SetIamPolicyRequest request)
       Sets the access control policy on a database or backup resource.
       Replaces any existing policy.
       Authorization requires `spanner.databases.setIamPolicy`
       permission on [resource][google.iam.v1.SetIamPolicyRequest.resource].
       For backups, authorization requires `spanner.backups.setIamPolicy`
       permission on [resource][google.iam.v1.SetIamPolicyRequest.resource].
       
    • getIamPolicy

      public com.google.common.util.concurrent.ListenableFuture<com.google.iam.v1.Policy> getIamPolicy(com.google.iam.v1.GetIamPolicyRequest request)
       Gets the access control policy for a database or backup resource.
       Returns an empty policy if a database or backup exists but does not have a
       policy set.
       Authorization requires `spanner.databases.getIamPolicy` permission on
       [resource][google.iam.v1.GetIamPolicyRequest.resource].
       For backups, authorization requires `spanner.backups.getIamPolicy`
       permission on [resource][google.iam.v1.GetIamPolicyRequest.resource].
       
    • testIamPermissions

      public com.google.common.util.concurrent.ListenableFuture<com.google.iam.v1.TestIamPermissionsResponse> testIamPermissions(com.google.iam.v1.TestIamPermissionsRequest request)
       Returns permissions that the caller has on the specified database or backup
       resource.
       Attempting this RPC on a non-existent Cloud Spanner database will
       result in a NOT_FOUND error if the user has
       `spanner.databases.list` permission on the containing Cloud
       Spanner instance. Otherwise returns an empty set of permissions.
       Calling this method on a backup that does not exist will
       result in a NOT_FOUND error if the user has
       `spanner.backups.list` permission on the containing instance.
       
    • createBackup

      public com.google.common.util.concurrent.ListenableFuture<com.google.longrunning.Operation> createBackup(CreateBackupRequest request)
       Starts creating a new Cloud Spanner Backup.
       The returned backup [long-running operation][google.longrunning.Operation]
       will have a name of the format
       `projects/<project>/instances/<instance>/backups/<backup>/operations/<operation_id>`
       and can be used to track creation of the backup. The
       [metadata][google.longrunning.Operation.metadata] field type is
       [CreateBackupMetadata][google.spanner.admin.database.v1.CreateBackupMetadata].
       The [response][google.longrunning.Operation.response] field type is
       [Backup][google.spanner.admin.database.v1.Backup], if successful.
       Cancelling the returned operation will stop the creation and delete the
       backup. There can be only one pending backup creation per database. Backup
       creation of different databases can run concurrently.
       
    • copyBackup

      public com.google.common.util.concurrent.ListenableFuture<com.google.longrunning.Operation> copyBackup(CopyBackupRequest request)
       Starts copying a Cloud Spanner Backup.
       The returned backup [long-running operation][google.longrunning.Operation]
       will have a name of the format
       `projects/<project>/instances/<instance>/backups/<backup>/operations/<operation_id>`
       and can be used to track copying of the backup. The operation is associated
       with the destination backup.
       The [metadata][google.longrunning.Operation.metadata] field type is
       [CopyBackupMetadata][google.spanner.admin.database.v1.CopyBackupMetadata].
       The [response][google.longrunning.Operation.response] field type is
       [Backup][google.spanner.admin.database.v1.Backup], if successful.
       Cancelling the returned operation will stop the copying and delete the
       destination backup. Concurrent CopyBackup requests can run on the same
       source backup.
       
    • getBackup

      public com.google.common.util.concurrent.ListenableFuture<Backup> getBackup(GetBackupRequest request)
       Gets metadata on a pending or completed
       [Backup][google.spanner.admin.database.v1.Backup].
       
    • updateBackup

      public com.google.common.util.concurrent.ListenableFuture<Backup> updateBackup(UpdateBackupRequest request)
       Updates a pending or completed
       [Backup][google.spanner.admin.database.v1.Backup].
       
    • deleteBackup

      public com.google.common.util.concurrent.ListenableFuture<com.google.protobuf.Empty> deleteBackup(DeleteBackupRequest request)
       Deletes a pending or completed
       [Backup][google.spanner.admin.database.v1.Backup].
       
    • listBackups

      public com.google.common.util.concurrent.ListenableFuture<ListBackupsResponse> listBackups(ListBackupsRequest request)
       Lists completed and pending backups.
       Backups returned are ordered by `create_time` in descending order,
       starting from the most recent `create_time`.
       
    • restoreDatabase

      public com.google.common.util.concurrent.ListenableFuture<com.google.longrunning.Operation> restoreDatabase(RestoreDatabaseRequest request)
       Create a new database by restoring from a completed backup. The new
       database must be in the same project and in an instance with the same
       instance configuration as the instance containing
       the backup. The returned database [long-running
       operation][google.longrunning.Operation] has a name of the format
       `projects/<project>/instances/<instance>/databases/<database>/operations/<operation_id>`,
       and can be used to track the progress of the operation, and to cancel it.
       The [metadata][google.longrunning.Operation.metadata] field type is
       [RestoreDatabaseMetadata][google.spanner.admin.database.v1.RestoreDatabaseMetadata].
       The [response][google.longrunning.Operation.response] type
       is [Database][google.spanner.admin.database.v1.Database], if
       successful. Cancelling the returned operation will stop the restore and
       delete the database.
       There can be only one database being restored into an instance at a time.
       Once the restore operation completes, a new restore operation can be
       initiated, without waiting for the optimize operation associated with the
       first restore to complete.
       
    • listDatabaseOperations

      public com.google.common.util.concurrent.ListenableFuture<ListDatabaseOperationsResponse> listDatabaseOperations(ListDatabaseOperationsRequest request)
       Lists database [longrunning-operations][google.longrunning.Operation].
       A database operation has a name of the form
       `projects/<project>/instances/<instance>/databases/<database>/operations/<operation>`.
       The long-running operation
       [metadata][google.longrunning.Operation.metadata] field type
       `metadata.type_url` describes the type of the metadata. Operations returned
       include those that have completed/failed/canceled within the last 7 days,
       and pending operations.
       
    • listBackupOperations

      public com.google.common.util.concurrent.ListenableFuture<ListBackupOperationsResponse> listBackupOperations(ListBackupOperationsRequest request)
       Lists the backup [long-running operations][google.longrunning.Operation] in
       the given instance. A backup operation has a name of the form
       `projects/<project>/instances/<instance>/backups/<backup>/operations/<operation>`.
       The long-running operation
       [metadata][google.longrunning.Operation.metadata] field type
       `metadata.type_url` describes the type of the metadata. Operations returned
       include those that have completed/failed/canceled within the last 7 days,
       and pending operations. Operations returned are ordered by
       `operation.metadata.value.progress.start_time` in descending order starting
       from the most recently started operation.
       
    • listDatabaseRoles

      public com.google.common.util.concurrent.ListenableFuture<ListDatabaseRolesResponse> listDatabaseRoles(ListDatabaseRolesRequest request)
       Lists Cloud Spanner database roles.
       
    • addSplitPoints

      public com.google.common.util.concurrent.ListenableFuture<AddSplitPointsResponse> addSplitPoints(AddSplitPointsRequest request)
       Adds split points to specified tables, indexes of a database.
       
    • createBackupSchedule

      public com.google.common.util.concurrent.ListenableFuture<BackupSchedule> createBackupSchedule(CreateBackupScheduleRequest request)
       Creates a new backup schedule.
       
    • getBackupSchedule

      public com.google.common.util.concurrent.ListenableFuture<BackupSchedule> getBackupSchedule(GetBackupScheduleRequest request)
       Gets backup schedule for the input schedule name.
       
    • updateBackupSchedule

      public com.google.common.util.concurrent.ListenableFuture<BackupSchedule> updateBackupSchedule(UpdateBackupScheduleRequest request)
       Updates a backup schedule.
       
    • deleteBackupSchedule

      public com.google.common.util.concurrent.ListenableFuture<com.google.protobuf.Empty> deleteBackupSchedule(DeleteBackupScheduleRequest request)
       Deletes a backup schedule.
       
    • listBackupSchedules

      public com.google.common.util.concurrent.ListenableFuture<ListBackupSchedulesResponse> listBackupSchedules(ListBackupSchedulesRequest request)
       Lists all the backup schedules for the database.
       
    • internalUpdateGraphOperation

      public com.google.common.util.concurrent.ListenableFuture<InternalUpdateGraphOperationResponse> internalUpdateGraphOperation(InternalUpdateGraphOperationRequest request)
       This is an internal API called by Spanner Graph jobs. You should never need
       to call this API directly.