com.scalar.db.transaction.rpc.GrpcTransactionProvider Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of scalardb Show documentation
Show all versions of scalardb Show documentation
A universal transaction manager that achieves database-agnostic transactions and distributed transactions that span multiple databases
package com.scalar.db.transaction.rpc;
import com.scalar.db.api.DistributedTransactionAdmin;
import com.scalar.db.api.DistributedTransactionManager;
import com.scalar.db.api.DistributedTransactionProvider;
import com.scalar.db.api.TwoPhaseCommitTransactionManager;
import com.scalar.db.config.DatabaseConfig;
public class GrpcTransactionProvider implements DistributedTransactionProvider {
@Override
public String getName() {
return "grpc";
}
@Override
public DistributedTransactionManager createDistributedTransactionManager(DatabaseConfig config) {
return new GrpcTransactionManager(config);
}
@Override
public DistributedTransactionAdmin createDistributedTransactionAdmin(DatabaseConfig config) {
return new GrpcTransactionAdmin(config);
}
@Override
public TwoPhaseCommitTransactionManager createTwoPhaseCommitTransactionManager(
DatabaseConfig config) {
return new GrpcTwoPhaseCommitTransactionManager(config);
}
}