public synchronized boolean close(){
  if (s_cache != null)   s_cache.remove(getTrxName());
  if (m_connection == null)   return true;
  if (isActive())   commit();
  try {
    m_connection.close();
  }
 catch (  SQLException e) {
    log.log(Level.SEVERE,m_trxName,e);
  }
  m_connection=null;
  m_active=false;
  log.log(Level.ALL,m_trxName);
  return true;
}

public synchronized boolean close ( ) { if ( s_cache != null ) s_cache . remove ( getTrxName ( ) ) ; if ( m_connection == null ) return true ; if ( isActive ( ) ) commit ( ) ; try { m_connection . close ( ) ; } catch ( SQLException e ) { log . log ( Level . SEVERE , m_trxName , e ) ; } m_connection = null ; m_active = false ; log . log ( Level . ALL , m_trxName ) ; return true ; }
end transaction and close connection
