public class org.springframework.jdbc.datasource.IsolationLevelDataSourceAdapter extends org.springframework.jdbc.datasource.UserCredentialsDataSourceAdapter
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.springframework.jdbc.datasource.IsolationLevelDataSourceAdapter
super_class: org.springframework.jdbc.datasource.UserCredentialsDataSourceAdapter
{
private static final org.springframework.core.Constants constants;
descriptor: Lorg/springframework/core/Constants;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private java.lang.Integer isolationLevel;
descriptor: Ljava/lang/Integer;
flags: (0x0002) ACC_PRIVATE
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=0, args_size=0
0: new org.springframework.core.Constants
dup
ldc Lorg/springframework/transaction/TransactionDefinition;
invokespecial org.springframework.core.Constants.<init>:(Ljava/lang/Class;)V
putstatic org.springframework.jdbc.datasource.IsolationLevelDataSourceAdapter.constants:Lorg/springframework/core/Constants;
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial org.springframework.jdbc.datasource.UserCredentialsDataSourceAdapter.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/jdbc/datasource/IsolationLevelDataSourceAdapter;
public final void setIsolationLevelName(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ldc "ISOLATION_"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifne 2
1: new java.lang.IllegalArgumentException
dup
ldc "Only isolation constants allowed"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
getstatic org.springframework.jdbc.datasource.IsolationLevelDataSourceAdapter.constants:Lorg/springframework/core/Constants;
aload 1
invokevirtual org.springframework.core.Constants.asNumber:(Ljava/lang/String;)Ljava/lang/Number;
invokevirtual java.lang.Number.intValue:()I
invokevirtual org.springframework.jdbc.datasource.IsolationLevelDataSourceAdapter.setIsolationLevel:(I)V
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/springframework/jdbc/datasource/IsolationLevelDataSourceAdapter;
0 4 1 constantName Ljava/lang/String;
Exceptions:
throws java.lang.IllegalArgumentException
MethodParameters:
Name Flags
constantName
public void setIsolationLevel(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: getstatic org.springframework.jdbc.datasource.IsolationLevelDataSourceAdapter.constants:Lorg/springframework/core/Constants;
ldc "ISOLATION_"
invokevirtual org.springframework.core.Constants.getValues:(Ljava/lang/String;)Ljava/util/Set;
iload 1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifne 2
1: new java.lang.IllegalArgumentException
dup
ldc "Only values of isolation constants allowed"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
iload 1
iconst_m1
if_icmpeq 3
iload 1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
goto 4
StackMap locals:
StackMap stack: org.springframework.jdbc.datasource.IsolationLevelDataSourceAdapter
3: aconst_null
StackMap locals: org.springframework.jdbc.datasource.IsolationLevelDataSourceAdapter int
StackMap stack: org.springframework.jdbc.datasource.IsolationLevelDataSourceAdapter java.lang.Integer
4: putfield org.springframework.jdbc.datasource.IsolationLevelDataSourceAdapter.isolationLevel:Ljava/lang/Integer;
5: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/springframework/jdbc/datasource/IsolationLevelDataSourceAdapter;
0 6 1 isolationLevel I
MethodParameters:
Name Flags
isolationLevel
protected java.lang.Integer getIsolationLevel();
descriptor: ()Ljava/lang/Integer;
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.springframework.jdbc.datasource.IsolationLevelDataSourceAdapter.isolationLevel:Ljava/lang/Integer;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/jdbc/datasource/IsolationLevelDataSourceAdapter;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
protected java.sql.Connection doGetConnection(java.lang.String, java.lang.String);
descriptor: (Ljava/lang/String;Ljava/lang/String;)Ljava/sql/Connection;
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
invokespecial org.springframework.jdbc.datasource.UserCredentialsDataSourceAdapter.doGetConnection:(Ljava/lang/String;Ljava/lang/String;)Ljava/sql/Connection;
astore 3
start local 3 1: aload 0
invokevirtual org.springframework.jdbc.datasource.IsolationLevelDataSourceAdapter.getCurrentReadOnlyFlag:()Ljava/lang/Boolean;
astore 4
start local 4 2: aload 4
ifnull 4
3: aload 3
aload 4
invokevirtual java.lang.Boolean.booleanValue:()Z
invokeinterface java.sql.Connection.setReadOnly:(Z)V
4: StackMap locals: java.sql.Connection java.lang.Boolean
StackMap stack:
aload 0
invokevirtual org.springframework.jdbc.datasource.IsolationLevelDataSourceAdapter.getCurrentIsolationLevel:()Ljava/lang/Integer;
astore 5
start local 5 5: aload 5
ifnull 7
6: aload 3
aload 5
invokevirtual java.lang.Integer.intValue:()I
invokeinterface java.sql.Connection.setTransactionIsolation:(I)V
7: StackMap locals: java.lang.Integer
StackMap stack:
aload 3
areturn
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 8 0 this Lorg/springframework/jdbc/datasource/IsolationLevelDataSourceAdapter;
0 8 1 username Ljava/lang/String;
0 8 2 password Ljava/lang/String;
1 8 3 con Ljava/sql/Connection;
2 8 4 readOnlyToUse Ljava/lang/Boolean;
5 8 5 isolationLevelToUse Ljava/lang/Integer;
Exceptions:
throws java.sql.SQLException
RuntimeVisibleParameterAnnotations:
0:
org.springframework.lang.Nullable()
1:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
username
password
protected java.lang.Integer getCurrentIsolationLevel();
descriptor: ()Ljava/lang/Integer;
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=2, args_size=1
start local 0 0: invokestatic org.springframework.transaction.support.TransactionSynchronizationManager.getCurrentTransactionIsolationLevel:()Ljava/lang/Integer;
astore 1
start local 1 1: aload 1
ifnonnull 3
2: aload 0
invokevirtual org.springframework.jdbc.datasource.IsolationLevelDataSourceAdapter.getIsolationLevel:()Ljava/lang/Integer;
astore 1
3: StackMap locals: java.lang.Integer
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/springframework/jdbc/datasource/IsolationLevelDataSourceAdapter;
1 4 1 isolationLevelToUse Ljava/lang/Integer;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
protected java.lang.Boolean getCurrentReadOnlyFlag();
descriptor: ()Ljava/lang/Boolean;
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=2, args_size=1
start local 0 0: invokestatic org.springframework.transaction.support.TransactionSynchronizationManager.isCurrentTransactionReadOnly:()Z
istore 1
start local 1 1: iload 1
ifeq 2
getstatic java.lang.Boolean.TRUE:Ljava/lang/Boolean;
goto 3
StackMap locals: int
StackMap stack:
2: aconst_null
StackMap locals:
StackMap stack: java.lang.Boolean
3: areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/springframework/jdbc/datasource/IsolationLevelDataSourceAdapter;
1 4 1 txReadOnly Z
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
}
SourceFile: "IsolationLevelDataSourceAdapter.java"