class org.hibernate.dialect.MySQLDialect$3 implements org.hibernate.exception.spi.SQLExceptionConversionDelegate
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.hibernate.dialect.MySQLDialect$3
super_class: java.lang.Object
{
final org.hibernate.dialect.MySQLDialect this$0;
descriptor: Lorg/hibernate/dialect/MySQLDialect;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
void <init>(org.hibernate.dialect.MySQLDialect);
descriptor: (Lorg/hibernate/dialect/MySQLDialect;)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 // org.hibernate.dialect.MySQLDialect$3 this
0: .line 526
aload 0 /* this */
aload 1
putfield org.hibernate.dialect.MySQLDialect$3.this$0:Lorg/hibernate/dialect/MySQLDialect;
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
return
end local 0 // org.hibernate.dialect.MySQLDialect$3 this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/hibernate/dialect/MySQLDialect$3;
MethodParameters:
Name Flags
this$0 final
public org.hibernate.JDBCException convert(java.sql.SQLException, java.lang.String, java.lang.String);
descriptor: (Ljava/sql/SQLException;Ljava/lang/String;Ljava/lang/String;)Lorg/hibernate/JDBCException;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=4
start local 0 // org.hibernate.dialect.MySQLDialect$3 this
start local 1 // java.sql.SQLException sqlException
start local 2 // java.lang.String message
start local 3 // java.lang.String sql
0: .line 529
aload 1 /* sqlException */
invokevirtual java.sql.SQLException.getErrorCode:()I
tableswitch { // 1205 - 1207
1205: 1
1206: 2
1207: 2
default: 3
}
1: .line 531
StackMap locals:
StackMap stack:
new org.hibernate.PessimisticLockException
dup
aload 2 /* message */
aload 1 /* sqlException */
aload 3 /* sql */
invokespecial org.hibernate.PessimisticLockException.<init>:(Ljava/lang/String;Ljava/sql/SQLException;Ljava/lang/String;)V
areturn
2: .line 535
StackMap locals:
StackMap stack:
new org.hibernate.exception.LockAcquisitionException
dup
aload 2 /* message */
aload 1 /* sqlException */
aload 3 /* sql */
invokespecial org.hibernate.exception.LockAcquisitionException.<init>:(Ljava/lang/String;Ljava/sql/SQLException;Ljava/lang/String;)V
areturn
3: .line 539
StackMap locals:
StackMap stack:
aload 1 /* sqlException */
invokestatic org.hibernate.internal.util.JdbcExceptionHelper.extractSqlState:(Ljava/sql/SQLException;)Ljava/lang/String;
astore 4 /* sqlState */
start local 4 // java.lang.String sqlState
4: .line 541
ldc "41000"
aload 4 /* sqlState */
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 6
5: .line 542
new org.hibernate.exception.LockTimeoutException
dup
aload 2 /* message */
aload 1 /* sqlException */
aload 3 /* sql */
invokespecial org.hibernate.exception.LockTimeoutException.<init>:(Ljava/lang/String;Ljava/sql/SQLException;Ljava/lang/String;)V
areturn
6: .line 545
StackMap locals: java.lang.String
StackMap stack:
ldc "40001"
aload 4 /* sqlState */
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 8
7: .line 546
new org.hibernate.exception.LockAcquisitionException
dup
aload 2 /* message */
aload 1 /* sqlException */
aload 3 /* sql */
invokespecial org.hibernate.exception.LockAcquisitionException.<init>:(Ljava/lang/String;Ljava/sql/SQLException;Ljava/lang/String;)V
areturn
8: .line 549
StackMap locals:
StackMap stack:
aconst_null
areturn
end local 4 // java.lang.String sqlState
end local 3 // java.lang.String sql
end local 2 // java.lang.String message
end local 1 // java.sql.SQLException sqlException
end local 0 // org.hibernate.dialect.MySQLDialect$3 this
LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/hibernate/dialect/MySQLDialect$3;
0 9 1 sqlException Ljava/sql/SQLException;
0 9 2 message Ljava/lang/String;
0 9 3 sql Ljava/lang/String;
4 9 4 sqlState Ljava/lang/String;
MethodParameters:
Name Flags
sqlException
message
sql
}
SourceFile: "MySQLDialect.java"
EnclosingMethod: org.hibernate.dialect.MySQLDialect.buildSQLExceptionConversionDelegate:()Lorg/hibernate/exception/spi/SQLExceptionConversionDelegate;
NestHost: org.hibernate.dialect.MySQLDialect
InnerClasses:
org.hibernate.dialect.MySQLDialect$3