Class ProcessNodeHandler
- java.lang.Object
-
- com.aquima.interactions.process.impl.handlers.NodeHandlerBase
-
- com.aquima.interactions.process.impl.handlers.ProcessNodeHandler
-
- All Implemented Interfaces:
ITaskHandler
- Direct Known Subclasses:
CallNodeHandler
,RootNodeHandler
public abstract class ProcessNodeHandler extends NodeHandlerBase implements ITaskHandler
Base class for process task handlers.- Since:
- 7.1
- Author:
- O. Kerpershoek
-
-
Field Summary
Fields Modifier and Type Field Description protected ProcessCaseRepository
caseRepository
protected ProcessEngine
processEngine
-
Constructor Summary
Constructors Modifier Constructor Description protected
ProcessNodeHandler(ProcessCaseRepository caseRepository, ProcessEngine engine)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected void
cancelChildTasks(IEvaluationContext context, ITaskModel[] childTasks)
protected boolean
checkConditionalTasksForProcess(IEvaluationContext context, ITaskModel parentTask, ProcessCaseRepository caseRepository)
protected abstract void
completeNode(IEvaluationContext context, ITaskModel processTask, String exitAction)
protected boolean
containsOpenTasks(ITaskModel[] childTasks)
void
processNode(IEvaluationContext context, ITaskModel processTask)
This method should process the task, and if the evaluation is successful, schedule the follow-up tasks.-
Methods inherited from class com.aquima.interactions.process.impl.handlers.NodeHandlerBase
calculateTimeout, scheduleExpiringJob, schedulePriorityReevaluation, scheduleTimerJob, setPostponedJobs
-
-
-
-
Field Detail
-
caseRepository
protected final ProcessCaseRepository caseRepository
-
processEngine
protected final ProcessEngine processEngine
-
-
Constructor Detail
-
ProcessNodeHandler
protected ProcessNodeHandler(ProcessCaseRepository caseRepository, ProcessEngine engine)
-
-
Method Detail
-
completeNode
protected abstract void completeNode(IEvaluationContext context, ITaskModel processTask, String exitAction)
-
processNode
public void processNode(IEvaluationContext context, ITaskModel processTask) throws AppException
Description copied from interface:ITaskHandler
This method should process the task, and if the evaluation is successful, schedule the follow-up tasks.- Specified by:
processNode
in interfaceITaskHandler
- Parameters:
context
- The current context of the task.processTask
- The task that should be processed.- Throws:
AppException
- This exception is thrown when the task could not be processed.
-
containsOpenTasks
protected boolean containsOpenTasks(ITaskModel[] childTasks)
-
checkConditionalTasksForProcess
protected boolean checkConditionalTasksForProcess(IEvaluationContext context, ITaskModel parentTask, ProcessCaseRepository caseRepository) throws AppException
- Throws:
AppException
-
cancelChildTasks
protected void cancelChildTasks(IEvaluationContext context, ITaskModel[] childTasks)
-
-