@Test
 public void testGetTasksWithFilter() throws Exception {
   List<Task> tasks = taskService.getTasks(TaskService.Filter.ALL);
   for (Task task : tasks) {
     assertNotNull(task);
     assertTrue(task.getId() > 0);
     assertNotNull(task.getName());
     assertNotNull(task.getDescription());
     assertNotNull(task.getTestSteps());
     assertNotNull(task.getCreator());
     assertNotNull(task.getAssignee());
     assertNotNull(task.getStatus());
     assertNotNull(task.getPriority());
     assertNotNull(task.getType());
   }
   tasks = taskService.getTasks(TaskService.Filter.CREATOR, "1");
   for (Task task : tasks) {
     assertNotNull(task);
     assertTrue(task.getId() > 0);
     assertNotNull(task.getName());
     assertNotNull(task.getDescription());
     assertNotNull(task.getTestSteps());
     assertNotNull(task.getCreator());
     assertNotNull(task.getAssignee());
     assertNotNull(task.getStatus());
     assertNotNull(task.getPriority());
     assertNotNull(task.getType());
   }
 }
Exemplo n.º 2
0
  public ArrayList<Task> search(Task task) throws InvalidCommandException {
    if (task.getDescription() != null) {
      return searchWagnerList(task.getDescription());

    } else {
      dataHandler.view(task);
      return dataHandler.getObservableList().getList();
    }
  }
Exemplo n.º 3
0
  /*
   * Test method for 'fi.helsinki.cs.kohahdus.trainer.Task.setDescription(String)'
   */
  public void testSetDescription() {
    progtask.setDescription("Create another program that does xxx");
    result = progtask.getDescription();
    expected = "Create another program that does xxx";
    assertEquals(expected, result);

    progtask.setDescription("");
    result = progtask.getDescription();
    expected = "";
    assertEquals(expected, result);

    progtask.setDescription(null);
    result = progtask.getDescription();
    expected = null;
    assertEquals(expected, result);
  }
  @Test
  public void testCreateTask() throws Exception {
    TaskBuilder builder = taskService.createTask();
    builder.creator(user);
    builder.project(project);
    builder.name(name);
    builder.description(desc);
    builder.testSteps(teststeps);
    builder.type(type);
    builder.estimated(8);
    builder.priority(priority);
    Task task = builder.build();

    task.store();

    assertNotNull(task);
    assertTrue(task.getId() > 0);
    assertEquals(name, task.getName());
    assertEquals(desc, task.getDescription());
    assertEquals(teststeps, task.getTestSteps());
    assertEquals(user.getName(), task.getCreator().getName());
    assertEquals(user.getName(), task.getAssignee().getName());
    assertEquals("New", task.getStatus().getName());
    assertEquals(priority, task.getPriority());
    assertEquals(type, task.getType());
  }
Exemplo n.º 5
0
 // remove any task
 public void removeTask(Task taskToRemove) {
   //  tasks.remove(taskToRemove);
   SQLiteDatabase db = this.getWritableDatabase();
   db.delete(
       TABLE_TASKS,
       KEY_DES + " = ?",
       new String[] {String.valueOf(taskToRemove.getDescription())});
   db.close();
   tasks = getAllContacts();
 }
Exemplo n.º 6
0
 @Override
 public boolean equals(Object otherTask) {
   if (!(otherTask instanceof Task)) {
     return false;
   } else {
     Task newTask = (Task) otherTask;
     return this.getDescription().equals(newTask.getDescription())
         && this.getId() == newTask.getId();
   }
 }
 public void addTask(Task task) {
   /*
      Adds a new task to the list view and saves its data in the
      SharedPreferences file.
   */
   adapter.add(task);
   keys.add(task.getKey());
   SharedPreferences.Editor edit = appData.edit();
   edit.putString(task.getKey(), task.getName() + "\n" + task.getDescription());
   edit.apply();
 }
 @Test
 public void testGetTaskFulltext() throws Exception {
   String search = "Third Task";
   List<Task> tasks = taskService.getTaskFulltext("\"" + search + "\"");
   for (Task task : tasks) {
     assertTrue(
         task.getName().contains(search)
             || task.getDescription().contains(search)
             || task.getTestSteps().contains(search));
   }
 }
Exemplo n.º 9
0
 private void setTaskInfo() {
   TaskProvider mTaskProvider = TaskProvider.getInstance(getActivity());
   Task task = mTaskProvider.getTaskById(mTaskid);
   if (task != null && getView() != null) {
     showEmptyLabel(false);
     TextView title = (TextView) getView().findViewById(R.id.view_task_title);
     TextView desc = (TextView) getView().findViewById(R.id.view_task_description);
     title.setText(task.getTitle());
     desc.setText(task.getDescription());
   } else {
     showEmptyLabel(true);
   }
 }
Exemplo n.º 10
0
  private void process(Task task) {

    try { // иммитирую процесс с помощью приостановки потока Thread.sleep на время,
      // указанное в задании Task getTask()
      TimeUnit.SECONDS.sleep(task.getDuration());

      System.out.println(
          String.format(
              "%s Выполняемые действия \"%s\" в %d секундах",
              name, task.getDescription(), task.getDuration()));
    } catch (InterruptedException e) {
      e.printStackTrace();
    }
  }
Exemplo n.º 11
0
 @Test
 public void testGetTaskByID() throws Exception {
   Optional<Task> optTask = taskService.getTaskByID(1);
   assertTrue(optTask.isPresent());
   Task task = optTask.get();
   assertNotNull(task);
   assertEquals(1, task.getId());
   assertNotNull(task.getName());
   assertNotNull(task.getDescription());
   assertNotNull(task.getTestSteps());
   assertNotNull(task.getCreator());
   assertNotNull(task.getAssignee());
   assertNotNull(task.getStatus());
   assertNotNull(task.getPriority());
   assertNotNull(task.getType());
 }
