Class WorkItemTraverser
java.lang.Object
org.tasktide.engine.traversers.WorkItemTraverser
- All Implemented Interfaces:
TaskTideWorkloadTraverser<WorkItem>, TaskTideWorkerUnit<WorkItem>
Class to hold logic for fetching a workload from the
TaskTideServiceManager. Utilizing the
TaskTideEngineObserver, ItemTaskTraverser,
and ItemTaskExecutor to handle how workload is
consumed.-
Method Summary
Modifier and TypeMethodDescriptionvoidparallelSubmit(List<WorkItem> workload) Schedules eachWorkItemof provided workload intoExecutorServicethread pool.booleanprocessElm(WorkItem elm) Handles the pre-processing forWorkItemvoidserialSubmit(List<WorkItem> workload) Traverses provided workload processing elements passing validationvoidTraverse provided workload
-
Method Details
-
traverse
Traverse provided workload- Specified by:
traversein interfaceTaskTideWorkloadTraverser<WorkItem>- Parameters:
workload-- Throws:
TraverserCheckedException
-
serialSubmit
Traverses provided workload processing elements passing validation- Parameters:
workload-- Throws:
TraverserCheckedException
-
parallelSubmit
Schedules eachWorkItemof provided workload intoExecutorServicethread pool. Using theFutureTrackerscontainer to fetchTrackerWaiter- Parameters:
workload-- Throws:
TraverserCheckedException
-
processElm
Handles the pre-processing forWorkItem- Specified by:
processElmin interfaceTaskTideWorkloadTraverser<WorkItem>- Parameters:
elm-- Returns:
- boolean
- Throws:
TraverserCheckedException
-