public ProjectFile read() throws MPXJException
   {
      try
      {
         m_reader = new PrimaveraReader(m_taskUdfCounters, m_resourceUdfCounters, m_assignmentUdfCounters, m_resourceFields, m_wbsFields, m_taskFields, m_assignmentFields, m_aliases, m_matchPrimaveraWBS);
         ProjectFile project = m_reader.getProject();
         project.getEventManager().addProjectListeners(m_projectListeners);

         processAnalytics();
         processProjectProperties();
         processActivityCodes();
         processUserDefinedFields();
         processCalendars();
         processResources();
         processResourceRates();
         processTasks();
         processPredecessors();
         processAssignments();

         m_reader = null;
         project.updateStructure();

         return (project);
      }

      catch (SQLException ex)
      {
         throw new MPXJException(MPXJException.READ_ERROR, ex);
      }

      finally
      {
         if (m_allocatedConnection && m_connection != null)
         {
            try
            {
               m_connection.close();
            }

            catch (SQLException ex)
            {
               // silently ignore errors on close
            }

            m_connection = null;
         }
      }
   }
public ProjectFile read ( ) throws MPXJException { try { m_reader = new PrimaveraReader ( m_taskUdfCounters , m_resourceUdfCounters , m_assignmentUdfCounters , m_resourceFields , m_wbsFields , m_taskFields , m_assignmentFields , m_aliases , m_matchPrimaveraWBS ) ; ProjectFile project = m_reader . getProject ( ) ; project . getEventManager ( ) . addProjectListeners ( m_projectListeners ) ; processAnalytics ( ) ; processProjectProperties ( ) ; processActivityCodes ( ) ; processUserDefinedFields ( ) ; processCalendars ( ) ; processResources ( ) ; processResourceRates ( ) ; processTasks ( ) ; processPredecessors ( ) ; processAssignments ( ) ; m_reader = null ; project . updateStructure ( ) ; return ( project ) ; } catch ( SQLException ex ) { throw new MPXJException ( MPXJException . READ_ERROR , ex ) ; } finally { if ( m_allocatedConnection && m_connection != null ) { try { m_connection . close ( ) ; } catch ( SQLException ex ) { } m_connection = null ; } } }
Read a project from the current data source.

@return ProjectFile instance
@throws MPXJException