Exemplo n.º 12
0
 @Test
 public void testGetTaskByUserCommented() throws Exception {
   List<Task> tasks = taskService.getTaskByUserCommented(1);
   for (Task task : tasks) {
     assertNotNull(task);
     assertTrue(task.getId() > 0);
     assertNotNull(task.getName());
     assertNotNull(task.getDescription());
     assertNotNull(task.getTestSteps());
     assertNotNull(task.getCreator());
     assertNotNull(task.getAssignee());
     assertNotNull(task.getStatus());
     assertNotNull(task.getPriority());
     assertNotNull(task.getType());
   }
 }
Exemplo n.º 13
0
  /**
   * @param source the input source that need to be searched
   * @param searchInput the searchInput to be searched
   * @return the result that matched with the searchInput(case sensitive)
   */
  public ArrayList<Task> searchSensitive(Multimap<String, Task> multimap, String searchInput) {
    ArrayList<Task> searchList = new ArrayList<Task>();
    if (invalidList(multimap) || invalidSearchInput(searchInput)) {
      return searchList;
    }

    for (String key : multimap.keys()) {
      for (Task task : multimap.get(key)) {

        if (task.getDescription().contains(searchInput)) {
          searchList.add(task);
        }
      }
    }
    return searchList;
  }
  /**
   * Returns control when task is complete.
   *
   * @param json
   * @param logger
   */
  private String waitForDeploymentCompletion(JSON json, OctopusApi api, Log logger) {
    final long WAIT_TIME = 5000;
    final double WAIT_RANDOM_SCALER = 100.0;
    JSONObject jsonObj = (JSONObject) json;
    String id = jsonObj.getString("TaskId");
    Task task = null;
    String lastState = "Unknown";
    try {
      task = api.getTask(id);
    } catch (IOException ex) {
      logger.error("Error getting task: " + ex.getMessage());
      return null;
    }

    logger.info("Task info:");
    logger.info("\tId: " + task.getId());
    logger.info("\tName: " + task.getName());
    logger.info("\tDesc: " + task.getDescription());
    logger.info("\tState: " + task.getState());
    logger.info("\n\nStarting wait...");
    boolean completed = task.getIsCompleted();
    while (!completed) {
      try {
        task = api.getTask(id);
      } catch (IOException ex) {
        logger.error("Error getting task: " + ex.getMessage());
        return null;
      }

      completed = task.getIsCompleted();
      lastState = task.getState();
      logger.info("Task state: " + lastState);
      if (completed) {
        break;
      }
      try {
        Thread.sleep(WAIT_TIME + (long) (Math.random() * WAIT_RANDOM_SCALER));
      } catch (InterruptedException ex) {
        logger.info("Wait interrupted!");
        logger.info(ex.getMessage());
        completed = true; // bail out of wait loop
      }
    }
    logger.info("Wait complete!");
    return lastState;
  }
Exemplo n.º 15
0
  /**
   * Month conversion from entity object to jaxb model.
   *
   * @param data month entity object
   * @return jaxb model of month
   */
  public static Month transformMonthToModel(org.kaleta.scheduler.backend.entity.Month data) {
    Month model = new Month();

    model.setId(String.valueOf(data.getId()));

    Month.Specification specification = new Month.Specification();
    specification.setName(data.getName());
    specification.setDays(String.valueOf(data.getDaysNumber()));
    specification.setFirstDay(String.valueOf(data.getDayStartsWith()));
    for (Integer day : data.getPublicFreeDays()) {
      Month.Specification.FreeDay freeDay = new Month.Specification.FreeDay();
      freeDay.setDay(String.valueOf(day));
      specification.getFreeDayList().add(freeDay);
    }
    model.setSpecification(specification);

    Month.Schedule schedule = new Month.Schedule();
    for (Task task : data.getTasks()) {
      Month.Schedule.Task taskModel = new Month.Schedule.Task();
      taskModel.setId(String.valueOf(task.getId()));
      taskModel.setType(task.getType());
      taskModel.setDescription(task.getDescription());
      taskModel.setDay(String.valueOf(task.getDay()));
      taskModel.setStarts(task.getStarts().toString());
      taskModel.setDuration(task.getDuration().toString());
      taskModel.setPriority(String.valueOf(task.getPriority()));
      taskModel.setSuccessful(String.valueOf(task.getSuccessful()));
      schedule.getTaskList().add(taskModel);
    }
    model.setSchedule(schedule);

    Month.Accounting accounting = new Month.Accounting();
    for (Item item : data.getItems()) {
      Month.Accounting.Item itemModel = new Month.Accounting.Item();
      itemModel.setId(String.valueOf(item.getId()));
      itemModel.setType(item.getType());
      itemModel.setDescription(item.getDescription());
      itemModel.setDay(String.valueOf(item.getDay()));
      itemModel.setIncome(String.valueOf(item.getIncome()));
      itemModel.setAmount(String.valueOf(item.getAmount()));
      accounting.getItemList().add(itemModel);
    }
    model.setAccounting(accounting);

    return model;
  }
Exemplo n.º 16
0
 public void FillList() {
   /*   for (int i=0; i<FAKE_NUMBER; i++)
   * {
          pushTask("Mock task " + i);
      }
      pushTask("Get milk");
      pushTask("Call Amnon");
      pushTask("Taks a vacation");
      pushTask("Prepare shenkar mobile workshop #2");
      pushTask("Find a job");
      SQLiteDatabase db = this.getReadableDatabase();
      Reading all contacts*/
   Log.d("Reading: ", "Reading all contacts..");
   tasks = getAllContacts();
   for (Task cn : tasks) {
     String log = "Id: " + cn.getId() + " ,Name: " + cn.getDescription();
     // Writing Contacts to log
     Log.d("Name: ", log);
   }
 }
