mirror of
https://github.com/ebean-orm/ebean.git
synced 2024-04-21 10:51:47 +00:00
62 lines
1.3 KiB
Java
62 lines
1.3 KiB
Java
package io.ebeaninternal.server.transaction;
|
|
|
|
import io.ebeaninternal.api.SpiTransaction;
|
|
|
|
/**
|
|
* Manages the transaction scoping using a Ebean thread local.
|
|
*/
|
|
public class DefaultTransactionScopeManager extends TransactionScopeManager {
|
|
|
|
|
|
public DefaultTransactionScopeManager(String serverName) {
|
|
super(serverName);
|
|
}
|
|
|
|
@Override
|
|
public void register(TransactionManager manager) {
|
|
// do nothing
|
|
}
|
|
|
|
@Override
|
|
public void commit() {
|
|
DefaultTransactionThreadLocal.commit(serverName);
|
|
}
|
|
|
|
@Override
|
|
public void end() {
|
|
DefaultTransactionThreadLocal.end(serverName);
|
|
}
|
|
|
|
@Override
|
|
public SpiTransaction getMaybeInactive() {
|
|
return DefaultTransactionThreadLocal.get(serverName);
|
|
}
|
|
|
|
@Override
|
|
public SpiTransaction get() {
|
|
SpiTransaction t = DefaultTransactionThreadLocal.get(serverName);
|
|
if (t == null || !t.isActive()) {
|
|
return null;
|
|
} else {
|
|
return t;
|
|
}
|
|
}
|
|
|
|
@Override
|
|
public void replace(SpiTransaction trans) {
|
|
DefaultTransactionThreadLocal.replace(serverName, trans);
|
|
}
|
|
|
|
@Override
|
|
public void rollback() {
|
|
DefaultTransactionThreadLocal.rollback(serverName);
|
|
}
|
|
|
|
@Override
|
|
public void set(SpiTransaction trans) {
|
|
DefaultTransactionThreadLocal.set(serverName, trans);
|
|
}
|
|
|
|
|
|
}
|