Class BatchClientImpl

java.lang.Object
com.google.cloud.spanner.BatchClientImpl
All Implemented Interfaces:
BatchClient

public class BatchClientImpl extends Object implements BatchClient
Default implementation for Batch Client interface.
  • Method Details

    • getDatabaseRole

      @Nullable public String getDatabaseRole()
      Description copied from interface: BatchClient
      Returns the DatabaseRole used by the client connection. The database role that is used determines the access permissions that a connection has. This can for example be used to create connections that are only permitted to access certain tables.
      Specified by:
      getDatabaseRole in interface BatchClient
    • batchReadOnlyTransaction

      public BatchReadOnlyTransaction batchReadOnlyTransaction(TimestampBound bound)
      Description copied from interface: BatchClient
      Returns a BatchReadOnlyTransaction context in which multiple reads and/or queries can be performed. All reads/queries will use the same timestamp, and the timestamp can be inspected after this transaction is created successfully. This is a blocking method since it waits to finish the rpcs.

      Note that the bounded staleness modes, TimestampBound.Mode.MIN_READ_TIMESTAMP and TimestampBound.Mode.MAX_STALENESS, are not supported for BatchReadOnlyTransaction.

      Specified by:
      batchReadOnlyTransaction in interface BatchClient
      Parameters:
      bound - the timestamp bound at which to perform the read
      
       BatchReadOnlyTransaction txn = batchClient.batchReadOnlyTransaction(TimestampBound.strong());
       
    • batchReadOnlyTransaction

      public BatchReadOnlyTransaction batchReadOnlyTransaction(BatchTransactionId batchTransactionId)
      Description copied from interface: BatchClient
      Returns a BatchReadOnlyTransaction context in which multiple reads and/or queries can be performed. This is a non-blocking method. All reads/queries will use the same timestamp, and the timestamp can be inspected after this transaction is created successfully.

      This method is useful to recreate a BatchReadOnlyTransaction object from an existing batchTransactionId. For example one might send the transaction id to a different process or machine and recreate the transaction object there.

      Specified by:
      batchReadOnlyTransaction in interface BatchClient
      Parameters:
      batchTransactionId - to re-initialize the transaction, re-using the timestamp for successive read/query.