Exemplo n.º 17
0
  /**
   * get the list of tasks that their descriptions match with the string user wants to search.
   *
   * @param str1 the string user wants to search.
   * @return the list of the tasks that match the user's search.
   */
  public ArrayList<Task> searchWagnerList(String str1) {

    int distance;
    ArrayList<Task> tmp = new ArrayList<Task>();

    for (Task t : dataHandler.getAllTasks()) {
      String[] str2 = t.getDescription().split(" ");
      for (String s : str2) {

        distance = getDist(str1, s);

        if (distance < s.length() / 2) {
          tmp.add(t);
          break;
        }
      }
    }

    dataHandler.setDisplayedTasks(tmp);

    return tmp;
  }
Exemplo n.º 18
0
  public TaskScreen(Task task) {
    super(Manager.NO_VERTICAL_SCROLL | Manager.NO_VERTICAL_SCROLLBAR);

    internalManager =
        new VerticalFieldManager(Manager.NO_VERTICAL_SCROLL | Manager.NO_VERTICAL_SCROLLBAR);
    super.add(internalManager);
    internalManager.add(new TitleField(TaskUtils.getPath(task)));

    manager = new VerticalFieldManager(Manager.VERTICAL_SCROLL | Manager.VERTICAL_SCROLLBAR);
    internalManager.add(manager);

    this.task = task;

    Font bold = getFont().derive(Font.BOLD);

    HeaderLabel name = new HeaderLabel(task.getName());
    name.setFont(bold);
    RichTextField description =
        new RichTextField(task.getDescription()) {
          public void paint(Graphics graphics) {
            graphics.setColor(0x00777777);
            super.paint(graphics);
          }
        };

    add(name);

    if (task.getPriority() != Task.NORMAL_PRIORITY) {
      BitmapInput priority =
          new BitmapInput(
              "Priority",
              task.getPriority() == Task.LOW_PRIORITY ? "low_priority.png" : "high_priority");
      priority.setEditable(false);
      priority.setSelected(task.getPriority());
      add(priority);
    }

    String statusRes = "";
    switch (task.getStatus()) {
      case Task.NOT_STARTED:
        statusRes = ("not_started.png");
        break;
      case Task.IN_PROGRESS:
        statusRes = ("progress.png");
        break;
      case Task.WAITING:
        statusRes = ("waiting.png");
        break;
      case Task.DEFERRED:
        statusRes = ("deferred.png");
        break;
      case Task.COMPLETED:
        statusRes = ("completed.png");
        break;
    }
    status = new BitmapInput("Status", statusRes);
    status.setEditable(false);
    status.setSelected(task.getStatus());
    add(status);

    percent_complete =
        new BitmapInput(
            "Percent Complete", task.getPercentComplete() + "% Complete", "percent_complete.png");
    percent_complete.setEditable(false);
    add(percent_complete);

    BitmapInput tags = new BitmapInput("Tags", "tags.png");
    tags.setTextQuiet(TaskUtils.getTags(task));
    tags.setEditable(false);
    add(tags);

    if (task.getDescription().length() > 0) add(description);

    Font header = getFont().derive(Font.BOLD, getFont().getHeight() - 4);
    HeaderLabel l_dr = new HeaderLabel("Due Date");
    l_dr.setFont(header);
    BitmapInput dueDate = new BitmapInput("Due Date", "soon.png");
    if (task.getDateDue() > 0) {
      dueDate.setTextQuiet(
          "Due date: "
              + new SimpleDateFormat(DateFormat.DATETIME_DEFAULT).formatLocal(task.getDateDue()));
      System.out.println("REMINDER: " + task.getDateDue());
    } else dueDate.setTextQuiet("No due date set.");
    dueDate.setEditable(false);
    BitmapInput reminder = new BitmapInput("Reminder", "reminder.png");
    if (task.getReminder() > 0) {
      reminder.setTextQuiet(
          "Reminder: "
              + new SimpleDateFormat(DateFormat.DATETIME_DEFAULT)
                  .formatLocal(task.getDateDue() - (task.getReminder() * 1000)));
      System.out.println("REMINDER: " + task.getReminder());
    } else reminder.setTextQuiet("No reminder set.");
    reminder.setEditable(false);
    add(l_dr);
    add(dueDate);
    add(reminder);
    if (task.getDateDue() > 0) {
      BitmapInput viewInCalendar = new BitmapInput("View in Calendar", "today.png");
      viewInCalendar.setTask(task);
      add(viewInCalendar);
    }

    HeaderLabel l_notes = new HeaderLabel("Notes");
    l_notes.setFont(header);
    notes = new NoteManager(task);
    add(l_notes);
    add(notes);
  }
Exemplo n.º 19
0
 @Test
 public void Task_intantiatesWithDescription_true() {
   Task myTask = new Task("Mow the lawn");
   assertEquals("Mow the lawn", myTask.getDescription());
 }
