public final class SpannerExceptionFactory
A factory for creating instances of SpannerException and its subtypes. All creation of
these exceptions is directed through the factory. This ensures that particular types of errors
are always expressed as the same concrete exception type. For example, exceptions of type ErrorCode#ABORTED are always represented by AbortedException.
Constructors
SpannerExceptionFactory()
public SpannerExceptionFactory()
Methods
asSpannerException(Throwable t)
public static SpannerException asSpannerException(Throwable t)
Parameter
Returns
newAbortedDueToConcurrentModificationException(AbortedDueToConcurrentModificationException cause)
public static AbortedDueToConcurrentModificationException newAbortedDueToConcurrentModificationException(AbortedDueToConcurrentModificationException cause)
Parameter
Returns
newAbortedDueToConcurrentModificationException(AbortedException cause)
public static AbortedDueToConcurrentModificationException newAbortedDueToConcurrentModificationException(AbortedException cause)
Constructs a specific aborted exception that should only be thrown by a connection after an
internal retry aborted due to concurrent modifications.
Parameter
Returns
newAbortedDueToConcurrentModificationException(AbortedException cause, SpannerException databaseError)
public static AbortedDueToConcurrentModificationException newAbortedDueToConcurrentModificationException(AbortedException cause, SpannerException databaseError)
Constructs a specific aborted exception that should only be thrown by a connection after an
internal retry aborted because a database call caused an exception that did not happen during
the original attempt.
Parameters
Returns
newSpannerBatchUpdateException(ErrorCode code, String message, long[] updateCounts)
public static SpannerBatchUpdateException newSpannerBatchUpdateException(ErrorCode code, String message, long[] updateCounts)
Parameters
Returns
newSpannerException(ErrorCode code, String message)
public static SpannerException newSpannerException(ErrorCode code, String message)
Parameters
Returns
newSpannerException(ErrorCode code, String message, Throwable cause)
public static SpannerException newSpannerException(ErrorCode code, String message, Throwable cause)
Parameters
Returns
newSpannerException(Context context, Throwable cause)
public static SpannerException newSpannerException(Context context, Throwable cause)
Creates a new exception based on cause
. If cause
indicates cancellation,
context
will be inspected to establish the type of cancellation.
Intended for internal library use; user code should use #newSpannerException(ErrorCode, String) instead of this method.
Parameters
Name | Description |
context | io.grpc.Context
|
cause | Throwable
|
Returns
newSpannerException(Throwable cause)
public static SpannerException newSpannerException(Throwable cause)
Parameter
Returns
propagateInterrupt(InterruptedException e)
public static SpannerException propagateInterrupt(InterruptedException e)
Parameter
Returns
propagateTimeout(TimeoutException e)
public static SpannerException propagateTimeout(TimeoutException e)
Transforms a TimeoutException
to a SpannerException
.
try {
Spanner spanner = SpannerOptions.getDefaultInstance();
spanner
.getDatabaseAdminClient()
.createDatabase("[INSTANCE_ID]", "[DATABASE_ID]", [STATEMENTS])
.get();
} catch (TimeoutException e) {
propagateTimeout(e);
}
Parameter
Returns