Exemplo n.º 1
0
  /**
   * Runs new task.
   *
   * @param task Task to run.
   */
  public boolean runTask(SolaTask task) {
    if (task == null || isTaskRunning(task.getId())) {
      return false;
    }

    if (getNumberOfActiveTasks() > 0) {
      MessageUtility.displayMessage(
          ClientMessage.GENERAL_ACTIVE_TASKS_EXIST, new Object[] {getNumberOfActiveTasks()});
      return false;
    }

    task.addPropertyChangeListener(
        new PropertyChangeListener() {

          @Override
          public void propertyChange(PropertyChangeEvent evt) {
            handleTaskEvents(evt);
          }
        });
    tasks.put(task.getId(), task);
    task.execute();
    return true;
  }
Exemplo n.º 2
0
 /**
  * Cancels the task if it is not yet complete and removes it from the list of running tasks
  *
  * @param taskId The task to cancel/remove
  * @return
  */
 public void removeTask(SolaTask task) {
   if (task != null && !task.isDone()) {
     task.cancel(true);
   }
   tasks.remove(task.getId());
 }