Exemplo n.º 20
0
  public static ProjectDTO getProjectByName(String name) {
    Project p;
    p = ProxyManager.getProjectProxy().findProjectByName(name);
    if (p != null) {
      ProjectDTO projectDTO = new ProjectDTO();
      projectDTO.setProjectId(p.getProjectId());
      projectDTO.setName(p.getName());
      projectDTO.setDescription(p.getDescription());
      projectDTO.setStatus(p.getStatus());
      Team team = p.getTeamTeamId();
      if (team != null) {
        TeamDTO teamDTO = new TeamDTO();
        teamDTO.setTeamId(team.getTeamId());
        teamDTO.setProductOwnerId(team.getProductOwnerId());
        teamDTO.setScrumMasterId(team.getScrumMasterId());
        ArrayList<UserDTO> userDTOList = new ArrayList<UserDTO>();
        for (User user : team.getUserList()) {
          UserDTO userDTO = new UserDTO();
          userDTO.setUserId(user.getUserId());
          userDTO.setUsername(user.getUsername());
          userDTO.setPassword(user.getPassword());
          userDTO.setFirstName(user.getFirstName());
          userDTO.setLastName(user.getLastName());
          userDTO.setEmail(user.getEmail());
          userDTO.setAdmin(user.getIsAdmin());
          userDTO.setSalt(user.getSalt());
          userDTO.setActive(user.getIsActive());
          userDTO.setTimeCreated(user.getTimeCreated());
          userDTOList.add(userDTO);
        }
        teamDTO.setUserList(userDTOList);
        projectDTO.setTeamTeamId(teamDTO);
      } else projectDTO.setTeamTeamId(null);

      List<SprintDTO> sprintDTOList = new ArrayList<SprintDTO>();
      if (p.getSprintList() != null) {
        for (Sprint s : p.getSprintList()) {
          s = ProxyManager.getSprintProxy().findSprint(s.getSprintPK());
          SprintDTO sprintDTO = new SprintDTO();
          SprintPKDTO sprintPKDTO = new SprintPKDTO();
          sprintPKDTO.setSprintId(s.getSprintPK().getSprintId());
          sprintPKDTO.setProjectProjectId(s.getSprintPK().getProjectProjectId());
          sprintDTO.setSprintPK(sprintPKDTO);
          sprintDTO.setSeqNumber(s.getSeqNumber());
          sprintDTO.setStatus(s.getStatus());
          sprintDTO.setStartDate(s.getStartDate());
          sprintDTO.setEndDate(s.getEndDate());
          sprintDTO.setVelocity(s.getVelocity());
          if (s.getUserStoryList() != null) {
            List<UserStoryDTO> userStoryDTOList = new ArrayList<UserStoryDTO>();
            for (UserStory userStory : s.getUserStoryList()) {
              userStory = ProxyManager.getUserStoryProxy().findUserStory(userStory.getStoryId());
              UserStoryDTO userStoryDTO = new UserStoryDTO();
              userStoryDTO.setStoryId(userStory.getStoryId());
              userStoryDTO.setName(userStory.getName());
              userStoryDTO.setContent(userStory.getContent());
              userStoryDTO.setBusinessValue(userStory.getBusinessValue());
              userStoryDTO.setStatus(userStory.getStatus());
              if (userStory.getEstimateTime() != null) {
                userStoryDTO.setEstimateTime(userStory.getEstimateTime().doubleValue());
              } else userStoryDTO.setEstimateTime(null);
              userStoryDTO.setStoryId(userStory.getStoryId());
              userStoryDTO.setProjectProjectId(projectDTO);
              userStoryDTO.setComment(userStory.getComment());
              userStoryDTO.setSprint(sprintDTO);

              PriorityDTO priorityDTO = new PriorityDTO();
              priorityDTO.setPriorityId(userStory.getPriorityPriorityId().getPriorityId());
              priorityDTO.setName(userStory.getPriorityPriorityId().getName());
              userStoryDTO.setPriorityPriorityId(priorityDTO);

              List<AcceptanceTestDTO> acceptanceTestDTOList = new ArrayList<AcceptanceTestDTO>();
              for (AcceptanceTest at : userStory.getAcceptanceTestList()) {
                AcceptanceTestDTO acceptanceTestDTO = new AcceptanceTestDTO();
                acceptanceTestDTO.setAcceptanceTestId(at.getAcceptanceTestId());
                acceptanceTestDTO.setContent(at.getContent());
                acceptanceTestDTOList.add(acceptanceTestDTO);
              }
              userStoryDTO.setAcceptanceTestList(acceptanceTestDTOList);

              if (userStory.getTaskList() != null) {
                List<TaskDTO> taskDTOList = new ArrayList<TaskDTO>();
                for (Task task : userStory.getTaskList()) {
                  task = ProxyManager.getTaskProxy().findTask(task.getTaskPK());
                  TaskDTO taskDTO = new TaskDTO();
                  taskDTO.setDescription(task.getDescription());
                  taskDTO.setTimeRemaining(task.getTimeRemaining());
                  taskDTO.setEstimatedTime(task.getEstimatedTime());
                  taskDTO.setStatus(task.getStatus());
                  taskDTO.setPreassignedUserName(task.getPreassignedUserName());
                  taskDTO.setAssignedDate(task.getAssignedDate());

                  taskDTO.setUserStory(userStoryDTO);

                  TaskPKDTO taskPKDTO = new TaskPKDTO();
                  taskPKDTO.setTaskId(task.getTaskPK().getTaskId());
                  taskPKDTO.setUserStoryStoryId(task.getTaskPK().getUserStoryStoryId());
                  taskDTO.setTaskPK(taskPKDTO);

                  if (task.getUserUserId() != null) {
                    User user =
                        ProxyManager.getUserProxy().findUser(task.getUserUserId().getUserId());
                    UserDTO userDTO = new UserDTO();
                    userDTO.setUserId(user.getUserId());
                    userDTO.setUsername(user.getUsername());
                    userDTO.setPassword(user.getPassword());
                    userDTO.setFirstName(user.getFirstName());
                    userDTO.setLastName(user.getLastName());
                    userDTO.setEmail(user.getEmail());
                    userDTO.setAdmin(user.getIsAdmin());
                    userDTO.setSalt(user.getSalt());
                    userDTO.setActive(user.getIsActive());
                    userDTO.setTimeCreated(user.getTimeCreated());
                    taskDTO.setUserUserId(userDTO);
                  }

                  List<WorkloadDTO> workloadDTOList = new ArrayList<WorkloadDTO>();
                  for (Workload workload : task.getWorkloadList()) {
                    workload =
                        ProxyManager.getWorkloadProxy().findWorkload(workload.getWorkloadPK());
                    WorkloadDTO workloadDTO = new WorkloadDTO();
                    workloadDTO.setDay(workload.getDay());
                    workloadDTO.setTimeRemaining(workload.getTimeRemaining());
                    workloadDTO.setTimeSpent(workload.getTimeSpent());
                    workloadDTO.setStarted(workload.getStarted());
                    workloadDTO.setStartTime(workload.getStartTime());
                    workloadDTO.setStopTime(workload.getStopTime());

                    User user =
                        ProxyManager.getUserProxy().findUser(workload.getUser().getUserId());
                    UserDTO userDTO = new UserDTO();
                    userDTO.setUserId(user.getUserId());
                    userDTO.setUsername(user.getUsername());
                    userDTO.setPassword(user.getPassword());
                    userDTO.setFirstName(user.getFirstName());
                    userDTO.setLastName(user.getLastName());
                    userDTO.setEmail(user.getEmail());
                    userDTO.setAdmin(user.getIsAdmin());
                    userDTO.setSalt(user.getSalt());
                    userDTO.setActive(user.getIsActive());
                    userDTO.setTimeCreated(user.getTimeCreated());
                    workloadDTO.setUser(userDTO);

                    workloadDTO.setTask(taskDTO);

                    WorkloadPKDTO workloadPKDTO = new WorkloadPKDTO();
                    WorkloadPK workloadPK = workload.getWorkloadPK();
                    workloadPKDTO.setTaskTaskId(workloadPK.getTaskTaskId());
                    workloadPKDTO.setTaskUserStoryStoryId(workloadPK.getTaskUserStoryStoryId());
                    workloadPKDTO.setUserUserId(workloadPK.getUserUserId());
                    workloadPKDTO.setWorkloadId(workloadPK.getWorkloadId());
                    workloadDTO.setWorkloadPK(workloadPKDTO);

                    List<WorkblockDTO> workblockDTOList = new ArrayList<WorkblockDTO>();
                    for (Workblock workblock : workload.getWorkblockList()) {
                      workblock =
                          ProxyManager.getWorkblockProxy()
                              .findWorkblock(workblock.getWorkblockPK());
                      WorkblockDTO workblockDTO = new WorkblockDTO();
                      workblockDTO.setTimeStart(workblock.getTimeStart());
                      workblockDTO.setTimeStop(workblock.getTimeStop());

                      workblockDTO.setWorkload(workloadDTO);

                      WorkblockPKDTO workblockPKDTO = new WorkblockPKDTO();
                      WorkblockPK workblockPK = workblock.getWorkblockPK();
                      workloadPKDTO.setWorkloadId(workblockPK.getWorkloadWorkloadId());
                      workblockPKDTO.setWorkloadTaskTaskId(workloadPK.getTaskTaskId());
                      workblockPKDTO.setWorkloadTaskUserStoryStoryId(
                          workblockPK.getWorkloadTaskUserStoryStoryId());
                      workblockPKDTO.setWorkloadUserUserId(workblockPK.getWorkloadUserUserId());
                      workblockPKDTO.setWorkloadWorkloadId(workblockPK.getWorkloadWorkloadId());
                      workblockDTO.setWorkblockPK(workblockPKDTO);

                      workblockDTOList.add(workblockDTO);
                    }
                    workloadDTO.setWorkblockList(workblockDTOList);

                    workloadDTOList.add(workloadDTO);
                  }
                  taskDTO.setWorkloadList(workloadDTOList);

                  taskDTOList.add(taskDTO);
                }
                userStoryDTO.setTaskList(taskDTOList);
              }
              userStoryDTOList.add(userStoryDTO);
            }
            sprintDTO.setUserStoryList(userStoryDTOList);
          }
          sprintDTOList.add(sprintDTO);
        }
        projectDTO.setSprintList(sprintDTOList);

      } else projectDTO.setSprintList(null);

      List<UserStoryDTO> userStoryDTOList = new ArrayList<UserStoryDTO>();
      if (p.getUserStoryList() != null) {
        for (UserStory us : p.getUserStoryList()) {
          UserStoryDTO userStoryDTO = new UserStoryDTO();
          userStoryDTO.setStoryId(us.getStoryId());
          userStoryDTO.setName(us.getName());
          userStoryDTO.setContent(us.getContent());
          userStoryDTO.setBusinessValue(us.getBusinessValue());
          userStoryDTO.setStatus(us.getStatus());
          if (us.getEstimateTime() != null) {
            userStoryDTO.setEstimateTime(us.getEstimateTime().doubleValue());
          } else userStoryDTO.setEstimateTime(null);
          userStoryDTO.setStoryId(us.getStoryId());
          userStoryDTO.setProjectProjectId(projectDTO);

          PriorityDTO priorityDTO = new PriorityDTO();
          priorityDTO.setPriorityId(us.getPriorityPriorityId().getPriorityId());
          priorityDTO.setName(us.getPriorityPriorityId().getName());
          userStoryDTO.setPriorityPriorityId(priorityDTO);

          List<AcceptanceTestDTO> acceptanceTestDTOList = new ArrayList<AcceptanceTestDTO>();
          for (AcceptanceTest at : us.getAcceptanceTestList()) {
            AcceptanceTestDTO acceptanceTestDTO = new AcceptanceTestDTO();
            acceptanceTestDTO.setAcceptanceTestId(at.getAcceptanceTestId());
            acceptanceTestDTO.setContent(at.getContent());
            acceptanceTestDTOList.add(acceptanceTestDTO);
          }
          userStoryDTO.setAcceptanceTestList(acceptanceTestDTOList);

          // TODO: Set taskList to userStoryDTO
          if (us.getTaskList() != null) {
            List<TaskDTO> taskDTOList = new ArrayList<TaskDTO>();
            for (Task task : us.getTaskList()) {
              task = ProxyManager.getTaskProxy().findTask(task.getTaskPK());
              TaskDTO taskDTO = new TaskDTO();
              taskDTO.setDescription(task.getDescription());
              taskDTO.setTimeRemaining(task.getTimeRemaining());
              taskDTO.setEstimatedTime(task.getEstimatedTime());
              taskDTO.setStatus(task.getStatus());
              taskDTO.setPreassignedUserName(task.getPreassignedUserName());
              taskDTO.setAssignedDate(task.getAssignedDate());

              taskDTO.setUserStory(userStoryDTO);

              TaskPKDTO taskPKDTO = new TaskPKDTO();
              taskPKDTO.setTaskId(task.getTaskPK().getTaskId());
              taskPKDTO.setUserStoryStoryId(task.getTaskPK().getUserStoryStoryId());
              taskDTO.setTaskPK(taskPKDTO);

              if (task.getUserUserId() != null) {
                User user = ProxyManager.getUserProxy().findUser(task.getUserUserId().getUserId());
                UserDTO userDTO = new UserDTO();
                userDTO.setUserId(user.getUserId());
                userDTO.setUsername(user.getUsername());
                userDTO.setPassword(user.getPassword());
                userDTO.setFirstName(user.getFirstName());
                userDTO.setLastName(user.getLastName());
                userDTO.setEmail(user.getEmail());
                userDTO.setAdmin(user.getIsAdmin());
                userDTO.setSalt(user.getSalt());
                userDTO.setActive(user.getIsActive());
                userDTO.setTimeCreated(user.getTimeCreated());
                taskDTO.setUserUserId(userDTO);
              }

              List<WorkloadDTO> workloadDTOList = new ArrayList<WorkloadDTO>();
              for (Workload workload : task.getWorkloadList()) {
                workload = ProxyManager.getWorkloadProxy().findWorkload(workload.getWorkloadPK());
                WorkloadDTO workloadDTO = new WorkloadDTO();
                workloadDTO.setDay(workload.getDay());
                workloadDTO.setTimeRemaining(workload.getTimeRemaining());
                workloadDTO.setTimeSpent(workload.getTimeSpent());

                User user = ProxyManager.getUserProxy().findUser(workload.getUser().getUserId());
                UserDTO userDTO = new UserDTO();
                userDTO.setUserId(user.getUserId());
                userDTO.setUsername(user.getUsername());
                userDTO.setPassword(user.getPassword());
                userDTO.setFirstName(user.getFirstName());
                userDTO.setLastName(user.getLastName());
                userDTO.setEmail(user.getEmail());
                userDTO.setAdmin(user.getIsAdmin());
                userDTO.setSalt(user.getSalt());
                userDTO.setActive(user.getIsActive());
                userDTO.setTimeCreated(user.getTimeCreated());
                workloadDTO.setUser(userDTO);

                workloadDTO.setTask(taskDTO);

                WorkloadPKDTO workloadPKDTO = new WorkloadPKDTO();
                WorkloadPK workloadPK = workload.getWorkloadPK();
                workloadPKDTO.setTaskTaskId(workloadPK.getTaskTaskId());
                workloadPKDTO.setTaskUserStoryStoryId(workloadPK.getTaskUserStoryStoryId());
                workloadPKDTO.setUserUserId(workloadPK.getUserUserId());
                workloadPKDTO.setWorkloadId(workloadPK.getWorkloadId());
                workloadDTO.setWorkloadPK(workloadPKDTO);

                List<WorkblockDTO> workblockDTOList = new ArrayList<WorkblockDTO>();
                for (Workblock workblock : workload.getWorkblockList()) {
                  workblock =
                      ProxyManager.getWorkblockProxy().findWorkblock(workblock.getWorkblockPK());
                  WorkblockDTO workblockDTO = new WorkblockDTO();
                  workblockDTO.setTimeStart(workblock.getTimeStart());
                  workblockDTO.setTimeStop(workblock.getTimeStop());

                  workblockDTO.setWorkload(workloadDTO);

                  WorkblockPKDTO workblockPKDTO = new WorkblockPKDTO();
                  WorkblockPK workblockPK = workblock.getWorkblockPK();
                  workloadPKDTO.setWorkloadId(workblockPK.getWorkloadWorkloadId());
                  workblockPKDTO.setWorkloadTaskTaskId(workloadPK.getTaskTaskId());
                  workblockPKDTO.setWorkloadTaskUserStoryStoryId(
                      workblockPK.getWorkloadTaskUserStoryStoryId());
                  workblockPKDTO.setWorkloadUserUserId(workblockPK.getWorkloadUserUserId());
                  workblockPKDTO.setWorkloadWorkloadId(workblockPK.getWorkloadWorkloadId());
                  workblockDTO.setWorkblockPK(workblockPKDTO);

                  workblockDTOList.add(workblockDTO);
                }
                workloadDTO.setWorkblockList(workblockDTOList);

                workloadDTOList.add(workloadDTO);
              }
              taskDTO.setWorkloadList(workloadDTOList);

              taskDTOList.add(taskDTO);
            }
            userStoryDTO.setTaskList(taskDTOList);
          } else userStoryDTO.setTaskList(null);

          SprintDTO sprintDTO = new SprintDTO();
          if (us.getSprint() != null) {
            SprintPKDTO sprintPKDTO = new SprintPKDTO();
            sprintPKDTO.setSprintId(us.getSprint().getSprintPK().getSprintId());
            sprintPKDTO.setProjectProjectId(us.getSprint().getSprintPK().getProjectProjectId());
            sprintDTO.setSprintPK(sprintPKDTO);
            sprintDTO.setSeqNumber(us.getSprint().getSeqNumber());
            sprintDTO.setStatus(us.getSprint().getStatus());
            sprintDTO.setStartDate(us.getSprint().getStartDate());
            sprintDTO.setEndDate(us.getSprint().getEndDate());
            sprintDTO.setVelocity(us.getSprint().getVelocity());
          } else sprintDTO = null;
          userStoryDTO.setSprint(sprintDTO);
          userStoryDTOList.add(userStoryDTO);
        }
        projectDTO.setUserStoryList(userStoryDTOList);
      }
      return projectDTO;
    } else return null;
  }
