code: @Override public ProjectFile read(InputStream inputStream) throws MPXJException
     {
        try
        {
           //SynchroLogger.setLogFile("c:/temp/project1.txt");
           SynchroLogger.openLogFile();
  
           m_calendarMap = new HashMap<UUID, ProjectCalendar>();
           m_taskMap = new HashMap<UUID, Task>();
           m_predecessorMap = new HashMap<Task, List<MapRow>>();
           m_resourceMap = new HashMap<UUID, Resource>();
  
           m_data = new SynchroData();
           m_data.process(inputStream);
           return read();
        }
  
        catch (Exception ex)
        {
           throw new MPXJException(MPXJException.INVALID_FILE, ex);
        }
  
        finally
        {
           SynchroLogger.closeLogFile();
  
           m_data = null;
           m_calendarMap = null;
           m_taskMap = null;
           m_predecessorMap = null;
           m_resourceMap = null;
        }
     }
docs: {@inheritDoc}