Class SpannerOptions.SpannerCallContextTimeoutConfigurator (6.77.0)

public static class SpannerOptions.SpannerCallContextTimeoutConfigurator implements SpannerOptions.CallContextConfigurator

Helper class to configure timeouts for specific Spanner RPCs. The SpannerCallContextTimeoutConfigurator must be set as a value on the Context using the SpannerOptions#CALL_CONTEXT_CONFIGURATOR_KEY key.

Example usage:


 // Create a context with a ExecuteQuery timeout of 10 seconds.
 Context context =
     Context.current()
         .withValue(
             SpannerOptions.CALL_CONTEXT_CONFIGURATOR_KEY,
             SpannerCallContextTimeoutConfigurator.create()
                 .withExecuteQueryTimeout(Duration.ofSeconds(10L)));
 context.run(
     () -> {
       try (ResultSet rs =
           client
               .singleUse()
               .executeQuery(
                   Statement.of(
                       "SELECT SingerId, FirstName, LastName FROM Singers ORDER BY LastName"))) {
         while (rs.next()) {
           System.out.printf("%d %s %s%n", rs.getLong(0), rs.getString(1), rs.getString(2));
         }
       } catch (SpannerException e) {
         if (e.getErrorCode() == ErrorCode.DEADLINE_EXCEEDED) {
           // Handle timeout.
         }
       }
     }
 

Inheritance

java.lang.Object > SpannerOptions.SpannerCallContextTimeoutConfigurator

Static Methods

create()

public static SpannerOptions.SpannerCallContextTimeoutConfigurator create()
Returns
Type Description
SpannerOptions.SpannerCallContextTimeoutConfigurator

Methods

<ReqT,RespT>configure(ApiCallContext context, ReqT request, MethodDescriptor<ReqT,RespT> method)

public ApiCallContext <ReqT,RespT>configure(ApiCallContext context, ReqT request, MethodDescriptor<ReqT,RespT> method)

Configure a ApiCallContext for a specific RPC call.

Parameters
Name Description
context ApiCallContext
request ReqT
method io.grpc.MethodDescriptor<ReqT,RespT>
Returns
Type Description
ApiCallContext

getBatchUpdateTimeout()

public Duration getBatchUpdateTimeout()
Returns
Type Description
org.threeten.bp.Duration

getCommitTimeout()

public Duration getCommitTimeout()
Returns
Type Description
org.threeten.bp.Duration

getExecuteQueryTimeout()

public Duration getExecuteQueryTimeout()
Returns
Type Description
org.threeten.bp.Duration

getExecuteUpdateTimeout()

public Duration getExecuteUpdateTimeout()
Returns
Type Description
org.threeten.bp.Duration

getPartitionQueryTimeout()

public Duration getPartitionQueryTimeout()
Returns
Type Description
org.threeten.bp.Duration

getPartitionReadTimeout()

public Duration getPartitionReadTimeout()
Returns
Type Description
org.threeten.bp.Duration

getReadTimeout()

public Duration getReadTimeout()
Returns
Type Description
org.threeten.bp.Duration

getRollbackTimeout()

public Duration getRollbackTimeout()
Returns
Type Description
org.threeten.bp.Duration

withBatchUpdateTimeout(Duration batchUpdateTimeout)

public SpannerOptions.SpannerCallContextTimeoutConfigurator withBatchUpdateTimeout(Duration batchUpdateTimeout)
Parameter
Name Description
batchUpdateTimeout org.threeten.bp.Duration
Returns
Type Description
SpannerOptions.SpannerCallContextTimeoutConfigurator

withCommitTimeout(Duration commitTimeout)

public SpannerOptions.SpannerCallContextTimeoutConfigurator withCommitTimeout(Duration commitTimeout)
Parameter
Name Description
commitTimeout org.threeten.bp.Duration
Returns
Type Description
SpannerOptions.SpannerCallContextTimeoutConfigurator

withExecuteQueryTimeout(Duration executeQueryTimeout)

public SpannerOptions.SpannerCallContextTimeoutConfigurator withExecuteQueryTimeout(Duration executeQueryTimeout)
Parameter
Name Description
executeQueryTimeout org.threeten.bp.Duration
Returns
Type Description
SpannerOptions.SpannerCallContextTimeoutConfigurator

withExecuteUpdateTimeout(Duration executeUpdateTimeout)

public SpannerOptions.SpannerCallContextTimeoutConfigurator withExecuteUpdateTimeout(Duration executeUpdateTimeout)
Parameter
Name Description
executeUpdateTimeout org.threeten.bp.Duration
Returns
Type Description
SpannerOptions.SpannerCallContextTimeoutConfigurator

withPartitionQueryTimeout(Duration partitionQueryTimeout)

public SpannerOptions.SpannerCallContextTimeoutConfigurator withPartitionQueryTimeout(Duration partitionQueryTimeout)
Parameter
Name Description
partitionQueryTimeout org.threeten.bp.Duration
Returns
Type Description
SpannerOptions.SpannerCallContextTimeoutConfigurator

withPartitionReadTimeout(Duration partitionReadTimeout)

public SpannerOptions.SpannerCallContextTimeoutConfigurator withPartitionReadTimeout(Duration partitionReadTimeout)
Parameter
Name Description
partitionReadTimeout org.threeten.bp.Duration
Returns
Type Description
SpannerOptions.SpannerCallContextTimeoutConfigurator

withReadTimeout(Duration readTimeout)

public SpannerOptions.SpannerCallContextTimeoutConfigurator withReadTimeout(Duration readTimeout)
Parameter
Name Description
readTimeout org.threeten.bp.Duration
Returns
Type Description
SpannerOptions.SpannerCallContextTimeoutConfigurator

withRollbackTimeout(Duration rollbackTimeout)

public SpannerOptions.SpannerCallContextTimeoutConfigurator withRollbackTimeout(Duration rollbackTimeout)
Parameter
Name Description
rollbackTimeout org.threeten.bp.Duration
Returns
Type Description
SpannerOptions.SpannerCallContextTimeoutConfigurator