use of com.scalar.db.rpc.TwoPhaseCommitTransactionResponse in project scalardb by scalar-labs.
the class GrpcTwoPhaseCommitTransactionOnBidirectionalStream method throwIfErrorForPreparation.
private void throwIfErrorForPreparation(ResponseOrError responseOrError) throws PreparationException {
if (responseOrError.isError()) {
finished.set(true);
Throwable error = responseOrError.getError();
if (error instanceof Error) {
throw (Error) error;
}
throw new PreparationException("failed to prepare", error);
}
TwoPhaseCommitTransactionResponse response = responseOrError.getResponse();
if (response.hasError()) {
TwoPhaseCommitTransactionResponse.Error error = response.getError();
if (error.getErrorCode() == ErrorCode.CONFLICT) {
throw new PreparationConflictException(error.getMessage());
}
throw new PreparationException(error.getMessage());
}
}
use of com.scalar.db.rpc.TwoPhaseCommitTransactionResponse in project scalardb by scalar-labs.
the class GrpcTwoPhaseCommitTransactionOnBidirectionalStream method throwIfErrorForValidation.
private void throwIfErrorForValidation(ResponseOrError responseOrError) throws ValidationException {
if (responseOrError.isError()) {
finished.set(true);
Throwable error = responseOrError.getError();
if (error instanceof Error) {
throw (Error) error;
}
throw new ValidationException("failed to validate", error);
}
TwoPhaseCommitTransactionResponse response = responseOrError.getResponse();
if (response.hasError()) {
TwoPhaseCommitTransactionResponse.Error error = response.getError();
if (error.getErrorCode() == ErrorCode.CONFLICT) {
throw new ValidationConflictException(error.getMessage());
}
throw new ValidationException(error.getMessage());
}
}
use of com.scalar.db.rpc.TwoPhaseCommitTransactionResponse in project scalardb by scalar-labs.
the class GrpcTwoPhaseCommitTransactionOnBidirectionalStream method throwIfErrorForCrud.
private void throwIfErrorForCrud(ResponseOrError responseOrError) throws CrudException {
if (responseOrError.isError()) {
finished.set(true);
Throwable error = responseOrError.getError();
if (error instanceof Error) {
throw (Error) error;
}
throw new CrudException("failed to execute crud", error);
}
TwoPhaseCommitTransactionResponse response = responseOrError.getResponse();
if (response.hasError()) {
TwoPhaseCommitTransactionResponse.Error error = response.getError();
switch(error.getErrorCode()) {
case INVALID_ARGUMENT:
throw new IllegalArgumentException(error.getMessage());
case CONFLICT:
throw new CrudConflictException(error.getMessage());
default:
throw new CrudException(error.getMessage());
}
}
}
Aggregations