public class org.postgresql.ds.PGPooledConnection implements javax.sql.PooledConnection
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.postgresql.ds.PGPooledConnection
  super_class: java.lang.Object
{
  private final java.util.List<javax.sql.ConnectionEventListener> listeners;
    descriptor: Ljava/util/List;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/List<Ljavax/sql/ConnectionEventListener;>;

  private java.sql.Connection con;
    descriptor: Ljava/sql/Connection;
    flags: (0x0002) ACC_PRIVATE

  private org.postgresql.ds.PGPooledConnection$ConnectionHandler last;
    descriptor: Lorg/postgresql/ds/PGPooledConnection$ConnectionHandler;
    flags: (0x0002) ACC_PRIVATE

  private final boolean autoCommit;
    descriptor: Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final boolean isXA;
    descriptor: Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private static java.lang.String[] fatalClasses;
    descriptor: [Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=0, args_size=0
         0: .line 196
            bipush 10
            anewarray java.lang.String
            dup
            iconst_0
         1: .line 197
            ldc "08"
            aastore
            dup
            iconst_1
         2: .line 198
            ldc "53"
            aastore
            dup
            iconst_2
         3: .line 201
            ldc "57P01"
            aastore
            dup
            iconst_3
         4: .line 202
            ldc "57P02"
            aastore
            dup
            iconst_4
         5: .line 203
            ldc "57P03"
            aastore
            dup
            iconst_5
         6: .line 205
            ldc "58"
            aastore
            dup
            bipush 6
         7: .line 206
            ldc "60"
            aastore
            dup
            bipush 7
         8: .line 207
            ldc "99"
            aastore
            dup
            bipush 8
         9: .line 208
            ldc "F0"
            aastore
            dup
            bipush 9
        10: .line 209
            ldc "XX"
            aastore
        11: .line 196
            putstatic org.postgresql.ds.PGPooledConnection.fatalClasses:[Ljava/lang/String;
        12: .line 210
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(java.sql.Connection, boolean, boolean);
    descriptor: (Ljava/sql/Connection;ZZ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // org.postgresql.ds.PGPooledConnection this
        start local 1 // java.sql.Connection con
        start local 2 // boolean autoCommit
        start local 3 // boolean isXA
         0: .line 52
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 39
            aload 0 /* this */
            new java.util.LinkedList
            dup
            invokespecial java.util.LinkedList.<init>:()V
            putfield org.postgresql.ds.PGPooledConnection.listeners:Ljava/util/List;
         2: .line 53
            aload 0 /* this */
            aload 1 /* con */
            putfield org.postgresql.ds.PGPooledConnection.con:Ljava/sql/Connection;
         3: .line 54
            aload 0 /* this */
            iload 2 /* autoCommit */
            putfield org.postgresql.ds.PGPooledConnection.autoCommit:Z
         4: .line 55
            aload 0 /* this */
            iload 3 /* isXA */
            putfield org.postgresql.ds.PGPooledConnection.isXA:Z
         5: .line 56
            return
        end local 3 // boolean isXA
        end local 2 // boolean autoCommit
        end local 1 // java.sql.Connection con
        end local 0 // org.postgresql.ds.PGPooledConnection this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    6     0        this  Lorg/postgresql/ds/PGPooledConnection;
            0    6     1         con  Ljava/sql/Connection;
            0    6     2  autoCommit  Z
            0    6     3        isXA  Z
    MethodParameters:
            Name  Flags
      con         
      autoCommit  
      isXA        

  public void <init>(java.sql.Connection, boolean);
    descriptor: (Ljava/sql/Connection;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.postgresql.ds.PGPooledConnection this
        start local 1 // java.sql.Connection con
        start local 2 // boolean autoCommit
         0: .line 59
            aload 0 /* this */
            aload 1 /* con */
            iload 2 /* autoCommit */
            iconst_0
            invokespecial org.postgresql.ds.PGPooledConnection.<init>:(Ljava/sql/Connection;ZZ)V
         1: .line 60
            return
        end local 2 // boolean autoCommit
        end local 1 // java.sql.Connection con
        end local 0 // org.postgresql.ds.PGPooledConnection this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lorg/postgresql/ds/PGPooledConnection;
            0    2     1         con  Ljava/sql/Connection;
            0    2     2  autoCommit  Z
    MethodParameters:
            Name  Flags
      con         
      autoCommit  

  public void addConnectionEventListener(javax.sql.ConnectionEventListener);
    descriptor: (Ljavax/sql/ConnectionEventListener;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.postgresql.ds.PGPooledConnection this
        start local 1 // javax.sql.ConnectionEventListener connectionEventListener
         0: .line 67
            aload 0 /* this */
            getfield org.postgresql.ds.PGPooledConnection.listeners:Ljava/util/List;
            aload 1 /* connectionEventListener */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         1: .line 68
            return
        end local 1 // javax.sql.ConnectionEventListener connectionEventListener
        end local 0 // org.postgresql.ds.PGPooledConnection this
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0    2     0                     this  Lorg/postgresql/ds/PGPooledConnection;
            0    2     1  connectionEventListener  Ljavax/sql/ConnectionEventListener;
    MethodParameters:
                         Name  Flags
      connectionEventListener  

  public void removeConnectionEventListener(javax.sql.ConnectionEventListener);
    descriptor: (Ljavax/sql/ConnectionEventListener;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.postgresql.ds.PGPooledConnection this
        start local 1 // javax.sql.ConnectionEventListener connectionEventListener
         0: .line 75
            aload 0 /* this */
            getfield org.postgresql.ds.PGPooledConnection.listeners:Ljava/util/List;
            aload 1 /* connectionEventListener */
            invokeinterface java.util.List.remove:(Ljava/lang/Object;)Z
            pop
         1: .line 76
            return
        end local 1 // javax.sql.ConnectionEventListener connectionEventListener
        end local 0 // org.postgresql.ds.PGPooledConnection this
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0    2     0                     this  Lorg/postgresql/ds/PGPooledConnection;
            0    2     1  connectionEventListener  Ljavax/sql/ConnectionEventListener;
    MethodParameters:
                         Name  Flags
      connectionEventListener  

  public void close();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.postgresql.ds.PGPooledConnection this
         0: .line 84
            aload 0 /* this */
            getfield org.postgresql.ds.PGPooledConnection.last:Lorg/postgresql/ds/PGPooledConnection$ConnectionHandler;
            ifnull 7
         1: .line 85
            aload 0 /* this */
            getfield org.postgresql.ds.PGPooledConnection.last:Lorg/postgresql/ds/PGPooledConnection$ConnectionHandler;
            invokevirtual org.postgresql.ds.PGPooledConnection$ConnectionHandler.close:()V
         2: .line 86
            aload 0 /* this */
            getfield org.postgresql.ds.PGPooledConnection.con:Ljava/sql/Connection;
            invokeinterface java.sql.Connection.isClosed:()Z
            ifne 7
         3: .line 87
            aload 0 /* this */
            getfield org.postgresql.ds.PGPooledConnection.con:Ljava/sql/Connection;
            invokeinterface java.sql.Connection.getAutoCommit:()Z
            ifne 7
         4: .line 89
            aload 0 /* this */
            getfield org.postgresql.ds.PGPooledConnection.con:Ljava/sql/Connection;
            invokeinterface java.sql.Connection.rollback:()V
         5: .line 90
            goto 7
      StackMap locals:
      StackMap stack: java.sql.SQLException
         6: pop
         7: .line 96
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.postgresql.ds.PGPooledConnection.con:Ljava/sql/Connection;
            invokeinterface java.sql.Connection.close:()V
         8: .line 97
            goto 12
      StackMap locals:
      StackMap stack: java.lang.Throwable
         9: astore 1
        10: .line 98
            aload 0 /* this */
            aconst_null
            putfield org.postgresql.ds.PGPooledConnection.con:Ljava/sql/Connection;
        11: .line 99
            aload 1
            athrow
        12: .line 98
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aconst_null
            putfield org.postgresql.ds.PGPooledConnection.con:Ljava/sql/Connection;
        13: .line 100
            return
        end local 0 // org.postgresql.ds.PGPooledConnection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   14     0  this  Lorg/postgresql/ds/PGPooledConnection;
      Exception table:
        from    to  target  type
           4     5       6  Class java.sql.SQLException
           7     9       9  any
    Exceptions:
      throws java.sql.SQLException

  public java.sql.Connection getConnection();
    descriptor: ()Ljava/sql/Connection;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=1
        start local 0 // org.postgresql.ds.PGPooledConnection this
         0: .line 115
            aload 0 /* this */
            getfield org.postgresql.ds.PGPooledConnection.con:Ljava/sql/Connection;
            ifnonnull 7
         1: .line 118
            new org.postgresql.util.PSQLException
            dup
            ldc "This PooledConnection has already been closed."
            iconst_0
            anewarray java.lang.Object
            invokestatic org.postgresql.util.GT.tr:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
         2: .line 119
            getstatic org.postgresql.util.PSQLState.CONNECTION_DOES_NOT_EXIST:Lorg/postgresql/util/PSQLState;
         3: .line 118
            invokespecial org.postgresql.util.PSQLException.<init>:(Ljava/lang/String;Lorg/postgresql/util/PSQLState;)V
         4: .line 117
            astore 1 /* sqlException */
        start local 1 // org.postgresql.util.PSQLException sqlException
         5: .line 120
            aload 0 /* this */
            aload 1 /* sqlException */
            invokevirtual org.postgresql.ds.PGPooledConnection.fireConnectionFatalError:(Ljava/sql/SQLException;)V
         6: .line 121
            aload 1 /* sqlException */
            athrow
        end local 1 // org.postgresql.util.PSQLException sqlException
         7: .line 129
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.postgresql.ds.PGPooledConnection.last:Lorg/postgresql/ds/PGPooledConnection$ConnectionHandler;
            ifnull 14
         8: .line 130
            aload 0 /* this */
            getfield org.postgresql.ds.PGPooledConnection.last:Lorg/postgresql/ds/PGPooledConnection$ConnectionHandler;
            invokevirtual org.postgresql.ds.PGPooledConnection$ConnectionHandler.close:()V
         9: .line 131
            aload 0 /* this */
            getfield org.postgresql.ds.PGPooledConnection.con:Ljava/sql/Connection;
            invokeinterface java.sql.Connection.getAutoCommit:()Z
            ifne 13
        10: .line 133
            aload 0 /* this */
            getfield org.postgresql.ds.PGPooledConnection.con:Ljava/sql/Connection;
            invokeinterface java.sql.Connection.rollback:()V
        11: .line 134
            goto 13
      StackMap locals:
      StackMap stack: java.sql.SQLException
        12: pop
        13: .line 137
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.postgresql.ds.PGPooledConnection.con:Ljava/sql/Connection;
            invokeinterface java.sql.Connection.clearWarnings:()V
        14: .line 143
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.postgresql.ds.PGPooledConnection.isXA:Z
            ifne 20
        15: .line 144
            aload 0 /* this */
            getfield org.postgresql.ds.PGPooledConnection.con:Ljava/sql/Connection;
            aload 0 /* this */
            getfield org.postgresql.ds.PGPooledConnection.autoCommit:Z
            invokeinterface java.sql.Connection.setAutoCommit:(Z)V
        16: .line 146
            goto 20
      StackMap locals:
      StackMap stack: java.sql.SQLException
        17: astore 1 /* sqlException */
        start local 1 // java.sql.SQLException sqlException
        18: .line 147
            aload 0 /* this */
            aload 1 /* sqlException */
            invokevirtual org.postgresql.ds.PGPooledConnection.fireConnectionFatalError:(Ljava/sql/SQLException;)V
        19: .line 148
            aload 1 /* sqlException */
            invokevirtual java.sql.SQLException.fillInStackTrace:()Ljava/lang/Throwable;
            checkcast java.sql.SQLException
            athrow
        end local 1 // java.sql.SQLException sqlException
        20: .line 150
      StackMap locals:
      StackMap stack:
            new org.postgresql.ds.PGPooledConnection$ConnectionHandler
            dup
            aload 0 /* this */
            aload 0 /* this */
            getfield org.postgresql.ds.PGPooledConnection.con:Ljava/sql/Connection;
            invokespecial org.postgresql.ds.PGPooledConnection$ConnectionHandler.<init>:(Lorg/postgresql/ds/PGPooledConnection;Ljava/sql/Connection;)V
            astore 1 /* handler */
        start local 1 // org.postgresql.ds.PGPooledConnection$ConnectionHandler handler
        21: .line 151
            aload 0 /* this */
            aload 1 /* handler */
            putfield org.postgresql.ds.PGPooledConnection.last:Lorg/postgresql/ds/PGPooledConnection$ConnectionHandler;
        22: .line 153
            aload 0 /* this */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
        23: .line 154
            iconst_2
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/sql/Connection;
            aastore
            dup
            iconst_1
            ldc Lorg/postgresql/PGConnection;
            aastore
            aload 1 /* handler */
        24: .line 153
            invokestatic java.lang.reflect.Proxy.newProxyInstance:(Ljava/lang/ClassLoader;[Ljava/lang/Class;Ljava/lang/reflect/InvocationHandler;)Ljava/lang/Object;
            checkcast java.sql.Connection
            astore 2 /* proxyCon */
        start local 2 // java.sql.Connection proxyCon
        25: .line 155
            aload 0 /* this */
            getfield org.postgresql.ds.PGPooledConnection.last:Lorg/postgresql/ds/PGPooledConnection$ConnectionHandler;
            aload 2 /* proxyCon */
            invokevirtual org.postgresql.ds.PGPooledConnection$ConnectionHandler.setProxy:(Ljava/sql/Connection;)V
        26: .line 156
            aload 2 /* proxyCon */
            areturn
        end local 2 // java.sql.Connection proxyCon
        end local 1 // org.postgresql.ds.PGPooledConnection$ConnectionHandler handler
        end local 0 // org.postgresql.ds.PGPooledConnection this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   27     0          this  Lorg/postgresql/ds/PGPooledConnection;
            5    7     1  sqlException  Lorg/postgresql/util/PSQLException;
           18   20     1  sqlException  Ljava/sql/SQLException;
           21   27     1       handler  Lorg/postgresql/ds/PGPooledConnection$ConnectionHandler;
           25   27     2      proxyCon  Ljava/sql/Connection;
      Exception table:
        from    to  target  type
          10    11      12  Class java.sql.SQLException
           7    16      17  Class java.sql.SQLException
    Exceptions:
      throws java.sql.SQLException

  void fireConnectionClosed();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=2, locals=7, args_size=1
        start local 0 // org.postgresql.ds.PGPooledConnection this
         0: .line 163
            aconst_null
            astore 1 /* evt */
        start local 1 // javax.sql.ConnectionEvent evt
         1: .line 166
            aload 0 /* this */
            getfield org.postgresql.ds.PGPooledConnection.listeners:Ljava/util/List;
            iconst_0
            anewarray javax.sql.ConnectionEventListener
            invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast javax.sql.ConnectionEventListener[]
         2: .line 165
            astore 2 /* local */
        start local 2 // javax.sql.ConnectionEventListener[] local
         3: .line 167
            aload 2 /* local */
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 9
      StackMap locals: org.postgresql.ds.PGPooledConnection javax.sql.ConnectionEvent javax.sql.ConnectionEventListener[] top int int javax.sql.ConnectionEventListener[]
      StackMap stack:
         4: aload 6
            iload 4
            aaload
            astore 3 /* listener */
        start local 3 // javax.sql.ConnectionEventListener listener
         5: .line 168
            aload 1 /* evt */
            ifnonnull 7
         6: .line 169
            aload 0 /* this */
            aconst_null
            invokevirtual org.postgresql.ds.PGPooledConnection.createConnectionEvent:(Ljava/sql/SQLException;)Ljavax/sql/ConnectionEvent;
            astore 1 /* evt */
         7: .line 171
      StackMap locals: org.postgresql.ds.PGPooledConnection javax.sql.ConnectionEvent javax.sql.ConnectionEventListener[] javax.sql.ConnectionEventListener int int javax.sql.ConnectionEventListener[]
      StackMap stack:
            aload 3 /* listener */
            aload 1 /* evt */
            invokeinterface javax.sql.ConnectionEventListener.connectionClosed:(Ljavax/sql/ConnectionEvent;)V
        end local 3 // javax.sql.ConnectionEventListener listener
         8: .line 167
            iinc 4 1
      StackMap locals: org.postgresql.ds.PGPooledConnection javax.sql.ConnectionEvent javax.sql.ConnectionEventListener[] top int int javax.sql.ConnectionEventListener[]
      StackMap stack:
         9: iload 4
            iload 5
            if_icmplt 4
        10: .line 173
            return
        end local 2 // javax.sql.ConnectionEventListener[] local
        end local 1 // javax.sql.ConnectionEvent evt
        end local 0 // org.postgresql.ds.PGPooledConnection this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   11     0      this  Lorg/postgresql/ds/PGPooledConnection;
            1   11     1       evt  Ljavax/sql/ConnectionEvent;
            3   11     2     local  [Ljavax/sql/ConnectionEventListener;
            5    8     3  listener  Ljavax/sql/ConnectionEventListener;

  void fireConnectionFatalError(java.sql.SQLException);
    descriptor: (Ljava/sql/SQLException;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=8, args_size=2
        start local 0 // org.postgresql.ds.PGPooledConnection this
        start local 1 // java.sql.SQLException e
         0: .line 179
            aconst_null
            astore 2 /* evt */
        start local 2 // javax.sql.ConnectionEvent evt
         1: .line 182
            aload 0 /* this */
            getfield org.postgresql.ds.PGPooledConnection.listeners:Ljava/util/List;
            iconst_0
            anewarray javax.sql.ConnectionEventListener
            invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
            checkcast javax.sql.ConnectionEventListener[]
         2: .line 181
            astore 3 /* local */
        start local 3 // javax.sql.ConnectionEventListener[] local
         3: .line 183
            aload 3 /* local */
            dup
            astore 7
            arraylength
            istore 6
            iconst_0
            istore 5
            goto 9
      StackMap locals: org.postgresql.ds.PGPooledConnection java.sql.SQLException javax.sql.ConnectionEvent javax.sql.ConnectionEventListener[] top int int javax.sql.ConnectionEventListener[]
      StackMap stack:
         4: aload 7
            iload 5
            aaload
            astore 4 /* listener */
        start local 4 // javax.sql.ConnectionEventListener listener
         5: .line 184
            aload 2 /* evt */
            ifnonnull 7
         6: .line 185
            aload 0 /* this */
            aload 1 /* e */
            invokevirtual org.postgresql.ds.PGPooledConnection.createConnectionEvent:(Ljava/sql/SQLException;)Ljavax/sql/ConnectionEvent;
            astore 2 /* evt */
         7: .line 187
      StackMap locals: org.postgresql.ds.PGPooledConnection java.sql.SQLException javax.sql.ConnectionEvent javax.sql.ConnectionEventListener[] javax.sql.ConnectionEventListener int int javax.sql.ConnectionEventListener[]
      StackMap stack:
            aload 4 /* listener */
            aload 2 /* evt */
            invokeinterface javax.sql.ConnectionEventListener.connectionErrorOccurred:(Ljavax/sql/ConnectionEvent;)V
        end local 4 // javax.sql.ConnectionEventListener listener
         8: .line 183
            iinc 5 1
      StackMap locals: org.postgresql.ds.PGPooledConnection java.sql.SQLException javax.sql.ConnectionEvent javax.sql.ConnectionEventListener[] top int int javax.sql.ConnectionEventListener[]
      StackMap stack:
         9: iload 5
            iload 6
            if_icmplt 4
        10: .line 189
            return
        end local 3 // javax.sql.ConnectionEventListener[] local
        end local 2 // javax.sql.ConnectionEvent evt
        end local 1 // java.sql.SQLException e
        end local 0 // org.postgresql.ds.PGPooledConnection this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   11     0      this  Lorg/postgresql/ds/PGPooledConnection;
            0   11     1         e  Ljava/sql/SQLException;
            1   11     2       evt  Ljavax/sql/ConnectionEvent;
            3   11     3     local  [Ljavax/sql/ConnectionEventListener;
            5    8     4  listener  Ljavax/sql/ConnectionEventListener;
    MethodParameters:
      Name  Flags
      e     

  protected javax.sql.ConnectionEvent createConnectionEvent(java.sql.SQLException);
    descriptor: (Ljava/sql/SQLException;)Ljavax/sql/ConnectionEvent;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.postgresql.ds.PGPooledConnection this
        start local 1 // java.sql.SQLException e
         0: .line 192
            new javax.sql.ConnectionEvent
            dup
            aload 0 /* this */
            aload 1 /* e */
            invokespecial javax.sql.ConnectionEvent.<init>:(Ljavax/sql/PooledConnection;Ljava/sql/SQLException;)V
            areturn
        end local 1 // java.sql.SQLException e
        end local 0 // org.postgresql.ds.PGPooledConnection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/postgresql/ds/PGPooledConnection;
            0    1     1     e  Ljava/sql/SQLException;
    MethodParameters:
      Name  Flags
      e     

  private static boolean isFatalState(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=5, args_size=1
        start local 0 // java.lang.String state
         0: .line 213
            aload 0 /* state */
            ifnonnull 2
         1: .line 215
            iconst_1
            ireturn
         2: .line 217
      StackMap locals:
      StackMap stack:
            aload 0 /* state */
            invokevirtual java.lang.String.length:()I
            iconst_2
            if_icmpge 4
         3: .line 219
            iconst_1
            ireturn
         4: .line 222
      StackMap locals:
      StackMap stack:
            getstatic org.postgresql.ds.PGPooledConnection.fatalClasses:[Ljava/lang/String;
            dup
            astore 4
            arraylength
            istore 3
            iconst_0
            istore 2
            goto 9
      StackMap locals: java.lang.String top int int java.lang.String[]
      StackMap stack:
         5: aload 4
            iload 2
            aaload
            astore 1 /* fatalClass */
        start local 1 // java.lang.String fatalClass
         6: .line 223
            aload 0 /* state */
            aload 1 /* fatalClass */
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 8
         7: .line 224
            iconst_1
            ireturn
        end local 1 // java.lang.String fatalClass
         8: .line 222
      StackMap locals:
      StackMap stack:
            iinc 2 1
      StackMap locals:
      StackMap stack:
         9: iload 2
            iload 3
            if_icmplt 5
        10: .line 228
            iconst_0
            ireturn
        end local 0 // java.lang.String state
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   11     0       state  Ljava/lang/String;
            6    8     1  fatalClass  Ljava/lang/String;
    MethodParameters:
       Name  Flags
      state  

  private void fireConnectionError(java.sql.SQLException);
    descriptor: (Ljava/sql/SQLException;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.postgresql.ds.PGPooledConnection this
        start local 1 // java.sql.SQLException e
         0: .line 237
            aload 1 /* e */
            invokevirtual java.sql.SQLException.getSQLState:()Ljava/lang/String;
            invokestatic org.postgresql.ds.PGPooledConnection.isFatalState:(Ljava/lang/String;)Z
            ifne 2
         1: .line 238
            return
         2: .line 241
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* e */
            invokevirtual org.postgresql.ds.PGPooledConnection.fireConnectionFatalError:(Ljava/sql/SQLException;)V
         3: .line 242
            return
        end local 1 // java.sql.SQLException e
        end local 0 // org.postgresql.ds.PGPooledConnection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/postgresql/ds/PGPooledConnection;
            0    4     1     e  Ljava/sql/SQLException;
    MethodParameters:
      Name  Flags
      e     

  public void removeStatementEventListener(javax.sql.StatementEventListener);
    descriptor: (Ljavax/sql/StatementEventListener;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // org.postgresql.ds.PGPooledConnection this
        start local 1 // javax.sql.StatementEventListener listener
         0: .line 441
            return
        end local 1 // javax.sql.StatementEventListener listener
        end local 0 // org.postgresql.ds.PGPooledConnection this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lorg/postgresql/ds/PGPooledConnection;
            0    1     1  listener  Ljavax/sql/StatementEventListener;
    MethodParameters:
          Name  Flags
      listener  

  public void addStatementEventListener(javax.sql.StatementEventListener);
    descriptor: (Ljavax/sql/StatementEventListener;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // org.postgresql.ds.PGPooledConnection this
        start local 1 // javax.sql.StatementEventListener listener
         0: .line 445
            return
        end local 1 // javax.sql.StatementEventListener listener
        end local 0 // org.postgresql.ds.PGPooledConnection this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lorg/postgresql/ds/PGPooledConnection;
            0    1     1  listener  Ljavax/sql/StatementEventListener;
    MethodParameters:
          Name  Flags
      listener  
}
SourceFile: "PGPooledConnection.java"
NestMembers:
  org.postgresql.ds.PGPooledConnection$ConnectionHandler  org.postgresql.ds.PGPooledConnection$StatementHandler
InnerClasses:
  private ConnectionHandler = org.postgresql.ds.PGPooledConnection$ConnectionHandler of org.postgresql.ds.PGPooledConnection
  private StatementHandler = org.postgresql.ds.PGPooledConnection$StatementHandler of org.postgresql.ds.PGPooledConnection