public class io.ebeaninternal.server.transaction.TransactionManager implements io.ebeaninternal.api.SpiTransactionManager
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: io.ebeaninternal.server.transaction.TransactionManager
super_class: java.lang.Object
{
private static final org.slf4j.Logger logger;
descriptor: Lorg/slf4j/Logger;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final org.slf4j.Logger clusterLogger;
descriptor: Lorg/slf4j/Logger;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private final io.ebeaninternal.server.deploy.BeanDescriptorManager beanDescriptorManager;
descriptor: Lio/ebeaninternal/server/deploy/BeanDescriptorManager;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final boolean rollbackOnChecked;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
final java.lang.String prefix;
descriptor: Ljava/lang/String;
flags: (0x0010) ACC_FINAL
private final java.lang.String externalTransPrefix;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.concurrent.atomic.AtomicLong counter;
descriptor: Ljava/util/concurrent/atomic/AtomicLong;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final io.ebeaninternal.server.transaction.DataSourceSupplier dataSourceSupplier;
descriptor: Lio/ebeaninternal/server/transaction/DataSourceSupplier;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final io.ebean.config.dbplatform.DatabasePlatform$OnQueryOnly onQueryOnly;
descriptor: Lio/ebean/config/dbplatform/DatabasePlatform$OnQueryOnly;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final io.ebean.BackgroundExecutor backgroundExecutor;
descriptor: Lio/ebean/BackgroundExecutor;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final io.ebeaninternal.server.cluster.ClusterManager clusterManager;
descriptor: Lio/ebeaninternal/server/cluster/ClusterManager;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.lang.String serverName;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final boolean docStoreActive;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
final io.ebeanservice.docstore.api.DocStoreUpdateProcessor docStoreUpdateProcessor;
descriptor: Lio/ebeanservice/docstore/api/DocStoreUpdateProcessor;
flags: (0x0010) ACC_FINAL
private final boolean persistBatch;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final boolean persistBatchOnCascade;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final io.ebeaninternal.server.transaction.BulkEventListenerMap bulkEventListenerMap;
descriptor: Lio/ebeaninternal/server/transaction/BulkEventListenerMap;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final io.ebean.event.changelog.ChangeLogPrepare changeLogPrepare;
descriptor: Lio/ebean/event/changelog/ChangeLogPrepare;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final io.ebean.event.changelog.ChangeLogListener changeLogListener;
descriptor: Lio/ebean/event/changelog/ChangeLogListener;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final boolean changeLogAsync;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
final boolean notifyL2CacheInForeground;
descriptor: Z
flags: (0x0010) ACC_FINAL
private final boolean viewInvalidation;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final boolean skipCacheAfterWrite;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final io.ebeaninternal.server.transaction.TransactionFactory transactionFactory;
descriptor: Lio/ebeaninternal/server/transaction/TransactionFactory;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final io.ebeaninternal.api.SpiLogManager logManager;
descriptor: Lio/ebeaninternal/api/SpiLogManager;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final io.ebeaninternal.api.SpiLogger txnLogger;
descriptor: Lio/ebeaninternal/api/SpiLogger;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final boolean txnDebug;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final io.ebean.config.dbplatform.DatabasePlatform databasePlatform;
descriptor: Lio/ebean/config/dbplatform/DatabasePlatform;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final io.ebeaninternal.api.SpiProfileHandler profileHandler;
descriptor: Lio/ebeaninternal/api/SpiProfileHandler;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final io.ebean.metric.TimedMetric txnMain;
descriptor: Lio/ebean/metric/TimedMetric;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final io.ebean.metric.TimedMetric txnReadOnly;
descriptor: Lio/ebean/metric/TimedMetric;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final io.ebean.metric.TimedMetricMap txnNamed;
descriptor: Lio/ebean/metric/TimedMetricMap;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final io.ebeaninternal.server.transaction.TransactionScopeManager scopeManager;
descriptor: Lio/ebeaninternal/server/transaction/TransactionScopeManager;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final io.ebeaninternal.server.transaction.TableModState tableModState;
descriptor: Lio/ebeaninternal/server/transaction/TableModState;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final io.ebean.cache.ServerCacheNotify cacheNotify;
descriptor: Lio/ebean/cache/ServerCacheNotify;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final boolean supportsSavepointId;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.concurrent.ConcurrentHashMap<java.lang.String, io.ebean.ProfileLocation> profileLocations;
descriptor: Ljava/util/concurrent/ConcurrentHashMap;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/concurrent/ConcurrentHashMap<Ljava/lang/String;Lio/ebean/ProfileLocation;>;
private static volatile int[] $SWITCH_TABLE$io$ebean$annotation$TxType;
descriptor: [I
flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lio/ebeaninternal/server/transaction/TransactionManager;
invokestatic org.slf4j.LoggerFactory.getLogger:(Ljava/lang/Class;)Lorg/slf4j/Logger;
putstatic io.ebeaninternal.server.transaction.TransactionManager.logger:Lorg/slf4j/Logger;
1: ldc "io.ebean.Cluster"
invokestatic org.slf4j.LoggerFactory.getLogger:(Ljava/lang/String;)Lorg/slf4j/Logger;
putstatic io.ebeaninternal.server.transaction.TransactionManager.clusterLogger:Lorg/slf4j/Logger;
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(io.ebeaninternal.server.transaction.TransactionManagerOptions);
descriptor: (Lio/ebeaninternal/server/transaction/TransactionManagerOptions;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new java.util.concurrent.atomic.AtomicLong
dup
ldc 1000
invokespecial java.util.concurrent.atomic.AtomicLong.<init>:(J)V
putfield io.ebeaninternal.server.transaction.TransactionManager.counter:Ljava/util/concurrent/atomic/AtomicLong;
2: aload 0
new java.util.concurrent.ConcurrentHashMap
dup
invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
putfield io.ebeaninternal.server.transaction.TransactionManager.profileLocations:Ljava/util/concurrent/ConcurrentHashMap;
3: aload 0
aload 1
getfield io.ebeaninternal.server.transaction.TransactionManagerOptions.logManager:Lio/ebeaninternal/api/SpiLogManager;
putfield io.ebeaninternal.server.transaction.TransactionManager.logManager:Lio/ebeaninternal/api/SpiLogManager;
4: aload 0
aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.logManager:Lio/ebeaninternal/api/SpiLogManager;
invokeinterface io.ebeaninternal.api.SpiLogManager.txn:()Lio/ebeaninternal/api/SpiLogger;
putfield io.ebeaninternal.server.transaction.TransactionManager.txnLogger:Lio/ebeaninternal/api/SpiLogger;
5: aload 0
aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.txnLogger:Lio/ebeaninternal/api/SpiLogger;
invokeinterface io.ebeaninternal.api.SpiLogger.isDebug:()Z
putfield io.ebeaninternal.server.transaction.TransactionManager.txnDebug:Z
6: aload 0
aload 1
getfield io.ebeaninternal.server.transaction.TransactionManagerOptions.config:Lio/ebean/config/DatabaseConfig;
invokevirtual io.ebean.config.DatabaseConfig.getDatabasePlatform:()Lio/ebean/config/dbplatform/DatabasePlatform;
putfield io.ebeaninternal.server.transaction.TransactionManager.databasePlatform:Lio/ebean/config/dbplatform/DatabasePlatform;
7: aload 0
aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.databasePlatform:Lio/ebean/config/dbplatform/DatabasePlatform;
invokevirtual io.ebean.config.dbplatform.DatabasePlatform.isSupportsSavepointId:()Z
putfield io.ebeaninternal.server.transaction.TransactionManager.supportsSavepointId:Z
8: aload 0
aload 1
getfield io.ebeaninternal.server.transaction.TransactionManagerOptions.config:Lio/ebean/config/DatabaseConfig;
invokevirtual io.ebean.config.DatabaseConfig.isSkipCacheAfterWrite:()Z
putfield io.ebeaninternal.server.transaction.TransactionManager.skipCacheAfterWrite:Z
9: aload 0
aload 1
getfield io.ebeaninternal.server.transaction.TransactionManagerOptions.notifyL2CacheInForeground:Z
putfield io.ebeaninternal.server.transaction.TransactionManager.notifyL2CacheInForeground:Z
10: aload 0
getstatic io.ebean.annotation.PersistBatch.ALL:Lio/ebean/annotation/PersistBatch;
aload 1
getfield io.ebeaninternal.server.transaction.TransactionManagerOptions.config:Lio/ebean/config/DatabaseConfig;
invokevirtual io.ebean.config.DatabaseConfig.getPersistBatch:()Lio/ebean/annotation/PersistBatch;
if_acmpne 11
iconst_1
goto 12
StackMap locals: io.ebeaninternal.server.transaction.TransactionManager io.ebeaninternal.server.transaction.TransactionManagerOptions
StackMap stack: io.ebeaninternal.server.transaction.TransactionManager
11: iconst_0
StackMap locals: io.ebeaninternal.server.transaction.TransactionManager io.ebeaninternal.server.transaction.TransactionManagerOptions
StackMap stack: io.ebeaninternal.server.transaction.TransactionManager int
12: putfield io.ebeaninternal.server.transaction.TransactionManager.persistBatch:Z
13: aload 0
getstatic io.ebean.annotation.PersistBatch.ALL:Lio/ebean/annotation/PersistBatch;
aload 1
getfield io.ebeaninternal.server.transaction.TransactionManagerOptions.config:Lio/ebean/config/DatabaseConfig;
invokevirtual io.ebean.config.DatabaseConfig.appliedPersistBatchOnCascade:()Lio/ebean/annotation/PersistBatch;
if_acmpne 14
iconst_1
goto 15
StackMap locals:
StackMap stack: io.ebeaninternal.server.transaction.TransactionManager
14: iconst_0
StackMap locals: io.ebeaninternal.server.transaction.TransactionManager io.ebeaninternal.server.transaction.TransactionManagerOptions
StackMap stack: io.ebeaninternal.server.transaction.TransactionManager int
15: putfield io.ebeaninternal.server.transaction.TransactionManager.persistBatchOnCascade:Z
16: aload 0
aload 1
getfield io.ebeaninternal.server.transaction.TransactionManagerOptions.config:Lio/ebean/config/DatabaseConfig;
invokevirtual io.ebean.config.DatabaseConfig.isTransactionRollbackOnChecked:()Z
putfield io.ebeaninternal.server.transaction.TransactionManager.rollbackOnChecked:Z
17: aload 0
aload 1
getfield io.ebeaninternal.server.transaction.TransactionManagerOptions.descMgr:Lio/ebeaninternal/server/deploy/BeanDescriptorManager;
putfield io.ebeaninternal.server.transaction.TransactionManager.beanDescriptorManager:Lio/ebeaninternal/server/deploy/BeanDescriptorManager;
18: aload 0
aload 1
getfield io.ebeaninternal.server.transaction.TransactionManagerOptions.descMgr:Lio/ebeaninternal/server/deploy/BeanDescriptorManager;
invokevirtual io.ebeaninternal.server.deploy.BeanDescriptorManager.requiresViewEntityCacheInvalidation:()Z
putfield io.ebeaninternal.server.transaction.TransactionManager.viewInvalidation:Z
19: aload 0
aload 1
getfield io.ebeaninternal.server.transaction.TransactionManagerOptions.descMgr:Lio/ebeaninternal/server/deploy/BeanDescriptorManager;
invokevirtual io.ebeaninternal.server.deploy.BeanDescriptorManager.getChangeLogPrepare:()Lio/ebean/event/changelog/ChangeLogPrepare;
putfield io.ebeaninternal.server.transaction.TransactionManager.changeLogPrepare:Lio/ebean/event/changelog/ChangeLogPrepare;
20: aload 0
aload 1
getfield io.ebeaninternal.server.transaction.TransactionManagerOptions.descMgr:Lio/ebeaninternal/server/deploy/BeanDescriptorManager;
invokevirtual io.ebeaninternal.server.deploy.BeanDescriptorManager.getChangeLogListener:()Lio/ebean/event/changelog/ChangeLogListener;
putfield io.ebeaninternal.server.transaction.TransactionManager.changeLogListener:Lio/ebean/event/changelog/ChangeLogListener;
21: aload 0
aload 1
getfield io.ebeaninternal.server.transaction.TransactionManagerOptions.config:Lio/ebean/config/DatabaseConfig;
invokevirtual io.ebean.config.DatabaseConfig.isChangeLogAsync:()Z
putfield io.ebeaninternal.server.transaction.TransactionManager.changeLogAsync:Z
22: aload 0
aload 1
getfield io.ebeaninternal.server.transaction.TransactionManagerOptions.clusterManager:Lio/ebeaninternal/server/cluster/ClusterManager;
putfield io.ebeaninternal.server.transaction.TransactionManager.clusterManager:Lio/ebeaninternal/server/cluster/ClusterManager;
23: aload 0
aload 1
getfield io.ebeaninternal.server.transaction.TransactionManagerOptions.config:Lio/ebean/config/DatabaseConfig;
invokevirtual io.ebean.config.DatabaseConfig.getName:()Ljava/lang/String;
putfield io.ebeaninternal.server.transaction.TransactionManager.serverName:Ljava/lang/String;
24: aload 0
aload 1
getfield io.ebeaninternal.server.transaction.TransactionManagerOptions.scopeManager:Lio/ebeaninternal/server/transaction/TransactionScopeManager;
putfield io.ebeaninternal.server.transaction.TransactionManager.scopeManager:Lio/ebeaninternal/server/transaction/TransactionScopeManager;
25: aload 0
aload 1
getfield io.ebeaninternal.server.transaction.TransactionManagerOptions.tableModState:Lio/ebeaninternal/server/transaction/TableModState;
putfield io.ebeaninternal.server.transaction.TransactionManager.tableModState:Lio/ebeaninternal/server/transaction/TableModState;
26: aload 0
aload 1
getfield io.ebeaninternal.server.transaction.TransactionManagerOptions.cacheNotify:Lio/ebean/cache/ServerCacheNotify;
putfield io.ebeaninternal.server.transaction.TransactionManager.cacheNotify:Lio/ebean/cache/ServerCacheNotify;
27: aload 0
aload 1
getfield io.ebeaninternal.server.transaction.TransactionManagerOptions.backgroundExecutor:Lio/ebean/BackgroundExecutor;
putfield io.ebeaninternal.server.transaction.TransactionManager.backgroundExecutor:Lio/ebean/BackgroundExecutor;
28: aload 0
aload 1
getfield io.ebeaninternal.server.transaction.TransactionManagerOptions.dataSourceSupplier:Lio/ebeaninternal/server/transaction/DataSourceSupplier;
putfield io.ebeaninternal.server.transaction.TransactionManager.dataSourceSupplier:Lio/ebeaninternal/server/transaction/DataSourceSupplier;
29: aload 0
aload 1
getfield io.ebeaninternal.server.transaction.TransactionManagerOptions.config:Lio/ebean/config/DatabaseConfig;
invokevirtual io.ebean.config.DatabaseConfig.getDocStoreConfig:()Lio/ebean/config/DocStoreConfig;
invokevirtual io.ebean.config.DocStoreConfig.isActive:()Z
putfield io.ebeaninternal.server.transaction.TransactionManager.docStoreActive:Z
30: aload 0
aload 1
getfield io.ebeaninternal.server.transaction.TransactionManagerOptions.docStoreUpdateProcessor:Lio/ebeanservice/docstore/api/DocStoreUpdateProcessor;
putfield io.ebeaninternal.server.transaction.TransactionManager.docStoreUpdateProcessor:Lio/ebeanservice/docstore/api/DocStoreUpdateProcessor;
31: aload 0
aload 1
getfield io.ebeaninternal.server.transaction.TransactionManagerOptions.profileHandler:Lio/ebeaninternal/api/SpiProfileHandler;
putfield io.ebeaninternal.server.transaction.TransactionManager.profileHandler:Lio/ebeaninternal/api/SpiProfileHandler;
32: aload 0
new io.ebeaninternal.server.transaction.BulkEventListenerMap
dup
aload 1
getfield io.ebeaninternal.server.transaction.TransactionManagerOptions.config:Lio/ebean/config/DatabaseConfig;
invokevirtual io.ebean.config.DatabaseConfig.getBulkTableEventListeners:()Ljava/util/List;
invokespecial io.ebeaninternal.server.transaction.BulkEventListenerMap.<init>:(Ljava/util/List;)V
putfield io.ebeaninternal.server.transaction.TransactionManager.bulkEventListenerMap:Lio/ebeaninternal/server/transaction/BulkEventListenerMap;
33: aload 0
ldc ""
putfield io.ebeaninternal.server.transaction.TransactionManager.prefix:Ljava/lang/String;
34: aload 0
ldc "e"
putfield io.ebeaninternal.server.transaction.TransactionManager.externalTransPrefix:Ljava/lang/String;
35: aload 0
aload 0
aload 1
getfield io.ebeaninternal.server.transaction.TransactionManagerOptions.config:Lio/ebean/config/DatabaseConfig;
invokevirtual io.ebean.config.DatabaseConfig.getDatabasePlatform:()Lio/ebean/config/dbplatform/DatabasePlatform;
invokevirtual io.ebean.config.dbplatform.DatabasePlatform.getOnQueryOnly:()Lio/ebean/config/dbplatform/DatabasePlatform$OnQueryOnly;
invokevirtual io.ebeaninternal.server.transaction.TransactionManager.initOnQueryOnly:(Lio/ebean/config/dbplatform/DatabasePlatform$OnQueryOnly;)Lio/ebean/config/dbplatform/DatabasePlatform$OnQueryOnly;
putfield io.ebeaninternal.server.transaction.TransactionManager.onQueryOnly:Lio/ebean/config/dbplatform/DatabasePlatform$OnQueryOnly;
36: aload 1
getfield io.ebeaninternal.server.transaction.TransactionManagerOptions.config:Lio/ebean/config/DatabaseConfig;
invokevirtual io.ebean.config.DatabaseConfig.getCurrentTenantProvider:()Lio/ebean/config/CurrentTenantProvider;
astore 2
start local 2 37: aload 0
aload 0
aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.dataSourceSupplier:Lio/ebeaninternal/server/transaction/DataSourceSupplier;
aload 2
invokestatic io.ebeaninternal.server.transaction.TransactionFactoryBuilder.build:(Lio/ebeaninternal/server/transaction/TransactionManager;Lio/ebeaninternal/server/transaction/DataSourceSupplier;Lio/ebean/config/CurrentTenantProvider;)Lio/ebeaninternal/server/transaction/TransactionFactory;
putfield io.ebeaninternal.server.transaction.TransactionManager.transactionFactory:Lio/ebeaninternal/server/transaction/TransactionFactory;
38: invokestatic io.ebean.metric.MetricFactory.get:()Lio/ebean/metric/MetricFactory;
astore 3
start local 3 39: aload 0
aload 3
ldc "txn.main"
invokeinterface io.ebean.metric.MetricFactory.createTimedMetric:(Ljava/lang/String;)Lio/ebean/metric/TimedMetric;
putfield io.ebeaninternal.server.transaction.TransactionManager.txnMain:Lio/ebean/metric/TimedMetric;
40: aload 0
aload 3
ldc "txn.readonly"
invokeinterface io.ebean.metric.MetricFactory.createTimedMetric:(Ljava/lang/String;)Lio/ebean/metric/TimedMetric;
putfield io.ebeaninternal.server.transaction.TransactionManager.txnReadOnly:Lio/ebean/metric/TimedMetric;
41: aload 0
aload 3
ldc "txn.named."
invokeinterface io.ebean.metric.MetricFactory.createTimedMetricMap:(Ljava/lang/String;)Lio/ebean/metric/TimedMetricMap;
putfield io.ebeaninternal.server.transaction.TransactionManager.txnNamed:Lio/ebean/metric/TimedMetricMap;
42: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.scopeManager:Lio/ebeaninternal/server/transaction/TransactionScopeManager;
aload 0
invokevirtual io.ebeaninternal.server.transaction.TransactionScopeManager.register:(Lio/ebeaninternal/server/transaction/TransactionManager;)V
43: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 44 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
0 44 1 options Lio/ebeaninternal/server/transaction/TransactionManagerOptions;
37 44 2 tenantProvider Lio/ebean/config/CurrentTenantProvider;
39 44 3 metricFactory Lio/ebean/metric/MetricFactory;
MethodParameters:
Name Flags
options
private io.ebeaninternal.api.ScopedTransaction createScopedTransaction();
descriptor: ()Lio/ebeaninternal/api/ScopedTransaction;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=1, args_size=1
start local 0 0: new io.ebeaninternal.api.ScopedTransaction
dup
aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.scopeManager:Lio/ebeaninternal/server/transaction/TransactionScopeManager;
invokespecial io.ebeaninternal.api.ScopedTransaction.<init>:(Lio/ebeaninternal/server/transaction/TransactionScopeManager;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
public io.ebeaninternal.server.transaction.TransactionScopeManager scope();
descriptor: ()Lio/ebeaninternal/server/transaction/TransactionScopeManager;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.scopeManager:Lio/ebeaninternal/server/transaction/TransactionScopeManager;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
public void set(io.ebeaninternal.api.SpiTransaction);
descriptor: (Lio/ebeaninternal/api/SpiTransaction;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.scopeManager:Lio/ebeaninternal/server/transaction/TransactionScopeManager;
aload 1
invokevirtual io.ebeaninternal.server.transaction.TransactionScopeManager.set:(Lio/ebeaninternal/api/SpiTransaction;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
0 2 1 txn Lio/ebeaninternal/api/SpiTransaction;
MethodParameters:
Name Flags
txn
public io.ebeaninternal.api.SpiTransaction getActive();
descriptor: ()Lio/ebeaninternal/api/SpiTransaction;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.scopeManager:Lio/ebeaninternal/server/transaction/TransactionScopeManager;
invokevirtual io.ebeaninternal.server.transaction.TransactionScopeManager.getActive:()Lio/ebeaninternal/api/SpiTransaction;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
private io.ebeaninternal.api.ScopedTransaction getActiveScoped();
descriptor: ()Lio/ebeaninternal/api/ScopedTransaction;
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.scopeManager:Lio/ebeaninternal/server/transaction/TransactionScopeManager;
invokevirtual io.ebeaninternal.server.transaction.TransactionScopeManager.getActive:()Lio/ebeaninternal/api/SpiTransaction;
checkcast io.ebeaninternal.api.ScopedTransaction
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
public io.ebeaninternal.api.SpiTransaction getInScope();
descriptor: ()Lio/ebeaninternal/api/SpiTransaction;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.scopeManager:Lio/ebeaninternal/server/transaction/TransactionScopeManager;
invokevirtual io.ebeaninternal.server.transaction.TransactionScopeManager.getInScope:()Lio/ebeaninternal/api/SpiTransaction;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
public javax.persistence.PersistenceException translate(java.lang.String, java.sql.SQLException);
descriptor: (Ljava/lang/String;Ljava/sql/SQLException;)Ljavax/persistence/PersistenceException;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.databasePlatform:Lio/ebean/config/dbplatform/DatabasePlatform;
aload 1
aload 2
invokevirtual io.ebean.config.dbplatform.DatabasePlatform.translate:(Ljava/lang/String;Ljava/sql/SQLException;)Ljavax/persistence/PersistenceException;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
0 1 1 message Ljava/lang/String;
0 1 2 cause Ljava/sql/SQLException;
MethodParameters:
Name Flags
message
cause
public void shutdown(boolean, boolean);
descriptor: (ZZ)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: iload 1
ifeq 2
1: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.dataSourceSupplier:Lio/ebeaninternal/server/transaction/DataSourceSupplier;
iload 2
invokeinterface io.ebeaninternal.server.transaction.DataSourceSupplier.shutdown:(Z)V
2: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
0 3 1 shutdownDataSource Z
0 3 2 deregisterDriver Z
MethodParameters:
Name Flags
shutdownDataSource
deregisterDriver
boolean isSupportsSavepointId();
descriptor: ()Z
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.supportsSavepointId:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
boolean isDocStoreActive();
descriptor: ()Z
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.docStoreActive:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
io.ebeanservice.docstore.api.DocStoreTransaction createDocStoreTransaction(int);
descriptor: (I)Lio/ebeanservice/docstore/api/DocStoreTransaction;
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.docStoreUpdateProcessor:Lio/ebeanservice/docstore/api/DocStoreUpdateProcessor;
iload 1
invokeinterface io.ebeanservice.docstore.api.DocStoreUpdateProcessor.createTransaction:(I)Lio/ebeanservice/docstore/api/DocStoreTransaction;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
0 1 1 docStoreBatchSize I
MethodParameters:
Name Flags
docStoreBatchSize
boolean isSkipCacheAfterWrite();
descriptor: ()Z
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.skipCacheAfterWrite:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
public io.ebeaninternal.server.deploy.BeanDescriptorManager getBeanDescriptorManager();
descriptor: ()Lio/ebeaninternal/server/deploy/BeanDescriptorManager;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.beanDescriptorManager:Lio/ebeaninternal/server/deploy/BeanDescriptorManager;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
io.ebeaninternal.server.transaction.BulkEventListenerMap getBulkEventListenerMap();
descriptor: ()Lio/ebeaninternal/server/transaction/BulkEventListenerMap;
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.bulkEventListenerMap:Lio/ebeaninternal/server/transaction/BulkEventListenerMap;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
boolean getPersistBatch();
descriptor: ()Z
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.persistBatch:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
public boolean getPersistBatchOnCascade();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.persistBatchOnCascade:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
io.ebean.config.dbplatform.DatabasePlatform$OnQueryOnly initOnQueryOnly(io.ebean.config.dbplatform.DatabasePlatform$OnQueryOnly);
descriptor: (Lio/ebean/config/dbplatform/DatabasePlatform$OnQueryOnly;)Lio/ebean/config/dbplatform/DatabasePlatform$OnQueryOnly;
flags: (0x0000)
Code:
stack=1, locals=3, args_size=2
start local 0 start local 1 0: ldc "ebean.transaction.onqueryonly"
invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
astore 2
start local 2 1: aload 2
ifnull 3
2: aload 2
invokevirtual java.lang.String.trim:()Ljava/lang/String;
invokevirtual java.lang.String.toUpperCase:()Ljava/lang/String;
invokestatic io.ebean.config.dbplatform.DatabasePlatform$OnQueryOnly.valueOf:(Ljava/lang/String;)Lio/ebean/config/dbplatform/DatabasePlatform$OnQueryOnly;
areturn
3: StackMap locals: java.lang.String
StackMap stack:
aload 1
ifnonnull 4
getstatic io.ebean.config.dbplatform.DatabasePlatform$OnQueryOnly.COMMIT:Lio/ebean/config/dbplatform/DatabasePlatform$OnQueryOnly;
goto 5
StackMap locals:
StackMap stack:
4: aload 1
StackMap locals:
StackMap stack: io.ebean.config.dbplatform.DatabasePlatform$OnQueryOnly
5: areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
0 6 1 dbPlatformOnQueryOnly Lio/ebean/config/dbplatform/DatabasePlatform$OnQueryOnly;
1 6 2 systemPropertyValue Ljava/lang/String;
MethodParameters:
Name Flags
dbPlatformOnQueryOnly
public java.lang.String getServerName();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.serverName:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
public java.sql.Connection getQueryPlanConnection();
descriptor: ()Ljava/sql/Connection;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.dataSourceSupplier:Lio/ebeaninternal/server/transaction/DataSourceSupplier;
aconst_null
invokeinterface io.ebeaninternal.server.transaction.DataSourceSupplier.getConnection:(Ljava/lang/Object;)Ljava/sql/Connection;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
Exceptions:
throws java.sql.SQLException
public javax.sql.DataSource getDataSource();
descriptor: ()Ljavax/sql/DataSource;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.dataSourceSupplier:Lio/ebeaninternal/server/transaction/DataSourceSupplier;
invokeinterface io.ebeaninternal.server.transaction.DataSourceSupplier.getDataSource:()Ljavax/sql/DataSource;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
public javax.sql.DataSource getReadOnlyDataSource();
descriptor: ()Ljavax/sql/DataSource;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.dataSourceSupplier:Lio/ebeaninternal/server/transaction/DataSourceSupplier;
invokeinterface io.ebeaninternal.server.transaction.DataSourceSupplier.getReadOnlyDataSource:()Ljavax/sql/DataSource;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
io.ebean.config.dbplatform.DatabasePlatform$OnQueryOnly getOnQueryOnly();
descriptor: ()Lio/ebean/config/dbplatform/DatabasePlatform$OnQueryOnly;
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.onQueryOnly:Lio/ebean/config/dbplatform/DatabasePlatform$OnQueryOnly;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
public io.ebeaninternal.api.SpiTransaction wrapExternalConnection(java.sql.Connection);
descriptor: (Ljava/sql/Connection;)Lio/ebeaninternal/api/SpiTransaction;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
new java.lang.StringBuilder
dup
aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.externalTransPrefix:Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.Object.hashCode:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 1
invokevirtual io.ebeaninternal.server.transaction.TransactionManager.wrapExternalConnection:(Ljava/lang/String;Ljava/sql/Connection;)Lio/ebeaninternal/api/SpiTransaction;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
0 1 1 c Ljava/sql/Connection;
MethodParameters:
Name Flags
c
private io.ebeaninternal.api.SpiTransaction wrapExternalConnection(java.lang.String, java.sql.Connection);
descriptor: (Ljava/lang/String;Ljava/sql/Connection;)Lio/ebeaninternal/api/SpiTransaction;
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=4, args_size=3
start local 0 start local 1 start local 2 0: new io.ebeaninternal.server.transaction.ExternalJdbcTransaction
dup
aload 1
iconst_1
aload 2
aload 0
invokespecial io.ebeaninternal.server.transaction.ExternalJdbcTransaction.<init>:(Ljava/lang/String;ZLjava/sql/Connection;Lio/ebeaninternal/server/transaction/TransactionManager;)V
astore 3
start local 3 1: aload 3
aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.persistBatch:Z
invokevirtual io.ebeaninternal.server.transaction.ExternalJdbcTransaction.setBatchMode:(Z)V
2: aload 3
aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.persistBatchOnCascade:Z
invokevirtual io.ebeaninternal.server.transaction.ExternalJdbcTransaction.setBatchOnCascade:(Z)V
3: aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
0 4 1 id Ljava/lang/String;
0 4 2 c Ljava/sql/Connection;
1 4 3 t Lio/ebeaninternal/server/transaction/ExternalJdbcTransaction;
MethodParameters:
Name Flags
id
c
private io.ebeaninternal.api.SpiTransaction createTransaction(io.ebean.TxScope);
descriptor: (Lio/ebean/TxScope;)Lio/ebeaninternal/api/SpiTransaction;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual io.ebean.TxScope.isReadonly:()Z
ifeq 2
1: aload 0
aconst_null
invokevirtual io.ebeaninternal.server.transaction.TransactionManager.createReadOnlyTransaction:(Ljava/lang/Object;)Lio/ebeaninternal/api/SpiTransaction;
areturn
2: StackMap locals:
StackMap stack:
aload 0
iconst_1
aload 1
invokevirtual io.ebean.TxScope.getIsolationLevel:()I
invokevirtual io.ebeaninternal.server.transaction.TransactionManager.createTransaction:(ZI)Lio/ebeaninternal/api/SpiTransaction;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
0 3 1 txScope Lio/ebean/TxScope;
MethodParameters:
Name Flags
txScope
public io.ebeaninternal.api.SpiTransaction createTransaction(boolean, int);
descriptor: (ZI)Lio/ebeaninternal/api/SpiTransaction;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.transactionFactory:Lio/ebeaninternal/server/transaction/TransactionFactory;
iload 1
iload 2
invokevirtual io.ebeaninternal.server.transaction.TransactionFactory.createTransaction:(ZI)Lio/ebeaninternal/api/SpiTransaction;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
0 1 1 explicit Z
0 1 2 isolationLevel I
MethodParameters:
Name Flags
explicit
isolationLevel
public io.ebeaninternal.api.SpiTransaction createReadOnlyTransaction(java.lang.Object);
descriptor: (Ljava/lang/Object;)Lio/ebeaninternal/api/SpiTransaction;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.transactionFactory:Lio/ebeaninternal/server/transaction/TransactionFactory;
aload 1
invokevirtual io.ebeaninternal.server.transaction.TransactionFactory.createReadOnlyTransaction:(Ljava/lang/Object;)Lio/ebeaninternal/api/SpiTransaction;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
0 1 1 tenantId Ljava/lang/Object;
MethodParameters:
Name Flags
tenantId
io.ebeaninternal.api.SpiTransaction createTransaction(boolean, java.sql.Connection);
descriptor: (ZLjava/sql/Connection;)Lio/ebeaninternal/api/SpiTransaction;
flags: (0x0000)
Code:
stack=6, locals=3, args_size=3
start local 0 start local 1 start local 2 0: new io.ebeaninternal.server.transaction.JdbcTransaction
dup
aload 0
invokevirtual io.ebeaninternal.server.transaction.TransactionManager.nextTxnId:()Ljava/lang/String;
iload 1
aload 2
aload 0
invokespecial io.ebeaninternal.server.transaction.JdbcTransaction.<init>:(Ljava/lang/String;ZLjava/sql/Connection;Lio/ebeaninternal/server/transaction/TransactionManager;)V
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
0 1 1 explicit Z
0 1 2 c Ljava/sql/Connection;
MethodParameters:
Name Flags
explicit
c
java.lang.String nextTxnId();
descriptor: ()Ljava/lang/String;
flags: (0x0000)
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.txnDebug:Z
ifeq 1
new java.lang.StringBuilder
dup
aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.prefix:Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.counter:Ljava/util/concurrent/atomic/AtomicLong;
invokevirtual java.util.concurrent.atomic.AtomicLong.incrementAndGet:()J
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
goto 2
StackMap locals:
StackMap stack:
1: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.prefix:Ljava/lang/String;
StackMap locals:
StackMap stack: java.lang.String
2: areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
public void notifyOfRollback(io.ebeaninternal.api.SpiTransaction, java.lang.Throwable);
descriptor: (Lio/ebeaninternal/api/SpiTransaction;Ljava/lang/Throwable;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.txnLogger:Lio/ebeaninternal/api/SpiLogger;
invokeinterface io.ebeaninternal.api.SpiLogger.isDebug:()Z
ifeq 8
1: new java.lang.StringBuilder
dup
aload 1
invokeinterface io.ebeaninternal.api.SpiTransaction.getLogPrefix:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "Rollback"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 3
start local 3 2: aload 2
ifnull 4
3: new java.lang.StringBuilder
dup
aload 3
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " error: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
aload 2
invokevirtual io.ebeaninternal.server.transaction.TransactionManager.formatThrowable:(Ljava/lang/Throwable;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 3
4: StackMap locals: java.lang.String
StackMap stack:
aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.txnLogger:Lio/ebeaninternal/api/SpiLogger;
aload 3
invokeinterface io.ebeaninternal.api.SpiLogger.debug:(Ljava/lang/String;)V
end local 3 5: goto 8
StackMap locals: io.ebeaninternal.server.transaction.TransactionManager io.ebeaninternal.api.SpiTransaction java.lang.Throwable
StackMap stack: java.lang.Exception
6: astore 3
start local 3 7: getstatic io.ebeaninternal.server.transaction.TransactionManager.logger:Lorg/slf4j/Logger;
ldc "Error while notifying TransactionEventListener of rollback event"
aload 3
invokeinterface org.slf4j.Logger.error:(Ljava/lang/String;Ljava/lang/Throwable;)V
end local 3 8: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
0 9 1 transaction Lio/ebeaninternal/api/SpiTransaction;
0 9 2 cause Ljava/lang/Throwable;
2 5 3 msg Ljava/lang/String;
7 8 3 ex Ljava/lang/Exception;
Exception table:
from to target type
0 5 6 Class java.lang.Exception
MethodParameters:
Name Flags
transaction
cause
public void notifyOfQueryOnly(io.ebeaninternal.api.SpiTransaction);
descriptor: (Lio/ebeaninternal/api/SpiTransaction;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.txnLogger:Lio/ebeaninternal/api/SpiLogger;
invokeinterface io.ebeaninternal.api.SpiLogger.isTrace:()Z
ifeq 2
1: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.txnLogger:Lio/ebeaninternal/api/SpiLogger;
new java.lang.StringBuilder
dup
aload 1
invokeinterface io.ebeaninternal.api.SpiTransaction.getLogPrefix:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "Commit - query only"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokeinterface io.ebeaninternal.api.SpiLogger.trace:(Ljava/lang/String;)V
2: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
0 3 1 transaction Lio/ebeaninternal/api/SpiTransaction;
MethodParameters:
Name Flags
transaction
private java.lang.String formatThrowable(java.lang.Throwable);
descriptor: (Ljava/lang/Throwable;)Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 2
1: ldc ""
areturn
2: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 2
start local 2 3: aload 0
aload 1
aload 2
invokevirtual io.ebeaninternal.server.transaction.TransactionManager.formatThrowable:(Ljava/lang/Throwable;Ljava/lang/StringBuilder;)V
4: aload 2
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
0 5 1 e Ljava/lang/Throwable;
3 5 2 sb Ljava/lang/StringBuilder;
MethodParameters:
Name Flags
e
private void formatThrowable(java.lang.Throwable, java.lang.StringBuilder);
descriptor: (Ljava/lang/Throwable;Ljava/lang/StringBuilder;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 2
aload 1
invokevirtual java.lang.Throwable.toString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
1: aload 1
invokevirtual java.lang.Throwable.getStackTrace:()[Ljava/lang/StackTraceElement;
astore 3
start local 3 2: aload 3
arraylength
ifle 5
3: aload 2
ldc " stack0: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
4: aload 2
aload 3
iconst_0
aaload
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
pop
5: StackMap locals: java.lang.StackTraceElement[]
StackMap stack:
aload 1
invokevirtual java.lang.Throwable.getCause:()Ljava/lang/Throwable;
astore 4
start local 4 6: aload 4
ifnull 9
7: aload 2
ldc " cause: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
8: aload 0
aload 4
aload 2
invokevirtual io.ebeaninternal.server.transaction.TransactionManager.formatThrowable:(Ljava/lang/Throwable;Ljava/lang/StringBuilder;)V
9: StackMap locals: java.lang.Throwable
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
0 10 1 e Ljava/lang/Throwable;
0 10 2 sb Ljava/lang/StringBuilder;
2 10 3 stackTrace [Ljava/lang/StackTraceElement;
6 10 4 cause Ljava/lang/Throwable;
MethodParameters:
Name Flags
e
sb
public void notifyOfCommit(io.ebeaninternal.api.SpiTransaction);
descriptor: (Lio/ebeaninternal/api/SpiTransaction;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.txnLogger:Lio/ebeaninternal/api/SpiLogger;
invokeinterface io.ebeaninternal.api.SpiLogger.isDebug:()Z
ifeq 2
1: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.txnLogger:Lio/ebeaninternal/api/SpiLogger;
new java.lang.StringBuilder
dup
aload 1
invokeinterface io.ebeaninternal.api.SpiTransaction.getLogPrefix:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "Commit"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokeinterface io.ebeaninternal.api.SpiLogger.debug:(Ljava/lang/String;)V
2: StackMap locals:
StackMap stack:
new io.ebeaninternal.server.transaction.PostCommitProcessing
dup
aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.clusterManager:Lio/ebeaninternal/server/cluster/ClusterManager;
aload 0
aload 1
invokespecial io.ebeaninternal.server.transaction.PostCommitProcessing.<init>:(Lio/ebeaninternal/server/cluster/ClusterManager;Lio/ebeaninternal/server/transaction/TransactionManager;Lio/ebeaninternal/api/SpiTransaction;)V
astore 2
start local 2 3: aload 2
invokevirtual io.ebeaninternal.server.transaction.PostCommitProcessing.notifyLocalCache:()V
4: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.backgroundExecutor:Lio/ebean/BackgroundExecutor;
aload 2
invokevirtual io.ebeaninternal.server.transaction.PostCommitProcessing.backgroundNotify:()Ljava/lang/Runnable;
invokeinterface io.ebean.BackgroundExecutor.execute:(Ljava/lang/Runnable;)V
end local 2 5: goto 8
StackMap locals:
StackMap stack: java.lang.Exception
6: astore 2
start local 2 7: getstatic io.ebeaninternal.server.transaction.TransactionManager.logger:Lorg/slf4j/Logger;
ldc "NotifyOfCommit failed. L2 Cache potentially not notified."
aload 2
invokeinterface org.slf4j.Logger.error:(Ljava/lang/String;Ljava/lang/Throwable;)V
end local 2 8: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
0 9 1 transaction Lio/ebeaninternal/api/SpiTransaction;
3 5 2 postCommit Lio/ebeaninternal/server/transaction/PostCommitProcessing;
7 8 2 ex Ljava/lang/Exception;
Exception table:
from to target type
0 5 6 Class java.lang.Exception
MethodParameters:
Name Flags
transaction
public void externalModification(io.ebeaninternal.api.TransactionEventTable);
descriptor: (Lio/ebeaninternal/api/TransactionEventTable;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual io.ebeaninternal.server.transaction.TransactionManager.getActive:()Lio/ebeaninternal/api/SpiTransaction;
astore 2
start local 2 1: aload 2
ifnull 4
2: aload 2
invokeinterface io.ebeaninternal.api.SpiTransaction.getEvent:()Lio/ebeaninternal/api/TransactionEvent;
aload 1
invokevirtual io.ebeaninternal.api.TransactionEvent.add:(Lio/ebeaninternal/api/TransactionEventTable;)V
3: goto 5
4: StackMap locals: io.ebeaninternal.api.SpiTransaction
StackMap stack:
aload 0
aload 1
invokevirtual io.ebeaninternal.server.transaction.TransactionManager.externalModificationEvent:(Lio/ebeaninternal/api/TransactionEventTable;)V
5: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
0 6 1 tableEvent Lio/ebeaninternal/api/TransactionEventTable;
1 6 2 t Lio/ebeaninternal/api/SpiTransaction;
MethodParameters:
Name Flags
tableEvent
private void externalModificationEvent(io.ebeaninternal.api.TransactionEventTable);
descriptor: (Lio/ebeaninternal/api/TransactionEventTable;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=4, args_size=2
start local 0 start local 1 0: new io.ebeaninternal.api.TransactionEvent
dup
invokespecial io.ebeaninternal.api.TransactionEvent.<init>:()V
astore 2
start local 2 1: aload 2
aload 1
invokevirtual io.ebeaninternal.api.TransactionEvent.add:(Lio/ebeaninternal/api/TransactionEventTable;)V
2: new io.ebeaninternal.server.transaction.PostCommitProcessing
dup
aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.clusterManager:Lio/ebeaninternal/server/cluster/ClusterManager;
aload 0
aload 2
invokespecial io.ebeaninternal.server.transaction.PostCommitProcessing.<init>:(Lio/ebeaninternal/server/cluster/ClusterManager;Lio/ebeaninternal/server/transaction/TransactionManager;Lio/ebeaninternal/api/TransactionEvent;)V
astore 3
start local 3 3: aload 3
invokevirtual io.ebeaninternal.server.transaction.PostCommitProcessing.notifyLocalCache:()V
4: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.backgroundExecutor:Lio/ebean/BackgroundExecutor;
aload 3
invokevirtual io.ebeaninternal.server.transaction.PostCommitProcessing.backgroundNotify:()Ljava/lang/Runnable;
invokeinterface io.ebean.BackgroundExecutor.execute:(Ljava/lang/Runnable;)V
5: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
0 6 1 tableEvents Lio/ebeaninternal/api/TransactionEventTable;
1 6 2 event Lio/ebeaninternal/api/TransactionEvent;
3 6 3 postCommit Lio/ebeaninternal/server/transaction/PostCommitProcessing;
MethodParameters:
Name Flags
tableEvents
public void remoteTransactionEvent(io.ebeaninternal.server.transaction.RemoteTransactionEvent);
descriptor: (Lio/ebeaninternal/server/transaction/RemoteTransactionEvent;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=8, args_size=2
start local 0 start local 1 0: getstatic io.ebeaninternal.server.transaction.TransactionManager.clusterLogger:Lorg/slf4j/Logger;
invokeinterface org.slf4j.Logger.isDebugEnabled:()Z
ifeq 2
1: getstatic io.ebeaninternal.server.transaction.TransactionManager.clusterLogger:Lorg/slf4j/Logger;
ldc "processing {}"
aload 1
invokeinterface org.slf4j.Logger.debug:(Ljava/lang/String;Ljava/lang/Object;)V
2: StackMap locals:
StackMap stack:
new io.ebeaninternal.server.cache.CacheChangeSet
dup
invokespecial io.ebeaninternal.server.cache.CacheChangeSet.<init>:()V
astore 2
start local 2 3: aload 1
invokevirtual io.ebeaninternal.server.transaction.RemoteTransactionEvent.getRemoteTableMod:()Lio/ebeaninternal/server/transaction/RemoteTableMod;
astore 3
start local 3 4: aload 3
ifnull 6
5: aload 2
aload 3
invokevirtual io.ebeaninternal.server.transaction.RemoteTableMod.getTables:()Ljava/util/Set;
invokevirtual io.ebeaninternal.server.cache.CacheChangeSet.addInvalidate:(Ljava/util/Set;)V
6: StackMap locals: io.ebeaninternal.server.cache.CacheChangeSet io.ebeaninternal.server.transaction.RemoteTableMod
StackMap stack:
aload 1
invokevirtual io.ebeaninternal.server.transaction.RemoteTransactionEvent.getTableIUDList:()Ljava/util/List;
astore 4
start local 4 7: aload 4
ifnull 12
8: aload 4
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 6
goto 11
StackMap locals: io.ebeaninternal.server.transaction.TransactionManager io.ebeaninternal.server.transaction.RemoteTransactionEvent io.ebeaninternal.server.cache.CacheChangeSet io.ebeaninternal.server.transaction.RemoteTableMod java.util.List top java.util.Iterator
StackMap stack:
9: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast io.ebeaninternal.api.TransactionEventTable$TableIUD
astore 5
start local 5 10: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.beanDescriptorManager:Lio/ebeaninternal/server/deploy/BeanDescriptorManager;
aload 5
aload 2
invokevirtual io.ebeaninternal.server.deploy.BeanDescriptorManager.cacheNotify:(Lio/ebeaninternal/api/TransactionEventTable$TableIUD;Lio/ebeaninternal/server/cache/CacheChangeSet;)V
end local 5 11: StackMap locals:
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 9
12: StackMap locals: io.ebeaninternal.server.transaction.TransactionManager io.ebeaninternal.server.transaction.RemoteTransactionEvent io.ebeaninternal.server.cache.CacheChangeSet io.ebeaninternal.server.transaction.RemoteTableMod java.util.List
StackMap stack:
aload 1
invokevirtual io.ebeaninternal.server.transaction.RemoteTransactionEvent.getBeanPersistList:()Ljava/util/List;
astore 5
start local 5 13: aload 5
ifnull 18
14: aload 5
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 7
goto 17
StackMap locals: io.ebeaninternal.server.transaction.TransactionManager io.ebeaninternal.server.transaction.RemoteTransactionEvent io.ebeaninternal.server.cache.CacheChangeSet io.ebeaninternal.server.transaction.RemoteTableMod java.util.List java.util.List top java.util.Iterator
StackMap stack:
15: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast io.ebeaninternal.server.transaction.BeanPersistIds
astore 6
start local 6 16: aload 6
aload 2
invokevirtual io.ebeaninternal.server.transaction.BeanPersistIds.notifyCache:(Lio/ebeaninternal/server/cache/CacheChangeSet;)V
end local 6 17: StackMap locals:
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 15
18: StackMap locals: io.ebeaninternal.server.transaction.TransactionManager io.ebeaninternal.server.transaction.RemoteTransactionEvent io.ebeaninternal.server.cache.CacheChangeSet io.ebeaninternal.server.transaction.RemoteTableMod java.util.List java.util.List
StackMap stack:
aload 2
invokevirtual io.ebeaninternal.server.cache.CacheChangeSet.apply:()V
19: return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
0 20 1 remoteEvent Lio/ebeaninternal/server/transaction/RemoteTransactionEvent;
3 20 2 changeSet Lio/ebeaninternal/server/cache/CacheChangeSet;
4 20 3 tableMod Lio/ebeaninternal/server/transaction/RemoteTableMod;
7 20 4 tableIUDList Ljava/util/List<Lio/ebeaninternal/api/TransactionEventTable$TableIUD;>;
10 11 5 tableIUD Lio/ebeaninternal/api/TransactionEventTable$TableIUD;
13 20 5 beanPersistList Ljava/util/List<Lio/ebeaninternal/server/transaction/BeanPersistIds;>;
16 17 6 persistIds Lio/ebeaninternal/server/transaction/BeanPersistIds;
MethodParameters:
Name Flags
remoteEvent
void processDocStoreUpdates(io.ebeanservice.docstore.api.DocStoreUpdates, int);
descriptor: (Lio/ebeanservice/docstore/api/DocStoreUpdates;I)V
flags: (0x0000)
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.docStoreUpdateProcessor:Lio/ebeanservice/docstore/api/DocStoreUpdateProcessor;
aload 1
iload 2
invokeinterface io.ebeanservice.docstore.api.DocStoreUpdateProcessor.process:(Lio/ebeanservice/docstore/api/DocStoreUpdates;I)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
0 2 1 docStoreUpdates Lio/ebeanservice/docstore/api/DocStoreUpdates;
0 2 2 bulkBatchSize I
MethodParameters:
Name Flags
docStoreUpdates
bulkBatchSize
void sendChangeLog(io.ebean.event.changelog.ChangeSet);
descriptor: (Lio/ebean/event/changelog/ChangeSet;)V
flags: (0x0000)
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.changeLogPrepare:Lio/ebean/event/changelog/ChangeLogPrepare;
aload 1
invokeinterface io.ebean.event.changelog.ChangeLogPrepare.prepare:(Lio/ebean/event/changelog/ChangeSet;)Z
ifeq 5
1: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.changeLogAsync:Z
ifeq 4
2: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.backgroundExecutor:Lio/ebean/BackgroundExecutor;
aload 0
aload 1
invokedynamic run(Lio/ebeaninternal/server/transaction/TransactionManager;Lio/ebean/event/changelog/ChangeSet;)Ljava/lang/Runnable;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
()V
io/ebeaninternal/server/transaction/TransactionManager.lambda$0(Lio/ebean/event/changelog/ChangeSet;)V (7)
()V
invokeinterface io.ebean.BackgroundExecutor.execute:(Ljava/lang/Runnable;)V
3: goto 5
4: StackMap locals:
StackMap stack:
aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.changeLogListener:Lio/ebean/event/changelog/ChangeLogListener;
aload 1
invokeinterface io.ebean.event.changelog.ChangeLogListener.log:(Lio/ebean/event/changelog/ChangeSet;)V
5: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
0 6 1 changeSet Lio/ebean/event/changelog/ChangeSet;
MethodParameters:
Name Flags
changeSet final
void processTouchedTables(java.util.Set<java.lang.String>);
descriptor: (Ljava/util/Set;)V
flags: (0x0000)
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.tableModState:Lio/ebeaninternal/server/transaction/TableModState;
aload 1
invokevirtual io.ebeaninternal.server.transaction.TableModState.touch:(Ljava/util/Set;)V
1: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.viewInvalidation:Z
ifeq 3
2: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.beanDescriptorManager:Lio/ebeaninternal/server/deploy/BeanDescriptorManager;
aload 1
invokevirtual io.ebeaninternal.server.deploy.BeanDescriptorManager.processViewInvalidation:(Ljava/util/Set;)V
3: StackMap locals:
StackMap stack:
aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.cacheNotify:Lio/ebean/cache/ServerCacheNotify;
new io.ebean.cache.ServerCacheNotification
dup
aload 1
invokespecial io.ebean.cache.ServerCacheNotification.<init>:(Ljava/util/Set;)V
invokeinterface io.ebean.cache.ServerCacheNotify.notify:(Lio/ebean/cache/ServerCacheNotification;)V
4: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
0 5 1 touchedTables Ljava/util/Set<Ljava/lang/String;>;
Signature: (Ljava/util/Set<Ljava/lang/String;>;)V
MethodParameters:
Name Flags
touchedTables
void profileCollect(io.ebeaninternal.server.transaction.TransactionProfile);
descriptor: (Lio/ebeaninternal/server/transaction/TransactionProfile;)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.profileHandler:Lio/ebeaninternal/api/SpiProfileHandler;
aload 1
invokeinterface io.ebeaninternal.api.SpiProfileHandler.collectTransactionProfile:(Lio/ebeaninternal/server/transaction/TransactionProfile;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
0 2 1 transactionProfile Lio/ebeaninternal/server/transaction/TransactionProfile;
MethodParameters:
Name Flags
transactionProfile
void collectMetric(long);
descriptor: (J)V
flags: (0x0000)
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.txnMain:Lio/ebean/metric/TimedMetric;
lload 1
invokeinterface io.ebean.metric.TimedMetric.add:(J)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
0 2 1 exeMicros J
MethodParameters:
Name Flags
exeMicros
void collectMetricReadOnly(long);
descriptor: (J)V
flags: (0x0000)
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.txnReadOnly:Lio/ebean/metric/TimedMetric;
lload 1
invokeinterface io.ebean.metric.TimedMetric.add:(J)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
0 2 1 exeMicros J
MethodParameters:
Name Flags
exeMicros
void collectMetricNamed(long, java.lang.String);
descriptor: (JLjava/lang/String;)V
flags: (0x0000)
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 3 0: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.txnNamed:Lio/ebean/metric/TimedMetricMap;
aload 3
lload 1
invokeinterface io.ebean.metric.TimedMetricMap.add:(Ljava/lang/String;J)V
1: return
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
0 2 1 exeMicros J
0 2 3 label Ljava/lang/String;
MethodParameters:
Name Flags
exeMicros
label
public void visitMetrics(io.ebean.meta.MetricVisitor);
descriptor: (Lio/ebean/meta/MetricVisitor;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.txnMain:Lio/ebean/metric/TimedMetric;
aload 1
invokeinterface io.ebean.metric.TimedMetric.visit:(Lio/ebean/meta/MetricVisitor;)V
1: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.txnReadOnly:Lio/ebean/metric/TimedMetric;
aload 1
invokeinterface io.ebean.metric.TimedMetric.visit:(Lio/ebean/meta/MetricVisitor;)V
2: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.txnNamed:Lio/ebean/metric/TimedMetricMap;
aload 1
invokeinterface io.ebean.metric.TimedMetricMap.visit:(Lio/ebean/meta/MetricVisitor;)V
3: invokestatic io.ebeaninternal.server.profile.TimedProfileLocationRegistry.registered:()Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 3
goto 6
StackMap locals: io.ebeaninternal.server.transaction.TransactionManager io.ebean.meta.MetricVisitor top java.util.Iterator
StackMap stack:
4: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast io.ebeaninternal.server.profile.TimedProfileLocation
astore 2
start local 2 5: aload 2
aload 1
invokeinterface io.ebeaninternal.server.profile.TimedProfileLocation.visit:(Lio/ebean/meta/MetricVisitor;)V
end local 2 6: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 4
7: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
0 8 1 visitor Lio/ebean/meta/MetricVisitor;
5 6 2 timedLocation Lio/ebeaninternal/server/profile/TimedProfileLocation;
MethodParameters:
Name Flags
visitor
public void clearServerTransaction();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.scopeManager:Lio/ebeaninternal/server/transaction/TransactionScopeManager;
invokevirtual io.ebeaninternal.server.transaction.TransactionScopeManager.clear:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
public io.ebeaninternal.api.SpiTransaction beginServerTransaction();
descriptor: ()Lio/ebeaninternal/api/SpiTransaction;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
iconst_0
iconst_m1
invokevirtual io.ebeaninternal.server.transaction.TransactionManager.createTransaction:(ZI)Lio/ebeaninternal/api/SpiTransaction;
astore 1
start local 1 1: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.scopeManager:Lio/ebeaninternal/server/transaction/TransactionScopeManager;
aload 1
invokevirtual io.ebeaninternal.server.transaction.TransactionScopeManager.set:(Lio/ebeaninternal/api/SpiTransaction;)V
2: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
1 3 1 t Lio/ebeaninternal/api/SpiTransaction;
public void exitScopedTransaction(java.lang.Object, int);
descriptor: (Ljava/lang/Object;I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual io.ebeaninternal.server.transaction.TransactionManager.getInScope:()Lio/ebeaninternal/api/SpiTransaction;
astore 3
start local 3 1: aload 3
instanceof io.ebeaninternal.api.ScopedTransaction
ifeq 3
2: aload 3
checkcast io.ebeaninternal.api.ScopedTransaction
aload 1
iload 2
invokevirtual io.ebeaninternal.api.ScopedTransaction.complete:(Ljava/lang/Object;I)V
3: StackMap locals: io.ebeaninternal.api.SpiTransaction
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
0 4 1 returnOrThrowable Ljava/lang/Object;
0 4 2 opCode I
1 4 3 st Lio/ebeaninternal/api/SpiTransaction;
MethodParameters:
Name Flags
returnOrThrowable
opCode
public void externalRemoveTransaction();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.scopeManager:Lio/ebeaninternal/server/transaction/TransactionScopeManager;
invokevirtual io.ebeaninternal.server.transaction.TransactionScopeManager.clearExternal:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
public io.ebeaninternal.api.ScopedTransaction externalBeginTransaction(io.ebeaninternal.api.SpiTransaction, io.ebean.TxScope);
descriptor: (Lio/ebeaninternal/api/SpiTransaction;Lio/ebean/TxScope;)Lio/ebeaninternal/api/ScopedTransaction;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=4, args_size=3
start local 0 start local 1 start local 2 0: new io.ebeaninternal.api.ScopedTransaction
dup
aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.scopeManager:Lio/ebeaninternal/server/transaction/TransactionScopeManager;
invokespecial io.ebeaninternal.api.ScopedTransaction.<init>:(Lio/ebeaninternal/server/transaction/TransactionScopeManager;)V
astore 3
start local 3 1: aload 3
new io.ebeaninternal.api.ScopeTrans
dup
aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.rollbackOnChecked:Z
iconst_0
aload 1
aload 2
invokespecial io.ebeaninternal.api.ScopeTrans.<init>:(ZZLio/ebeaninternal/api/SpiTransaction;Lio/ebean/TxScope;)V
invokevirtual io.ebeaninternal.api.ScopedTransaction.push:(Lio/ebeaninternal/api/ScopeTrans;)V
2: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.scopeManager:Lio/ebeaninternal/server/transaction/TransactionScopeManager;
aload 3
invokevirtual io.ebeaninternal.server.transaction.TransactionScopeManager.replace:(Lio/ebeaninternal/api/SpiTransaction;)V
3: aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
0 4 1 transaction Lio/ebeaninternal/api/SpiTransaction;
0 4 2 txScope Lio/ebean/TxScope;
1 4 3 scopedTxn Lio/ebeaninternal/api/ScopedTransaction;
MethodParameters:
Name Flags
transaction
txScope
public io.ebeaninternal.api.ScopedTransaction beginScopedTransaction(io.ebean.TxScope);
descriptor: (Lio/ebean/TxScope;)Lio/ebeaninternal/api/ScopedTransaction;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=8, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual io.ebeaninternal.server.transaction.TransactionManager.initTxScope:(Lio/ebean/TxScope;)Lio/ebean/TxScope;
astore 1
1: aload 0
invokevirtual io.ebeaninternal.server.transaction.TransactionManager.getActiveScoped:()Lio/ebeaninternal/api/ScopedTransaction;
astore 2
start local 2 2: aload 2
ifnonnull 8
3: aload 0
invokevirtual io.ebeaninternal.server.transaction.TransactionManager.createScopedTransaction:()Lio/ebeaninternal/api/ScopedTransaction;
astore 2
4: iconst_1
istore 3
start local 3 5: aconst_null
astore 5
start local 5 6: iconst_0
istore 4
start local 4 7: goto 11
end local 5 end local 4 end local 3 8: StackMap locals: io.ebeaninternal.api.ScopedTransaction
StackMap stack:
iconst_0
istore 3
start local 3 9: aload 2
invokevirtual io.ebeaninternal.api.ScopedTransaction.current:()Lio/ebeaninternal/api/SpiTransaction;
astore 5
start local 5 10: aload 5
invokeinterface io.ebeaninternal.api.SpiTransaction.isNestedUseSavepoint:()Z
istore 4
start local 4 11: StackMap locals: int int io.ebeaninternal.api.SpiTransaction
StackMap stack:
aload 1
invokevirtual io.ebean.TxScope.getType:()Lio/ebean/annotation/TxType;
astore 6
start local 6 12: iload 4
ifeq 16
aload 6
getstatic io.ebean.annotation.TxType.REQUIRED:Lio/ebean/annotation/TxType;
if_acmpeq 13
aload 6
getstatic io.ebean.annotation.TxType.REQUIRES_NEW:Lio/ebean/annotation/TxType;
if_acmpne 16
13: StackMap locals: io.ebean.annotation.TxType
StackMap stack:
iconst_1
istore 7
start local 7 14: aload 0
aload 5
aload 0
invokevirtual io.ebeaninternal.server.transaction.TransactionManager.createSavepoint:(Lio/ebeaninternal/api/SpiTransaction;Lio/ebeaninternal/server/transaction/TransactionManager;)Lio/ebeaninternal/api/SpiTransaction;
astore 5
15: goto 23
end local 7 16: StackMap locals:
StackMap stack:
aload 0
aload 5
aload 6
invokevirtual io.ebeaninternal.server.transaction.TransactionManager.isCreateNewTransaction:(Lio/ebeaninternal/api/SpiTransaction;Lio/ebean/annotation/TxType;)Z
istore 7
start local 7 17: iload 7
ifeq 23
18: invokestatic io.ebeaninternal.server.transaction.TransactionManager.$SWITCH_TABLE$io$ebean$annotation$TxType:()[I
aload 6
invokevirtual io.ebean.annotation.TxType.ordinal:()I
iaload
tableswitch { // 3 - 6
3: 19
4: 21
5: 19
6: 19
default: 21
}
19: StackMap locals: int
StackMap stack:
getstatic io.ebeaninternal.server.transaction.NoTransaction.INSTANCE:Lio/ebeaninternal/server/transaction/NoTransaction;
astore 5
20: goto 23
21: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual io.ebeaninternal.server.transaction.TransactionManager.createTransaction:(Lio/ebean/TxScope;)Lio/ebeaninternal/api/SpiTransaction;
astore 5
22: aload 0
aload 5
aload 1
invokevirtual io.ebeaninternal.server.transaction.TransactionManager.initNewTransaction:(Lio/ebeaninternal/api/SpiTransaction;Lio/ebean/TxScope;)V
23: StackMap locals:
StackMap stack:
aload 2
new io.ebeaninternal.api.ScopeTrans
dup
aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.rollbackOnChecked:Z
iload 7
aload 5
aload 1
invokespecial io.ebeaninternal.api.ScopeTrans.<init>:(ZZLio/ebeaninternal/api/SpiTransaction;Lio/ebean/TxScope;)V
invokevirtual io.ebeaninternal.api.ScopedTransaction.push:(Lio/ebeaninternal/api/ScopeTrans;)V
24: iload 3
ifeq 26
25: aload 0
aload 2
invokevirtual io.ebeaninternal.server.transaction.TransactionManager.set:(Lio/ebeaninternal/api/SpiTransaction;)V
26: StackMap locals:
StackMap stack:
aload 2
areturn
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 27 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
0 27 1 txScope Lio/ebean/TxScope;
2 27 2 txnContainer Lio/ebeaninternal/api/ScopedTransaction;
5 8 3 setToScope Z
9 27 3 setToScope Z
7 8 4 nestedSavepoint Z
11 27 4 nestedSavepoint Z
6 8 5 transaction Lio/ebeaninternal/api/SpiTransaction;
10 27 5 transaction Lio/ebeaninternal/api/SpiTransaction;
12 27 6 type Lio/ebean/annotation/TxType;
14 16 7 createTransaction Z
17 27 7 createTransaction Z
MethodParameters:
Name Flags
txScope
private io.ebeaninternal.api.SpiTransaction createSavepoint(io.ebeaninternal.api.SpiTransaction, io.ebeaninternal.server.transaction.TransactionManager);
descriptor: (Lio/ebeaninternal/api/SpiTransaction;Lio/ebeaninternal/server/transaction/TransactionManager;)Lio/ebeaninternal/api/SpiTransaction;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: new io.ebeaninternal.server.transaction.SavepointTransaction
dup
aload 1
aload 2
invokespecial io.ebeaninternal.server.transaction.SavepointTransaction.<init>:(Lio/ebeaninternal/api/SpiTransaction;Lio/ebeaninternal/server/transaction/TransactionManager;)V
1: areturn
2: StackMap locals:
StackMap stack: java.sql.SQLException
astore 3
start local 3 3: new javax.persistence.PersistenceException
dup
ldc "Error creating nested Savepoint Transaction"
aload 3
invokespecial javax.persistence.PersistenceException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
0 4 1 transaction Lio/ebeaninternal/api/SpiTransaction;
0 4 2 manager Lio/ebeaninternal/server/transaction/TransactionManager;
3 4 3 e Ljava/sql/SQLException;
Exception table:
from to target type
0 1 2 Class java.sql.SQLException
MethodParameters:
Name Flags
transaction
manager
private void initNewTransaction(io.ebeaninternal.api.SpiTransaction, io.ebean.TxScope);
descriptor: (Lio/ebeaninternal/api/SpiTransaction;Lio/ebean/TxScope;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokevirtual io.ebean.TxScope.isSkipCache:()Z
ifeq 2
1: aload 1
iconst_1
invokeinterface io.ebeaninternal.api.SpiTransaction.setSkipCache:(Z)V
2: StackMap locals:
StackMap stack:
aload 2
invokevirtual io.ebean.TxScope.getLabel:()Ljava/lang/String;
astore 3
start local 3 3: aload 3
ifnull 5
4: aload 1
aload 3
invokeinterface io.ebeaninternal.api.SpiTransaction.setLabel:(Ljava/lang/String;)V
5: StackMap locals: java.lang.String
StackMap stack:
aload 2
invokevirtual io.ebean.TxScope.getProfileLocation:()Lio/ebean/ProfileLocation;
astore 4
start local 4 6: aload 4
ifnull 12
7: aload 4
invokeinterface io.ebean.ProfileLocation.obtain:()Z
ifeq 9
8: aload 0
aload 4
invokevirtual io.ebeaninternal.server.transaction.TransactionManager.registerProfileLocation:(Lio/ebean/ProfileLocation;)V
9: StackMap locals: io.ebean.ProfileLocation
StackMap stack:
aload 1
aload 4
invokeinterface io.ebeaninternal.api.SpiTransaction.setProfileLocation:(Lio/ebean/ProfileLocation;)V
10: aload 4
invokeinterface io.ebean.ProfileLocation.trace:()Z
ifeq 12
11: aload 1
aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.profileHandler:Lio/ebeaninternal/api/SpiProfileHandler;
aload 4
invokeinterface io.ebeaninternal.api.SpiProfileHandler.createProfileStream:(Lio/ebean/ProfileLocation;)Lio/ebeaninternal/server/transaction/ProfileStream;
invokeinterface io.ebeaninternal.api.SpiTransaction.setProfileStream:(Lio/ebeaninternal/server/transaction/ProfileStream;)V
12: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
0 13 1 transaction Lio/ebeaninternal/api/SpiTransaction;
0 13 2 txScope Lio/ebean/TxScope;
3 13 3 label Ljava/lang/String;
6 13 4 profileLocation Lio/ebean/ProfileLocation;
MethodParameters:
Name Flags
transaction
txScope
private void registerProfileLocation(io.ebean.ProfileLocation);
descriptor: (Lio/ebean/ProfileLocation;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.profileLocations:Ljava/util/concurrent/ConcurrentHashMap;
aload 1
invokeinterface io.ebean.ProfileLocation.fullLocation:()Ljava/lang/String;
aload 1
invokevirtual java.util.concurrent.ConcurrentHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
0 2 1 profileLocation Lio/ebean/ProfileLocation;
MethodParameters:
Name Flags
profileLocation
private io.ebean.TxScope initTxScope(io.ebean.TxScope);
descriptor: (Lio/ebean/TxScope;)Lio/ebean/TxScope;
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 2
1: new io.ebean.TxScope
dup
invokespecial io.ebean.TxScope.<init>:()V
areturn
2: StackMap locals:
StackMap stack:
aload 1
invokevirtual io.ebean.TxScope.checkBatchMode:()V
3: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
0 4 1 txScope Lio/ebean/TxScope;
MethodParameters:
Name Flags
txScope
private boolean isCreateNewTransaction(io.ebeaninternal.api.SpiTransaction, io.ebean.annotation.TxType);
descriptor: (Lio/ebeaninternal/api/SpiTransaction;Lio/ebean/annotation/TxType;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: invokestatic io.ebeaninternal.server.transaction.TransactionManager.$SWITCH_TABLE$io$ebean$annotation$TxType:()[I
aload 2
invokevirtual io.ebean.annotation.TxType.ordinal:()I
iaload
tableswitch { // 1 - 6
1: 1
2: 4
3: 1
4: 3
5: 10
6: 7
default: 11
}
1: StackMap locals:
StackMap stack:
aload 1
ifnonnull 2
iconst_1
ireturn
StackMap locals:
StackMap stack:
2: iconst_0
ireturn
3: StackMap locals:
StackMap stack:
iconst_1
ireturn
4: StackMap locals:
StackMap stack:
aload 1
ifnonnull 6
5: new javax.persistence.PersistenceException
dup
ldc "Transaction missing when MANDATORY"
invokespecial javax.persistence.PersistenceException.<init>:(Ljava/lang/String;)V
athrow
6: StackMap locals:
StackMap stack:
iconst_0
ireturn
7: StackMap locals:
StackMap stack:
aload 1
ifnull 9
8: new javax.persistence.PersistenceException
dup
ldc "Transaction exists for Transactional NEVER"
invokespecial javax.persistence.PersistenceException.<init>:(Ljava/lang/String;)V
athrow
9: StackMap locals:
StackMap stack:
iconst_1
ireturn
10: StackMap locals:
StackMap stack:
iconst_1
ireturn
11: StackMap locals:
StackMap stack:
new java.lang.RuntimeException
dup
ldc "Should never get here?"
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
0 12 1 current Lio/ebeaninternal/api/SpiTransaction;
0 12 2 type Lio/ebean/annotation/TxType;
MethodParameters:
Name Flags
current
type
public boolean isTxnDebug();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.txnDebug:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
public io.ebeaninternal.api.SpiLogManager log();
descriptor: ()Lio/ebeaninternal/api/SpiLogManager;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.logManager:Lio/ebeaninternal/api/SpiLogManager;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
public boolean isLogSql();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.logManager:Lio/ebeaninternal/api/SpiLogManager;
invokeinterface io.ebeaninternal.api.SpiLogManager.sql:()Lio/ebeaninternal/api/SpiLogger;
invokeinterface io.ebeaninternal.api.SpiLogger.isDebug:()Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
public boolean isLogSummary();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.logManager:Lio/ebeaninternal/api/SpiLogManager;
invokeinterface io.ebeaninternal.api.SpiLogManager.sum:()Lio/ebeaninternal/api/SpiLogger;
invokeinterface io.ebeaninternal.api.SpiLogger.isDebug:()Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
static int[] $SWITCH_TABLE$io$ebean$annotation$TxType();
descriptor: ()[I
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=0
0: getstatic io.ebeaninternal.server.transaction.TransactionManager.$SWITCH_TABLE$io$ebean$annotation$TxType:[I
dup
ifnull 1
areturn
StackMap locals:
StackMap stack: int[]
1: pop
invokestatic io.ebean.annotation.TxType.values:()[Lio/ebean/annotation/TxType;
arraylength
newarray 10
astore 0
2: aload 0
getstatic io.ebean.annotation.TxType.MANDATORY:Lio/ebean/annotation/TxType;
invokevirtual io.ebean.annotation.TxType.ordinal:()I
iconst_2
iastore
3: goto 5
StackMap locals: int[]
StackMap stack: java.lang.NoSuchFieldError
4: pop
StackMap locals:
StackMap stack:
5: aload 0
getstatic io.ebean.annotation.TxType.NEVER:Lio/ebean/annotation/TxType;
invokevirtual io.ebean.annotation.TxType.ordinal:()I
bipush 6
iastore
6: goto 8
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
7: pop
StackMap locals:
StackMap stack:
8: aload 0
getstatic io.ebean.annotation.TxType.NOT_SUPPORTED:Lio/ebean/annotation/TxType;
invokevirtual io.ebean.annotation.TxType.ordinal:()I
iconst_5
iastore
9: goto 11
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
10: pop
StackMap locals:
StackMap stack:
11: aload 0
getstatic io.ebean.annotation.TxType.REQUIRED:Lio/ebean/annotation/TxType;
invokevirtual io.ebean.annotation.TxType.ordinal:()I
iconst_1
iastore
12: goto 14
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
13: pop
StackMap locals:
StackMap stack:
14: aload 0
getstatic io.ebean.annotation.TxType.REQUIRES_NEW:Lio/ebean/annotation/TxType;
invokevirtual io.ebean.annotation.TxType.ordinal:()I
iconst_4
iastore
15: goto 17
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
16: pop
StackMap locals:
StackMap stack:
17: aload 0
getstatic io.ebean.annotation.TxType.SUPPORTS:Lio/ebean/annotation/TxType;
invokevirtual io.ebean.annotation.TxType.ordinal:()I
iconst_3
iastore
18: goto 20
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
19: pop
StackMap locals:
StackMap stack:
20: aload 0
dup
putstatic io.ebeaninternal.server.transaction.TransactionManager.$SWITCH_TABLE$io$ebean$annotation$TxType:[I
areturn
LocalVariableTable:
Start End Slot Name Signature
Exception table:
from to target type
2 3 4 Class java.lang.NoSuchFieldError
5 6 7 Class java.lang.NoSuchFieldError
8 9 10 Class java.lang.NoSuchFieldError
11 12 13 Class java.lang.NoSuchFieldError
14 15 16 Class java.lang.NoSuchFieldError
17 18 19 Class java.lang.NoSuchFieldError
private void lambda$0(io.ebean.event.changelog.ChangeSet);
descriptor: (Lio/ebean/event/changelog/ChangeSet;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
start local 0 0: aload 0
getfield io.ebeaninternal.server.transaction.TransactionManager.changeLogListener:Lio/ebean/event/changelog/ChangeLogListener;
aload 1
invokeinterface io.ebean.event.changelog.ChangeLogListener.log:(Lio/ebean/event/changelog/ChangeSet;)V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/ebeaninternal/server/transaction/TransactionManager;
}
SourceFile: "TransactionManager.java"
InnerClasses:
public final OnQueryOnly = io.ebean.config.dbplatform.DatabasePlatform$OnQueryOnly of io.ebean.config.dbplatform.DatabasePlatform
public TableIUD = io.ebeaninternal.api.TransactionEventTable$TableIUD of io.ebeaninternal.api.TransactionEventTable
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles