code: private void readTasks(Project plannerProject) throws MPXJException
     {
        Tasks tasks = plannerProject.getTasks();
        if (tasks != null)
        {
           for (net.sf.mpxj.planner.schema.Task task : tasks.getTask())
           {
              readTask(null, task);
           }
  
           for (net.sf.mpxj.planner.schema.Task task : tasks.getTask())
           {
              readPredecessors(task);
           }
        }
  
        m_projectFile.updateStructure();
     }
docs: This method extracts task data from a Planner file.
  
  @param plannerProject Root node of the Planner file