code: @Override
      public boolean doConnectionCleanup(Connection conn) throws SQLException {
          final boolean trace = TraceComponent.isAnyTracingEnabled();
          if (trace && tc.isEntryEnabled())
              Tr.entry(tc, "doConnectionCleanup");
          boolean result = false;
          try {
              Class<?> c = OracleConnection.get();
              if (c == null)
                  OracleConnection.set(c = WSManagedConnectionFactoryImpl.priv.loadClass(mcf.jdbcDriverLoader, oracle_jdbc_OracleConnection));
  
              if (c.isInstance(conn)) {
                  try {
                      Method m = isProxySession.get();
                      if (m == null)
                          isProxySession.set(m = c.getMethod("isProxySession"));
  
                      if ((Boolean) m.invoke(conn)) {
                          m = close.get();
                          if (m == null)
                              close.set(m = c.getMethod("close", int.class));
                          m.invoke(conn, 1); // value of OracleConnection.PROXY_SESSION
                          result = true;
                      }
                  } catch (NoSuchMethodException nsme) {
                      // This is expected when older version of the Oracle JDBC Driver
                      // like classes12.zip are being used
                  }
              }
          } catch (RuntimeException x) {
              throw x;
          } catch (Exception x) {
              throw AdapterUtil.toSQLException(x);
          }
  
          if (trace && tc.isEntryEnabled())
              Tr.exit(tc, "doConnectionCleanup", result);
          return result;
      }
docs: Closes the proxy session.