Package net.sourceforge.ganttproject.task.dependency

Examples of net.sourceforge.ganttproject.task.dependency.TaskDependency


            if (dependee == null || dependant == null) {
                continue;
            }

            try {
                TaskDependency dep = myTaskManager.getDependencyCollection()
                        .createDependency(dependant, dependee,
                                new FinishStartConstraintImpl());
                dep
                        .setConstraint(myTaskManager
                                .createConstraint(ds.dependType));
                dep.setDifference(ds.difference);
                if (myContext.getTasksWithLegacyFixedStart().contains(dependant)) {
                  dep.setHardness(TaskDependency.Hardness.RUBBER);
                }
                else {
                  dep.setHardness(ds.myHardness);
                }
            } catch (TaskDependencyException e) {
                myUIFacade.logErrorMessage(e);
            }
        }
View Full Code Here


        Integer minOrdinal = new Integer(-2);
        for (int i=0; i<visibleTasks.size(); i++) {
            Task next = (Task)visibleTasks.get(i);
            TaskDependency[] dependencies = next.getDependenciesAsDependant().toArray();
            for (int j=0; j<dependencies.length; j++) {
                TaskDependency nextDependency = dependencies[j];
                TaskActivity dependeeActivity = nextDependency.getActivityBinding().getDependeeActivity();
                if (hashedVisible.contains(dependeeActivity)) {
                    continue;
                }
                Task dependeeTask = dependeeActivity.getTask();
                if (false==getChartModel().getTaskManager().getTaskHierarchy().contains(dependeeTask)) {
                    continue;
                }
                if (false==isPathExpanded(dependeeTask)) {
                    continue;
                }
                int diff = getChartModel().getTaskManager().getTaskHierarchy().compareDocumentOrder(next, dependeeTask);
                assert diff!=0;
                Integer dependeePosition = diff<0 ? maxOrdinal : minOrdinal;
                myActivity2ordinalNumber.put(dependeeActivity, dependeePosition);
                visibleActivities.add(dependeeActivity);
                hashedVisible.add(dependeeActivity);
            }
            dependencies = next.getDependenciesAsDependee().toArray();
            for (int j=0; j<dependencies.length; j++) {
                TaskDependency nextDependency = dependencies[j];
                TaskActivity dependantActivity = nextDependency.getActivityBinding().getDependantActivity();
                if (hashedVisible.contains(dependantActivity)) {
                    continue;
                }
                Task dependantTask = dependantActivity.getTask();
                if (false==getChartModel().getTaskManager().getTaskHierarchy().contains(dependantTask)) {
View Full Code Here

    }

    private void prepareDependencyDrawData(Task task, List result) {
        TaskDependency[] deps = task.getDependencies().toArray();
        for (int i = 0; i < deps.length; i++) {
            TaskDependency next = deps[i];
            TaskDependency.ActivityBinding activityBinding = next
                    .getActivityBinding();
            TaskActivity dependant = activityBinding.getDependantActivity();
            GraphicPrimitiveContainer dependantContainer = getContainerFor(dependant.getTask());
            GraphicPrimitiveContainer.Rectangle dependantRectangle = (Rectangle)dependantContainer
                    .getPrimitive(dependant);
View Full Code Here

        };
        taskManager.addTaskListener(listener);
        Task task1 = taskManager.createTask();
        Task task2 = taskManager.createTask();
        //
        TaskDependency dep = taskManager
                .getDependencyCollection()
                .createDependency(task2, task1, new FinishStartConstraintImpl());
        dep.delete();
        assertTrue(
                "Listener is expected to be called when dependency is deleted",
                listener.hasBeenCalled());
    }
View Full Code Here

        // task2 xxx
        //
        // create dependency task2->task1 with "finish-finish" constraint. It
        // means that
        // task2 can't finish earlier than task1 finishes
        TaskDependency dep = taskManager
                .getDependencyCollection()
                .createDependency(task2, task1, new FinishStartConstraintImpl());
        dep.setConstraint(taskManager
                .createConstraint(GanttTaskRelationship.FF));
        //
        // increase the length of task1. We expect that task2 will be shifted
        // forward:
        //
View Full Code Here

        // task2 _x_____
        //
        // create dependency task2->task1 with "start-start" constraint. It
        // means that
        // task2 can't start earlier than task1 starts
        TaskDependency dep = taskManager
                .getDependencyCollection()
                .createDependency(task2, task1, new FinishStartConstraintImpl());
        dep.setConstraint(taskManager
                .createConstraint(GanttTaskRelationship.SS));
        //
        // shift task1 forward. We expect that task2 will also be shifted
        // forward
        //
View Full Code Here

        // task2 xx_____
        //
        // create dependency task2->task1 with "start-finish" constraint. It
        // means that
        // task2 can't finish earlier than task1 starts
        TaskDependency dep = taskManager
                .getDependencyCollection()
                .createDependency(task2, task1, new FinishStartConstraintImpl());
        dep.setConstraint(taskManager
                .createConstraint(GanttTaskRelationship.SF));
        //
        // shift task1 forward. We expect that task2 will also be shifted
        // forward
        //
View Full Code Here

    assertIsLooping(supertask, nestedTask);   
  }
  private void assertIsLooping(Task dependant, Task dependee) {
        boolean success = true;
        try {
          TaskDependency loopingDependency = getTaskManager().getDependencyCollection().createDependency(dependant, dependee);
          assertNotNull("Either exception is thrown, or result is not null", loopingDependency);
        }
        catch (TaskDependencyException e) {
          success = false;
        }
View Full Code Here

        if (row >= 0 && row < getRowCount()) {
            if (row == myDependencies.size()) {
                result = "";
            } else {
                TaskDependency dep = (TaskDependency) myDependencies.get(row);
                switch (col) {
                case 0: {
                    result = new Integer(dep.getDependee().getTaskID());
                    break;
                }
                case 1: {
                    result = dep.getDependee();
                    break;
                }
                case 2: {
                    result = dep.getConstraint().getName();
                    break;
                }
                case 3: {
                    result = new Integer(dep.getDifference());
                    break;
                }
                case 4: {
                  result = dep.getHardness();
                  break;
                }
                default: {
                    throw new IllegalArgumentException("Illegal column number="
                            + col);
View Full Code Here

    }

    private void updateDependency(Object value, int row, int col)
            throws TaskDependencyException {
        TaskDependency dep = (TaskDependency) myDependencies.get(row);
        switch (col) {
        case 4:
          dep.setHardness((Hardness) value);
          break;
        case 3: {
            int loadAsInt = Integer.parseInt(String.valueOf(value));
            dep.setDifference(loadAsInt);
            break;
        }
        case 2: {
            TaskDependencyConstraint clone;
            try {
                clone = (TaskDependencyConstraint) ((ConstraintImpl) value).clone();
            } catch (CloneNotSupportedException e) {
                throw new RuntimeException(e);
            }
            dep.setConstraint(clone);
            break;
        }
        case 1: {
            dep.delete();
            myDependencies.remove(row);
            if (value == null) {
                fireTableRowsDeleted(row, row);
            } else {
                Task selectedTask = ((TaskComboItem) value).myTask;
                TaskDependency newDependency = myMutator.createDependency(
                        myTask, selectedTask, new FinishStartConstraintImpl());
                myDependencies.add(newDependency);
            }
        }
        }
View Full Code Here

TOP

Related Classes of net.sourceforge.ganttproject.task.dependency.TaskDependency

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.