public class org.h2.schema.TriggerObject extends org.h2.schema.SchemaObjectBase
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.h2.schema.TriggerObject
  super_class: org.h2.schema.SchemaObjectBase
{
  public static final int DEFAULT_QUEUE_SIZE;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 1024

  private boolean insteadOf;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean before;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private int typeMask;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private boolean rowBased;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean onRollback;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private int queueSize;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private boolean noWait;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private org.h2.table.Table table;
    descriptor: Lorg/h2/table/Table;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String triggerClassName;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private java.lang.String triggerSource;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private org.h2.api.Trigger triggerCallback;
    descriptor: Lorg/h2/api/Trigger;
    flags: (0x0002) ACC_PRIVATE

  public void <init>(org.h2.schema.Schema, int, java.lang.String, org.h2.table.Table);
    descriptor: (Lorg/h2/schema/Schema;ILjava/lang/String;Lorg/h2/table/Table;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=5
        start local 0 // org.h2.schema.TriggerObject this
        start local 1 // org.h2.schema.Schema schema
        start local 2 // int id
        start local 3 // java.lang.String name
        start local 4 // org.h2.table.Table table
         0: .line 54
            aload 0 /* this */
            aload 1 /* schema */
            iload 2 /* id */
            aload 3 /* name */
            bipush 12
            invokespecial org.h2.schema.SchemaObjectBase.<init>:(Lorg/h2/schema/Schema;ILjava/lang/String;I)V
         1: .line 46
            aload 0 /* this */
            sipush 1024
            putfield org.h2.schema.TriggerObject.queueSize:I
         2: .line 55
            aload 0 /* this */
            aload 4 /* table */
            putfield org.h2.schema.TriggerObject.table:Lorg/h2/table/Table;
         3: .line 56
            aload 0 /* this */
            aload 4 /* table */
            invokevirtual org.h2.table.Table.isTemporary:()Z
            invokevirtual org.h2.schema.TriggerObject.setTemporary:(Z)V
         4: .line 57
            return
        end local 4 // org.h2.table.Table table
        end local 3 // java.lang.String name
        end local 2 // int id
        end local 1 // org.h2.schema.Schema schema
        end local 0 // org.h2.schema.TriggerObject this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Lorg/h2/schema/TriggerObject;
            0    5     1  schema  Lorg/h2/schema/Schema;
            0    5     2      id  I
            0    5     3    name  Ljava/lang/String;
            0    5     4   table  Lorg/h2/table/Table;
    MethodParameters:
        Name  Flags
      schema  
      id      
      name    
      table   

  public void setBefore(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.h2.schema.TriggerObject this
        start local 1 // boolean before
         0: .line 60
            aload 0 /* this */
            iload 1 /* before */
            putfield org.h2.schema.TriggerObject.before:Z
         1: .line 61
            return
        end local 1 // boolean before
        end local 0 // org.h2.schema.TriggerObject this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lorg/h2/schema/TriggerObject;
            0    2     1  before  Z
    MethodParameters:
        Name  Flags
      before  

  public void setInsteadOf(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.h2.schema.TriggerObject this
        start local 1 // boolean insteadOf
         0: .line 64
            aload 0 /* this */
            iload 1 /* insteadOf */
            putfield org.h2.schema.TriggerObject.insteadOf:Z
         1: .line 65
            return
        end local 1 // boolean insteadOf
        end local 0 // org.h2.schema.TriggerObject this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lorg/h2/schema/TriggerObject;
            0    2     1  insteadOf  Z
    MethodParameters:
           Name  Flags
      insteadOf  

  private synchronized void load();
    descriptor: ()V
    flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
    Code:
      stack=7, locals=4, args_size=1
        start local 0 // org.h2.schema.TriggerObject this
         0: .line 68
            aload 0 /* this */
            getfield org.h2.schema.TriggerObject.triggerCallback:Lorg/h2/api/Trigger;
            ifnull 2
         1: .line 69
            return
         2: .line 72
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.schema.TriggerObject.database:Lorg/h2/engine/Database;
            invokevirtual org.h2.engine.Database.getSystemSession:()Lorg/h2/engine/Session;
            astore 1 /* sysSession */
        start local 1 // org.h2.engine.Session sysSession
         3: .line 73
            aload 1 /* sysSession */
            iconst_0
            invokevirtual org.h2.engine.Session.createConnection:(Z)Lorg/h2/jdbc/JdbcConnection;
            astore 2 /* c2 */
        start local 2 // java.sql.Connection c2
         4: .line 75
            aload 0 /* this */
            getfield org.h2.schema.TriggerObject.triggerClassName:Ljava/lang/String;
            ifnull 7
         5: .line 76
            aload 0 /* this */
            getfield org.h2.schema.TriggerObject.triggerClassName:Ljava/lang/String;
            invokestatic org.h2.util.JdbcUtils.loadUserClass:(Ljava/lang/String;)Ljava/lang/Class;
            iconst_0
            anewarray java.lang.Class
            invokevirtual java.lang.Class.getDeclaredConstructor:([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
            iconst_0
            anewarray java.lang.Object
            invokevirtual java.lang.reflect.Constructor.newInstance:([Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* obj */
        start local 3 // java.lang.Object obj
         6: .line 77
            goto 8
        end local 3 // java.lang.Object obj
         7: .line 78
      StackMap locals: org.h2.engine.Session java.sql.Connection
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.h2.schema.TriggerObject.loadFromSource:()Lorg/h2/api/Trigger;
            astore 3 /* obj */
        start local 3 // java.lang.Object obj
         8: .line 80
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 0 /* this */
            aload 3 /* obj */
            checkcast org.h2.api.Trigger
            putfield org.h2.schema.TriggerObject.triggerCallback:Lorg/h2/api/Trigger;
         9: .line 81
            aload 0 /* this */
            getfield org.h2.schema.TriggerObject.triggerCallback:Lorg/h2/api/Trigger;
            aload 2 /* c2 */
            aload 0 /* this */
            invokevirtual org.h2.schema.TriggerObject.getSchema:()Lorg/h2/schema/Schema;
            invokevirtual org.h2.schema.Schema.getName:()Ljava/lang/String;
            aload 0 /* this */
            invokevirtual org.h2.schema.TriggerObject.getName:()Ljava/lang/String;
        10: .line 82
            aload 0 /* this */
            getfield org.h2.schema.TriggerObject.table:Lorg/h2/table/Table;
            invokevirtual org.h2.table.Table.getName:()Ljava/lang/String;
            aload 0 /* this */
            getfield org.h2.schema.TriggerObject.before:Z
            aload 0 /* this */
            getfield org.h2.schema.TriggerObject.typeMask:I
        11: .line 81
            invokeinterface org.h2.api.Trigger.init:(Ljava/sql/Connection;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ZI)V
        end local 3 // java.lang.Object obj
        end local 2 // java.sql.Connection c2
        end local 1 // org.h2.engine.Session sysSession
        12: .line 83
            goto 20
      StackMap locals: org.h2.schema.TriggerObject
      StackMap stack: java.lang.Throwable
        13: astore 1 /* e */
        start local 1 // java.lang.Throwable e
        14: .line 85
            aload 0 /* this */
            aconst_null
            putfield org.h2.schema.TriggerObject.triggerCallback:Lorg/h2/api/Trigger;
        15: .line 86
            ldc 90043
            aload 1 /* e */
            iconst_3
            anewarray java.lang.String
            dup
            iconst_0
            aload 0 /* this */
            invokevirtual org.h2.schema.TriggerObject.getName:()Ljava/lang/String;
            aastore
            dup
            iconst_1
        16: .line 87
            aload 0 /* this */
            getfield org.h2.schema.TriggerObject.triggerClassName:Ljava/lang/String;
            ifnull 17
            aload 0 /* this */
            getfield org.h2.schema.TriggerObject.triggerClassName:Ljava/lang/String;
            goto 18
      StackMap locals: org.h2.schema.TriggerObject java.lang.Throwable
      StackMap stack: int java.lang.Throwable java.lang.String[] java.lang.String[] int
        17: ldc "..source.."
      StackMap locals: org.h2.schema.TriggerObject java.lang.Throwable
      StackMap stack: int java.lang.Throwable java.lang.String[] java.lang.String[] int java.lang.String
        18: aastore
            dup
            iconst_2
            aload 1 /* e */
            invokevirtual java.lang.Throwable.toString:()Ljava/lang/String;
            aastore
        19: .line 86
            invokestatic org.h2.message.DbException.get:(ILjava/lang/Throwable;[Ljava/lang/String;)Lorg/h2/message/DbException;
            athrow
        end local 1 // java.lang.Throwable e
        20: .line 89
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.h2.schema.TriggerObject this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   21     0        this  Lorg/h2/schema/TriggerObject;
            3   12     1  sysSession  Lorg/h2/engine/Session;
            4   12     2          c2  Ljava/sql/Connection;
            6    7     3         obj  Ljava/lang/Object;
            8   12     3         obj  Ljava/lang/Object;
           14   20     1           e  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           2    12      13  Class java.lang.Throwable

  private org.h2.api.Trigger loadFromSource();
    descriptor: ()Lorg/h2/api/Trigger;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=5, args_size=1
        start local 0 // org.h2.schema.TriggerObject this
         0: .line 92
            aload 0 /* this */
            getfield org.h2.schema.TriggerObject.database:Lorg/h2/engine/Database;
            invokevirtual org.h2.engine.Database.getCompiler:()Lorg/h2/util/SourceCompiler;
            astore 1 /* compiler */
        start local 1 // org.h2.util.SourceCompiler compiler
         1: .line 93
            aload 1 /* compiler */
            dup
            astore 2
            monitorenter
         2: .line 94
            new java.lang.StringBuilder
            dup
            ldc "org.h2.dynamic.trigger."
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual org.h2.schema.TriggerObject.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 3 /* fullClassName */
        start local 3 // java.lang.String fullClassName
         3: .line 95
            aload 1 /* compiler */
            aload 3 /* fullClassName */
            aload 0 /* this */
            getfield org.h2.schema.TriggerObject.triggerSource:Ljava/lang/String;
            invokevirtual org.h2.util.SourceCompiler.setSource:(Ljava/lang/String;Ljava/lang/String;)V
         4: .line 97
            aload 0 /* this */
            getfield org.h2.schema.TriggerObject.triggerSource:Ljava/lang/String;
            invokestatic org.h2.util.SourceCompiler.isJavaxScriptSource:(Ljava/lang/String;)Z
            ifeq 8
         5: .line 98
            aload 1 /* compiler */
            aload 3 /* fullClassName */
            invokevirtual org.h2.util.SourceCompiler.getCompiledScript:(Ljava/lang/String;)Ljavax/script/CompiledScript;
            invokevirtual javax.script.CompiledScript.eval:()Ljava/lang/Object;
            checkcast org.h2.api.Trigger
         6: aload 2
            monitorexit
         7: areturn
         8: .line 100
      StackMap locals: org.h2.util.SourceCompiler org.h2.util.SourceCompiler java.lang.String
      StackMap stack:
            aload 1 /* compiler */
            aload 3 /* fullClassName */
            invokevirtual org.h2.util.SourceCompiler.getMethod:(Ljava/lang/String;)Ljava/lang/reflect/Method;
            astore 4 /* m */
        start local 4 // java.lang.reflect.Method m
         9: .line 101
            aload 4 /* m */
            invokevirtual java.lang.reflect.Method.getParameterTypes:()[Ljava/lang/Class;
            arraylength
            ifle 11
        10: .line 102
            new java.lang.IllegalStateException
            dup
            ldc "No parameters are allowed for a trigger"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
        11: .line 104
      StackMap locals: java.lang.reflect.Method
      StackMap stack:
            aload 4 /* m */
            aconst_null
            iconst_0
            anewarray java.lang.Object
            invokevirtual java.lang.reflect.Method.invoke:(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.h2.api.Trigger
        12: aload 2
            monitorexit
        13: areturn
        end local 4 // java.lang.reflect.Method m
        14: .line 106
      StackMap locals: org.h2.schema.TriggerObject org.h2.util.SourceCompiler org.h2.util.SourceCompiler java.lang.String
      StackMap stack: org.h2.message.DbException
            astore 4 /* e */
        start local 4 // org.h2.message.DbException e
        15: .line 107
            aload 4 /* e */
            athrow
        end local 4 // org.h2.message.DbException e
        16: .line 108
      StackMap locals:
      StackMap stack: java.lang.Exception
            astore 4 /* e */
        start local 4 // java.lang.Exception e
        17: .line 109
            ldc 42000
            aload 4 /* e */
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            aload 0 /* this */
            getfield org.h2.schema.TriggerObject.triggerSource:Ljava/lang/String;
            aastore
            invokestatic org.h2.message.DbException.get:(ILjava/lang/Throwable;[Ljava/lang/String;)Lorg/h2/message/DbException;
            athrow
        end local 4 // java.lang.Exception e
        end local 3 // java.lang.String fullClassName
        18: .line 93
      StackMap locals: org.h2.schema.TriggerObject org.h2.util.SourceCompiler org.h2.util.SourceCompiler
      StackMap stack: java.lang.Throwable
            aload 2
            monitorexit
        19: athrow
        end local 1 // org.h2.util.SourceCompiler compiler
        end local 0 // org.h2.schema.TriggerObject this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   20     0           this  Lorg/h2/schema/TriggerObject;
            1   20     1       compiler  Lorg/h2/util/SourceCompiler;
            3   18     3  fullClassName  Ljava/lang/String;
            9   14     4              m  Ljava/lang/reflect/Method;
           15   16     4              e  Lorg/h2/message/DbException;
           17   18     4              e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           4     6      14  Class org.h2.message.DbException
           8    12      14  Class org.h2.message.DbException
           4     6      16  Class java.lang.Exception
           8    12      16  Class java.lang.Exception
           2     7      18  any
           8    13      18  any
          14    19      18  any

  public void setTriggerClassName(java.lang.String, boolean);
    descriptor: (Ljava/lang/String;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.h2.schema.TriggerObject this
        start local 1 // java.lang.String triggerClassName
        start local 2 // boolean force
         0: .line 122
            aload 0 /* this */
            aload 1 /* triggerClassName */
            aconst_null
            iload 2 /* force */
            invokevirtual org.h2.schema.TriggerObject.setTriggerAction:(Ljava/lang/String;Ljava/lang/String;Z)V
         1: .line 123
            return
        end local 2 // boolean force
        end local 1 // java.lang.String triggerClassName
        end local 0 // org.h2.schema.TriggerObject this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    2     0              this  Lorg/h2/schema/TriggerObject;
            0    2     1  triggerClassName  Ljava/lang/String;
            0    2     2             force  Z
    MethodParameters:
                  Name  Flags
      triggerClassName  
      force             

  public void setTriggerSource(java.lang.String, boolean);
    descriptor: (Ljava/lang/String;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.h2.schema.TriggerObject this
        start local 1 // java.lang.String source
        start local 2 // boolean force
         0: .line 133
            aload 0 /* this */
            aconst_null
            aload 1 /* source */
            iload 2 /* force */
            invokevirtual org.h2.schema.TriggerObject.setTriggerAction:(Ljava/lang/String;Ljava/lang/String;Z)V
         1: .line 134
            return
        end local 2 // boolean force
        end local 1 // java.lang.String source
        end local 0 // org.h2.schema.TriggerObject this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lorg/h2/schema/TriggerObject;
            0    2     1  source  Ljava/lang/String;
            0    2     2   force  Z
    MethodParameters:
        Name  Flags
      source  
      force   

  private void setTriggerAction(java.lang.String, java.lang.String, boolean);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Z)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=5, args_size=4
        start local 0 // org.h2.schema.TriggerObject this
        start local 1 // java.lang.String triggerClassName
        start local 2 // java.lang.String source
        start local 3 // boolean force
         0: .line 137
            aload 0 /* this */
            aload 1 /* triggerClassName */
            putfield org.h2.schema.TriggerObject.triggerClassName:Ljava/lang/String;
         1: .line 138
            aload 0 /* this */
            aload 2 /* source */
            putfield org.h2.schema.TriggerObject.triggerSource:Ljava/lang/String;
         2: .line 140
            aload 0 /* this */
            invokevirtual org.h2.schema.TriggerObject.load:()V
         3: .line 141
            goto 7
      StackMap locals:
      StackMap stack: org.h2.message.DbException
         4: astore 4 /* e */
        start local 4 // org.h2.message.DbException e
         5: .line 142
            iload 3 /* force */
            ifne 7
         6: .line 143
            aload 4 /* e */
            athrow
        end local 4 // org.h2.message.DbException e
         7: .line 146
      StackMap locals:
      StackMap stack:
            return
        end local 3 // boolean force
        end local 2 // java.lang.String source
        end local 1 // java.lang.String triggerClassName
        end local 0 // org.h2.schema.TriggerObject this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    8     0              this  Lorg/h2/schema/TriggerObject;
            0    8     1  triggerClassName  Ljava/lang/String;
            0    8     2            source  Ljava/lang/String;
            0    8     3             force  Z
            5    7     4                 e  Lorg/h2/message/DbException;
      Exception table:
        from    to  target  type
           2     3       4  Class org.h2.message.DbException
    MethodParameters:
                  Name  Flags
      triggerClassName  
      source            
      force             

  public void fire(org.h2.engine.Session, int, boolean);
    descriptor: (Lorg/h2/engine/Session;IZ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=9, args_size=4
        start local 0 // org.h2.schema.TriggerObject this
        start local 1 // org.h2.engine.Session session
        start local 2 // int type
        start local 3 // boolean beforeAction
         0: .line 158
            aload 0 /* this */
            getfield org.h2.schema.TriggerObject.rowBased:Z
            ifne 1
            aload 0 /* this */
            getfield org.h2.schema.TriggerObject.before:Z
            iload 3 /* beforeAction */
            if_icmpne 1
            aload 0 /* this */
            getfield org.h2.schema.TriggerObject.typeMask:I
            iload 2 /* type */
            iand
            ifne 2
         1: .line 159
      StackMap locals:
      StackMap stack:
            return
         2: .line 161
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.h2.schema.TriggerObject.load:()V
         3: .line 162
            aload 1 /* session */
            iconst_0
            invokevirtual org.h2.engine.Session.createConnection:(Z)Lorg/h2/jdbc/JdbcConnection;
            astore 4 /* c2 */
        start local 4 // java.sql.Connection c2
         4: .line 163
            iconst_0
            istore 5 /* old */
        start local 5 // boolean old
         5: .line 164
            iload 2 /* type */
            bipush 8
            if_icmpeq 7
         6: .line 165
            aload 1 /* session */
            iconst_1
            invokevirtual org.h2.engine.Session.setCommitOrRollbackDisabled:(Z)Z
            istore 5 /* old */
         7: .line 167
      StackMap locals: java.sql.Connection int
      StackMap stack:
            aload 1 /* session */
            invokevirtual org.h2.engine.Session.getLastScopeIdentity:()Lorg/h2/value/Value;
            astore 6 /* identity */
        start local 6 // org.h2.value.Value identity
         8: .line 169
            aload 0 /* this */
            getfield org.h2.schema.TriggerObject.triggerCallback:Lorg/h2/api/Trigger;
            aload 4 /* c2 */
            aconst_null
            aconst_null
            invokeinterface org.h2.api.Trigger.fire:(Ljava/sql/Connection;[Ljava/lang/Object;[Ljava/lang/Object;)V
         9: .line 170
            goto 25
      StackMap locals: org.h2.schema.TriggerObject org.h2.engine.Session int int java.sql.Connection int org.h2.value.Value
      StackMap stack: java.lang.Throwable
        10: astore 7 /* e */
        start local 7 // java.lang.Throwable e
        11: .line 171
            ldc 90044
            aload 7 /* e */
            iconst_3
            anewarray java.lang.String
            dup
            iconst_0
            aload 0 /* this */
            invokevirtual org.h2.schema.TriggerObject.getName:()Ljava/lang/String;
            aastore
            dup
            iconst_1
        12: .line 172
            aload 0 /* this */
            getfield org.h2.schema.TriggerObject.triggerClassName:Ljava/lang/String;
            ifnull 13
            aload 0 /* this */
            getfield org.h2.schema.TriggerObject.triggerClassName:Ljava/lang/String;
            goto 14
      StackMap locals: org.h2.schema.TriggerObject org.h2.engine.Session int int java.sql.Connection int org.h2.value.Value java.lang.Throwable
      StackMap stack: int java.lang.Throwable java.lang.String[] java.lang.String[] int
        13: ldc "..source.."
      StackMap locals: org.h2.schema.TriggerObject org.h2.engine.Session int int java.sql.Connection int org.h2.value.Value java.lang.Throwable
      StackMap stack: int java.lang.Throwable java.lang.String[] java.lang.String[] int java.lang.String
        14: aastore
            dup
            iconst_2
            aload 7 /* e */
            invokevirtual java.lang.Throwable.toString:()Ljava/lang/String;
            aastore
        15: .line 171
            invokestatic org.h2.message.DbException.get:(ILjava/lang/Throwable;[Ljava/lang/String;)Lorg/h2/message/DbException;
            athrow
        end local 7 // java.lang.Throwable e
        16: .line 173
      StackMap locals: org.h2.schema.TriggerObject org.h2.engine.Session int int java.sql.Connection int org.h2.value.Value
      StackMap stack: java.lang.Throwable
            astore 8
        17: .line 174
            aload 1 /* session */
            invokevirtual org.h2.engine.Session.getLastTriggerIdentity:()Lorg/h2/value/Value;
            ifnull 21
        18: .line 175
            aload 1 /* session */
            aload 1 /* session */
            invokevirtual org.h2.engine.Session.getLastTriggerIdentity:()Lorg/h2/value/Value;
            invokevirtual org.h2.engine.Session.setLastScopeIdentity:(Lorg/h2/value/Value;)V
        19: .line 176
            aload 1 /* session */
            aconst_null
            invokevirtual org.h2.engine.Session.setLastTriggerIdentity:(Lorg/h2/value/Value;)V
        20: .line 177
            goto 22
        21: .line 178
      StackMap locals: org.h2.schema.TriggerObject org.h2.engine.Session int int java.sql.Connection int org.h2.value.Value top java.lang.Throwable
      StackMap stack:
            aload 1 /* session */
            aload 6 /* identity */
            invokevirtual org.h2.engine.Session.setLastScopeIdentity:(Lorg/h2/value/Value;)V
        22: .line 180
      StackMap locals:
      StackMap stack:
            iload 2 /* type */
            bipush 8
            if_icmpeq 24
        23: .line 181
            aload 1 /* session */
            iload 5 /* old */
            invokevirtual org.h2.engine.Session.setCommitOrRollbackDisabled:(Z)Z
            pop
        24: .line 183
      StackMap locals:
      StackMap stack:
            aload 8
            athrow
        25: .line 174
      StackMap locals: org.h2.schema.TriggerObject org.h2.engine.Session int int java.sql.Connection int org.h2.value.Value
      StackMap stack:
            aload 1 /* session */
            invokevirtual org.h2.engine.Session.getLastTriggerIdentity:()Lorg/h2/value/Value;
            ifnull 29
        26: .line 175
            aload 1 /* session */
            aload 1 /* session */
            invokevirtual org.h2.engine.Session.getLastTriggerIdentity:()Lorg/h2/value/Value;
            invokevirtual org.h2.engine.Session.setLastScopeIdentity:(Lorg/h2/value/Value;)V
        27: .line 176
            aload 1 /* session */
            aconst_null
            invokevirtual org.h2.engine.Session.setLastTriggerIdentity:(Lorg/h2/value/Value;)V
        28: .line 177
            goto 30
        29: .line 178
      StackMap locals:
      StackMap stack:
            aload 1 /* session */
            aload 6 /* identity */
            invokevirtual org.h2.engine.Session.setLastScopeIdentity:(Lorg/h2/value/Value;)V
        30: .line 180
      StackMap locals:
      StackMap stack:
            iload 2 /* type */
            bipush 8
            if_icmpeq 32
        31: .line 181
            aload 1 /* session */
            iload 5 /* old */
            invokevirtual org.h2.engine.Session.setCommitOrRollbackDisabled:(Z)Z
            pop
        32: .line 184
      StackMap locals:
      StackMap stack:
            return
        end local 6 // org.h2.value.Value identity
        end local 5 // boolean old
        end local 4 // java.sql.Connection c2
        end local 3 // boolean beforeAction
        end local 2 // int type
        end local 1 // org.h2.engine.Session session
        end local 0 // org.h2.schema.TriggerObject this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   33     0          this  Lorg/h2/schema/TriggerObject;
            0   33     1       session  Lorg/h2/engine/Session;
            0   33     2          type  I
            0   33     3  beforeAction  Z
            4   33     4            c2  Ljava/sql/Connection;
            5   33     5           old  Z
            8   33     6      identity  Lorg/h2/value/Value;
           11   16     7             e  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           8     9      10  Class java.lang.Throwable
           8    16      16  any
    MethodParameters:
              Name  Flags
      session       
      type          
      beforeAction  

  private static java.lang.Object[] convertToObjectList(org.h2.result.Row);
    descriptor: (Lorg/h2/result/Row;)[Ljava/lang/Object;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=1
        start local 0 // org.h2.result.Row row
         0: .line 187
            aload 0 /* row */
            ifnonnull 2
         1: .line 188
            aconst_null
            areturn
         2: .line 190
      StackMap locals:
      StackMap stack:
            aload 0 /* row */
            invokeinterface org.h2.result.Row.getColumnCount:()I
            istore 1 /* len */
        start local 1 // int len
         3: .line 191
            iload 1 /* len */
            anewarray java.lang.Object
            astore 2 /* list */
        start local 2 // java.lang.Object[] list
         4: .line 192
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         5: goto 8
         6: .line 193
      StackMap locals: int java.lang.Object[] int
      StackMap stack:
            aload 2 /* list */
            iload 3 /* i */
            aload 0 /* row */
            iload 3 /* i */
            invokeinterface org.h2.result.Row.getValue:(I)Lorg/h2/value/Value;
            invokevirtual org.h2.value.Value.getObject:()Ljava/lang/Object;
            aastore
         7: .line 192
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 3 /* i */
            iload 1 /* len */
            if_icmplt 6
        end local 3 // int i
         9: .line 195
            aload 2 /* list */
            areturn
        end local 2 // java.lang.Object[] list
        end local 1 // int len
        end local 0 // org.h2.result.Row row
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0   row  Lorg/h2/result/Row;
            3   10     1   len  I
            4   10     2  list  [Ljava/lang/Object;
            5    9     3     i  I
    MethodParameters:
      Name  Flags
      row   

  public boolean fireRow(org.h2.engine.Session, org.h2.table.Table, org.h2.result.Row, org.h2.result.Row, boolean, boolean);
    descriptor: (Lorg/h2/engine/Session;Lorg/h2/table/Table;Lorg/h2/result/Row;Lorg/h2/result/Row;ZZ)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=19, args_size=7
        start local 0 // org.h2.schema.TriggerObject this
        start local 1 // org.h2.engine.Session session
        start local 2 // org.h2.table.Table table
        start local 3 // org.h2.result.Row oldRow
        start local 4 // org.h2.result.Row newRow
        start local 5 // boolean beforeAction
        start local 6 // boolean rollback
         0: .line 215
            aload 0 /* this */
            getfield org.h2.schema.TriggerObject.rowBased:Z
            ifeq 1
            aload 0 /* this */
            getfield org.h2.schema.TriggerObject.before:Z
            iload 5 /* beforeAction */
            if_icmpeq 2
         1: .line 216
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         2: .line 218
      StackMap locals:
      StackMap stack:
            iload 6 /* rollback */
            ifeq 4
            aload 0 /* this */
            getfield org.h2.schema.TriggerObject.onRollback:Z
            ifne 4
         3: .line 219
            iconst_0
            ireturn
         4: .line 221
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.h2.schema.TriggerObject.load:()V
         5: .line 224
            iconst_0
            istore 9 /* fire */
        start local 9 // boolean fire
         6: .line 225
            aload 0 /* this */
            getfield org.h2.schema.TriggerObject.typeMask:I
            iconst_1
            iand
            ifeq 9
         7: .line 226
            aload 3 /* oldRow */
            ifnonnull 9
            aload 4 /* newRow */
            ifnull 9
         8: .line 227
            iconst_1
            istore 9 /* fire */
         9: .line 230
      StackMap locals: org.h2.schema.TriggerObject org.h2.engine.Session org.h2.table.Table org.h2.result.Row org.h2.result.Row int int top top int
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.schema.TriggerObject.typeMask:I
            iconst_2
            iand
            ifeq 12
        10: .line 231
            aload 3 /* oldRow */
            ifnull 12
            aload 4 /* newRow */
            ifnull 12
        11: .line 232
            iconst_1
            istore 9 /* fire */
        12: .line 235
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.schema.TriggerObject.typeMask:I
            iconst_4
            iand
            ifeq 15
        13: .line 236
            aload 3 /* oldRow */
            ifnull 15
            aload 4 /* newRow */
            ifnonnull 15
        14: .line 237
            iconst_1
            istore 9 /* fire */
        15: .line 240
      StackMap locals:
      StackMap stack:
            iload 9 /* fire */
            ifne 17
        16: .line 241
            iconst_0
            ireturn
        17: .line 243
      StackMap locals:
      StackMap stack:
            aload 3 /* oldRow */
            invokestatic org.h2.schema.TriggerObject.convertToObjectList:(Lorg/h2/result/Row;)[Ljava/lang/Object;
            astore 7 /* oldList */
        start local 7 // java.lang.Object[] oldList
        18: .line 244
            aload 4 /* newRow */
            invokestatic org.h2.schema.TriggerObject.convertToObjectList:(Lorg/h2/result/Row;)[Ljava/lang/Object;
            astore 8 /* newList */
        start local 8 // java.lang.Object[] newList
        19: .line 246
            aload 0 /* this */
            getfield org.h2.schema.TriggerObject.before:Z
            ifeq 22
            aload 8 /* newList */
            ifnull 22
        20: .line 247
            aload 8 /* newList */
            aload 8 /* newList */
            arraylength
            invokestatic java.util.Arrays.copyOf:([Ljava/lang/Object;I)[Ljava/lang/Object;
            astore 10 /* newListBackup */
        start local 10 // java.lang.Object[] newListBackup
        21: .line 248
            goto 23
        end local 10 // java.lang.Object[] newListBackup
        22: .line 249
      StackMap locals: org.h2.schema.TriggerObject org.h2.engine.Session org.h2.table.Table org.h2.result.Row org.h2.result.Row int int java.lang.Object[] java.lang.Object[] int
      StackMap stack:
            aconst_null
            astore 10 /* newListBackup */
        start local 10 // java.lang.Object[] newListBackup
        23: .line 251
      StackMap locals: java.lang.Object[]
      StackMap stack:
            aload 1 /* session */
            iconst_0
            invokevirtual org.h2.engine.Session.createConnection:(Z)Lorg/h2/jdbc/JdbcConnection;
            astore 11 /* c2 */
        start local 11 // java.sql.Connection c2
        24: .line 252
            aload 1 /* session */
            invokevirtual org.h2.engine.Session.getAutoCommit:()Z
            istore 12 /* old */
        start local 12 // boolean old
        25: .line 253
            aload 1 /* session */
            iconst_1
            invokevirtual org.h2.engine.Session.setCommitOrRollbackDisabled:(Z)Z
            istore 13 /* oldDisabled */
        start local 13 // boolean oldDisabled
        26: .line 254
            aload 1 /* session */
            invokevirtual org.h2.engine.Session.getLastScopeIdentity:()Lorg/h2/value/Value;
            astore 14 /* identity */
        start local 14 // org.h2.value.Value identity
        27: .line 256
            aload 1 /* session */
            iconst_0
            invokevirtual org.h2.engine.Session.setAutoCommit:(Z)V
        28: .line 257
            aload 0 /* this */
            getfield org.h2.schema.TriggerObject.triggerCallback:Lorg/h2/api/Trigger;
            aload 11 /* c2 */
            aload 7 /* oldList */
            aload 8 /* newList */
            invokeinterface org.h2.api.Trigger.fire:(Ljava/sql/Connection;[Ljava/lang/Object;[Ljava/lang/Object;)V
        29: .line 258
            aload 10 /* newListBackup */
            ifnull 59
        30: .line 259
            iconst_0
            istore 15 /* i */
        start local 15 // int i
        31: goto 38
        32: .line 260
      StackMap locals: org.h2.schema.TriggerObject org.h2.engine.Session org.h2.table.Table org.h2.result.Row org.h2.result.Row int int java.lang.Object[] java.lang.Object[] int java.lang.Object[] java.sql.Connection int int org.h2.value.Value int
      StackMap stack:
            aload 8 /* newList */
            iload 15 /* i */
            aaload
            astore 16 /* o */
        start local 16 // java.lang.Object o
        33: .line 261
            aload 16 /* o */
            aload 10 /* newListBackup */
            iload 15 /* i */
            aaload
            if_acmpeq 37
        34: .line 262
            aload 1 /* session */
            aload 16 /* o */
            iconst_m1
            invokestatic org.h2.value.DataType.convertToValue:(Lorg/h2/engine/SessionInterface;Ljava/lang/Object;I)Lorg/h2/value/Value;
            astore 17 /* v */
        start local 17 // org.h2.value.Value v
        35: .line 263
            aload 1 /* session */
            invokevirtual org.h2.engine.Session.getGeneratedKeys:()Lorg/h2/engine/GeneratedKeys;
            aload 2 /* table */
            iload 15 /* i */
            invokevirtual org.h2.table.Table.getColumn:(I)Lorg/h2/table/Column;
            invokevirtual org.h2.engine.GeneratedKeys.add:(Lorg/h2/table/Column;)V
        36: .line 264
            aload 4 /* newRow */
            iload 15 /* i */
            aload 17 /* v */
            invokeinterface org.h2.result.Row.setValue:(ILorg/h2/value/Value;)V
        end local 17 // org.h2.value.Value v
        end local 16 // java.lang.Object o
        37: .line 259
      StackMap locals:
      StackMap stack:
            iinc 15 /* i */ 1
      StackMap locals:
      StackMap stack:
        38: iload 15 /* i */
            aload 8 /* newList */
            arraylength
            if_icmplt 32
        end local 15 // int i
        39: .line 268
            goto 59
      StackMap locals: org.h2.schema.TriggerObject org.h2.engine.Session org.h2.table.Table org.h2.result.Row org.h2.result.Row int int java.lang.Object[] java.lang.Object[] int java.lang.Object[] java.sql.Connection int int org.h2.value.Value
      StackMap stack: java.lang.Exception
        40: astore 15 /* e */
        start local 15 // java.lang.Exception e
        41: .line 269
            aload 0 /* this */
            getfield org.h2.schema.TriggerObject.onRollback:Z
            ifne 43
        42: .line 272
            aload 15 /* e */
            invokestatic org.h2.message.DbException.convert:(Ljava/lang/Throwable;)Lorg/h2/message/DbException;
            athrow
        end local 15 // java.lang.Exception e
        43: .line 275
      StackMap locals:
      StackMap stack:
            aload 1 /* session */
            invokevirtual org.h2.engine.Session.getLastTriggerIdentity:()Lorg/h2/value/Value;
            ifnull 47
        44: .line 276
            aload 1 /* session */
            aload 1 /* session */
            invokevirtual org.h2.engine.Session.getLastTriggerIdentity:()Lorg/h2/value/Value;
            invokevirtual org.h2.engine.Session.setLastScopeIdentity:(Lorg/h2/value/Value;)V
        45: .line 277
            aload 1 /* session */
            aconst_null
            invokevirtual org.h2.engine.Session.setLastTriggerIdentity:(Lorg/h2/value/Value;)V
        46: .line 278
            goto 48
        47: .line 279
      StackMap locals:
      StackMap stack:
            aload 1 /* session */
            aload 14 /* identity */
            invokevirtual org.h2.engine.Session.setLastScopeIdentity:(Lorg/h2/value/Value;)V
        48: .line 281
      StackMap locals:
      StackMap stack:
            aload 1 /* session */
            iload 13 /* oldDisabled */
            invokevirtual org.h2.engine.Session.setCommitOrRollbackDisabled:(Z)Z
            pop
        49: .line 282
            aload 1 /* session */
            iload 12 /* old */
            invokevirtual org.h2.engine.Session.setAutoCommit:(Z)V
            goto 66
        50: .line 274
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 18
        51: .line 275
            aload 1 /* session */
            invokevirtual org.h2.engine.Session.getLastTriggerIdentity:()Lorg/h2/value/Value;
            ifnull 55
        52: .line 276
            aload 1 /* session */
            aload 1 /* session */
            invokevirtual org.h2.engine.Session.getLastTriggerIdentity:()Lorg/h2/value/Value;
            invokevirtual org.h2.engine.Session.setLastScopeIdentity:(Lorg/h2/value/Value;)V
        53: .line 277
            aload 1 /* session */
            aconst_null
            invokevirtual org.h2.engine.Session.setLastTriggerIdentity:(Lorg/h2/value/Value;)V
        54: .line 278
            goto 56
        55: .line 279
      StackMap locals: org.h2.schema.TriggerObject org.h2.engine.Session org.h2.table.Table org.h2.result.Row org.h2.result.Row int int java.lang.Object[] java.lang.Object[] int java.lang.Object[] java.sql.Connection int int org.h2.value.Value top top top java.lang.Throwable
      StackMap stack:
            aload 1 /* session */
            aload 14 /* identity */
            invokevirtual org.h2.engine.Session.setLastScopeIdentity:(Lorg/h2/value/Value;)V
        56: .line 281
      StackMap locals:
      StackMap stack:
            aload 1 /* session */
            iload 13 /* oldDisabled */
            invokevirtual org.h2.engine.Session.setCommitOrRollbackDisabled:(Z)Z
            pop
        57: .line 282
            aload 1 /* session */
            iload 12 /* old */
            invokevirtual org.h2.engine.Session.setAutoCommit:(Z)V
        58: .line 283
            aload 18
            athrow
        59: .line 275
      StackMap locals: org.h2.schema.TriggerObject org.h2.engine.Session org.h2.table.Table org.h2.result.Row org.h2.result.Row int int java.lang.Object[] java.lang.Object[] int java.lang.Object[] java.sql.Connection int int org.h2.value.Value
      StackMap stack:
            aload 1 /* session */
            invokevirtual org.h2.engine.Session.getLastTriggerIdentity:()Lorg/h2/value/Value;
            ifnull 63
        60: .line 276
            aload 1 /* session */
            aload 1 /* session */
            invokevirtual org.h2.engine.Session.getLastTriggerIdentity:()Lorg/h2/value/Value;
            invokevirtual org.h2.engine.Session.setLastScopeIdentity:(Lorg/h2/value/Value;)V
        61: .line 277
            aload 1 /* session */
            aconst_null
            invokevirtual org.h2.engine.Session.setLastTriggerIdentity:(Lorg/h2/value/Value;)V
        62: .line 278
            goto 64
        63: .line 279
      StackMap locals:
      StackMap stack:
            aload 1 /* session */
            aload 14 /* identity */
            invokevirtual org.h2.engine.Session.setLastScopeIdentity:(Lorg/h2/value/Value;)V
        64: .line 281
      StackMap locals:
      StackMap stack:
            aload 1 /* session */
            iload 13 /* oldDisabled */
            invokevirtual org.h2.engine.Session.setCommitOrRollbackDisabled:(Z)Z
            pop
        65: .line 282
            aload 1 /* session */
            iload 12 /* old */
            invokevirtual org.h2.engine.Session.setAutoCommit:(Z)V
        66: .line 284
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.schema.TriggerObject.insteadOf:Z
            ireturn
        end local 14 // org.h2.value.Value identity
        end local 13 // boolean oldDisabled
        end local 12 // boolean old
        end local 11 // java.sql.Connection c2
        end local 10 // java.lang.Object[] newListBackup
        end local 9 // boolean fire
        end local 8 // java.lang.Object[] newList
        end local 7 // java.lang.Object[] oldList
        end local 6 // boolean rollback
        end local 5 // boolean beforeAction
        end local 4 // org.h2.result.Row newRow
        end local 3 // org.h2.result.Row oldRow
        end local 2 // org.h2.table.Table table
        end local 1 // org.h2.engine.Session session
        end local 0 // org.h2.schema.TriggerObject this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   67     0           this  Lorg/h2/schema/TriggerObject;
            0   67     1        session  Lorg/h2/engine/Session;
            0   67     2          table  Lorg/h2/table/Table;
            0   67     3         oldRow  Lorg/h2/result/Row;
            0   67     4         newRow  Lorg/h2/result/Row;
            0   67     5   beforeAction  Z
            0   67     6       rollback  Z
           18   67     7        oldList  [Ljava/lang/Object;
           19   67     8        newList  [Ljava/lang/Object;
            6   67     9           fire  Z
           21   22    10  newListBackup  [Ljava/lang/Object;
           23   67    10  newListBackup  [Ljava/lang/Object;
           24   67    11             c2  Ljava/sql/Connection;
           25   67    12            old  Z
           26   67    13    oldDisabled  Z
           27   67    14       identity  Lorg/h2/value/Value;
           31   39    15              i  I
           33   37    16              o  Ljava/lang/Object;
           35   37    17              v  Lorg/h2/value/Value;
           41   43    15              e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
          27    39      40  Class java.lang.Exception
          27    43      50  any
    MethodParameters:
              Name  Flags
      session       
      table         
      oldRow        
      newRow        
      beforeAction  
      rollback      

  public void setTypeMask(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.h2.schema.TriggerObject this
        start local 1 // int typeMask
         0: .line 293
            aload 0 /* this */
            iload 1 /* typeMask */
            putfield org.h2.schema.TriggerObject.typeMask:I
         1: .line 294
            return
        end local 1 // int typeMask
        end local 0 // org.h2.schema.TriggerObject this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/h2/schema/TriggerObject;
            0    2     1  typeMask  I
    MethodParameters:
          Name  Flags
      typeMask  

  public void setRowBased(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.h2.schema.TriggerObject this
        start local 1 // boolean rowBased
         0: .line 297
            aload 0 /* this */
            iload 1 /* rowBased */
            putfield org.h2.schema.TriggerObject.rowBased:Z
         1: .line 298
            return
        end local 1 // boolean rowBased
        end local 0 // org.h2.schema.TriggerObject this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/h2/schema/TriggerObject;
            0    2     1  rowBased  Z
    MethodParameters:
          Name  Flags
      rowBased  

  public void setQueueSize(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.h2.schema.TriggerObject this
        start local 1 // int size
         0: .line 301
            aload 0 /* this */
            iload 1 /* size */
            putfield org.h2.schema.TriggerObject.queueSize:I
         1: .line 302
            return
        end local 1 // int size
        end local 0 // org.h2.schema.TriggerObject this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/h2/schema/TriggerObject;
            0    2     1  size  I
    MethodParameters:
      Name  Flags
      size  

  public int getQueueSize();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.h2.schema.TriggerObject this
         0: .line 305
            aload 0 /* this */
            getfield org.h2.schema.TriggerObject.queueSize:I
            ireturn
        end local 0 // org.h2.schema.TriggerObject this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/schema/TriggerObject;

  public void setNoWait(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.h2.schema.TriggerObject this
        start local 1 // boolean noWait
         0: .line 309
            aload 0 /* this */
            iload 1 /* noWait */
            putfield org.h2.schema.TriggerObject.noWait:Z
         1: .line 310
            return
        end local 1 // boolean noWait
        end local 0 // org.h2.schema.TriggerObject this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lorg/h2/schema/TriggerObject;
            0    2     1  noWait  Z
    MethodParameters:
        Name  Flags
      noWait  

  public boolean isNoWait();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.h2.schema.TriggerObject this
         0: .line 313
            aload 0 /* this */
            getfield org.h2.schema.TriggerObject.noWait:Z
            ireturn
        end local 0 // org.h2.schema.TriggerObject this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/schema/TriggerObject;

  public void setOnRollback(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.h2.schema.TriggerObject this
        start local 1 // boolean onRollback
         0: .line 317
            aload 0 /* this */
            iload 1 /* onRollback */
            putfield org.h2.schema.TriggerObject.onRollback:Z
         1: .line 318
            return
        end local 1 // boolean onRollback
        end local 0 // org.h2.schema.TriggerObject this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lorg/h2/schema/TriggerObject;
            0    2     1  onRollback  Z
    MethodParameters:
            Name  Flags
      onRollback  

  public java.lang.String getDropSQL();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.h2.schema.TriggerObject this
         0: .line 322
            aconst_null
            areturn
        end local 0 // org.h2.schema.TriggerObject this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/schema/TriggerObject;

  public java.lang.String getCreateSQLForCopy(org.h2.table.Table, java.lang.String);
    descriptor: (Lorg/h2/table/Table;Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // org.h2.schema.TriggerObject this
        start local 1 // org.h2.table.Table targetTable
        start local 2 // java.lang.String quotedName
         0: .line 327
            new java.lang.StringBuilder
            dup
            ldc "CREATE FORCE TRIGGER "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            astore 3 /* builder */
        start local 3 // java.lang.StringBuilder builder
         1: .line 328
            aload 3 /* builder */
            aload 2 /* quotedName */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         2: .line 329
            aload 0 /* this */
            getfield org.h2.schema.TriggerObject.insteadOf:Z
            ifeq 5
         3: .line 330
            aload 3 /* builder */
            ldc " INSTEAD OF "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         4: .line 331
            goto 9
      StackMap locals: java.lang.StringBuilder
      StackMap stack:
         5: aload 0 /* this */
            getfield org.h2.schema.TriggerObject.before:Z
            ifeq 8
         6: .line 332
            aload 3 /* builder */
            ldc " BEFORE "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         7: .line 333
            goto 9
         8: .line 334
      StackMap locals:
      StackMap stack:
            aload 3 /* builder */
            ldc " AFTER "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         9: .line 336
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 3 /* builder */
            invokevirtual org.h2.schema.TriggerObject.getTypeNameList:(Ljava/lang/StringBuilder;)Ljava/lang/StringBuilder;
            ldc " ON "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        10: .line 337
            aload 1 /* targetTable */
            aload 3 /* builder */
            iconst_1
            invokevirtual org.h2.table.Table.getSQL:(Ljava/lang/StringBuilder;Z)Ljava/lang/StringBuilder;
            pop
        11: .line 338
            aload 0 /* this */
            getfield org.h2.schema.TriggerObject.rowBased:Z
            ifeq 13
        12: .line 339
            aload 3 /* builder */
            ldc " FOR EACH ROW"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        13: .line 341
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.schema.TriggerObject.noWait:Z
            ifeq 16
        14: .line 342
            aload 3 /* builder */
            ldc " NOWAIT"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        15: .line 343
            goto 17
        16: .line 344
      StackMap locals:
      StackMap stack:
            aload 3 /* builder */
            ldc " QUEUE "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield org.h2.schema.TriggerObject.queueSize:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            pop
        17: .line 346
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.schema.TriggerObject.triggerClassName:Ljava/lang/String;
            ifnull 21
        18: .line 347
            aload 3 /* builder */
            ldc " CALL "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        19: .line 348
            aload 3 /* builder */
            aload 0 /* this */
            getfield org.h2.schema.TriggerObject.triggerClassName:Ljava/lang/String;
            iconst_1
            invokestatic org.h2.command.Parser.quoteIdentifier:(Ljava/lang/StringBuilder;Ljava/lang/String;Z)Ljava/lang/StringBuilder;
            pop
        20: .line 349
            goto 23
        21: .line 350
      StackMap locals:
      StackMap stack:
            aload 3 /* builder */
            ldc " AS "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        22: .line 351
            aload 3 /* builder */
            aload 0 /* this */
            getfield org.h2.schema.TriggerObject.triggerSource:Ljava/lang/String;
            invokestatic org.h2.util.StringUtils.quoteStringSQL:(Ljava/lang/StringBuilder;Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        23: .line 353
      StackMap locals:
      StackMap stack:
            aload 3 /* builder */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 3 // java.lang.StringBuilder builder
        end local 2 // java.lang.String quotedName
        end local 1 // org.h2.table.Table targetTable
        end local 0 // org.h2.schema.TriggerObject this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   24     0         this  Lorg/h2/schema/TriggerObject;
            0   24     1  targetTable  Lorg/h2/table/Table;
            0   24     2   quotedName  Ljava/lang/String;
            1   24     3      builder  Ljava/lang/StringBuilder;
    MethodParameters:
             Name  Flags
      targetTable  
      quotedName   

  public java.lang.StringBuilder getTypeNameList(java.lang.StringBuilder);
    descriptor: (Ljava/lang/StringBuilder;)Ljava/lang/StringBuilder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.h2.schema.TriggerObject this
        start local 1 // java.lang.StringBuilder builder
         0: .line 363
            iconst_0
            istore 2 /* f */
        start local 2 // boolean f
         1: .line 364
            aload 0 /* this */
            getfield org.h2.schema.TriggerObject.typeMask:I
            iconst_1
            iand
            ifeq 4
         2: .line 365
            iconst_1
            istore 2 /* f */
         3: .line 366
            aload 1 /* builder */
            ldc "INSERT"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         4: .line 368
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.schema.TriggerObject.typeMask:I
            iconst_2
            iand
            ifeq 9
         5: .line 369
            iload 2 /* f */
            ifeq 7
         6: .line 370
            aload 1 /* builder */
            ldc ", "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         7: .line 372
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 2 /* f */
         8: .line 373
            aload 1 /* builder */
            ldc "UPDATE"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         9: .line 375
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.schema.TriggerObject.typeMask:I
            iconst_4
            iand
            ifeq 14
        10: .line 376
            iload 2 /* f */
            ifeq 12
        11: .line 377
            aload 1 /* builder */
            ldc ", "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        12: .line 379
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 2 /* f */
        13: .line 380
            aload 1 /* builder */
            ldc "DELETE"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        14: .line 382
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.schema.TriggerObject.typeMask:I
            bipush 8
            iand
            ifeq 19
        15: .line 383
            iload 2 /* f */
            ifeq 17
        16: .line 384
            aload 1 /* builder */
            ldc ", "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        17: .line 386
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 2 /* f */
        18: .line 387
            aload 1 /* builder */
            ldc "SELECT"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        19: .line 389
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.h2.schema.TriggerObject.onRollback:Z
            ifeq 23
        20: .line 390
            iload 2 /* f */
            ifeq 22
        21: .line 391
            aload 1 /* builder */
            ldc ", "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        22: .line 393
      StackMap locals:
      StackMap stack:
            aload 1 /* builder */
            ldc "ROLLBACK"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        23: .line 395
      StackMap locals:
      StackMap stack:
            aload 1 /* builder */
            areturn
        end local 2 // boolean f
        end local 1 // java.lang.StringBuilder builder
        end local 0 // org.h2.schema.TriggerObject this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   24     0     this  Lorg/h2/schema/TriggerObject;
            0   24     1  builder  Ljava/lang/StringBuilder;
            1   24     2        f  Z
    MethodParameters:
         Name  Flags
      builder  

  public java.lang.String getCreateSQL();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.h2.schema.TriggerObject this
         0: .line 400
            aload 0 /* this */
            aload 0 /* this */
            getfield org.h2.schema.TriggerObject.table:Lorg/h2/table/Table;
            aload 0 /* this */
            iconst_1
            invokevirtual org.h2.schema.TriggerObject.getSQL:(Z)Ljava/lang/String;
            invokevirtual org.h2.schema.TriggerObject.getCreateSQLForCopy:(Lorg/h2/table/Table;Ljava/lang/String;)Ljava/lang/String;
            areturn
        end local 0 // org.h2.schema.TriggerObject this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/schema/TriggerObject;

  public int getType();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.h2.schema.TriggerObject this
         0: .line 405
            iconst_4
            ireturn
        end local 0 // org.h2.schema.TriggerObject this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/schema/TriggerObject;

  public void removeChildrenAndResources(org.h2.engine.Session);
    descriptor: (Lorg/h2/engine/Session;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.h2.schema.TriggerObject this
        start local 1 // org.h2.engine.Session session
         0: .line 410
            aload 0 /* this */
            getfield org.h2.schema.TriggerObject.table:Lorg/h2/table/Table;
            aload 0 /* this */
            invokevirtual org.h2.table.Table.removeTrigger:(Lorg/h2/schema/TriggerObject;)V
         1: .line 411
            aload 0 /* this */
            getfield org.h2.schema.TriggerObject.database:Lorg/h2/engine/Database;
            aload 1 /* session */
            aload 0 /* this */
            invokevirtual org.h2.schema.TriggerObject.getId:()I
            invokevirtual org.h2.engine.Database.removeMeta:(Lorg/h2/engine/Session;I)V
         2: .line 412
            aload 0 /* this */
            getfield org.h2.schema.TriggerObject.triggerCallback:Lorg/h2/api/Trigger;
            ifnull 7
         3: .line 414
            aload 0 /* this */
            getfield org.h2.schema.TriggerObject.triggerCallback:Lorg/h2/api/Trigger;
            invokeinterface org.h2.api.Trigger.remove:()V
         4: .line 415
            goto 7
      StackMap locals:
      StackMap stack: java.sql.SQLException
         5: astore 2 /* e */
        start local 2 // java.sql.SQLException e
         6: .line 416
            aload 2 /* e */
            invokestatic org.h2.message.DbException.convert:(Ljava/lang/Throwable;)Lorg/h2/message/DbException;
            athrow
        end local 2 // java.sql.SQLException e
         7: .line 419
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aconst_null
            putfield org.h2.schema.TriggerObject.table:Lorg/h2/table/Table;
         8: .line 420
            aload 0 /* this */
            aconst_null
            putfield org.h2.schema.TriggerObject.triggerClassName:Ljava/lang/String;
         9: .line 421
            aload 0 /* this */
            aconst_null
            putfield org.h2.schema.TriggerObject.triggerSource:Ljava/lang/String;
        10: .line 422
            aload 0 /* this */
            aconst_null
            putfield org.h2.schema.TriggerObject.triggerCallback:Lorg/h2/api/Trigger;
        11: .line 423
            aload 0 /* this */
            invokevirtual org.h2.schema.TriggerObject.invalidate:()V
        12: .line 424
            return
        end local 1 // org.h2.engine.Session session
        end local 0 // org.h2.schema.TriggerObject this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   13     0     this  Lorg/h2/schema/TriggerObject;
            0   13     1  session  Lorg/h2/engine/Session;
            6    7     2        e  Ljava/sql/SQLException;
      Exception table:
        from    to  target  type
           3     4       5  Class java.sql.SQLException
    MethodParameters:
         Name  Flags
      session  

  public void checkRename();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=1, args_size=1
        start local 0 // org.h2.schema.TriggerObject this
         0: .line 429
            return
        end local 0 // org.h2.schema.TriggerObject this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/schema/TriggerObject;

  public org.h2.table.Table getTable();
    descriptor: ()Lorg/h2/table/Table;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.h2.schema.TriggerObject this
         0: .line 437
            aload 0 /* this */
            getfield org.h2.schema.TriggerObject.table:Lorg/h2/table/Table;
            areturn
        end local 0 // org.h2.schema.TriggerObject this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/schema/TriggerObject;

  public boolean isBefore();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.h2.schema.TriggerObject this
         0: .line 446
            aload 0 /* this */
            getfield org.h2.schema.TriggerObject.before:Z
            ireturn
        end local 0 // org.h2.schema.TriggerObject this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/schema/TriggerObject;

  public java.lang.String getTriggerClassName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.h2.schema.TriggerObject this
         0: .line 455
            aload 0 /* this */
            getfield org.h2.schema.TriggerObject.triggerClassName:Ljava/lang/String;
            areturn
        end local 0 // org.h2.schema.TriggerObject this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/schema/TriggerObject;

  public java.lang.String getTriggerSource();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.h2.schema.TriggerObject this
         0: .line 459
            aload 0 /* this */
            getfield org.h2.schema.TriggerObject.triggerSource:Ljava/lang/String;
            areturn
        end local 0 // org.h2.schema.TriggerObject this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/h2/schema/TriggerObject;

  public void close();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.h2.schema.TriggerObject this
         0: .line 466
            aload 0 /* this */
            getfield org.h2.schema.TriggerObject.triggerCallback:Lorg/h2/api/Trigger;
            ifnull 2
         1: .line 467
            aload 0 /* this */
            getfield org.h2.schema.TriggerObject.triggerCallback:Lorg/h2/api/Trigger;
            invokeinterface org.h2.api.Trigger.close:()V
         2: .line 469
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.h2.schema.TriggerObject this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/h2/schema/TriggerObject;
    Exceptions:
      throws java.sql.SQLException

  public boolean isSelectTrigger();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.h2.schema.TriggerObject this
         0: .line 477
            aload 0 /* this */
            getfield org.h2.schema.TriggerObject.typeMask:I
            bipush 8
            iand
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // org.h2.schema.TriggerObject this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/h2/schema/TriggerObject;
}
SourceFile: "TriggerObject.java"