public class org.enhydra.jdbc.standard.StandardConnectionHandle extends org.enhydra.jdbc.core.CoreConnection
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.enhydra.jdbc.standard.StandardConnectionHandle
  super_class: org.enhydra.jdbc.core.CoreConnection
{
  org.enhydra.jdbc.standard.StandardPooledConnection pooledCon;
    descriptor: Lorg/enhydra/jdbc/standard/StandardPooledConnection;
    flags: (0x0000) 

  protected java.util.Hashtable masterPrepStmtCache;
    descriptor: Ljava/util/Hashtable;
    flags: (0x0004) ACC_PROTECTED

  int preparedStmtCacheSize;
    descriptor: I
    flags: (0x0000) 

  protected org.enhydra.jdbc.util.LRUCache preparedStatementCache;
    descriptor: Lorg/enhydra/jdbc/util/LRUCache;
    flags: (0x0004) ACC_PROTECTED

  public java.util.Hashtable inUse;
    descriptor: Ljava/util/Hashtable;
    flags: (0x0001) ACC_PUBLIC

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

  public boolean isReallyUsed;
    descriptor: Z
    flags: (0x0001) ACC_PUBLIC

  public void <init>(org.enhydra.jdbc.standard.StandardPooledConnection, java.util.Hashtable, int);
    descriptor: (Lorg/enhydra/jdbc/standard/StandardPooledConnection;Ljava/util/Hashtable;I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.enhydra.jdbc.standard.StandardConnectionHandle this
        start local 1 // org.enhydra.jdbc.standard.StandardPooledConnection pooledCon
        start local 2 // java.util.Hashtable preparedStatementCache
        start local 3 // int preparedStmtCacheSize
         0: .line 63
            aload 0 /* this */
            aload 1 /* pooledCon */
            invokevirtual org.enhydra.jdbc.standard.StandardPooledConnection.getPhysicalConnection:()Ljava/sql/Connection;
            invokespecial org.enhydra.jdbc.core.CoreConnection.<init>:(Ljava/sql/Connection;)V
         1: .line 50
            aload 0 /* this */
            aconst_null
            putfield org.enhydra.jdbc.standard.StandardConnectionHandle.preparedStatementCache:Lorg/enhydra/jdbc/util/LRUCache;
         2: .line 54
            aload 0 /* this */
            iconst_0
            putfield org.enhydra.jdbc.standard.StandardConnectionHandle.isReallyUsed:Z
         3: .line 64
            aload 0 /* this */
            aload 1 /* pooledCon */
            putfield org.enhydra.jdbc.standard.StandardConnectionHandle.pooledCon:Lorg/enhydra/jdbc/standard/StandardPooledConnection;
         4: .line 65
            aload 0 /* this */
            aload 2 /* preparedStatementCache */
            putfield org.enhydra.jdbc.standard.StandardConnectionHandle.masterPrepStmtCache:Ljava/util/Hashtable;
         5: .line 66
            aload 0 /* this */
            iload 3 /* preparedStmtCacheSize */
            putfield org.enhydra.jdbc.standard.StandardConnectionHandle.preparedStmtCacheSize:I
         6: .line 67
            aload 0 /* this */
            aload 1 /* pooledCon */
            getfield org.enhydra.jdbc.standard.StandardPooledConnection.dataSource:Lorg/enhydra/jdbc/standard/StandardConnectionPoolDataSource;
            getfield org.enhydra.jdbc.standard.StandardConnectionPoolDataSource.log:Lorg/enhydra/jdbc/util/Logger;
            putfield org.enhydra.jdbc.standard.StandardConnectionHandle.log:Lorg/enhydra/jdbc/util/Logger;
         7: .line 68
            aload 0 /* this */
            invokevirtual org.enhydra.jdbc.standard.StandardConnectionHandle.setupPreparedStatementCache:()V
         8: .line 69
            aload 0 /* this */
            new java.util.Hashtable
            dup
            bipush 10
            ldc 0.5
            invokespecial java.util.Hashtable.<init>:(IF)V
            putfield org.enhydra.jdbc.standard.StandardConnectionHandle.inUse:Ljava/util/Hashtable;
         9: .line 71
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.log:Lorg/enhydra/jdbc/util/Logger;
        10: .line 72
            new java.lang.StringBuilder
            dup
            ldc "StandardConnectionHandle:new StandardConnectionHandle with "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        11: .line 73
            iload 3 /* preparedStmtCacheSize */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
        12: .line 74
            ldc " prepared statement"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        13: .line 72
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        14: .line 71
            invokevirtual org.enhydra.jdbc.util.Logger.debug:(Ljava/lang/Object;)V
        15: .line 75
            return
        end local 3 // int preparedStmtCacheSize
        end local 2 // java.util.Hashtable preparedStatementCache
        end local 1 // org.enhydra.jdbc.standard.StandardPooledConnection pooledCon
        end local 0 // org.enhydra.jdbc.standard.StandardConnectionHandle this
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0   16     0                    this  Lorg/enhydra/jdbc/standard/StandardConnectionHandle;
            0   16     1               pooledCon  Lorg/enhydra/jdbc/standard/StandardPooledConnection;
            0   16     2  preparedStatementCache  Ljava/util/Hashtable;
            0   16     3   preparedStmtCacheSize  I
    MethodParameters:
                        Name  Flags
      pooledCon               
      preparedStatementCache  
      preparedStmtCacheSize   

  protected void setupPreparedStatementCache();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.enhydra.jdbc.standard.StandardConnectionHandle this
         0: .line 78
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.log:Lorg/enhydra/jdbc/util/Logger;
            ldc "StandardConnectionHandle:setupPreparedStatementCache start"
            invokevirtual org.enhydra.jdbc.util.Logger.debug:(Ljava/lang/Object;)V
         1: .line 79
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.preparedStmtCacheSize:I
            ifne 7
         2: .line 80
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.log:Lorg/enhydra/jdbc/util/Logger;
         3: .line 81
            ldc "StandardConnectionHandle:setupPreparedStatementCache return with 0"
         4: .line 80
            invokevirtual org.enhydra.jdbc.util.Logger.debug:(Ljava/lang/Object;)V
         5: .line 82
            aload 0 /* this */
            aconst_null
            putfield org.enhydra.jdbc.standard.StandardConnectionHandle.preparedStatementCache:Lorg/enhydra/jdbc/util/LRUCache;
         6: .line 83
            return
         7: .line 85
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.con:Ljava/sql/Connection;
            ifnonnull 9
         8: .line 86
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.log:Lorg/enhydra/jdbc/util/Logger;
            ldc "Connection is null"
            invokevirtual org.enhydra.jdbc.util.Logger.warn:(Ljava/lang/Object;)V
            goto 32
         9: .line 88
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
        10: .line 89
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.masterPrepStmtCache:Ljava/util/Hashtable;
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.con:Ljava/sql/Connection;
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            invokevirtual java.util.Hashtable.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.enhydra.jdbc.util.LRUCache
        11: .line 88
            putfield org.enhydra.jdbc.standard.StandardConnectionHandle.preparedStatementCache:Lorg/enhydra/jdbc/util/LRUCache;
        12: .line 90
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.preparedStatementCache:Lorg/enhydra/jdbc/util/LRUCache;
            ifnonnull 31
        13: .line 91
            aload 0 /* this */
        14: .line 92
            new org.enhydra.jdbc.standard.PreparedStatementCache
            dup
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.preparedStmtCacheSize:I
            invokespecial org.enhydra.jdbc.standard.PreparedStatementCache.<init>:(I)V
        15: .line 91
            putfield org.enhydra.jdbc.standard.StandardConnectionHandle.preparedStatementCache:Lorg/enhydra/jdbc/util/LRUCache;
        16: .line 93
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.preparedStatementCache:Lorg/enhydra/jdbc/util/LRUCache;
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.log:Lorg/enhydra/jdbc/util/Logger;
            invokevirtual org.enhydra.jdbc.util.LRUCache.setLogger:(Lorg/enhydra/jdbc/util/Logger;)V
        17: .line 94
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.masterPrepStmtCache:Ljava/util/Hashtable;
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.con:Ljava/sql/Connection;
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.preparedStatementCache:Lorg/enhydra/jdbc/util/LRUCache;
            invokevirtual java.util.Hashtable.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        18: .line 95
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.log:Lorg/enhydra/jdbc/util/Logger;
        19: .line 96
            new java.lang.StringBuilder
            dup
            ldc "StandardConnectionHandle:setupPreparedStatementCache preparedStatementCache.size(lru)='"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        20: .line 98
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.preparedStatementCache:Lorg/enhydra/jdbc/util/LRUCache;
            invokevirtual org.enhydra.jdbc.util.LRUCache.LRUSize:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
        21: .line 99
            ldc "' "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        22: .line 100
            ldc "preparedStatementCache.size(cache)='"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        23: .line 101
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.preparedStatementCache:Lorg/enhydra/jdbc/util/LRUCache;
            invokevirtual org.enhydra.jdbc.util.LRUCache.cacheSize:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
        24: .line 102
            ldc "' "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        25: .line 103
            ldc "masterPrepStmtCache.size='"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        26: .line 104
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.masterPrepStmtCache:Ljava/util/Hashtable;
            invokevirtual java.util.Hashtable.size:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
        27: .line 105
            ldc "' "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        28: .line 96
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        29: .line 95
            invokevirtual org.enhydra.jdbc.util.Logger.debug:(Ljava/lang/Object;)V
        30: .line 106
            goto 32
      StackMap locals:
      StackMap stack:
        31: aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.preparedStatementCache:Lorg/enhydra/jdbc/util/LRUCache;
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.log:Lorg/enhydra/jdbc/util/Logger;
            invokevirtual org.enhydra.jdbc.util.LRUCache.setLogger:(Lorg/enhydra/jdbc/util/Logger;)V
        32: .line 108
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.log:Lorg/enhydra/jdbc/util/Logger;
            ldc "StandardConnectionHandle:setupPreparedStatementCache end"
            invokevirtual org.enhydra.jdbc.util.Logger.debug:(Ljava/lang/Object;)V
        33: .line 109
            return
        end local 0 // org.enhydra.jdbc.standard.StandardConnectionHandle this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   34     0  this  Lorg/enhydra/jdbc/standard/StandardConnectionHandle;

  public void preInvoke();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.enhydra.jdbc.standard.StandardConnectionHandle this
         0: .line 116
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.closed:Z
            ifeq 2
         1: .line 117
            new java.sql.SQLException
            dup
            ldc "Connection is closed"
            invokespecial java.sql.SQLException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 118
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.enhydra.jdbc.standard.StandardConnectionHandle this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/enhydra/jdbc/standard/StandardConnectionHandle;
    Exceptions:
      throws java.sql.SQLException

  public void catchInvoke(java.sql.SQLException);
    descriptor: (Ljava/sql/SQLException;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.enhydra.jdbc.standard.StandardConnectionHandle this
        start local 1 // java.sql.SQLException e
         0: .line 126
            aload 1 /* e */
            athrow
        end local 1 // java.sql.SQLException e
        end local 0 // org.enhydra.jdbc.standard.StandardConnectionHandle this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/enhydra/jdbc/standard/StandardConnectionHandle;
            0    1     1     e  Ljava/sql/SQLException;
    Exceptions:
      throws java.sql.SQLException
    MethodParameters:
      Name  Flags
      e     

  public synchronized void close();
    descriptor: ()V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // org.enhydra.jdbc.standard.StandardConnectionHandle this
         0: .line 135
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.log:Lorg/enhydra/jdbc/util/Logger;
            ldc "StandardConnectionHandle:close"
            invokevirtual org.enhydra.jdbc.util.Logger.debug:(Ljava/lang/Object;)V
         1: .line 137
            aload 0 /* this */
            iconst_1
            putfield org.enhydra.jdbc.standard.StandardConnectionHandle.closed:Z
         2: .line 138
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.inUse:Ljava/util/Hashtable;
            invokevirtual java.util.Hashtable.keys:()Ljava/util/Enumeration;
            astore 1 /* keys */
        start local 1 // java.util.Enumeration keys
         3: .line 139
            goto 6
         4: .line 140
      StackMap locals: java.util.Enumeration
      StackMap stack:
            aload 1 /* keys */
            invokeinterface java.util.Enumeration.nextElement:()Ljava/lang/Object;
            astore 2 /* key */
        start local 2 // java.lang.Object key
         5: .line 141
            aload 0 /* this */
            aload 2 /* key */
            invokevirtual org.enhydra.jdbc.standard.StandardConnectionHandle.returnToCache:(Ljava/lang/Object;)V
        end local 2 // java.lang.Object key
         6: .line 139
      StackMap locals:
      StackMap stack:
            aload 1 /* keys */
            invokeinterface java.util.Enumeration.hasMoreElements:()Z
            ifne 4
         7: .line 143
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.pooledCon:Lorg/enhydra/jdbc/standard/StandardPooledConnection;
            invokevirtual org.enhydra.jdbc.standard.StandardPooledConnection.closeEvent:()V
         8: .line 145
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.preparedStatementCache:Lorg/enhydra/jdbc/util/LRUCache;
            ifnull 10
         9: .line 146
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.preparedStatementCache:Lorg/enhydra/jdbc/util/LRUCache;
            invokevirtual org.enhydra.jdbc.util.LRUCache.cleanupAll:()V
        10: .line 147
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.preparedStatementCache:Lorg/enhydra/jdbc/util/LRUCache;
            ifnull 23
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.masterPrepStmtCache:Ljava/util/Hashtable;
            ifnull 23
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.log:Lorg/enhydra/jdbc/util/Logger;
            ifnull 23
        11: .line 148
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.log:Lorg/enhydra/jdbc/util/Logger;
        12: .line 149
            new java.lang.StringBuilder
            dup
            ldc "StandardConnectionHandle:close preparedStatementCache.size(lru)='"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        13: .line 151
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.preparedStatementCache:Lorg/enhydra/jdbc/util/LRUCache;
            invokevirtual org.enhydra.jdbc.util.LRUCache.LRUSize:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
        14: .line 152
            ldc "' "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        15: .line 153
            ldc "preparedStatementCache.size(cache)='"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        16: .line 154
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.preparedStatementCache:Lorg/enhydra/jdbc/util/LRUCache;
            invokevirtual org.enhydra.jdbc.util.LRUCache.cacheSize:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
        17: .line 155
            ldc "' "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        18: .line 156
            ldc "masterPrepStmtCache.size='"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        19: .line 157
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.masterPrepStmtCache:Ljava/util/Hashtable;
            invokevirtual java.util.Hashtable.size:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
        20: .line 158
            ldc "' "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        21: .line 149
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        22: .line 148
            invokevirtual org.enhydra.jdbc.util.Logger.debug:(Ljava/lang/Object;)V
        23: .line 159
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.util.Enumeration keys
        end local 0 // org.enhydra.jdbc.standard.StandardConnectionHandle this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   24     0  this  Lorg/enhydra/jdbc/standard/StandardConnectionHandle;
            3   24     1  keys  Ljava/util/Enumeration;
            5    6     2   key  Ljava/lang/Object;
    Exceptions:
      throws java.sql.SQLException

  void returnToCache(java.lang.Object, java.sql.Connection);
    descriptor: (Ljava/lang/Object;Ljava/sql/Connection;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // org.enhydra.jdbc.standard.StandardConnectionHandle this
        start local 1 // java.lang.Object key
        start local 2 // java.sql.Connection theCon
         0: .line 166
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.inUse:Ljava/util/Hashtable;
            aload 1 /* key */
            invokevirtual java.util.Hashtable.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            astore 3 /* value */
        start local 3 // java.lang.Object value
         1: .line 168
            aload 3 /* value */
            ifnull 5
         2: .line 170
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.masterPrepStmtCache:Ljava/util/Hashtable;
            aload 2 /* theCon */
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            invokevirtual java.util.Hashtable.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.enhydra.jdbc.util.LRUCache
         3: .line 169
            astore 4 /* theCache */
        start local 4 // org.enhydra.jdbc.util.LRUCache theCache
         4: .line 171
            aload 4 /* theCache */
            aload 1 /* key */
            aload 3 /* value */
            invokevirtual org.enhydra.jdbc.util.LRUCache.put:(Ljava/lang/Object;Ljava/lang/Object;)V
        end local 4 // org.enhydra.jdbc.util.LRUCache theCache
         5: .line 173
      StackMap locals: java.lang.Object
      StackMap stack:
            return
        end local 3 // java.lang.Object value
        end local 2 // java.sql.Connection theCon
        end local 1 // java.lang.Object key
        end local 0 // org.enhydra.jdbc.standard.StandardConnectionHandle this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    6     0      this  Lorg/enhydra/jdbc/standard/StandardConnectionHandle;
            0    6     1       key  Ljava/lang/Object;
            0    6     2    theCon  Ljava/sql/Connection;
            1    6     3     value  Ljava/lang/Object;
            4    5     4  theCache  Lorg/enhydra/jdbc/util/LRUCache;
    MethodParameters:
        Name  Flags
      key     
      theCon  

  void returnToCache(java.lang.Object);
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.enhydra.jdbc.standard.StandardConnectionHandle this
        start local 1 // java.lang.Object key
         0: .line 176
            aload 0 /* this */
            aload 1 /* key */
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.con:Ljava/sql/Connection;
            invokevirtual org.enhydra.jdbc.standard.StandardConnectionHandle.returnToCache:(Ljava/lang/Object;Ljava/sql/Connection;)V
         1: .line 177
            return
        end local 1 // java.lang.Object key
        end local 0 // org.enhydra.jdbc.standard.StandardConnectionHandle this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/enhydra/jdbc/standard/StandardConnectionHandle;
            0    2     1   key  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      key   

  synchronized java.sql.PreparedStatement checkPreparedCache(java.lang.String, int, int, int);
    descriptor: (Ljava/lang/String;III)Ljava/sql/PreparedStatement;
    flags: (0x0020) ACC_SYNCHRONIZED
    Code:
      stack=5, locals=8, args_size=5
        start local 0 // org.enhydra.jdbc.standard.StandardConnectionHandle this
        start local 1 // java.lang.String sql
        start local 2 // int type
        start local 3 // int concurrency
        start local 4 // int holdability
         0: .line 196
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.log:Lorg/enhydra/jdbc/util/Logger;
         1: .line 197
            new java.lang.StringBuilder
            dup
            ldc "StandardConnectionHandle:checkPreparedCache sql='"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* sql */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "'"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         2: .line 196
            invokevirtual org.enhydra.jdbc.util.Logger.debug:(Ljava/lang/Object;)V
         3: .line 198
            aconst_null
            astore 5 /* ret */
        start local 5 // java.sql.PreparedStatement ret
         4: .line 202
            new java.lang.StringBuilder
            dup
            aload 1 /* sql */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 2 /* type */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            iload 3 /* concurrency */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 6 /* lookupKey */
        start local 6 // java.lang.String lookupKey
         5: .line 204
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.preparedStatementCache:Lorg/enhydra/jdbc/util/LRUCache;
            ifnull 19
         6: .line 205
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.preparedStatementCache:Lorg/enhydra/jdbc/util/LRUCache;
            aload 6 /* lookupKey */
            invokevirtual org.enhydra.jdbc.util.LRUCache.get:(Ljava/lang/Object;)Ljava/lang/Object;
            astore 7 /* obj */
        start local 7 // java.lang.Object obj
         7: .line 207
            aload 7 /* obj */
            ifnull 16
         8: .line 208
            aload 7 /* obj */
            checkcast java.sql.PreparedStatement
            astore 5 /* ret */
         9: .line 210
            aload 5 /* ret */
            invokeinterface java.sql.PreparedStatement.clearParameters:()V
        10: .line 211
            goto 13
      StackMap locals: org.enhydra.jdbc.standard.StandardConnectionHandle java.lang.String int int int java.sql.PreparedStatement java.lang.String java.lang.Object
      StackMap stack: java.sql.SQLException
        11: pop
        12: .line 213
            aload 0 /* this */
            aload 1 /* sql */
            iload 2 /* type */
            iload 3 /* concurrency */
            iload 4 /* holdability */
            invokevirtual org.enhydra.jdbc.standard.StandardConnectionHandle.createPreparedStatement:(Ljava/lang/String;III)Ljava/sql/PreparedStatement;
            astore 5 /* ret */
        13: .line 216
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.preparedStatementCache:Lorg/enhydra/jdbc/util/LRUCache;
            aload 6 /* lookupKey */
            invokevirtual org.enhydra.jdbc.util.LRUCache.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
        14: .line 218
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.inUse:Ljava/util/Hashtable;
            aload 6 /* lookupKey */
            aload 5 /* ret */
            invokevirtual java.util.Hashtable.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        15: .line 220
            goto 20
        16: .line 221
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* sql */
            iload 2 /* type */
            iload 3 /* concurrency */
            iload 4 /* holdability */
            invokevirtual org.enhydra.jdbc.standard.StandardConnectionHandle.createPreparedStatement:(Ljava/lang/String;III)Ljava/sql/PreparedStatement;
            astore 5 /* ret */
        17: .line 222
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.inUse:Ljava/util/Hashtable;
            aload 6 /* lookupKey */
            aload 5 /* ret */
            invokevirtual java.util.Hashtable.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 7 // java.lang.Object obj
        18: .line 225
            goto 20
        19: .line 226
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* sql */
            iload 2 /* type */
            iload 3 /* concurrency */
            iload 4 /* holdability */
            invokevirtual org.enhydra.jdbc.standard.StandardConnectionHandle.createPreparedStatement:(Ljava/lang/String;III)Ljava/sql/PreparedStatement;
            astore 5 /* ret */
        20: .line 232
      StackMap locals:
      StackMap stack:
            new org.enhydra.jdbc.standard.StandardPreparedStatement
            dup
            aload 0 /* this */
            aload 5 /* ret */
            aload 6 /* lookupKey */
            invokespecial org.enhydra.jdbc.standard.StandardPreparedStatement.<init>:(Lorg/enhydra/jdbc/standard/StandardConnectionHandle;Ljava/sql/PreparedStatement;Ljava/lang/Object;)V
            astore 5 /* ret */
        21: .line 233
            aload 5 /* ret */
            areturn
        end local 6 // java.lang.String lookupKey
        end local 5 // java.sql.PreparedStatement ret
        end local 4 // int holdability
        end local 3 // int concurrency
        end local 2 // int type
        end local 1 // java.lang.String sql
        end local 0 // org.enhydra.jdbc.standard.StandardConnectionHandle this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   22     0         this  Lorg/enhydra/jdbc/standard/StandardConnectionHandle;
            0   22     1          sql  Ljava/lang/String;
            0   22     2         type  I
            0   22     3  concurrency  I
            0   22     4  holdability  I
            4   22     5          ret  Ljava/sql/PreparedStatement;
            5   22     6    lookupKey  Ljava/lang/String;
            7   18     7          obj  Ljava/lang/Object;
      Exception table:
        from    to  target  type
           9    10      11  Class java.sql.SQLException
    Exceptions:
      throws java.sql.SQLException
    MethodParameters:
             Name  Flags
      sql          
      type         
      concurrency  
      holdability  

  synchronized java.sql.PreparedStatement checkPreparedCache(java.lang.String, int);
    descriptor: (Ljava/lang/String;I)Ljava/sql/PreparedStatement;
    flags: (0x0020) ACC_SYNCHRONIZED
    Code:
      stack=5, locals=6, args_size=3
        start local 0 // org.enhydra.jdbc.standard.StandardConnectionHandle this
        start local 1 // java.lang.String sql
        start local 2 // int autogeneratedkeys
         0: .line 241
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.log:Lorg/enhydra/jdbc/util/Logger;
         1: .line 242
            new java.lang.StringBuilder
            dup
            ldc "StandardConnectionHandle:checkPreparedCache sql='"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* sql */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "'"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         2: .line 241
            invokevirtual org.enhydra.jdbc.util.Logger.debug:(Ljava/lang/Object;)V
         3: .line 243
            aconst_null
            astore 3 /* ret */
        start local 3 // java.sql.PreparedStatement ret
         4: .line 247
            new java.lang.StringBuilder
            dup
            aload 1 /* sql */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 2 /* autogeneratedkeys */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 4 /* lookupKey */
        start local 4 // java.lang.String lookupKey
         5: .line 249
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.preparedStatementCache:Lorg/enhydra/jdbc/util/LRUCache;
            ifnull 19
         6: .line 250
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.preparedStatementCache:Lorg/enhydra/jdbc/util/LRUCache;
            aload 4 /* lookupKey */
            invokevirtual org.enhydra.jdbc.util.LRUCache.get:(Ljava/lang/Object;)Ljava/lang/Object;
            astore 5 /* obj */
        start local 5 // java.lang.Object obj
         7: .line 252
            aload 5 /* obj */
            ifnull 16
         8: .line 253
            aload 5 /* obj */
            checkcast java.sql.PreparedStatement
            astore 3 /* ret */
         9: .line 255
            aload 3 /* ret */
            invokeinterface java.sql.PreparedStatement.clearParameters:()V
        10: .line 256
            goto 13
      StackMap locals: org.enhydra.jdbc.standard.StandardConnectionHandle java.lang.String int java.sql.PreparedStatement java.lang.String java.lang.Object
      StackMap stack: java.sql.SQLException
        11: pop
        12: .line 258
            aload 0 /* this */
            aload 1 /* sql */
            iload 2 /* autogeneratedkeys */
            invokevirtual org.enhydra.jdbc.standard.StandardConnectionHandle.createPreparedStatement:(Ljava/lang/String;I)Ljava/sql/PreparedStatement;
            astore 3 /* ret */
        13: .line 261
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.preparedStatementCache:Lorg/enhydra/jdbc/util/LRUCache;
            aload 4 /* lookupKey */
            invokevirtual org.enhydra.jdbc.util.LRUCache.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
        14: .line 263
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.inUse:Ljava/util/Hashtable;
            aload 4 /* lookupKey */
            aload 3 /* ret */
            invokevirtual java.util.Hashtable.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        15: .line 265
            goto 20
        16: .line 266
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* sql */
            iload 2 /* autogeneratedkeys */
            invokevirtual org.enhydra.jdbc.standard.StandardConnectionHandle.createPreparedStatement:(Ljava/lang/String;I)Ljava/sql/PreparedStatement;
            astore 3 /* ret */
        17: .line 267
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.inUse:Ljava/util/Hashtable;
            aload 4 /* lookupKey */
            aload 3 /* ret */
            invokevirtual java.util.Hashtable.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 5 // java.lang.Object obj
        18: .line 270
            goto 20
        19: .line 271
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* sql */
            iload 2 /* autogeneratedkeys */
            invokevirtual org.enhydra.jdbc.standard.StandardConnectionHandle.createPreparedStatement:(Ljava/lang/String;I)Ljava/sql/PreparedStatement;
            astore 3 /* ret */
        20: .line 277
      StackMap locals:
      StackMap stack:
            new org.enhydra.jdbc.standard.StandardPreparedStatement
            dup
            aload 0 /* this */
            aload 3 /* ret */
            aload 4 /* lookupKey */
            invokespecial org.enhydra.jdbc.standard.StandardPreparedStatement.<init>:(Lorg/enhydra/jdbc/standard/StandardConnectionHandle;Ljava/sql/PreparedStatement;Ljava/lang/Object;)V
            astore 3 /* ret */
        21: .line 278
            aload 3 /* ret */
            areturn
        end local 4 // java.lang.String lookupKey
        end local 3 // java.sql.PreparedStatement ret
        end local 2 // int autogeneratedkeys
        end local 1 // java.lang.String sql
        end local 0 // org.enhydra.jdbc.standard.StandardConnectionHandle this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   22     0               this  Lorg/enhydra/jdbc/standard/StandardConnectionHandle;
            0   22     1                sql  Ljava/lang/String;
            0   22     2  autogeneratedkeys  I
            4   22     3                ret  Ljava/sql/PreparedStatement;
            5   22     4          lookupKey  Ljava/lang/String;
            7   18     5                obj  Ljava/lang/Object;
      Exception table:
        from    to  target  type
           9    10      11  Class java.sql.SQLException
    Exceptions:
      throws java.sql.SQLException
    MethodParameters:
                   Name  Flags
      sql                
      autogeneratedkeys  

  protected java.sql.PreparedStatement createPreparedStatement(java.lang.String, int, int, int);
    descriptor: (Ljava/lang/String;III)Ljava/sql/PreparedStatement;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=5, args_size=5
        start local 0 // org.enhydra.jdbc.standard.StandardConnectionHandle this
        start local 1 // java.lang.String sql
        start local 2 // int type
        start local 3 // int concurrency
        start local 4 // int holdability
         0: .line 289
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.log:Lorg/enhydra/jdbc/util/Logger;
         1: .line 290
            new java.lang.StringBuilder
            dup
            ldc "StandardConnectionHandle:createPreparedStatement type ='"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         2: .line 291
            iload 2 /* type */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
         3: .line 292
            ldc "'"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         4: .line 290
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         5: .line 289
            invokevirtual org.enhydra.jdbc.util.Logger.debug:(Ljava/lang/Object;)V
         6: .line 293
            iload 2 /* type */
            ifne 8
            iload 4 /* holdability */
            ifne 8
         7: .line 294
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.con:Ljava/sql/Connection;
            aload 1 /* sql */
            invokeinterface java.sql.Connection.prepareStatement:(Ljava/lang/String;)Ljava/sql/PreparedStatement;
            areturn
         8: .line 295
      StackMap locals:
      StackMap stack:
            iload 4 /* holdability */
            ifne 10
         9: .line 296
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.con:Ljava/sql/Connection;
            aload 1 /* sql */
            iload 2 /* type */
            iload 3 /* concurrency */
            invokeinterface java.sql.Connection.prepareStatement:(Ljava/lang/String;II)Ljava/sql/PreparedStatement;
            areturn
        10: .line 298
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.con:Ljava/sql/Connection;
            aload 1 /* sql */
            iload 2 /* type */
            iload 3 /* concurrency */
            iload 4 /* holdability */
            invokeinterface java.sql.Connection.prepareStatement:(Ljava/lang/String;III)Ljava/sql/PreparedStatement;
            areturn
        end local 4 // int holdability
        end local 3 // int concurrency
        end local 2 // int type
        end local 1 // java.lang.String sql
        end local 0 // org.enhydra.jdbc.standard.StandardConnectionHandle this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   11     0         this  Lorg/enhydra/jdbc/standard/StandardConnectionHandle;
            0   11     1          sql  Ljava/lang/String;
            0   11     2         type  I
            0   11     3  concurrency  I
            0   11     4  holdability  I
    Exceptions:
      throws java.sql.SQLException
    MethodParameters:
             Name  Flags
      sql          
      type         
      concurrency  
      holdability  

  protected java.sql.PreparedStatement createPreparedStatement(java.lang.String, int);
    descriptor: (Ljava/lang/String;I)Ljava/sql/PreparedStatement;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.enhydra.jdbc.standard.StandardConnectionHandle this
        start local 1 // java.lang.String sql
        start local 2 // int autogeneratedkeys
         0: .line 306
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.log:Lorg/enhydra/jdbc/util/Logger;
         1: .line 307
            new java.lang.StringBuilder
            dup
            ldc "StandardConnectionHandle:createPreparedStatement autogeneratedkeys ='"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         2: .line 308
            iload 2 /* autogeneratedkeys */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
         3: .line 309
            ldc "'"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         4: .line 307
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         5: .line 306
            invokevirtual org.enhydra.jdbc.util.Logger.debug:(Ljava/lang/Object;)V
         6: .line 310
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.con:Ljava/sql/Connection;
            aload 1 /* sql */
            iload 2 /* autogeneratedkeys */
            invokeinterface java.sql.Connection.prepareStatement:(Ljava/lang/String;I)Ljava/sql/PreparedStatement;
            areturn
        end local 2 // int autogeneratedkeys
        end local 1 // java.lang.String sql
        end local 0 // org.enhydra.jdbc.standard.StandardConnectionHandle this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    7     0               this  Lorg/enhydra/jdbc/standard/StandardConnectionHandle;
            0    7     1                sql  Ljava/lang/String;
            0    7     2  autogeneratedkeys  I
    Exceptions:
      throws java.sql.SQLException
    MethodParameters:
                   Name  Flags
      sql                
      autogeneratedkeys  

  public java.sql.PreparedStatement prepareStatement(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/sql/PreparedStatement;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.enhydra.jdbc.standard.StandardConnectionHandle this
        start local 1 // java.lang.String sql
         0: .line 318
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.log:Lorg/enhydra/jdbc/util/Logger;
         1: .line 319
            new java.lang.StringBuilder
            dup
            ldc "StandardConnectionHandle:prepareStatement sql='"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* sql */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "'"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         2: .line 318
            invokevirtual org.enhydra.jdbc.util.Logger.debug:(Ljava/lang/Object;)V
         3: .line 320
            aload 0 /* this */
            invokevirtual org.enhydra.jdbc.standard.StandardConnectionHandle.preInvoke:()V
         4: .line 322
            aload 0 /* this */
            aload 1 /* sql */
            iconst_0
            iconst_0
            iconst_0
            invokevirtual org.enhydra.jdbc.standard.StandardConnectionHandle.checkPreparedCache:(Ljava/lang/String;III)Ljava/sql/PreparedStatement;
         5: areturn
         6: .line 323
      StackMap locals:
      StackMap stack: java.sql.SQLException
            astore 2 /* e */
        start local 2 // java.sql.SQLException e
         7: .line 324
            aload 0 /* this */
            aload 2 /* e */
            invokevirtual org.enhydra.jdbc.standard.StandardConnectionHandle.catchInvoke:(Ljava/sql/SQLException;)V
        end local 2 // java.sql.SQLException e
         8: .line 326
            aconst_null
            areturn
        end local 1 // java.lang.String sql
        end local 0 // org.enhydra.jdbc.standard.StandardConnectionHandle this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lorg/enhydra/jdbc/standard/StandardConnectionHandle;
            0    9     1   sql  Ljava/lang/String;
            7    8     2     e  Ljava/sql/SQLException;
      Exception table:
        from    to  target  type
           4     5       6  Class java.sql.SQLException
    Exceptions:
      throws java.sql.SQLException
    MethodParameters:
      Name  Flags
      sql   

  public java.sql.PreparedStatement prepareStatement(java.lang.String, int, int);
    descriptor: (Ljava/lang/String;II)Ljava/sql/PreparedStatement;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // org.enhydra.jdbc.standard.StandardConnectionHandle this
        start local 1 // java.lang.String sql
        start local 2 // int resultSetType
        start local 3 // int resultSetConcurrency
         0: .line 338
            aload 0 /* this */
            invokevirtual org.enhydra.jdbc.standard.StandardConnectionHandle.preInvoke:()V
         1: .line 340
            aload 0 /* this */
            aload 1 /* sql */
            iload 2 /* resultSetType */
            iload 3 /* resultSetConcurrency */
            iconst_0
            invokevirtual org.enhydra.jdbc.standard.StandardConnectionHandle.checkPreparedCache:(Ljava/lang/String;III)Ljava/sql/PreparedStatement;
         2: areturn
         3: .line 341
      StackMap locals:
      StackMap stack: java.sql.SQLException
            astore 4 /* e */
        start local 4 // java.sql.SQLException e
         4: .line 342
            aload 0 /* this */
            aload 4 /* e */
            invokevirtual org.enhydra.jdbc.standard.StandardConnectionHandle.catchInvoke:(Ljava/sql/SQLException;)V
        end local 4 // java.sql.SQLException e
         5: .line 344
            aconst_null
            areturn
        end local 3 // int resultSetConcurrency
        end local 2 // int resultSetType
        end local 1 // java.lang.String sql
        end local 0 // org.enhydra.jdbc.standard.StandardConnectionHandle this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0    6     0                  this  Lorg/enhydra/jdbc/standard/StandardConnectionHandle;
            0    6     1                   sql  Ljava/lang/String;
            0    6     2         resultSetType  I
            0    6     3  resultSetConcurrency  I
            4    5     4                     e  Ljava/sql/SQLException;
      Exception table:
        from    to  target  type
           1     2       3  Class java.sql.SQLException
    Exceptions:
      throws java.sql.SQLException
    MethodParameters:
                      Name  Flags
      sql                   
      resultSetType         
      resultSetConcurrency  

  public java.sql.PreparedStatement prepareStatement(java.lang.String, int, int, int);
    descriptor: (Ljava/lang/String;III)Ljava/sql/PreparedStatement;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=5
        start local 0 // org.enhydra.jdbc.standard.StandardConnectionHandle this
        start local 1 // java.lang.String sql
        start local 2 // int resultSetType
        start local 3 // int resultSetConcurrency
        start local 4 // int resultSetHoldability
         0: .line 353
            aload 0 /* this */
            invokevirtual org.enhydra.jdbc.standard.StandardConnectionHandle.preInvoke:()V
         1: .line 355
            aload 0 /* this */
            aload 1 /* sql */
            iload 2 /* resultSetType */
            iload 3 /* resultSetConcurrency */
            iload 4 /* resultSetHoldability */
            invokevirtual org.enhydra.jdbc.standard.StandardConnectionHandle.checkPreparedCache:(Ljava/lang/String;III)Ljava/sql/PreparedStatement;
         2: areturn
         3: .line 356
      StackMap locals:
      StackMap stack: java.sql.SQLException
            astore 5 /* e */
        start local 5 // java.sql.SQLException e
         4: .line 357
            aload 0 /* this */
            aload 5 /* e */
            invokevirtual org.enhydra.jdbc.standard.StandardConnectionHandle.catchInvoke:(Ljava/sql/SQLException;)V
        end local 5 // java.sql.SQLException e
         5: .line 359
            aconst_null
            areturn
        end local 4 // int resultSetHoldability
        end local 3 // int resultSetConcurrency
        end local 2 // int resultSetType
        end local 1 // java.lang.String sql
        end local 0 // org.enhydra.jdbc.standard.StandardConnectionHandle this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0    6     0                  this  Lorg/enhydra/jdbc/standard/StandardConnectionHandle;
            0    6     1                   sql  Ljava/lang/String;
            0    6     2         resultSetType  I
            0    6     3  resultSetConcurrency  I
            0    6     4  resultSetHoldability  I
            4    5     5                     e  Ljava/sql/SQLException;
      Exception table:
        from    to  target  type
           1     2       3  Class java.sql.SQLException
    Exceptions:
      throws java.sql.SQLException
    MethodParameters:
                      Name  Flags
      sql                   
      resultSetType         
      resultSetConcurrency  
      resultSetHoldability  

  public boolean isClosed();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.enhydra.jdbc.standard.StandardConnectionHandle this
         0: .line 363
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.closed:Z
            ireturn
        end local 0 // org.enhydra.jdbc.standard.StandardConnectionHandle this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/enhydra/jdbc/standard/StandardConnectionHandle;
    Exceptions:
      throws java.sql.SQLException

  public java.sql.CallableStatement prepareCall(java.lang.String, int, int);
    descriptor: (Ljava/lang/String;II)Ljava/sql/CallableStatement;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=4
        start local 0 // org.enhydra.jdbc.standard.StandardConnectionHandle this
        start local 1 // java.lang.String sql
        start local 2 // int resultSetType
        start local 3 // int resultSetConcurrency
         0: .line 371
            aload 0 /* this */
            invokevirtual org.enhydra.jdbc.standard.StandardConnectionHandle.preInvoke:()V
         1: .line 373
            aload 0 /* this */
            getfield org.enhydra.jdbc.standard.StandardConnectionHandle.con:Ljava/sql/Connection;
            aload 1 /* sql */
            iload 2 /* resultSetType */
            iload 3 /* resultSetConcurrency */
            invokeinterface java.sql.Connection.prepareCall:(Ljava/lang/String;II)Ljava/sql/CallableStatement;
         2: areturn
         3: .line 374
      StackMap locals:
      StackMap stack: java.sql.SQLException
            astore 4 /* e */
        start local 4 // java.sql.SQLException e
         4: .line 375
            aload 0 /* this */
            aload 4 /* e */
            invokevirtual org.enhydra.jdbc.standard.StandardConnectionHandle.catchInvoke:(Ljava/sql/SQLException;)V
        end local 4 // java.sql.SQLException e
         5: .line 377
            aconst_null
            areturn
        end local 3 // int resultSetConcurrency
        end local 2 // int resultSetType
        end local 1 // java.lang.String sql
        end local 0 // org.enhydra.jdbc.standard.StandardConnectionHandle this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0    6     0                  this  Lorg/enhydra/jdbc/standard/StandardConnectionHandle;
            0    6     1                   sql  Ljava/lang/String;
            0    6     2         resultSetType  I
            0    6     3  resultSetConcurrency  I
            4    5     4                     e  Ljava/sql/SQLException;
      Exception table:
        from    to  target  type
           1     2       3  Class java.sql.SQLException
    Exceptions:
      throws java.sql.SQLException
    MethodParameters:
                      Name  Flags
      sql                   
      resultSetType         
      resultSetConcurrency  

  public java.sql.Blob createBlob();
    descriptor: ()Ljava/sql/Blob;
    flags: (0x1001) ACC_PUBLIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=1
         0: .line 43
            new java.lang.Error
            dup
            ldc "Unresolved compilation problem: \n\tThe type StandardConnectionHandle must implement the inherited abstract method Connection.createBlob()\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Exceptions:
      throws java.sql.SQLException

  public java.lang.String getSchema();
    descriptor: ()Ljava/lang/String;
    flags: (0x1001) ACC_PUBLIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=1
         0: .line 43
            new java.lang.Error
            dup
            ldc "Unresolved compilation problem: \n\tThe type StandardConnectionHandle must implement the inherited abstract method Connection.getSchema()\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Exceptions:
      throws java.sql.SQLException

  public java.sql.SQLXML createSQLXML();
    descriptor: ()Ljava/sql/SQLXML;
    flags: (0x1001) ACC_PUBLIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=1
         0: .line 43
            new java.lang.Error
            dup
            ldc "Unresolved compilation problem: \n\tThe type StandardConnectionHandle must implement the inherited abstract method Connection.createSQLXML()\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Exceptions:
      throws java.sql.SQLException

  public boolean isValid(int);
    descriptor: (I)Z
    flags: (0x1001) ACC_PUBLIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=2, args_size=2
         0: .line 43
            new java.lang.Error
            dup
            ldc "Unresolved compilation problem: \n\tThe type StandardConnectionHandle must implement the inherited abstract method Connection.isValid(int)\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Exceptions:
      throws java.sql.SQLException
    MethodParameters:
      Name  Flags
            

  public java.util.Properties getClientInfo();
    descriptor: ()Ljava/util/Properties;
    flags: (0x1001) ACC_PUBLIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=1
         0: .line 43
            new java.lang.Error
            dup
            ldc "Unresolved compilation problem: \n\tThe type StandardConnectionHandle must implement the inherited abstract method Connection.getClientInfo()\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Exceptions:
      throws java.sql.SQLException

  public java.lang.String getClientInfo(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x1001) ACC_PUBLIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=2, args_size=2
         0: .line 43
            new java.lang.Error
            dup
            ldc "Unresolved compilation problem: \n\tThe type StandardConnectionHandle must implement the inherited abstract method Connection.getClientInfo(String)\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Exceptions:
      throws java.sql.SQLException
    MethodParameters:
      Name  Flags
            

  public java.sql.NClob createNClob();
    descriptor: ()Ljava/sql/NClob;
    flags: (0x1001) ACC_PUBLIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=1
         0: .line 43
            new java.lang.Error
            dup
            ldc "Unresolved compilation problem: \n\tThe type StandardConnectionHandle must implement the inherited abstract method Connection.createNClob()\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Exceptions:
      throws java.sql.SQLException

  public void setSchema(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x1001) ACC_PUBLIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=2, args_size=2
         0: .line 43
            new java.lang.Error
            dup
            ldc "Unresolved compilation problem: \n\tThe type StandardConnectionHandle must implement the inherited abstract method Connection.setSchema(String)\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Exceptions:
      throws java.sql.SQLException
    MethodParameters:
      Name  Flags
            

  public void setClientInfo(java.util.Properties);
    descriptor: (Ljava/util/Properties;)V
    flags: (0x1001) ACC_PUBLIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=2, args_size=2
         0: .line 43
            new java.lang.Error
            dup
            ldc "Unresolved compilation problem: \n\tThe type StandardConnectionHandle must implement the inherited abstract method Connection.setClientInfo(Properties)\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Exceptions:
      throws java.sql.SQLClientInfoException
    MethodParameters:
      Name  Flags
            

  public void setClientInfo(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x1001) ACC_PUBLIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
         0: .line 43
            new java.lang.Error
            dup
            ldc "Unresolved compilation problem: \n\tThe type StandardConnectionHandle must implement the inherited abstract method Connection.setClientInfo(String, String)\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Exceptions:
      throws java.sql.SQLClientInfoException
    MethodParameters:
      Name  Flags
            
            

  public java.sql.Struct createStruct(java.lang.String, java.lang.Object[]);
    descriptor: (Ljava/lang/String;[Ljava/lang/Object;)Ljava/sql/Struct;
    flags: (0x1001) ACC_PUBLIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
         0: .line 43
            new java.lang.Error
            dup
            ldc "Unresolved compilation problem: \n\tThe type StandardConnectionHandle must implement the inherited abstract method Connection.createStruct(String, Object[])\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Exceptions:
      throws java.sql.SQLException
    MethodParameters:
      Name  Flags
            
            

  public int getNetworkTimeout();
    descriptor: ()I
    flags: (0x1001) ACC_PUBLIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=1
         0: .line 43
            new java.lang.Error
            dup
            ldc "Unresolved compilation problem: \n\tThe type StandardConnectionHandle must implement the inherited abstract method Connection.getNetworkTimeout()\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Exceptions:
      throws java.sql.SQLException

  public java.sql.Array createArrayOf(java.lang.String, java.lang.Object[]);
    descriptor: (Ljava/lang/String;[Ljava/lang/Object;)Ljava/sql/Array;
    flags: (0x1001) ACC_PUBLIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
         0: .line 43
            new java.lang.Error
            dup
            ldc "Unresolved compilation problem: \n\tThe type StandardConnectionHandle must implement the inherited abstract method Connection.createArrayOf(String, Object[])\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Exceptions:
      throws java.sql.SQLException
    MethodParameters:
      Name  Flags
            
            

  public java.sql.Clob createClob();
    descriptor: ()Ljava/sql/Clob;
    flags: (0x1001) ACC_PUBLIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=1
         0: .line 43
            new java.lang.Error
            dup
            ldc "Unresolved compilation problem: \n\tThe type StandardConnectionHandle must implement the inherited abstract method Connection.createClob()\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Exceptions:
      throws java.sql.SQLException

  public void abort(java.util.concurrent.Executor);
    descriptor: (Ljava/util/concurrent/Executor;)V
    flags: (0x1001) ACC_PUBLIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=2, args_size=2
         0: .line 43
            new java.lang.Error
            dup
            ldc "Unresolved compilation problem: \n\tThe type StandardConnectionHandle must implement the inherited abstract method Connection.abort(Executor)\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Exceptions:
      throws java.sql.SQLException
    MethodParameters:
      Name  Flags
            

  public void setNetworkTimeout(java.util.concurrent.Executor, int);
    descriptor: (Ljava/util/concurrent/Executor;I)V
    flags: (0x1001) ACC_PUBLIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
         0: .line 43
            new java.lang.Error
            dup
            ldc "Unresolved compilation problem: \n\tThe type StandardConnectionHandle must implement the inherited abstract method Connection.setNetworkTimeout(Executor, int)\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Exceptions:
      throws java.sql.SQLException
    MethodParameters:
      Name  Flags
            
            
}
SourceFile: "StandardConnectionHandle.java"