Class JobPlanDependencies

    • Method Detail

      • copy

        public JobPlanDependencies copy​(JobPlanTask jobPlanTask)
        Creates a deep copy of this object and all it's properties except for the predecessor and successor object lists. These are not cloned since they represent the arrows in the workflow graph and shouldn't be duplicated.
        Parameters:
        jobPlanTask - The task to which this dependency object belongs.
        Returns:
        A copy of this object.
      • isAtTheLatest

        public boolean isAtTheLatest()
        Returns true if the latest start and end time is enabled.
        Returns:
        True if latest start and end time is enabled
      • setAtTheLatest

        public void setAtTheLatest​(boolean atTheLatest)
        Enables or disables the latest start and end time.
        Parameters:
        atTheLatest - True if latest start and end time should be enabled
      • getLatestEndDays

        public int getLatestEndDays()
        Returns the number of days for the latest end time of this task.
        Returns:
        Number of days for the latest end time
      • setLatestEndDays

        public void setLatestEndDays​(int latestEndDays)
        Sets the number of days for the latest end time of this task.
        Parameters:
        latestEndDays - Number of days for the latest end time
      • getLatestEndTime

        public Time getLatestEndTime()
        Returns the Time for the latest end of this task.
        Returns:
        Time of the latest end
      • setLatestEndTime

        public void setLatestEndTime​(Time latestEndTime)
        Sets the Time for the latest end of this task.
        Parameters:
        latestEndTime - Time of the latest end
      • getLatestStartDays

        public int getLatestStartDays()
        Returns the number of days for the latest start time of this task.
        Returns:
        Number of days for the latest start time
      • setLatestStartDays

        public void setLatestStartDays​(int latestStartDays)
        Sets the number of days for the latest start time of this task.
        Parameters:
        latestStartDays - Number of days for the latest start time
      • getLatestStartTime

        public Time getLatestStartTime()
        Returns the Time for the latest start of this task.
        Returns:
        Time of the latest start
      • setLatestStartTime

        public void setLatestStartTime​(Time latestStartTime)
        Sets the Time for the latest start of this task.
        Parameters:
        latestStartTime - Time of the latest start
      • getTimezone

        public UC4TimezoneName getTimezone()
        Returns the TimeZone that is to be used.
        Returns:
        TimeZone that is to be used
      • setTimezone

        public void setTimezone​(UC4TimezoneName timezone)
        Sets the TimeZone that is to be used.
        Parameters:
        timezone - TimeZone that is to be used
      • selectLatestStart

        public void selectLatestStart()
        Enables the check for the latest start time.
      • selectLatestEnd

        public void selectLatestEnd()
        Enables the check for the latest end time.
      • isLatestStart

        public boolean isLatestStart()
        Returns true if the latest start time is selected.
        Returns:
        True if latest start is selected
      • isLatestEnd

        public boolean isLatestEnd()
        Returns true if the latest end time is selected.
        Returns:
        True if latest end is selected
      • setElseSkip

        public void setElseSkip()
        Skips the task if the defined conditions do not occur.
      • isElseSkip

        public boolean isElseSkip()
        Returns true if the task will be skipped when the defined conditions do not occur.
        Returns:
        True if "Skip" is the selected action
      • setElseBlock

        public void setElseBlock()
        The JobPlan blocks at the preceding task when the defined conditions do not occur.

        This does not apply to tasks running parallel within the JobPlan, they are continuing to be processed. The JobPlan as a whole will not block until they have been executed. If there are no parallel running tasks, the task and the JobPlan are blocked immediately.

      • isElseBlock

        public boolean isElseBlock()
        Returns true if the JobPlan blocks at the preceding task. when the defined conditions do not occur.
        Returns:
        True if "Block" is the selected action
      • setElseBlockAndAbort

        public void setElseBlockAndAbort()
        The JobPlan blocks at the preceding task.

        This does not apply to tasks running parallel within the JobPlan, their processing is being continued. The JobPlan as a whole will not block until they have been executed. If there are no parallel running tasks, the task and the JobPlan are blocked immediately.

        If a superordinate JobPlan (parent) is available, a signal indicating an abnormal end is sent to it. The superordinate JobPlan then considers this blocked JobPlan as canceled. Without this signal being sent, the JobPlan (although being blocked) would be considered active by the superordinate JobPlan, as processing has not yet been ended. All successors would then be in the status "Waiting for precondition", which included a standstill of this JobPlan branch.

      • isElseBlockAndAbort

        public boolean isElseBlockAndAbort()
        Returns true if the JobPlan blocks at the preceding task.
        Returns:
        True if "Block + Abort Signal" is the selected action
      • setElseAbort

        public void setElseAbort()
        The task and the JobPlan itself are canceled when the defined conditions do not occur.
      • isElseAbort

        public boolean isElseAbort()
        Returns true if the task and the JobPlan itself are canceled when the defined conditions do not occur.
        Returns:
        True if "Abort" is the selected action
      • getElseExecute

        public UC4ObjectName getElseExecute()
        Returns the object that should be executed when a defined condition does not occur.
        Returns:
        Object that should be executed
      • setElseExecute

        public void setElseExecute​(UC4ObjectName elseExecute)
        Sets the object that should be executed when a defined condition does not occur.
        Parameters:
        elseExecute - Object that should be executed
      • setStatusMatchAll

        public void setStatusMatchAll()
        The task will only be executed if all predecessors end with the determined status (AND Link).
      • setStatusMatchOne

        public void setStatusMatchOne()
        The task will only be executed if at least one predecessor ends as defined (OR Link).
      • isStatusMatchAll

        public boolean isStatusMatchAll()
        Returns true if all predecessors must end with the determined status (AND Link).
        Returns:
        True if all predecessors must end with the determined status
      • isStatusMatchOne

        public boolean isStatusMatchOne()
        Returns true if at least one predecessor ends as defined.
        Returns:
        True if at least one predecessor ends as defined
      • iterator

        public java.util.Iterator<JobPlanTaskDependency> iterator()
        Returns an iterator over JobPlanTaskDependency This iterator cannot be used to remove dependencies. Use the method removeDependency instead.
        Specified by:
        iterator in interface java.lang.Iterable<JobPlanTaskDependency>
        Returns:
        Iterator over predecessor dependencies
      • prepareLnrSort

        protected void prepareLnrSort()
      • decrementPreCounter

        protected void decrementPreCounter()
      • getPreCounter

        protected int getPreCounter()
      • addDependency

        public void addDependency​(JobPlanTask predecessor,
                                  TaskState when)
        Adds a dependency.
        Parameters:
        predecessor - Predecessor task
        when - Expected status of the predecessor
      • clear

        public void clear()
        Removes all dependencies.
      • removeDependency

        public boolean removeDependency​(JobPlanTaskDependency dependency)
        Removes the specified dependency.
        Parameters:
        dependency - Task dependency
        Returns:
        True if the dependecny was removed successfully
      • removeAll

        protected void removeAll()
      • addSuccessorTask

        public void addSuccessorTask​(JobPlanTask task)
        Adds the given task to the successor list.
        Parameters:
        task - The task to add as successor.
      • setDependencyListener

        protected void setDependencyListener​(IChangeListener listener)
      • size

        public int size()
        Gets the number of predecessor dependencies.
        Returns:
        Number of dependencies.
      • successorIterator

        public java.util.Iterator<JobPlanTask> successorIterator()
        Returns:
        An iterator over the successor tasks.
      • addDependency

        public void addDependency​(JobPlanTask task)
        Adds a dependency without a certain status.
        Parameters:
        task - Predecessor
      • addDependency

        protected void addDependency​(JobPlanTask predecessor,
                                     int branchType)
        Adds a dependency without a certain status.
        Parameters:
        task - Predecessor
      • addDependency

        protected void addDependency​(JobPlanTask predecessor,
                                     int branchType,
                                     TaskState taskState)
        Adds a dependency with a certain status.
        Parameters:
        predecessor - Task to be added as dependency.
        branchType - Branch Type of the Dependency.
        taskState - Status/State of the task being added as dependency.