docs: public void free()
      {
      	if (m_recordOwnerCollection != null)
      		m_recordOwnerCollection.free();
      	m_recordOwnerCollection = null;
          if (m_messageFilterList != null)
              m_messageFilterList.free();
          m_messageFilterList = null;
          // Close all records associated with this SessionObject
          if (m_vRecordList != null)
              m_vRecordList.free(this); // Free the records that belong to me
          m_vRecordList = null;
  
          if (m_databaseCollection != null)
              m_databaseCollection.free();
          m_databaseCollection = null;
  
  //        try   {
  //            UnicastRemoteObject.unexportObject(this, false);    // I'm no longer available for remote calls (RMI, not EJB)
  //        } catch (NoSuchObjectException ex)  {
  //            ex.printStackTrace();
  //        }
  
          if (m_sessionObjectParent != null)
          	m_sessionObjectParent.removeRecordOwner(this);
          m_sessionObjectParent = null;
      }