Exemplo n.º 21
0
  /** Creates the task element, corressponding to <define name="task"> */
  private Element createTaskElement(Document doc, Task task) {
    Element taskE = doc.createElementNS(Schemas.SCHEMA_LATEST.namespace, XMLTags.TASK.getXMLName());

    // **** attributes *****
    // **** common attributes ***

    if (task.getOnTaskErrorProperty().isSet()) {
      setAttribute(
          taskE,
          XMLAttributes.COMMON_ON_TASK_ERROR,
          task.getOnTaskErrorProperty().getValue().toString(),
          true);
    }
    if (task.getMaxNumberOfExecutionProperty().isSet()) {
      setAttribute(
          taskE,
          XMLAttributes.COMMON_MAX_NUMBER_OF_EXECUTION,
          Integer.toString(task.getMaxNumberOfExecution()));
    }
    setAttribute(taskE, XMLAttributes.COMMON_NAME, task.getName(), true);
    if (task.getRestartTaskOnErrorProperty().isSet()) {
      setAttribute(
          taskE,
          XMLAttributes.COMMON_RESTART_TASK_ON_ERROR,
          task.getRestartTaskOnError().toString());
    }

    // *** task attributes ***
    if (task.getWallTime() != 0) {
      setAttribute(taskE, XMLAttributes.TASK_WALLTIME, formatDate(task.getWallTime()));
    }

    if (task.isRunAsMe()) {
      setAttribute(taskE, XMLAttributes.TASK_RUN_AS_ME, "true");
    }

    if (task.isPreciousResult()) {
      setAttribute(taskE, XMLAttributes.TASK_PRECIOUS_RESULT, "true");
    }

    if (task.isPreciousLogs()) {
      setAttribute(taskE, XMLAttributes.TASK_PRECIOUS_LOGS, "true");
    }

    // *** elements ****

    // <ref name="variables"/>
    if (task.getVariables() != null && !task.getVariables().isEmpty()) {
      Element variablesE = createTaskVariablesElement(doc, task.getVariables());
      taskE.appendChild(variablesE);
    }

    // <ref name="taskDescription"/>
    if (task.getDescription() != null) {
      Element descrNode =
          createElement(doc, XMLTags.COMMON_DESCRIPTION.getXMLName(), task.getDescription());
      taskE.appendChild(descrNode);
    }

    // <ref name="genericInformation"/>
    if ((task.getGenericInformation() != null) && (task.getGenericInformation().size() > 0)) {
      Element genericInfoE = createGenericInformation(doc, task.getGenericInformation());
      taskE.appendChild(genericInfoE);
    }

    // <ref name="depends"/>
    List<Task> dependencies = task.getDependencesList();
    if ((dependencies != null) && (dependencies.size() > 0)) {
      Element dependsE =
          doc.createElementNS(
              Schemas.SCHEMA_LATEST.namespace, XMLTags.TASK_DEPENDENCES.getXMLName());
      for (Task dep : dependencies) {
        Element dependsTask =
            doc.createElementNS(
                Schemas.SCHEMA_LATEST.namespace, XMLTags.TASK_DEPENDENCES_TASK.getXMLName());
        setAttribute(dependsTask, XMLAttributes.TASK_DEPENDS_REF, dep.getName(), true);
        dependsE.appendChild(dependsTask);
      }
      taskE.appendChild(dependsE);
    } // if has dependencies

    // <ref name="inputFiles"/>
    List<InputSelector> inputFiles = task.getInputFilesList();
    if (inputFiles != null) {
      Element inputFilesE =
          doc.createElementNS(Schemas.SCHEMA_LATEST.namespace, XMLTags.DS_INPUT_FILES.getXMLName());
      for (InputSelector inputSelector : inputFiles) {
        FileSelector fs = inputSelector.getInputFiles();
        Element filesE =
            doc.createElementNS(Schemas.SCHEMA_LATEST.namespace, XMLTags.DS_FILES.getXMLName());
        // the xml only supports one value for the includes/excludes
        // pattern
        if (!fs.getIncludes().isEmpty())
          setAttribute(filesE, XMLAttributes.DS_INCLUDES, fs.getIncludes().iterator().next(), true);
        if (!fs.getExcludes().isEmpty())
          setAttribute(filesE, XMLAttributes.DS_EXCLUDES, fs.getExcludes().iterator().next(), true);
        if (inputSelector.getMode() != null) {
          setAttribute(
              filesE, XMLAttributes.DS_ACCESS_MODE, inputSelector.getMode().toString(), true);
        }
        inputFilesE.appendChild(filesE);
      }
      taskE.appendChild(inputFilesE);
    }

    // <ref name="parallel"/>
    Element parallelEnvE = createParallelEnvironment(doc, task);
    if (parallelEnvE != null) taskE.appendChild(parallelEnvE);

    // <ref name="selection"/>
    List<SelectionScript> selectionScripts = task.getSelectionScripts();
    if (selectionScripts != null && selectionScripts.size() > 0) {
      Element selectionE =
          doc.createElementNS(
              Schemas.SCHEMA_LATEST.namespace, XMLTags.SCRIPT_SELECTION.getXMLName());
      for (SelectionScript selectionScript : selectionScripts) {
        Element scriptE = createScriptElement(doc, selectionScript);
        selectionE.appendChild(scriptE);
      }
      taskE.appendChild(selectionE);
    }

    // <ref name="forkEnvironment"/>
    if (task.getForkEnvironment() != null) {
      Element forkEnvE = createForkEnvironmentElement(doc, task.getForkEnvironment());
      taskE.appendChild(forkEnvE);
    }

    // <ref name="pre"/>
    Script preScript = task.getPreScript();
    if (preScript != null) {
      Element preE =
          doc.createElementNS(Schemas.SCHEMA_LATEST.namespace, XMLTags.SCRIPT_PRE.getXMLName());
      Element scriptE = createScriptElement(doc, preScript);
      preE.appendChild(scriptE);
      taskE.appendChild(preE);
    }

    // <ref name="executable"/>
    Element executableE = null;
    if (task instanceof JavaTask) {
      executableE = createJavaExecutableElement(doc, (JavaTask) task);
    } else if (task instanceof NativeTask) {
      executableE = createNativeExecutableElement(doc, (NativeTask) task);
    } else if (task instanceof ScriptTask) {
      executableE = createScriptExecutableElement(doc, (ScriptTask) task);
    }
    taskE.appendChild(executableE);

    // <ref name="flow"/>
    Element controlFlowE = createFlowControlElement(doc, task);
    if (controlFlowE != null) taskE.appendChild(controlFlowE);

    // <ref name="post"/>
    Script postScript = task.getPostScript();
    if (postScript != null) {
      Element postE =
          doc.createElementNS(Schemas.SCHEMA_LATEST.namespace, XMLTags.SCRIPT_POST.getXMLName());
      Element scriptE = createScriptElement(doc, postScript);
      postE.appendChild(scriptE);
      taskE.appendChild(postE);
    }

    // <ref name="cleaning"/>
    Script cleanScript = task.getCleaningScript();
    if (cleanScript != null) {
      Element cleanE =
          doc.createElementNS(
              Schemas.SCHEMA_LATEST.namespace, XMLTags.SCRIPT_CLEANING.getXMLName());
      Element scriptE = createScriptElement(doc, cleanScript);
      cleanE.appendChild(scriptE);
      taskE.appendChild(cleanE);
    }

    // <ref name="outputFiles"/>
    List<OutputSelector> outputFiles = task.getOutputFilesList();
    if (outputFiles != null) {
      Element outputFilesE =
          doc.createElementNS(
              Schemas.SCHEMA_LATEST.namespace, XMLTags.DS_OUTPUT_FILES.getXMLName());
      for (OutputSelector outputSelector : outputFiles) {
        FileSelector fs = outputSelector.getOutputFiles();
        Element filesE =
            doc.createElementNS(Schemas.SCHEMA_LATEST.namespace, XMLTags.DS_FILES.getXMLName());
        // the xml only supports one value for the includes/excludes
        // pattern
        if (!fs.getIncludes().isEmpty())
          setAttribute(filesE, XMLAttributes.DS_INCLUDES, fs.getIncludes().iterator().next(), true);
        if (!fs.getExcludes().isEmpty())
          setAttribute(filesE, XMLAttributes.DS_EXCLUDES, fs.getExcludes().iterator().next(), true);
        if (outputSelector.getMode() != null) {
          setAttribute(
              filesE, XMLAttributes.DS_ACCESS_MODE, outputSelector.getMode().toString(), true);
        }
        outputFilesE.appendChild(filesE);
      }
      taskE.appendChild(outputFilesE);
    }
    return taskE;
  }
  private void updateTask(TracksAction act) {
    final boolean badcert = _prefs.getBoolean(PreferenceConstants.BADCERT, false);
    final String username = _prefs.getString(PreferenceConstants.USERNAME, null);
    final String password = _prefs.getString(PreferenceConstants.PASSWORD, null);

    Task t = (Task) act.target;

    Log.d(TAG, "Updating task " + String.valueOf(t.getId()));

    StringBuilder xml = new StringBuilder("<todo>");
    xml.append("<description>");
    xml.append(t.getDescription());
    xml.append("</description>");
    xml.append("<notes>");
    xml.append(t.getNotes() == null ? "" : t.getNotes());
    xml.append("</notes>");
    xml.append("<context-id type=\"integer\">");
    xml.append(String.valueOf(t.getContext().getId()));
    xml.append("</context-id>");

    xml.append("<project-id type=\"integer\"");
    if (t.getProject() == null) {
      xml.append(" nil=\"true\"></project-id>");
    } else {
      xml.append(">");
      xml.append(String.valueOf(t.getProject().getId()));
      xml.append("</project-id>");
    }

    xml.append("<due type=\"datetime\"");
    if (t.getDue() == null) {
      xml.append(" nil=\"true\"></due>");
    } else {
      xml.append(">");
      xml.append(DATEFORM.format(t.getDue()));
      xml.append("</due>");
    }

    xml.append("<show-from type=\"datetime\"");
    if (t.getShowFrom() == null) {
      xml.append(" nil=\"true\"></show-from>");
    } else {
      xml.append(">");
      xml.append(DATEFORM.format(t.getShowFrom()));
      xml.append("</show-from>");
    }

    xml.append("</todo>");

    Log.v(TAG, "Sending: " + xml.toString());

    try {
      HttpResponse r;
      int resp;

      if (t.getId() < 0) {
        Log.v(TAG, "Posting to todos.xml to create new task");
        r =
            HttpConnection.post(
                PreferenceUtils.getUri(_prefs, "todos.xml"),
                username,
                password,
                xml.toString(),
                badcert);
      } else {
        Log.v(TAG, "Putting to update existing task");
        r =
            HttpConnection.put(
                PreferenceUtils.getUri(_prefs, "todos/" + String.valueOf(t.getId()) + ".xml"),
                username,
                password,
                xml.toString(),
                badcert);
      }

      resp = r.getStatusLine().getStatusCode();

      if (resp == 200) {
        Log.d(TAG, "Successfully updated task");
        act.notify.sendEmptyMessage(SUCCESS_CODE);
      } else if (resp == 201) {
        Log.d(TAG, "Successfully created task.");
        String got = r.getFirstHeader("Location").getValue();
        got = got.substring(got.lastIndexOf('/') + 1);
        int tno = Integer.parseInt(got);
        t.setId(tno);
        Log.d(TAG, "ID of new task is: " + String.valueOf(tno));
        act.notify.sendEmptyMessage(SUCCESS_CODE);
      } else {
        Log.w(TAG, "Unexpected response from server: " + String.valueOf(resp));
        act.notify.sendEmptyMessage(UPDATE_FAIL_CODE);
      }
    } catch (Exception e) {
      Log.w(TAG, "Error updating task", e);
      act.notify.sendEmptyMessage(UPDATE_FAIL_CODE);
    }
  }