public class org.hsqldb.DatabaseManager
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.hsqldb.DatabaseManager
  super_class: java.lang.Object
{
  private static java.util.concurrent.atomic.AtomicInteger dbIDCounter;
    descriptor: Ljava/util/concurrent/atomic/AtomicInteger;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  static final org.hsqldb.lib.HashMap memDatabaseMap;
    descriptor: Lorg/hsqldb/lib/HashMap;
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  static final org.hsqldb.lib.HashMap fileDatabaseMap;
    descriptor: Lorg/hsqldb/lib/HashMap;
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  static final org.hsqldb.lib.HashMap resDatabaseMap;
    descriptor: Lorg/hsqldb/lib/HashMap;
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  static final org.hsqldb.lib.IntKeyHashMap databaseIDMap;
    descriptor: Lorg/hsqldb/lib/IntKeyHashMap;
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  static final org.hsqldb.lib.HashMap serverMap;
    descriptor: Lorg/hsqldb/lib/HashMap;
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  private static final org.hsqldb.lib.HsqlTimer timer;
    descriptor: Lorg/hsqldb/lib/HsqlTimer;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static volatile int[] $SWITCH_TABLE$org$hsqldb$DatabaseType;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 69
            new java.util.concurrent.atomic.AtomicInteger
            dup
            invokespecial java.util.concurrent.atomic.AtomicInteger.<init>:()V
            putstatic org.hsqldb.DatabaseManager.dbIDCounter:Ljava/util/concurrent/atomic/AtomicInteger;
         1: .line 72
            new org.hsqldb.lib.HashMap
            dup
            invokespecial org.hsqldb.lib.HashMap.<init>:()V
            putstatic org.hsqldb.DatabaseManager.memDatabaseMap:Lorg/hsqldb/lib/HashMap;
         2: .line 75
            new org.hsqldb.lib.HashMap
            dup
            invokespecial org.hsqldb.lib.HashMap.<init>:()V
            putstatic org.hsqldb.DatabaseManager.fileDatabaseMap:Lorg/hsqldb/lib/HashMap;
         3: .line 78
            new org.hsqldb.lib.HashMap
            dup
            invokespecial org.hsqldb.lib.HashMap.<init>:()V
            putstatic org.hsqldb.DatabaseManager.resDatabaseMap:Lorg/hsqldb/lib/HashMap;
         4: .line 81
            new org.hsqldb.lib.IntKeyHashMap
            dup
            invokespecial org.hsqldb.lib.IntKeyHashMap.<init>:()V
            putstatic org.hsqldb.DatabaseManager.databaseIDMap:Lorg/hsqldb/lib/IntKeyHashMap;
         5: .line 473
            new org.hsqldb.lib.HashMap
            dup
            invokespecial org.hsqldb.lib.HashMap.<init>:()V
            putstatic org.hsqldb.DatabaseManager.serverMap:Lorg/hsqldb/lib/HashMap;
         6: .line 553
            new org.hsqldb.lib.HsqlTimer
            dup
            invokespecial org.hsqldb.lib.HsqlTimer.<init>:()V
            putstatic org.hsqldb.DatabaseManager.timer:Lorg/hsqldb/lib/HsqlTimer;
            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 // org.hsqldb.DatabaseManager this
         0: .line 64
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // org.hsqldb.DatabaseManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/hsqldb/DatabaseManager;

  public static java.util.Vector getDatabaseURIs();
    descriptor: ()Ljava/util/Vector;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=0
         0: .line 88
            new java.util.Vector
            dup
            invokespecial java.util.Vector.<init>:()V
            astore 0 /* v */
        start local 0 // java.util.Vector v
         1: .line 90
            getstatic org.hsqldb.DatabaseManager.databaseIDMap:Lorg/hsqldb/lib/IntKeyHashMap;
            dup
            astore 1
            monitorenter
         2: .line 91
            getstatic org.hsqldb.DatabaseManager.databaseIDMap:Lorg/hsqldb/lib/IntKeyHashMap;
            invokevirtual org.hsqldb.lib.IntKeyHashMap.values:()Lorg/hsqldb/lib/Collection;
            invokeinterface org.hsqldb.lib.Collection.iterator:()Lorg/hsqldb/lib/Iterator;
            astore 2 /* it */
        start local 2 // org.hsqldb.lib.Iterator it
         3: .line 93
            goto 6
         4: .line 94
      StackMap locals: java.util.Vector org.hsqldb.lib.IntKeyHashMap org.hsqldb.lib.Iterator
      StackMap stack:
            aload 2 /* it */
            invokeinterface org.hsqldb.lib.Iterator.next:()Ljava/lang/Object;
            checkcast org.hsqldb.Database
            astore 3 /* db */
        start local 3 // org.hsqldb.Database db
         5: .line 96
            aload 0 /* v */
            aload 3 /* db */
            invokevirtual org.hsqldb.Database.getURI:()Ljava/lang/String;
            invokevirtual java.util.Vector.addElement:(Ljava/lang/Object;)V
        end local 3 // org.hsqldb.Database db
         6: .line 93
      StackMap locals:
      StackMap stack:
            aload 2 /* it */
            invokeinterface org.hsqldb.lib.Iterator.hasNext:()Z
            ifne 4
        end local 2 // org.hsqldb.lib.Iterator it
         7: .line 90
            aload 1
            monitorexit
         8: goto 11
      StackMap locals: java.util.Vector org.hsqldb.lib.IntKeyHashMap
      StackMap stack: java.lang.Throwable
         9: aload 1
            monitorexit
        10: athrow
        11: .line 100
      StackMap locals:
      StackMap stack:
            aload 0 /* v */
            areturn
        end local 0 // java.util.Vector v
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            1   12     0     v  Ljava/util/Vector;
            3    7     2    it  Lorg/hsqldb/lib/Iterator;
            5    6     3    db  Lorg/hsqldb/Database;
      Exception table:
        from    to  target  type
           2     8       9  any
           9    10       9  any

  public static void closeDatabases(int);
    descriptor: (I)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=1
        start local 0 // int mode
         0: .line 113
            getstatic org.hsqldb.DatabaseManager.databaseIDMap:Lorg/hsqldb/lib/IntKeyHashMap;
            dup
            astore 1
            monitorenter
         1: .line 114
            getstatic org.hsqldb.DatabaseManager.databaseIDMap:Lorg/hsqldb/lib/IntKeyHashMap;
            invokevirtual org.hsqldb.lib.IntKeyHashMap.values:()Lorg/hsqldb/lib/Collection;
            invokeinterface org.hsqldb.lib.Collection.iterator:()Lorg/hsqldb/lib/Iterator;
            astore 2 /* it */
        start local 2 // org.hsqldb.lib.Iterator it
         2: .line 116
            goto 7
         3: .line 117
      StackMap locals: org.hsqldb.lib.IntKeyHashMap org.hsqldb.lib.Iterator
      StackMap stack:
            aload 2 /* it */
            invokeinterface org.hsqldb.lib.Iterator.next:()Ljava/lang/Object;
            checkcast org.hsqldb.Database
            astore 3 /* db */
        start local 3 // org.hsqldb.Database db
         4: .line 120
            aload 3 /* db */
            iload 0 /* mode */
            invokevirtual org.hsqldb.Database.close:(I)V
         5: .line 121
            goto 7
      StackMap locals: int org.hsqldb.lib.IntKeyHashMap org.hsqldb.lib.Iterator org.hsqldb.Database
      StackMap stack: org.hsqldb.HsqlException
         6: pop
        end local 3 // org.hsqldb.Database db
         7: .line 116
      StackMap locals:
      StackMap stack:
            aload 2 /* it */
            invokeinterface org.hsqldb.lib.Iterator.hasNext:()Z
            ifne 3
        end local 2 // org.hsqldb.lib.Iterator it
         8: .line 113
            aload 1
            monitorexit
         9: goto 12
      StackMap locals: int org.hsqldb.lib.IntKeyHashMap
      StackMap stack: java.lang.Throwable
        10: aload 1
            monitorexit
        11: athrow
        12: .line 124
      StackMap locals:
      StackMap stack:
            return
        end local 0 // int mode
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   13     0  mode  I
            2    8     2    it  Lorg/hsqldb/lib/Iterator;
            4    7     3    db  Lorg/hsqldb/Database;
      Exception table:
        from    to  target  type
           4     5       6  Class org.hsqldb.HsqlException
           1     9      10  any
          10    11      10  any
    MethodParameters:
      Name  Flags
      mode  

  public static org.hsqldb.Session newSession(int, java.lang.String, java.lang.String, java.lang.String, int);
    descriptor: (ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;I)Lorg/hsqldb/Session;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=7, args_size=5
        start local 0 // int dbID
        start local 1 // java.lang.String user
        start local 2 // java.lang.String password
        start local 3 // java.lang.String zoneString
        start local 4 // int timeZoneSeconds
         0: .line 132
            aconst_null
            astore 5 /* db */
        start local 5 // org.hsqldb.Database db
         1: .line 134
            getstatic org.hsqldb.DatabaseManager.databaseIDMap:Lorg/hsqldb/lib/IntKeyHashMap;
            dup
            astore 6
            monitorenter
         2: .line 135
            getstatic org.hsqldb.DatabaseManager.databaseIDMap:Lorg/hsqldb/lib/IntKeyHashMap;
            iload 0 /* dbID */
            invokevirtual org.hsqldb.lib.IntKeyHashMap.get:(I)Ljava/lang/Object;
            checkcast org.hsqldb.Database
            astore 5 /* db */
         3: .line 134
            aload 6
            monitorexit
         4: goto 7
      StackMap locals: int java.lang.String java.lang.String java.lang.String int org.hsqldb.Database org.hsqldb.lib.IntKeyHashMap
      StackMap stack: java.lang.Throwable
         5: aload 6
            monitorexit
         6: athrow
         7: .line 138
      StackMap locals:
      StackMap stack:
            aload 5 /* db */
            ifnonnull 9
         8: .line 139
            aconst_null
            areturn
         9: .line 142
      StackMap locals:
      StackMap stack:
            aload 5 /* db */
            aload 1 /* user */
            aload 2 /* password */
            aload 3 /* zoneString */
        10: .line 143
            iload 4 /* timeZoneSeconds */
        11: .line 142
            invokevirtual org.hsqldb.Database.connect:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)Lorg/hsqldb/Session;
            astore 6 /* session */
        start local 6 // org.hsqldb.Session session
        12: .line 145
            aload 6 /* session */
            iconst_1
            putfield org.hsqldb.Session.isNetwork:Z
        13: .line 147
            aload 6 /* session */
            areturn
        end local 6 // org.hsqldb.Session session
        end local 5 // org.hsqldb.Database db
        end local 4 // int timeZoneSeconds
        end local 3 // java.lang.String zoneString
        end local 2 // java.lang.String password
        end local 1 // java.lang.String user
        end local 0 // int dbID
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   14     0             dbID  I
            0   14     1             user  Ljava/lang/String;
            0   14     2         password  Ljava/lang/String;
            0   14     3       zoneString  Ljava/lang/String;
            0   14     4  timeZoneSeconds  I
            1   14     5               db  Lorg/hsqldb/Database;
           12   14     6          session  Lorg/hsqldb/Session;
      Exception table:
        from    to  target  type
           2     4       5  any
           5     6       5  any
    MethodParameters:
                 Name  Flags
      dbID             
      user             
      password         
      zoneString       
      timeZoneSeconds  

  public static org.hsqldb.Session newSession(java.lang.String, java.lang.String, java.lang.String, java.lang.String, org.hsqldb.persist.HsqlProperties, java.lang.String, int);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lorg/hsqldb/persist/HsqlProperties;Ljava/lang/String;I)Lorg/hsqldb/Session;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=8, args_size=7
        start local 0 // java.lang.String type
        start local 1 // java.lang.String path
        start local 2 // java.lang.String user
        start local 3 // java.lang.String password
        start local 4 // org.hsqldb.persist.HsqlProperties props
        start local 5 // java.lang.String zoneString
        start local 6 // int timeZoneSeconds
         0: .line 157
            aload 0 /* type */
            aload 1 /* path */
            aload 4 /* props */
            invokestatic org.hsqldb.DatabaseManager.getDatabase:(Ljava/lang/String;Ljava/lang/String;Lorg/hsqldb/persist/HsqlProperties;)Lorg/hsqldb/Database;
            astore 7 /* db */
        start local 7 // org.hsqldb.Database db
         1: .line 159
            aload 7 /* db */
            aload 2 /* user */
            aload 3 /* password */
            aload 5 /* zoneString */
            iload 6 /* timeZoneSeconds */
            invokevirtual org.hsqldb.Database.connect:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)Lorg/hsqldb/Session;
            areturn
        end local 7 // org.hsqldb.Database db
        end local 6 // int timeZoneSeconds
        end local 5 // java.lang.String zoneString
        end local 4 // org.hsqldb.persist.HsqlProperties props
        end local 3 // java.lang.String password
        end local 2 // java.lang.String user
        end local 1 // java.lang.String path
        end local 0 // java.lang.String type
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    2     0             type  Ljava/lang/String;
            0    2     1             path  Ljava/lang/String;
            0    2     2             user  Ljava/lang/String;
            0    2     3         password  Ljava/lang/String;
            0    2     4            props  Lorg/hsqldb/persist/HsqlProperties;
            0    2     5       zoneString  Ljava/lang/String;
            0    2     6  timeZoneSeconds  I
            1    2     7               db  Lorg/hsqldb/Database;
    MethodParameters:
                 Name  Flags
      type             
      path             
      user             
      password         
      props            
      zoneString       
      timeZoneSeconds  

  public static org.hsqldb.Session getSession(int, long);
    descriptor: (IJ)Lorg/hsqldb/Session;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // int dbId
        start local 1 // long sessionId
         0: .line 168
            aconst_null
            astore 3 /* db */
        start local 3 // org.hsqldb.Database db
         1: .line 170
            getstatic org.hsqldb.DatabaseManager.databaseIDMap:Lorg/hsqldb/lib/IntKeyHashMap;
            dup
            astore 4
            monitorenter
         2: .line 171
            getstatic org.hsqldb.DatabaseManager.databaseIDMap:Lorg/hsqldb/lib/IntKeyHashMap;
            iload 0 /* dbId */
            invokevirtual org.hsqldb.lib.IntKeyHashMap.get:(I)Ljava/lang/Object;
            checkcast org.hsqldb.Database
            astore 3 /* db */
         3: .line 170
            aload 4
            monitorexit
         4: goto 7
      StackMap locals: int long org.hsqldb.Database org.hsqldb.lib.IntKeyHashMap
      StackMap stack: java.lang.Throwable
         5: aload 4
            monitorexit
         6: athrow
         7: .line 174
      StackMap locals:
      StackMap stack:
            aload 3 /* db */
            ifnonnull 8
            aconst_null
            goto 9
         8: .line 175
      StackMap locals:
      StackMap stack:
            aload 3 /* db */
            getfield org.hsqldb.Database.sessionManager:Lorg/hsqldb/SessionManager;
            lload 1 /* sessionId */
            invokevirtual org.hsqldb.SessionManager.getSession:(J)Lorg/hsqldb/Session;
         9: .line 174
      StackMap locals:
      StackMap stack: org.hsqldb.Session
            areturn
        end local 3 // org.hsqldb.Database db
        end local 1 // long sessionId
        end local 0 // int dbId
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   10     0       dbId  I
            0   10     1  sessionId  J
            1   10     3         db  Lorg/hsqldb/Database;
      Exception table:
        from    to  target  type
           2     4       5  any
           5     6       5  any
    MethodParameters:
           Name  Flags
      dbId       
      sessionId  

  public static int getDatabase(java.lang.String, java.lang.String, org.hsqldb.lib.Notified, org.hsqldb.persist.HsqlProperties);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Lorg/hsqldb/lib/Notified;Lorg/hsqldb/persist/HsqlProperties;)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=5, args_size=4
        start local 0 // java.lang.String type
        start local 1 // java.lang.String path
        start local 2 // org.hsqldb.lib.Notified server
        start local 3 // org.hsqldb.persist.HsqlProperties props
         0: .line 184
            aload 0 /* type */
            aload 1 /* path */
            aload 3 /* props */
            invokestatic org.hsqldb.DatabaseManager.getDatabase:(Ljava/lang/String;Ljava/lang/String;Lorg/hsqldb/persist/HsqlProperties;)Lorg/hsqldb/Database;
            astore 4 /* db */
        start local 4 // org.hsqldb.Database db
         1: .line 186
            aload 2 /* server */
            aload 4 /* db */
            invokestatic org.hsqldb.DatabaseManager.registerServer:(Lorg/hsqldb/lib/Notified;Lorg/hsqldb/Database;)V
         2: .line 188
            aload 4 /* db */
            getfield org.hsqldb.Database.databaseID:I
            ireturn
        end local 4 // org.hsqldb.Database db
        end local 3 // org.hsqldb.persist.HsqlProperties props
        end local 2 // org.hsqldb.lib.Notified server
        end local 1 // java.lang.String path
        end local 0 // java.lang.String type
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    type  Ljava/lang/String;
            0    3     1    path  Ljava/lang/String;
            0    3     2  server  Lorg/hsqldb/lib/Notified;
            0    3     3   props  Lorg/hsqldb/persist/HsqlProperties;
            1    3     4      db  Lorg/hsqldb/Database;
    MethodParameters:
        Name  Flags
      type    
      path    
      server  
      props   

  public static org.hsqldb.Database getDatabase(int);
    descriptor: (I)Lorg/hsqldb/Database;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // int id
         0: .line 193
            getstatic org.hsqldb.DatabaseManager.databaseIDMap:Lorg/hsqldb/lib/IntKeyHashMap;
            dup
            astore 1
            monitorenter
         1: .line 194
            getstatic org.hsqldb.DatabaseManager.databaseIDMap:Lorg/hsqldb/lib/IntKeyHashMap;
            iload 0 /* id */
            invokevirtual org.hsqldb.lib.IntKeyHashMap.get:(I)Ljava/lang/Object;
            checkcast org.hsqldb.Database
            aload 1
            monitorexit
         2: areturn
         3: .line 193
      StackMap locals: int org.hsqldb.lib.IntKeyHashMap
      StackMap stack: java.lang.Throwable
            aload 1
            monitorexit
         4: athrow
        end local 0 // int id
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0    id  I
      Exception table:
        from    to  target  type
           1     2       3  any
           3     4       3  any
    MethodParameters:
      Name  Flags
      id    

  public static void shutdownDatabases(org.hsqldb.lib.Notified, int);
    descriptor: (Lorg/hsqldb/lib/Notified;I)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=5, args_size=2
        start local 0 // org.hsqldb.lib.Notified server
        start local 1 // int shutdownMode
         0: .line 202
            getstatic org.hsqldb.DatabaseManager.serverMap:Lorg/hsqldb/lib/HashMap;
            dup
            astore 3
            monitorenter
         1: .line 203
            getstatic org.hsqldb.DatabaseManager.serverMap:Lorg/hsqldb/lib/HashMap;
            aload 0 /* server */
            invokevirtual org.hsqldb.lib.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.hsqldb.lib.HashSet
            astore 4 /* databases */
        start local 4 // org.hsqldb.lib.HashSet databases
         2: .line 205
            aload 4 /* databases */
            ifnonnull 5
         3: .line 206
            iconst_0
            anewarray org.hsqldb.Database
            astore 2 /* dbArray */
        start local 2 // org.hsqldb.Database[] dbArray
         4: .line 207
            goto 7
        end local 2 // org.hsqldb.Database[] dbArray
         5: .line 208
      StackMap locals: org.hsqldb.lib.Notified int top org.hsqldb.lib.HashMap org.hsqldb.lib.HashSet
      StackMap stack:
            aload 4 /* databases */
            invokevirtual org.hsqldb.lib.HashSet.size:()I
            anewarray org.hsqldb.Database
            astore 2 /* dbArray */
        start local 2 // org.hsqldb.Database[] dbArray
         6: .line 210
            aload 4 /* databases */
            aload 2 /* dbArray */
            invokevirtual org.hsqldb.lib.HashSet.toArray:([Ljava/lang/Object;)V
        end local 4 // org.hsqldb.lib.HashSet databases
         7: .line 202
      StackMap locals: org.hsqldb.lib.Notified int org.hsqldb.Database[] org.hsqldb.lib.HashMap
      StackMap stack:
            aload 3
            monitorexit
         8: goto 11
        end local 2 // org.hsqldb.Database[] dbArray
      StackMap locals: org.hsqldb.lib.Notified int top org.hsqldb.lib.HashMap
      StackMap stack: java.lang.Throwable
         9: aload 3
            monitorexit
        10: athrow
        start local 2 // org.hsqldb.Database[] dbArray
        11: .line 214
      StackMap locals: org.hsqldb.lib.Notified int org.hsqldb.Database[]
      StackMap stack:
            iconst_0
            istore 3 /* i */
        start local 3 // int i
        12: goto 15
        13: .line 215
      StackMap locals: int
      StackMap stack:
            aload 2 /* dbArray */
            iload 3 /* i */
            aaload
            iload 1 /* shutdownMode */
            invokevirtual org.hsqldb.Database.close:(I)V
        14: .line 214
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        15: iload 3 /* i */
            aload 2 /* dbArray */
            arraylength
            if_icmplt 13
        end local 3 // int i
        16: .line 217
            return
        end local 2 // org.hsqldb.Database[] dbArray
        end local 1 // int shutdownMode
        end local 0 // org.hsqldb.lib.Notified server
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   17     0        server  Lorg/hsqldb/lib/Notified;
            0   17     1  shutdownMode  I
            4    5     2       dbArray  [Lorg/hsqldb/Database;
            6    9     2       dbArray  [Lorg/hsqldb/Database;
           11   17     2       dbArray  [Lorg/hsqldb/Database;
            2    7     4     databases  Lorg/hsqldb/lib/HashSet;
           12   16     3             i  I
      Exception table:
        from    to  target  type
           1     8       9  any
           9    10       9  any
    MethodParameters:
              Name  Flags
      server        
      shutdownMode  

  public static org.hsqldb.Database getDatabase(java.lang.String, java.lang.String, org.hsqldb.persist.HsqlProperties);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Lorg/hsqldb/persist/HsqlProperties;)Lorg/hsqldb/Database;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // java.lang.String dbtype
        start local 1 // java.lang.String path
        start local 2 // org.hsqldb.persist.HsqlProperties props
         0: .line 242
            aload 0 /* dbtype */
            invokestatic org.hsqldb.DatabaseType.get:(Ljava/lang/String;)Lorg/hsqldb/DatabaseType;
            astore 3 /* type */
        start local 3 // org.hsqldb.DatabaseType type
         1: .line 243
            aload 3 /* type */
            aload 1 /* path */
            aload 2 /* props */
            invokestatic org.hsqldb.DatabaseManager.getDatabaseObject:(Lorg/hsqldb/DatabaseType;Ljava/lang/String;Lorg/hsqldb/persist/HsqlProperties;)Lorg/hsqldb/Database;
            astore 4 /* db */
        start local 4 // org.hsqldb.Database db
         2: .line 245
            aload 4 /* db */
            dup
            astore 5
            monitorenter
         3: .line 246
            aload 4 /* db */
            invokevirtual org.hsqldb.Database.getState:()I
            tableswitch { // 1 - 4
                    1: 4
                    2: 9
                    3: 9
                    4: 5
              default: 12
          }
         4: .line 249
      StackMap locals: org.hsqldb.DatabaseType org.hsqldb.Database org.hsqldb.Database
      StackMap stack:
            goto 12
         5: .line 255
      StackMap locals:
      StackMap stack:
            aload 3 /* type */
            aload 1 /* path */
            invokestatic org.hsqldb.DatabaseManager.lookupDatabaseObject:(Lorg/hsqldb/DatabaseType;Ljava/lang/String;)Lorg/hsqldb/Database;
            ifnonnull 7
         6: .line 256
            aload 3 /* type */
            aload 1 /* path */
            aload 4 /* db */
            invokestatic org.hsqldb.DatabaseManager.addDatabaseObject:(Lorg/hsqldb/DatabaseType;Ljava/lang/String;Lorg/hsqldb/Database;)V
         7: .line 259
      StackMap locals:
      StackMap stack:
            aload 4 /* db */
            invokevirtual org.hsqldb.Database.open:()V
         8: .line 260
            goto 12
         9: .line 275
      StackMap locals:
      StackMap stack:
            sipush 451
        10: .line 276
            bipush 23
        11: .line 275
            invokestatic org.hsqldb.error.Error.error:(II)Lorg/hsqldb/HsqlException;
            athrow
        12: .line 245
      StackMap locals:
      StackMap stack:
            aload 5
            monitorexit
        13: goto 16
      StackMap locals:
      StackMap stack: java.lang.Throwable
        14: aload 5
            monitorexit
        15: athrow
        16: .line 280
      StackMap locals:
      StackMap stack:
            aload 4 /* db */
            areturn
        end local 4 // org.hsqldb.Database db
        end local 3 // org.hsqldb.DatabaseType type
        end local 2 // org.hsqldb.persist.HsqlProperties props
        end local 1 // java.lang.String path
        end local 0 // java.lang.String dbtype
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   17     0  dbtype  Ljava/lang/String;
            0   17     1    path  Ljava/lang/String;
            0   17     2   props  Lorg/hsqldb/persist/HsqlProperties;
            1   17     3    type  Lorg/hsqldb/DatabaseType;
            2   17     4      db  Lorg/hsqldb/Database;
      Exception table:
        from    to  target  type
           3    13      14  any
          14    15      14  any
    MethodParameters:
        Name  Flags
      dbtype  
      path    
      props   

  private static synchronized org.hsqldb.Database getDatabaseObject(org.hsqldb.DatabaseType, java.lang.String, org.hsqldb.persist.HsqlProperties);
    descriptor: (Lorg/hsqldb/DatabaseType;Ljava/lang/String;Lorg/hsqldb/persist/HsqlProperties;)Lorg/hsqldb/Database;
    flags: (0x002a) ACC_PRIVATE, ACC_STATIC, ACC_SYNCHRONIZED
    Code:
      stack=6, locals=9, args_size=3
        start local 0 // org.hsqldb.DatabaseType type
        start local 1 // java.lang.String path
        start local 2 // org.hsqldb.persist.HsqlProperties props
         0: .line 287
            aload 1 /* path */
            astore 4 /* key */
        start local 4 // java.lang.String key
         1: .line 290
            invokestatic org.hsqldb.DatabaseManager.$SWITCH_TABLE$org$hsqldb$DatabaseType:()[I
            aload 0 /* type */
            invokevirtual org.hsqldb.DatabaseType.ordinal:()I
            iaload
            tableswitch { // 1 - 3
                    1: 21
                    2: 2
                    3: 19
              default: 23
          }
         2: .line 293
      StackMap locals: org.hsqldb.DatabaseType java.lang.String org.hsqldb.persist.HsqlProperties top java.lang.String
      StackMap stack:
            getstatic org.hsqldb.DatabaseManager.fileDatabaseMap:Lorg/hsqldb/lib/HashMap;
            astore 5 /* databaseMap */
        start local 5 // org.hsqldb.lib.HashMap databaseMap
         3: .line 294
            aload 1 /* path */
            invokestatic org.hsqldb.DatabaseManager.filePathToKey:(Ljava/lang/String;)Ljava/lang/String;
            astore 4 /* key */
         4: .line 296
            aload 5 /* databaseMap */
            dup
            astore 6
            monitorenter
         5: .line 297
            aload 5 /* databaseMap */
            aload 4 /* key */
            invokevirtual org.hsqldb.lib.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.hsqldb.Database
            astore 3 /* db */
        start local 3 // org.hsqldb.Database db
         6: .line 299
            aload 3 /* db */
            ifnonnull 15
         7: .line 300
            aload 5 /* databaseMap */
            invokevirtual org.hsqldb.lib.HashMap.size:()I
            ifle 15
         8: .line 301
            aload 5 /* databaseMap */
            invokevirtual org.hsqldb.lib.HashMap.keySet:()Lorg/hsqldb/lib/Set;
            invokeinterface org.hsqldb.lib.Set.iterator:()Lorg/hsqldb/lib/Iterator;
            astore 7 /* it */
        start local 7 // org.hsqldb.lib.Iterator it
         9: .line 303
            goto 14
        10: .line 304
      StackMap locals: org.hsqldb.DatabaseType java.lang.String org.hsqldb.persist.HsqlProperties org.hsqldb.Database java.lang.String org.hsqldb.lib.HashMap org.hsqldb.lib.HashMap org.hsqldb.lib.Iterator
      StackMap stack:
            aload 7 /* it */
            invokeinterface org.hsqldb.lib.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 8 /* current */
        start local 8 // java.lang.String current
        11: .line 306
            aload 4 /* key */
            aload 8 /* current */
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 14
        12: .line 307
            aload 8 /* current */
            astore 4 /* key */
        13: .line 309
            goto 15
        end local 8 // java.lang.String current
        14: .line 303
      StackMap locals:
      StackMap stack:
            aload 7 /* it */
            invokeinterface org.hsqldb.lib.Iterator.hasNext:()Z
            ifne 10
        end local 7 // org.hsqldb.lib.Iterator it
        15: .line 296
      StackMap locals:
      StackMap stack:
            aload 6
            monitorexit
        16: goto 24
        end local 3 // org.hsqldb.Database db
      StackMap locals: org.hsqldb.DatabaseType java.lang.String org.hsqldb.persist.HsqlProperties top java.lang.String org.hsqldb.lib.HashMap org.hsqldb.lib.HashMap
      StackMap stack: java.lang.Throwable
        17: aload 6
            monitorexit
        18: athrow
        end local 5 // org.hsqldb.lib.HashMap databaseMap
        19: .line 319
      StackMap locals:
      StackMap stack:
            getstatic org.hsqldb.DatabaseManager.resDatabaseMap:Lorg/hsqldb/lib/HashMap;
            astore 5 /* databaseMap */
        start local 5 // org.hsqldb.lib.HashMap databaseMap
        20: .line 321
            goto 24
        end local 5 // org.hsqldb.lib.HashMap databaseMap
        21: .line 324
      StackMap locals:
      StackMap stack:
            getstatic org.hsqldb.DatabaseManager.memDatabaseMap:Lorg/hsqldb/lib/HashMap;
            astore 5 /* databaseMap */
        start local 5 // org.hsqldb.lib.HashMap databaseMap
        22: .line 326
            goto 24
        end local 5 // org.hsqldb.lib.HashMap databaseMap
        23: .line 329
      StackMap locals:
      StackMap stack:
            sipush 201
            ldc "DatabaseManager"
            invokestatic org.hsqldb.error.Error.runtimeError:(ILjava/lang/String;)Ljava/lang/RuntimeException;
            athrow
        start local 5 // org.hsqldb.lib.HashMap databaseMap
        24: .line 332
      StackMap locals: org.hsqldb.lib.HashMap
      StackMap stack:
            aload 5 /* databaseMap */
            dup
            astore 6
            monitorenter
        25: .line 333
            aload 5 /* databaseMap */
            aload 4 /* key */
            invokevirtual org.hsqldb.lib.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.hsqldb.Database
            astore 3 /* db */
        start local 3 // org.hsqldb.Database db
        26: .line 332
            aload 6
            monitorexit
        27: goto 30
        end local 3 // org.hsqldb.Database db
      StackMap locals: org.hsqldb.DatabaseType java.lang.String org.hsqldb.persist.HsqlProperties top java.lang.String org.hsqldb.lib.HashMap org.hsqldb.lib.HashMap
      StackMap stack: java.lang.Throwable
        28: aload 6
            monitorexit
        29: athrow
        start local 3 // org.hsqldb.Database db
        30: .line 336
      StackMap locals: org.hsqldb.DatabaseType java.lang.String org.hsqldb.persist.HsqlProperties org.hsqldb.Database java.lang.String org.hsqldb.lib.HashMap
      StackMap stack:
            aload 3 /* db */
            ifnonnull 45
        31: .line 337
            new org.hsqldb.Database
            dup
            aload 0 /* type */
            aload 1 /* path */
            aload 4 /* key */
            aload 2 /* props */
            invokespecial org.hsqldb.Database.<init>:(Lorg/hsqldb/DatabaseType;Ljava/lang/String;Ljava/lang/String;Lorg/hsqldb/persist/HsqlProperties;)V
            astore 3 /* db */
        32: .line 338
            aload 3 /* db */
            getstatic org.hsqldb.DatabaseManager.dbIDCounter:Ljava/util/concurrent/atomic/AtomicInteger;
            invokevirtual java.util.concurrent.atomic.AtomicInteger.getAndIncrement:()I
            putfield org.hsqldb.Database.databaseID:I
        33: .line 340
            getstatic org.hsqldb.DatabaseManager.databaseIDMap:Lorg/hsqldb/lib/IntKeyHashMap;
            dup
            astore 6
            monitorenter
        34: .line 341
            getstatic org.hsqldb.DatabaseManager.databaseIDMap:Lorg/hsqldb/lib/IntKeyHashMap;
            aload 3 /* db */
            getfield org.hsqldb.Database.databaseID:I
            aload 3 /* db */
            invokevirtual org.hsqldb.lib.IntKeyHashMap.put:(ILjava/lang/Object;)Ljava/lang/Object;
            pop
        35: .line 340
            aload 6
            monitorexit
        36: goto 39
      StackMap locals: org.hsqldb.DatabaseType java.lang.String org.hsqldb.persist.HsqlProperties org.hsqldb.Database java.lang.String org.hsqldb.lib.HashMap org.hsqldb.lib.IntKeyHashMap
      StackMap stack: java.lang.Throwable
        37: aload 6
            monitorexit
        38: athrow
        39: .line 344
      StackMap locals:
      StackMap stack:
            aload 5 /* databaseMap */
            dup
            astore 6
            monitorenter
        40: .line 345
            aload 5 /* databaseMap */
            aload 4 /* key */
            aload 3 /* db */
            invokevirtual org.hsqldb.lib.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        41: .line 344
            aload 6
            monitorexit
        42: goto 45
      StackMap locals: org.hsqldb.DatabaseType java.lang.String org.hsqldb.persist.HsqlProperties org.hsqldb.Database java.lang.String org.hsqldb.lib.HashMap org.hsqldb.lib.HashMap
      StackMap stack: java.lang.Throwable
        43: aload 6
            monitorexit
        44: athrow
        45: .line 349
      StackMap locals:
      StackMap stack:
            aload 3 /* db */
            areturn
        end local 5 // org.hsqldb.lib.HashMap databaseMap
        end local 4 // java.lang.String key
        end local 3 // org.hsqldb.Database db
        end local 2 // org.hsqldb.persist.HsqlProperties props
        end local 1 // java.lang.String path
        end local 0 // org.hsqldb.DatabaseType type
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   46     0         type  Lorg/hsqldb/DatabaseType;
            0   46     1         path  Ljava/lang/String;
            0   46     2        props  Lorg/hsqldb/persist/HsqlProperties;
            6   17     3           db  Lorg/hsqldb/Database;
           26   28     3           db  Lorg/hsqldb/Database;
           30   46     3           db  Lorg/hsqldb/Database;
            1   46     4          key  Ljava/lang/String;
            3   19     5  databaseMap  Lorg/hsqldb/lib/HashMap;
           20   21     5  databaseMap  Lorg/hsqldb/lib/HashMap;
           22   23     5  databaseMap  Lorg/hsqldb/lib/HashMap;
           24   46     5  databaseMap  Lorg/hsqldb/lib/HashMap;
            9   15     7           it  Lorg/hsqldb/lib/Iterator;
           11   14     8      current  Ljava/lang/String;
      Exception table:
        from    to  target  type
           5    16      17  any
          17    18      17  any
          25    27      28  any
          28    29      28  any
          34    36      37  any
          37    38      37  any
          40    42      43  any
          43    44      43  any
    MethodParameters:
       Name  Flags
      type   
      path   
      props  

  public static synchronized org.hsqldb.Database lookupDatabaseObject(org.hsqldb.DatabaseType, java.lang.String);
    descriptor: (Lorg/hsqldb/DatabaseType;Ljava/lang/String;)Lorg/hsqldb/Database;
    flags: (0x0029) ACC_PUBLIC, ACC_STATIC, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=5, args_size=2
        start local 0 // org.hsqldb.DatabaseType type
        start local 1 // java.lang.String path
         0: .line 359
            aload 1 /* path */
            astore 2 /* key */
        start local 2 // java.lang.Object key
         1: .line 362
            invokestatic org.hsqldb.DatabaseManager.$SWITCH_TABLE$org$hsqldb$DatabaseType:()[I
            aload 0 /* type */
            invokevirtual org.hsqldb.DatabaseType.ordinal:()I
            iaload
            tableswitch { // 1 - 3
                    1: 7
                    2: 2
                    3: 5
              default: 9
          }
         2: .line 365
      StackMap locals: java.lang.Object
      StackMap stack:
            getstatic org.hsqldb.DatabaseManager.fileDatabaseMap:Lorg/hsqldb/lib/HashMap;
            astore 3 /* databaseMap */
        start local 3 // org.hsqldb.lib.HashMap databaseMap
         3: .line 366
            aload 1 /* path */
            invokestatic org.hsqldb.DatabaseManager.filePathToKey:(Ljava/lang/String;)Ljava/lang/String;
            astore 2 /* key */
         4: .line 367
            goto 12
        end local 3 // org.hsqldb.lib.HashMap databaseMap
         5: .line 370
      StackMap locals:
      StackMap stack:
            getstatic org.hsqldb.DatabaseManager.resDatabaseMap:Lorg/hsqldb/lib/HashMap;
            astore 3 /* databaseMap */
        start local 3 // org.hsqldb.lib.HashMap databaseMap
         6: .line 371
            goto 12
        end local 3 // org.hsqldb.lib.HashMap databaseMap
         7: .line 374
      StackMap locals:
      StackMap stack:
            getstatic org.hsqldb.DatabaseManager.memDatabaseMap:Lorg/hsqldb/lib/HashMap;
            astore 3 /* databaseMap */
        start local 3 // org.hsqldb.lib.HashMap databaseMap
         8: .line 375
            goto 12
        end local 3 // org.hsqldb.lib.HashMap databaseMap
         9: .line 378
      StackMap locals:
      StackMap stack:
            sipush 201
        10: .line 379
            ldc "DatabaseManager"
        11: .line 378
            invokestatic org.hsqldb.error.Error.runtimeError:(ILjava/lang/String;)Ljava/lang/RuntimeException;
            athrow
        start local 3 // org.hsqldb.lib.HashMap databaseMap
        12: .line 382
      StackMap locals: org.hsqldb.lib.HashMap
      StackMap stack:
            aload 3 /* databaseMap */
            dup
            astore 4
            monitorenter
        13: .line 383
            aload 3 /* databaseMap */
            aload 2 /* key */
            invokevirtual org.hsqldb.lib.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.hsqldb.Database
            aload 4
            monitorexit
        14: areturn
        15: .line 382
      StackMap locals: org.hsqldb.DatabaseType java.lang.String java.lang.Object org.hsqldb.lib.HashMap org.hsqldb.lib.HashMap
      StackMap stack: java.lang.Throwable
            aload 4
            monitorexit
        16: athrow
        end local 3 // org.hsqldb.lib.HashMap databaseMap
        end local 2 // java.lang.Object key
        end local 1 // java.lang.String path
        end local 0 // org.hsqldb.DatabaseType type
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   17     0         type  Lorg/hsqldb/DatabaseType;
            0   17     1         path  Ljava/lang/String;
            1   17     2          key  Ljava/lang/Object;
            3    5     3  databaseMap  Lorg/hsqldb/lib/HashMap;
            6    7     3  databaseMap  Lorg/hsqldb/lib/HashMap;
            8    9     3  databaseMap  Lorg/hsqldb/lib/HashMap;
           12   17     3  databaseMap  Lorg/hsqldb/lib/HashMap;
      Exception table:
        from    to  target  type
          13    14      15  any
          15    16      15  any
    MethodParameters:
      Name  Flags
      type  
      path  

  private static synchronized void addDatabaseObject(org.hsqldb.DatabaseType, java.lang.String, org.hsqldb.Database);
    descriptor: (Lorg/hsqldb/DatabaseType;Ljava/lang/String;Lorg/hsqldb/Database;)V
    flags: (0x002a) ACC_PRIVATE, ACC_STATIC, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // org.hsqldb.DatabaseType type
        start local 1 // java.lang.String path
        start local 2 // org.hsqldb.Database db
         0: .line 393
            aload 1 /* path */
            astore 3 /* key */
        start local 3 // java.lang.Object key
         1: .line 396
            invokestatic org.hsqldb.DatabaseManager.$SWITCH_TABLE$org$hsqldb$DatabaseType:()[I
            aload 0 /* type */
            invokevirtual org.hsqldb.DatabaseType.ordinal:()I
            iaload
            tableswitch { // 1 - 3
                    1: 7
                    2: 2
                    3: 5
              default: 9
          }
         2: .line 399
      StackMap locals: java.lang.Object
      StackMap stack:
            getstatic org.hsqldb.DatabaseManager.fileDatabaseMap:Lorg/hsqldb/lib/HashMap;
            astore 4 /* databaseMap */
        start local 4 // org.hsqldb.lib.HashMap databaseMap
         3: .line 400
            aload 1 /* path */
            invokestatic org.hsqldb.DatabaseManager.filePathToKey:(Ljava/lang/String;)Ljava/lang/String;
            astore 3 /* key */
         4: .line 401
            goto 12
        end local 4 // org.hsqldb.lib.HashMap databaseMap
         5: .line 404
      StackMap locals:
      StackMap stack:
            getstatic org.hsqldb.DatabaseManager.resDatabaseMap:Lorg/hsqldb/lib/HashMap;
            astore 4 /* databaseMap */
        start local 4 // org.hsqldb.lib.HashMap databaseMap
         6: .line 405
            goto 12
        end local 4 // org.hsqldb.lib.HashMap databaseMap
         7: .line 408
      StackMap locals:
      StackMap stack:
            getstatic org.hsqldb.DatabaseManager.memDatabaseMap:Lorg/hsqldb/lib/HashMap;
            astore 4 /* databaseMap */
        start local 4 // org.hsqldb.lib.HashMap databaseMap
         8: .line 409
            goto 12
        end local 4 // org.hsqldb.lib.HashMap databaseMap
         9: .line 412
      StackMap locals:
      StackMap stack:
            sipush 201
        10: .line 413
            ldc "DatabaseManager"
        11: .line 412
            invokestatic org.hsqldb.error.Error.runtimeError:(ILjava/lang/String;)Ljava/lang/RuntimeException;
            athrow
        start local 4 // org.hsqldb.lib.HashMap databaseMap
        12: .line 416
      StackMap locals: org.hsqldb.lib.HashMap
      StackMap stack:
            getstatic org.hsqldb.DatabaseManager.databaseIDMap:Lorg/hsqldb/lib/IntKeyHashMap;
            dup
            astore 5
            monitorenter
        13: .line 417
            getstatic org.hsqldb.DatabaseManager.databaseIDMap:Lorg/hsqldb/lib/IntKeyHashMap;
            aload 2 /* db */
            getfield org.hsqldb.Database.databaseID:I
            aload 2 /* db */
            invokevirtual org.hsqldb.lib.IntKeyHashMap.put:(ILjava/lang/Object;)Ljava/lang/Object;
            pop
        14: .line 416
            aload 5
            monitorexit
        15: goto 18
      StackMap locals: org.hsqldb.DatabaseType java.lang.String org.hsqldb.Database java.lang.Object org.hsqldb.lib.HashMap org.hsqldb.lib.IntKeyHashMap
      StackMap stack: java.lang.Throwable
        16: aload 5
            monitorexit
        17: athrow
        18: .line 420
      StackMap locals:
      StackMap stack:
            aload 4 /* databaseMap */
            dup
            astore 5
            monitorenter
        19: .line 421
            aload 4 /* databaseMap */
            aload 3 /* key */
            aload 2 /* db */
            invokevirtual org.hsqldb.lib.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        20: .line 420
            aload 5
            monitorexit
        21: goto 24
      StackMap locals: org.hsqldb.DatabaseType java.lang.String org.hsqldb.Database java.lang.Object org.hsqldb.lib.HashMap org.hsqldb.lib.HashMap
      StackMap stack: java.lang.Throwable
        22: aload 5
            monitorexit
        23: athrow
        24: .line 423
      StackMap locals:
      StackMap stack:
            return
        end local 4 // org.hsqldb.lib.HashMap databaseMap
        end local 3 // java.lang.Object key
        end local 2 // org.hsqldb.Database db
        end local 1 // java.lang.String path
        end local 0 // org.hsqldb.DatabaseType type
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   25     0         type  Lorg/hsqldb/DatabaseType;
            0   25     1         path  Ljava/lang/String;
            0   25     2           db  Lorg/hsqldb/Database;
            1   25     3          key  Ljava/lang/Object;
            3    5     4  databaseMap  Lorg/hsqldb/lib/HashMap;
            6    7     4  databaseMap  Lorg/hsqldb/lib/HashMap;
            8    9     4  databaseMap  Lorg/hsqldb/lib/HashMap;
           12   25     4  databaseMap  Lorg/hsqldb/lib/HashMap;
      Exception table:
        from    to  target  type
          13    15      16  any
          16    17      16  any
          19    21      22  any
          22    23      22  any
    MethodParameters:
      Name  Flags
      type  
      path  
      db    

  static void removeDatabase(org.hsqldb.Database);
    descriptor: (Lorg/hsqldb/Database;)V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=8, args_size=1
        start local 0 // org.hsqldb.Database database
         0: .line 430
            aload 0 /* database */
            getfield org.hsqldb.Database.databaseID:I
            istore 1 /* dbID */
        start local 1 // int dbID
         1: .line 431
            aload 0 /* database */
            invokevirtual org.hsqldb.Database.getType:()Lorg/hsqldb/DatabaseType;
            astore 2 /* type */
        start local 2 // org.hsqldb.DatabaseType type
         2: .line 432
            aload 0 /* database */
            invokevirtual org.hsqldb.Database.getPath:()Ljava/lang/String;
            astore 3 /* path */
        start local 3 // java.lang.String path
         3: .line 433
            aload 3 /* path */
            astore 4 /* key */
        start local 4 // java.lang.Object key
         4: .line 436
            aload 0 /* database */
            invokestatic org.hsqldb.DatabaseManager.notifyServers:(Lorg/hsqldb/Database;)V
         5: .line 438
            aload 2 /* type */
            getstatic org.hsqldb.DatabaseType.DB_FILE:Lorg/hsqldb/DatabaseType;
            if_acmpne 9
         6: .line 439
            getstatic org.hsqldb.DatabaseManager.fileDatabaseMap:Lorg/hsqldb/lib/HashMap;
            astore 5 /* databaseMap */
        start local 5 // org.hsqldb.lib.HashMap databaseMap
         7: .line 440
            aload 3 /* path */
            invokestatic org.hsqldb.DatabaseManager.filePathToKey:(Ljava/lang/String;)Ljava/lang/String;
            astore 4 /* key */
         8: .line 441
            goto 16
        end local 5 // org.hsqldb.lib.HashMap databaseMap
      StackMap locals: org.hsqldb.Database int org.hsqldb.DatabaseType java.lang.String java.lang.Object
      StackMap stack:
         9: aload 2 /* type */
            getstatic org.hsqldb.DatabaseType.DB_RES:Lorg/hsqldb/DatabaseType;
            if_acmpne 12
        10: .line 442
            getstatic org.hsqldb.DatabaseManager.resDatabaseMap:Lorg/hsqldb/lib/HashMap;
            astore 5 /* databaseMap */
        start local 5 // org.hsqldb.lib.HashMap databaseMap
        11: .line 443
            goto 16
        end local 5 // org.hsqldb.lib.HashMap databaseMap
      StackMap locals:
      StackMap stack:
        12: aload 2 /* type */
            getstatic org.hsqldb.DatabaseType.DB_MEM:Lorg/hsqldb/DatabaseType;
            if_acmpne 15
        13: .line 444
            getstatic org.hsqldb.DatabaseManager.memDatabaseMap:Lorg/hsqldb/lib/HashMap;
            astore 5 /* databaseMap */
        start local 5 // org.hsqldb.lib.HashMap databaseMap
        14: .line 445
            goto 16
        end local 5 // org.hsqldb.lib.HashMap databaseMap
        15: .line 446
      StackMap locals:
      StackMap stack:
            sipush 201
            ldc "DatabaseManager"
            invokestatic org.hsqldb.error.Error.runtimeError:(ILjava/lang/String;)Ljava/lang/RuntimeException;
            athrow
        start local 5 // org.hsqldb.lib.HashMap databaseMap
        16: .line 449
      StackMap locals: org.hsqldb.lib.HashMap
      StackMap stack:
            iconst_0
            istore 6 /* isEmpty */
        start local 6 // boolean isEmpty
        17: .line 451
            getstatic org.hsqldb.DatabaseManager.databaseIDMap:Lorg/hsqldb/lib/IntKeyHashMap;
            dup
            astore 7
            monitorenter
        18: .line 452
            getstatic org.hsqldb.DatabaseManager.databaseIDMap:Lorg/hsqldb/lib/IntKeyHashMap;
            iload 1 /* dbID */
            invokevirtual org.hsqldb.lib.IntKeyHashMap.remove:(I)Ljava/lang/Object;
            pop
        19: .line 454
            getstatic org.hsqldb.DatabaseManager.databaseIDMap:Lorg/hsqldb/lib/IntKeyHashMap;
            invokevirtual org.hsqldb.lib.IntKeyHashMap.isEmpty:()Z
            istore 6 /* isEmpty */
        20: .line 451
            aload 7
            monitorexit
        21: goto 24
      StackMap locals: org.hsqldb.Database int org.hsqldb.DatabaseType java.lang.String java.lang.Object org.hsqldb.lib.HashMap int org.hsqldb.lib.IntKeyHashMap
      StackMap stack: java.lang.Throwable
        22: aload 7
            monitorexit
        23: athrow
        24: .line 457
      StackMap locals:
      StackMap stack:
            aload 5 /* databaseMap */
            dup
            astore 7
            monitorenter
        25: .line 458
            aload 5 /* databaseMap */
            aload 4 /* key */
            invokevirtual org.hsqldb.lib.HashMap.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
        26: .line 457
            aload 7
            monitorexit
        27: goto 30
      StackMap locals: org.hsqldb.Database int org.hsqldb.DatabaseType java.lang.String java.lang.Object org.hsqldb.lib.HashMap int org.hsqldb.lib.HashMap
      StackMap stack: java.lang.Throwable
        28: aload 7
            monitorexit
        29: athrow
        30: .line 461
      StackMap locals:
      StackMap stack:
            iload 6 /* isEmpty */
            ifeq 32
        31: .line 462
            invokestatic org.hsqldb.map.ValuePool.resetPool:()V
        32: .line 464
      StackMap locals:
      StackMap stack:
            return
        end local 6 // boolean isEmpty
        end local 5 // org.hsqldb.lib.HashMap databaseMap
        end local 4 // java.lang.Object key
        end local 3 // java.lang.String path
        end local 2 // org.hsqldb.DatabaseType type
        end local 1 // int dbID
        end local 0 // org.hsqldb.Database database
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   33     0     database  Lorg/hsqldb/Database;
            1   33     1         dbID  I
            2   33     2         type  Lorg/hsqldb/DatabaseType;
            3   33     3         path  Ljava/lang/String;
            4   33     4          key  Ljava/lang/Object;
            7    9     5  databaseMap  Lorg/hsqldb/lib/HashMap;
           11   12     5  databaseMap  Lorg/hsqldb/lib/HashMap;
           14   15     5  databaseMap  Lorg/hsqldb/lib/HashMap;
           16   33     5  databaseMap  Lorg/hsqldb/lib/HashMap;
           17   33     6      isEmpty  Z
      Exception table:
        from    to  target  type
          18    21      22  any
          22    23      22  any
          25    27      28  any
          28    29      28  any
    MethodParameters:
          Name  Flags
      database  

  public static void deRegisterServer(org.hsqldb.lib.Notified);
    descriptor: (Lorg/hsqldb/lib/Notified;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.hsqldb.lib.Notified server
         0: .line 480
            getstatic org.hsqldb.DatabaseManager.serverMap:Lorg/hsqldb/lib/HashMap;
            dup
            astore 1
            monitorenter
         1: .line 481
            getstatic org.hsqldb.DatabaseManager.serverMap:Lorg/hsqldb/lib/HashMap;
            aload 0 /* server */
            invokevirtual org.hsqldb.lib.HashMap.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 480
            aload 1
            monitorexit
         3: goto 6
      StackMap locals: org.hsqldb.lib.Notified org.hsqldb.lib.HashMap
      StackMap stack: java.lang.Throwable
         4: aload 1
            monitorexit
         5: athrow
         6: .line 483
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.hsqldb.lib.Notified server
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0  server  Lorg/hsqldb/lib/Notified;
      Exception table:
        from    to  target  type
           1     3       4  any
           4     5       4  any
    MethodParameters:
        Name  Flags
      server  

  private static void registerServer(org.hsqldb.lib.Notified, org.hsqldb.Database);
    descriptor: (Lorg/hsqldb/lib/Notified;Lorg/hsqldb/Database;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // org.hsqldb.lib.Notified server
        start local 1 // org.hsqldb.Database db
         0: .line 490
            getstatic org.hsqldb.DatabaseManager.serverMap:Lorg/hsqldb/lib/HashMap;
            dup
            astore 2
            monitorenter
         1: .line 491
            getstatic org.hsqldb.DatabaseManager.serverMap:Lorg/hsqldb/lib/HashMap;
            aload 0 /* server */
            invokevirtual org.hsqldb.lib.HashMap.containsKey:(Ljava/lang/Object;)Z
            ifne 3
         2: .line 492
            getstatic org.hsqldb.DatabaseManager.serverMap:Lorg/hsqldb/lib/HashMap;
            aload 0 /* server */
            new org.hsqldb.lib.HashSet
            dup
            invokespecial org.hsqldb.lib.HashSet.<init>:()V
            invokevirtual org.hsqldb.lib.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         3: .line 495
      StackMap locals: org.hsqldb.lib.HashMap
      StackMap stack:
            getstatic org.hsqldb.DatabaseManager.serverMap:Lorg/hsqldb/lib/HashMap;
            aload 0 /* server */
            invokevirtual org.hsqldb.lib.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.hsqldb.lib.HashSet
            astore 3 /* databases */
        start local 3 // org.hsqldb.lib.HashSet databases
         4: .line 497
            aload 3 /* databases */
            aload 1 /* db */
            invokevirtual org.hsqldb.lib.HashSet.add:(Ljava/lang/Object;)Z
            pop
        end local 3 // org.hsqldb.lib.HashSet databases
         5: .line 490
            aload 2
            monitorexit
         6: goto 9
      StackMap locals:
      StackMap stack: java.lang.Throwable
         7: aload 2
            monitorexit
         8: athrow
         9: .line 499
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.hsqldb.Database db
        end local 0 // org.hsqldb.lib.Notified server
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   10     0     server  Lorg/hsqldb/lib/Notified;
            0   10     1         db  Lorg/hsqldb/Database;
            4    5     3  databases  Lorg/hsqldb/lib/HashSet;
      Exception table:
        from    to  target  type
           1     6       7  any
           7     8       7  any
    MethodParameters:
        Name  Flags
      server  
      db      

  private static void notifyServers(org.hsqldb.Database);
    descriptor: (Lorg/hsqldb/Database;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=7, args_size=1
        start local 0 // org.hsqldb.Database db
         0: .line 509
            getstatic org.hsqldb.DatabaseManager.serverMap:Lorg/hsqldb/lib/HashMap;
            dup
            astore 2
            monitorenter
         1: .line 510
            getstatic org.hsqldb.DatabaseManager.serverMap:Lorg/hsqldb/lib/HashMap;
            invokevirtual org.hsqldb.lib.HashMap.size:()I
            anewarray org.hsqldb.lib.Notified
            astore 1 /* servers */
        start local 1 // org.hsqldb.lib.Notified[] servers
         2: .line 512
            getstatic org.hsqldb.DatabaseManager.serverMap:Lorg/hsqldb/lib/HashMap;
            aload 1 /* servers */
            invokevirtual org.hsqldb.lib.HashMap.keysToArray:([Ljava/lang/Object;)V
         3: .line 509
            aload 2
            monitorexit
         4: goto 7
        end local 1 // org.hsqldb.lib.Notified[] servers
      StackMap locals: org.hsqldb.Database top org.hsqldb.lib.HashMap
      StackMap stack: java.lang.Throwable
         5: aload 2
            monitorexit
         6: athrow
        start local 1 // org.hsqldb.lib.Notified[] servers
         7: .line 515
      StackMap locals: org.hsqldb.Database org.hsqldb.lib.Notified[]
      StackMap stack:
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         8: goto 27
         9: .line 516
      StackMap locals: int
      StackMap stack:
            aload 1 /* servers */
            iload 2 /* i */
            aaload
            astore 3 /* server */
        start local 3 // org.hsqldb.lib.Notified server
        10: .line 518
            iconst_0
            istore 5 /* removed */
        start local 5 // boolean removed
        11: .line 520
            getstatic org.hsqldb.DatabaseManager.serverMap:Lorg/hsqldb/lib/HashMap;
            dup
            astore 6
            monitorenter
        12: .line 521
            getstatic org.hsqldb.DatabaseManager.serverMap:Lorg/hsqldb/lib/HashMap;
            aload 3 /* server */
            invokevirtual org.hsqldb.lib.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.hsqldb.lib.HashSet
            astore 4 /* databases */
        start local 4 // org.hsqldb.lib.HashSet databases
        13: .line 520
            aload 6
            monitorexit
        14: goto 17
        end local 4 // org.hsqldb.lib.HashSet databases
      StackMap locals: org.hsqldb.Database org.hsqldb.lib.Notified[] int org.hsqldb.lib.Notified top int org.hsqldb.lib.HashMap
      StackMap stack: java.lang.Throwable
        15: aload 6
            monitorexit
        16: athrow
        start local 4 // org.hsqldb.lib.HashSet databases
        17: .line 524
      StackMap locals: org.hsqldb.Database org.hsqldb.lib.Notified[] int org.hsqldb.lib.Notified org.hsqldb.lib.HashSet int
      StackMap stack:
            aload 4 /* databases */
            ifnull 24
        18: .line 525
            aload 4 /* databases */
            dup
            astore 6
            monitorenter
        19: .line 526
            aload 4 /* databases */
            aload 0 /* db */
            invokevirtual org.hsqldb.lib.HashSet.remove:(Ljava/lang/Object;)Z
            istore 5 /* removed */
        20: .line 525
            aload 6
            monitorexit
        21: goto 24
      StackMap locals: org.hsqldb.Database org.hsqldb.lib.Notified[] int org.hsqldb.lib.Notified org.hsqldb.lib.HashSet int org.hsqldb.lib.HashSet
      StackMap stack: java.lang.Throwable
        22: aload 6
            monitorexit
        23: athrow
        24: .line 530
      StackMap locals:
      StackMap stack:
            iload 5 /* removed */
            ifeq 26
        25: .line 531
            aload 3 /* server */
            aload 0 /* db */
            getfield org.hsqldb.Database.databaseID:I
            invokeinterface org.hsqldb.lib.Notified.notify:(I)V
        end local 5 // boolean removed
        end local 4 // org.hsqldb.lib.HashSet databases
        end local 3 // org.hsqldb.lib.Notified server
        26: .line 515
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        27: iload 2 /* i */
            aload 1 /* servers */
            arraylength
            if_icmplt 9
        end local 2 // int i
        28: .line 534
            return
        end local 1 // org.hsqldb.lib.Notified[] servers
        end local 0 // org.hsqldb.Database db
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   29     0         db  Lorg/hsqldb/Database;
            2    5     1    servers  [Lorg/hsqldb/lib/Notified;
            7   29     1    servers  [Lorg/hsqldb/lib/Notified;
            8   28     2          i  I
           10   26     3     server  Lorg/hsqldb/lib/Notified;
           13   15     4  databases  Lorg/hsqldb/lib/HashSet;
           17   26     4  databases  Lorg/hsqldb/lib/HashSet;
           11   26     5    removed  Z
      Exception table:
        from    to  target  type
           1     4       5  any
           5     6       5  any
          12    14      15  any
          15    16      15  any
          19    21      22  any
          22    23      22  any
    MethodParameters:
      Name  Flags
      db    

  static boolean isServerDB(org.hsqldb.Database);
    descriptor: (Lorg/hsqldb/Database;)Z
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=4, args_size=1
        start local 0 // org.hsqldb.Database db
         0: .line 538
            getstatic org.hsqldb.DatabaseManager.serverMap:Lorg/hsqldb/lib/HashMap;
            invokevirtual org.hsqldb.lib.HashMap.keySet:()Lorg/hsqldb/lib/Set;
            invokeinterface org.hsqldb.lib.Set.iterator:()Lorg/hsqldb/lib/Iterator;
            astore 1 /* it */
        start local 1 // org.hsqldb.lib.Iterator it
         1: .line 540
            goto 6
         2: .line 541
      StackMap locals: org.hsqldb.lib.Iterator
      StackMap stack:
            aload 1 /* it */
            invokeinterface org.hsqldb.lib.Iterator.next:()Ljava/lang/Object;
            checkcast org.hsqldb.lib.Notified
            astore 2 /* server */
        start local 2 // org.hsqldb.lib.Notified server
         3: .line 542
            getstatic org.hsqldb.DatabaseManager.serverMap:Lorg/hsqldb/lib/HashMap;
            aload 2 /* server */
            invokevirtual org.hsqldb.lib.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.hsqldb.lib.HashSet
            astore 3 /* databases */
        start local 3 // org.hsqldb.lib.HashSet databases
         4: .line 544
            aload 3 /* databases */
            aload 0 /* db */
            invokevirtual org.hsqldb.lib.HashSet.contains:(Ljava/lang/Object;)Z
            ifeq 6
         5: .line 545
            iconst_1
            ireturn
        end local 3 // org.hsqldb.lib.HashSet databases
        end local 2 // org.hsqldb.lib.Notified server
         6: .line 540
      StackMap locals:
      StackMap stack:
            aload 1 /* it */
            invokeinterface org.hsqldb.lib.Iterator.hasNext:()Z
            ifne 2
         7: .line 549
            iconst_0
            ireturn
        end local 1 // org.hsqldb.lib.Iterator it
        end local 0 // org.hsqldb.Database db
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0         db  Lorg/hsqldb/Database;
            1    8     1         it  Lorg/hsqldb/lib/Iterator;
            3    6     2     server  Lorg/hsqldb/lib/Notified;
            4    6     3  databases  Lorg/hsqldb/lib/HashSet;
    MethodParameters:
      Name  Flags
      db    

  public static org.hsqldb.lib.HsqlTimer getTimer();
    descriptor: ()Lorg/hsqldb/lib/HsqlTimer;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 556
            getstatic org.hsqldb.DatabaseManager.timer:Lorg/hsqldb/lib/HsqlTimer;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private static java.lang.String filePathToKey(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.String path
         0: .line 564
            invokestatic org.hsqldb.lib.FileUtil.getFileUtil:()Lorg/hsqldb/lib/FileUtil;
            aload 0 /* path */
            invokevirtual org.hsqldb.lib.FileUtil.canonicalPath:(Ljava/lang/String;)Ljava/lang/String;
         1: areturn
         2: .line 565
      StackMap locals:
      StackMap stack: java.lang.Exception
            pop
         3: .line 566
            aload 0 /* path */
            areturn
        end local 0 // java.lang.String path
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  path  Ljava/lang/String;
      Exception table:
        from    to  target  type
           0     1       2  Class java.lang.Exception
    MethodParameters:
      Name  Flags
      path  

  static int[] $SWITCH_TABLE$org$hsqldb$DatabaseType();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 64
            getstatic org.hsqldb.DatabaseManager.$SWITCH_TABLE$org$hsqldb$DatabaseType:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic org.hsqldb.DatabaseType.values:()[Lorg/hsqldb/DatabaseType;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic org.hsqldb.DatabaseType.DB_FILE:Lorg/hsqldb/DatabaseType;
            invokevirtual org.hsqldb.DatabaseType.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 org.hsqldb.DatabaseType.DB_MEM:Lorg/hsqldb/DatabaseType;
            invokevirtual org.hsqldb.DatabaseType.ordinal:()I
            iconst_1
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic org.hsqldb.DatabaseType.DB_RES:Lorg/hsqldb/DatabaseType;
            invokevirtual org.hsqldb.DatabaseType.ordinal:()I
            iconst_3
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            dup
            putstatic org.hsqldb.DatabaseManager.$SWITCH_TABLE$org$hsqldb$DatabaseType:[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
}
SourceFile: "DatabaseManager.java"