public class org.springframework.jca.cci.connection.SingleConnectionFactory extends org.springframework.jca.cci.connection.DelegatingConnectionFactory implements org.springframework.beans.factory.DisposableBean
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.springframework.jca.cci.connection.SingleConnectionFactory
  super_class: org.springframework.jca.cci.connection.DelegatingConnectionFactory
{
  protected final org.apache.commons.logging.Log logger;
    descriptor: Lorg/apache/commons/logging/Log;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  private javax.resource.cci.Connection target;
    descriptor: Ljavax/resource/cci/Connection;
    flags: (0x0002) ACC_PRIVATE
    RuntimeVisibleAnnotations: 
      org.springframework.lang.Nullable()

  private javax.resource.cci.Connection connection;
    descriptor: Ljavax/resource/cci/Connection;
    flags: (0x0002) ACC_PRIVATE
    RuntimeVisibleAnnotations: 
      org.springframework.lang.Nullable()

  private final java.lang.Object connectionMonitor;
    descriptor: Ljava/lang/Object;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.springframework.jca.cci.connection.SingleConnectionFactory this
         0: .line 75
            aload 0 /* this */
            invokespecial org.springframework.jca.cci.connection.DelegatingConnectionFactory.<init>:()V
         1: .line 57
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokestatic org.apache.commons.logging.LogFactory.getLog:(Ljava/lang/Class;)Lorg/apache/commons/logging/Log;
            putfield org.springframework.jca.cci.connection.SingleConnectionFactory.logger:Lorg/apache/commons/logging/Log;
         2: .line 68
            aload 0 /* this */
            new java.lang.Object
            dup
            invokespecial java.lang.Object.<init>:()V
            putfield org.springframework.jca.cci.connection.SingleConnectionFactory.connectionMonitor:Ljava/lang/Object;
         3: .line 76
            return
        end local 0 // org.springframework.jca.cci.connection.SingleConnectionFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/springframework/jca/cci/connection/SingleConnectionFactory;

  public void <init>(javax.resource.cci.Connection);
    descriptor: (Ljavax/resource/cci/Connection;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.springframework.jca.cci.connection.SingleConnectionFactory this
        start local 1 // javax.resource.cci.Connection target
         0: .line 83
            aload 0 /* this */
            invokespecial org.springframework.jca.cci.connection.DelegatingConnectionFactory.<init>:()V
         1: .line 57
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokestatic org.apache.commons.logging.LogFactory.getLog:(Ljava/lang/Class;)Lorg/apache/commons/logging/Log;
            putfield org.springframework.jca.cci.connection.SingleConnectionFactory.logger:Lorg/apache/commons/logging/Log;
         2: .line 68
            aload 0 /* this */
            new java.lang.Object
            dup
            invokespecial java.lang.Object.<init>:()V
            putfield org.springframework.jca.cci.connection.SingleConnectionFactory.connectionMonitor:Ljava/lang/Object;
         3: .line 84
            aload 1 /* target */
            ldc "Target Connection must not be null"
            invokestatic org.springframework.util.Assert.notNull:(Ljava/lang/Object;Ljava/lang/String;)V
         4: .line 85
            aload 0 /* this */
            aload 1 /* target */
            putfield org.springframework.jca.cci.connection.SingleConnectionFactory.target:Ljavax/resource/cci/Connection;
         5: .line 86
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* target */
            invokevirtual org.springframework.jca.cci.connection.SingleConnectionFactory.getCloseSuppressingConnectionProxy:(Ljavax/resource/cci/Connection;)Ljavax/resource/cci/Connection;
            putfield org.springframework.jca.cci.connection.SingleConnectionFactory.connection:Ljavax/resource/cci/Connection;
         6: .line 87
            return
        end local 1 // javax.resource.cci.Connection target
        end local 0 // org.springframework.jca.cci.connection.SingleConnectionFactory this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0    this  Lorg/springframework/jca/cci/connection/SingleConnectionFactory;
            0    7     1  target  Ljavax/resource/cci/Connection;
    MethodParameters:
        Name  Flags
      target  

  public void <init>(javax.resource.cci.ConnectionFactory);
    descriptor: (Ljavax/resource/cci/ConnectionFactory;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.springframework.jca.cci.connection.SingleConnectionFactory this
        start local 1 // javax.resource.cci.ConnectionFactory targetConnectionFactory
         0: .line 95
            aload 0 /* this */
            invokespecial org.springframework.jca.cci.connection.DelegatingConnectionFactory.<init>:()V
         1: .line 57
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokestatic org.apache.commons.logging.LogFactory.getLog:(Ljava/lang/Class;)Lorg/apache/commons/logging/Log;
            putfield org.springframework.jca.cci.connection.SingleConnectionFactory.logger:Lorg/apache/commons/logging/Log;
         2: .line 68
            aload 0 /* this */
            new java.lang.Object
            dup
            invokespecial java.lang.Object.<init>:()V
            putfield org.springframework.jca.cci.connection.SingleConnectionFactory.connectionMonitor:Ljava/lang/Object;
         3: .line 96
            aload 1 /* targetConnectionFactory */
            ldc "Target ConnectionFactory must not be null"
            invokestatic org.springframework.util.Assert.notNull:(Ljava/lang/Object;Ljava/lang/String;)V
         4: .line 97
            aload 0 /* this */
            aload 1 /* targetConnectionFactory */
            invokevirtual org.springframework.jca.cci.connection.SingleConnectionFactory.setTargetConnectionFactory:(Ljavax/resource/cci/ConnectionFactory;)V
         5: .line 98
            return
        end local 1 // javax.resource.cci.ConnectionFactory targetConnectionFactory
        end local 0 // org.springframework.jca.cci.connection.SingleConnectionFactory this
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0    6     0                     this  Lorg/springframework/jca/cci/connection/SingleConnectionFactory;
            0    6     1  targetConnectionFactory  Ljavax/resource/cci/ConnectionFactory;
    MethodParameters:
                         Name  Flags
      targetConnectionFactory  

  public void afterPropertiesSet();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.springframework.jca.cci.connection.SingleConnectionFactory this
         0: .line 106
            aload 0 /* this */
            getfield org.springframework.jca.cci.connection.SingleConnectionFactory.connection:Ljavax/resource/cci/Connection;
            ifnonnull 2
            aload 0 /* this */
            invokevirtual org.springframework.jca.cci.connection.SingleConnectionFactory.getTargetConnectionFactory:()Ljavax/resource/cci/ConnectionFactory;
            ifnonnull 2
         1: .line 107
            new java.lang.IllegalArgumentException
            dup
            ldc "Connection or 'targetConnectionFactory' is required"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 109
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.springframework.jca.cci.connection.SingleConnectionFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/springframework/jca/cci/connection/SingleConnectionFactory;

  public javax.resource.cci.Connection getConnection();
    descriptor: ()Ljavax/resource/cci/Connection;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.springframework.jca.cci.connection.SingleConnectionFactory this
         0: .line 114
            aload 0 /* this */
            getfield org.springframework.jca.cci.connection.SingleConnectionFactory.connectionMonitor:Ljava/lang/Object;
            dup
            astore 1
            monitorenter
         1: .line 115
            aload 0 /* this */
            getfield org.springframework.jca.cci.connection.SingleConnectionFactory.connection:Ljavax/resource/cci/Connection;
            ifnonnull 3
         2: .line 116
            aload 0 /* this */
            invokevirtual org.springframework.jca.cci.connection.SingleConnectionFactory.initConnection:()V
         3: .line 118
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 0 /* this */
            getfield org.springframework.jca.cci.connection.SingleConnectionFactory.connection:Ljavax/resource/cci/Connection;
            aload 1
            monitorexit
         4: areturn
         5: .line 114
      StackMap locals:
      StackMap stack: java.lang.Throwable
            aload 1
            monitorexit
         6: athrow
        end local 0 // org.springframework.jca.cci.connection.SingleConnectionFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lorg/springframework/jca/cci/connection/SingleConnectionFactory;
      Exception table:
        from    to  target  type
           1     4       5  any
           5     6       5  any
    Exceptions:
      throws javax.resource.ResourceException

  public javax.resource.cci.Connection getConnection(javax.resource.cci.ConnectionSpec);
    descriptor: (Ljavax/resource/cci/ConnectionSpec;)Ljavax/resource/cci/Connection;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.springframework.jca.cci.connection.SingleConnectionFactory this
        start local 1 // javax.resource.cci.ConnectionSpec connectionSpec
         0: .line 124
            new javax.resource.NotSupportedException
            dup
         1: .line 125
            ldc "SingleConnectionFactory does not support custom ConnectionSpec"
         2: .line 124
            invokespecial javax.resource.NotSupportedException.<init>:(Ljava/lang/String;)V
            athrow
        end local 1 // javax.resource.cci.ConnectionSpec connectionSpec
        end local 0 // org.springframework.jca.cci.connection.SingleConnectionFactory this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    3     0            this  Lorg/springframework/jca/cci/connection/SingleConnectionFactory;
            0    3     1  connectionSpec  Ljavax/resource/cci/ConnectionSpec;
    Exceptions:
      throws javax.resource.ResourceException
    MethodParameters:
                Name  Flags
      connectionSpec  

  public void destroy();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.springframework.jca.cci.connection.SingleConnectionFactory this
         0: .line 136
            aload 0 /* this */
            invokevirtual org.springframework.jca.cci.connection.SingleConnectionFactory.resetConnection:()V
         1: .line 137
            return
        end local 0 // org.springframework.jca.cci.connection.SingleConnectionFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/springframework/jca/cci/connection/SingleConnectionFactory;

  public void initConnection();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // org.springframework.jca.cci.connection.SingleConnectionFactory this
         0: .line 147
            aload 0 /* this */
            invokevirtual org.springframework.jca.cci.connection.SingleConnectionFactory.getTargetConnectionFactory:()Ljavax/resource/cci/ConnectionFactory;
            ifnonnull 4
         1: .line 148
            new java.lang.IllegalStateException
            dup
         2: .line 149
            ldc "'targetConnectionFactory' is required for lazily initializing a Connection"
         3: .line 148
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 151
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.springframework.jca.cci.connection.SingleConnectionFactory.connectionMonitor:Ljava/lang/Object;
            dup
            astore 1
            monitorenter
         5: .line 152
            aload 0 /* this */
            getfield org.springframework.jca.cci.connection.SingleConnectionFactory.target:Ljavax/resource/cci/Connection;
            ifnull 7
         6: .line 153
            aload 0 /* this */
            aload 0 /* this */
            getfield org.springframework.jca.cci.connection.SingleConnectionFactory.target:Ljavax/resource/cci/Connection;
            invokevirtual org.springframework.jca.cci.connection.SingleConnectionFactory.closeConnection:(Ljavax/resource/cci/Connection;)V
         7: .line 155
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.springframework.jca.cci.connection.SingleConnectionFactory.doCreateConnection:()Ljavax/resource/cci/Connection;
            putfield org.springframework.jca.cci.connection.SingleConnectionFactory.target:Ljavax/resource/cci/Connection;
         8: .line 156
            aload 0 /* this */
            aload 0 /* this */
            getfield org.springframework.jca.cci.connection.SingleConnectionFactory.target:Ljavax/resource/cci/Connection;
            invokevirtual org.springframework.jca.cci.connection.SingleConnectionFactory.prepareConnection:(Ljavax/resource/cci/Connection;)V
         9: .line 157
            aload 0 /* this */
            getfield org.springframework.jca.cci.connection.SingleConnectionFactory.logger:Lorg/apache/commons/logging/Log;
            invokeinterface org.apache.commons.logging.Log.isDebugEnabled:()Z
            ifeq 11
        10: .line 158
            aload 0 /* this */
            getfield org.springframework.jca.cci.connection.SingleConnectionFactory.logger:Lorg/apache/commons/logging/Log;
            new java.lang.StringBuilder
            dup
            ldc "Established shared CCI Connection: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield org.springframework.jca.cci.connection.SingleConnectionFactory.target:Ljavax/resource/cci/Connection;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface org.apache.commons.logging.Log.debug:(Ljava/lang/Object;)V
        11: .line 160
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            aload 0 /* this */
            getfield org.springframework.jca.cci.connection.SingleConnectionFactory.target:Ljavax/resource/cci/Connection;
            invokevirtual org.springframework.jca.cci.connection.SingleConnectionFactory.getCloseSuppressingConnectionProxy:(Ljavax/resource/cci/Connection;)Ljavax/resource/cci/Connection;
            putfield org.springframework.jca.cci.connection.SingleConnectionFactory.connection:Ljavax/resource/cci/Connection;
        12: .line 151
            aload 1
            monitorexit
        13: goto 16
      StackMap locals:
      StackMap stack: java.lang.Throwable
        14: aload 1
            monitorexit
        15: athrow
        16: .line 162
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.springframework.jca.cci.connection.SingleConnectionFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   17     0  this  Lorg/springframework/jca/cci/connection/SingleConnectionFactory;
      Exception table:
        from    to  target  type
           5    13      14  any
          14    15      14  any
    Exceptions:
      throws javax.resource.ResourceException

  public void resetConnection();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.springframework.jca.cci.connection.SingleConnectionFactory this
         0: .line 168
            aload 0 /* this */
            getfield org.springframework.jca.cci.connection.SingleConnectionFactory.connectionMonitor:Ljava/lang/Object;
            dup
            astore 1
            monitorenter
         1: .line 169
            aload 0 /* this */
            getfield org.springframework.jca.cci.connection.SingleConnectionFactory.target:Ljavax/resource/cci/Connection;
            ifnull 3
         2: .line 170
            aload 0 /* this */
            aload 0 /* this */
            getfield org.springframework.jca.cci.connection.SingleConnectionFactory.target:Ljavax/resource/cci/Connection;
            invokevirtual org.springframework.jca.cci.connection.SingleConnectionFactory.closeConnection:(Ljavax/resource/cci/Connection;)V
         3: .line 172
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 0 /* this */
            aconst_null
            putfield org.springframework.jca.cci.connection.SingleConnectionFactory.target:Ljavax/resource/cci/Connection;
         4: .line 173
            aload 0 /* this */
            aconst_null
            putfield org.springframework.jca.cci.connection.SingleConnectionFactory.connection:Ljavax/resource/cci/Connection;
         5: .line 168
            aload 1
            monitorexit
         6: goto 9
      StackMap locals:
      StackMap stack: java.lang.Throwable
         7: aload 1
            monitorexit
         8: athrow
         9: .line 175
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.springframework.jca.cci.connection.SingleConnectionFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Lorg/springframework/jca/cci/connection/SingleConnectionFactory;
      Exception table:
        from    to  target  type
           1     6       7  any
           7     8       7  any

  protected javax.resource.cci.Connection doCreateConnection();
    descriptor: ()Ljavax/resource/cci/Connection;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.springframework.jca.cci.connection.SingleConnectionFactory this
         0: .line 183
            aload 0 /* this */
            invokevirtual org.springframework.jca.cci.connection.SingleConnectionFactory.getTargetConnectionFactory:()Ljavax/resource/cci/ConnectionFactory;
            astore 1 /* connectionFactory */
        start local 1 // javax.resource.cci.ConnectionFactory connectionFactory
         1: .line 184
            aload 1 /* connectionFactory */
            ifnull 2
            iconst_1
            goto 3
      StackMap locals: javax.resource.cci.ConnectionFactory
      StackMap stack:
         2: iconst_0
      StackMap locals:
      StackMap stack: int
         3: ldc "No 'targetConnectionFactory' set"
            invokestatic org.springframework.util.Assert.state:(ZLjava/lang/String;)V
         4: .line 185
            aload 1 /* connectionFactory */
            invokeinterface javax.resource.cci.ConnectionFactory.getConnection:()Ljavax/resource/cci/Connection;
            areturn
        end local 1 // javax.resource.cci.ConnectionFactory connectionFactory
        end local 0 // org.springframework.jca.cci.connection.SingleConnectionFactory this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    5     0               this  Lorg/springframework/jca/cci/connection/SingleConnectionFactory;
            1    5     1  connectionFactory  Ljavax/resource/cci/ConnectionFactory;
    Exceptions:
      throws javax.resource.ResourceException

  protected void prepareConnection(javax.resource.cci.Connection);
    descriptor: (Ljavax/resource/cci/Connection;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // org.springframework.jca.cci.connection.SingleConnectionFactory this
        start local 1 // javax.resource.cci.Connection con
         0: .line 194
            return
        end local 1 // javax.resource.cci.Connection con
        end local 0 // org.springframework.jca.cci.connection.SingleConnectionFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/springframework/jca/cci/connection/SingleConnectionFactory;
            0    1     1   con  Ljavax/resource/cci/Connection;
    Exceptions:
      throws javax.resource.ResourceException
    MethodParameters:
      Name  Flags
      con   

  protected void closeConnection(javax.resource.cci.Connection);
    descriptor: (Ljavax/resource/cci/Connection;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.springframework.jca.cci.connection.SingleConnectionFactory this
        start local 1 // javax.resource.cci.Connection con
         0: .line 202
            aload 1 /* con */
            invokeinterface javax.resource.cci.Connection.close:()V
         1: .line 203
            goto 4
         2: .line 204
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 2 /* ex */
        start local 2 // java.lang.Throwable ex
         3: .line 205
            aload 0 /* this */
            getfield org.springframework.jca.cci.connection.SingleConnectionFactory.logger:Lorg/apache/commons/logging/Log;
            ldc "Could not close shared CCI Connection"
            aload 2 /* ex */
            invokeinterface org.apache.commons.logging.Log.warn:(Ljava/lang/Object;Ljava/lang/Throwable;)V
        end local 2 // java.lang.Throwable ex
         4: .line 207
      StackMap locals:
      StackMap stack:
            return
        end local 1 // javax.resource.cci.Connection con
        end local 0 // org.springframework.jca.cci.connection.SingleConnectionFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/springframework/jca/cci/connection/SingleConnectionFactory;
            0    5     1   con  Ljavax/resource/cci/Connection;
            3    4     2    ex  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           0     1       2  Class java.lang.Throwable
    MethodParameters:
      Name  Flags
      con   

  protected javax.resource.cci.Connection getCloseSuppressingConnectionProxy(javax.resource.cci.Connection);
    descriptor: (Ljavax/resource/cci/Connection;)Ljavax/resource/cci/Connection;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.springframework.jca.cci.connection.SingleConnectionFactory this
        start local 1 // javax.resource.cci.Connection target
         0: .line 219
            ldc Ljavax/resource/cci/Connection;
            invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
         1: .line 220
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljavax/resource/cci/Connection;
            aastore
         2: .line 221
            new org.springframework.jca.cci.connection.SingleConnectionFactory$CloseSuppressingInvocationHandler
            dup
            aload 1 /* target */
            invokespecial org.springframework.jca.cci.connection.SingleConnectionFactory$CloseSuppressingInvocationHandler.<init>:(Ljavax/resource/cci/Connection;)V
         3: .line 218
            invokestatic java.lang.reflect.Proxy.newProxyInstance:(Ljava/lang/ClassLoader;[Ljava/lang/Class;Ljava/lang/reflect/InvocationHandler;)Ljava/lang/Object;
            checkcast javax.resource.cci.Connection
            areturn
        end local 1 // javax.resource.cci.Connection target
        end local 0 // org.springframework.jca.cci.connection.SingleConnectionFactory this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Lorg/springframework/jca/cci/connection/SingleConnectionFactory;
            0    4     1  target  Ljavax/resource/cci/Connection;
    MethodParameters:
        Name  Flags
      target  
}
SourceFile: "SingleConnectionFactory.java"
NestMembers:
  org.springframework.jca.cci.connection.SingleConnectionFactory$CloseSuppressingInvocationHandler
InnerClasses:
  private final CloseSuppressingInvocationHandler = org.springframework.jca.cci.connection.SingleConnectionFactory$CloseSuppressingInvocationHandler of org.springframework.jca.cci.connection.SingleConnectionFactory