public abstract class MultiTask extends QueueTask<ResultData>
Abstrakte Basisklasse für diejenigen Tasks, die mehr als einmal vorkommen und deswegen von einem TaskMgr verwaltet werden. Die verwalteten Tasks müssen völlig unabhängig voneinander sein und dürfen auch keine Reihenfolgenabhängigkeiten (wie z.B. die ArchiveTask) beinhalten.
Modifier and Type | Field and Description |
---|---|
protected ResultData |
resultData
Aktueller Datensatz/Anfrage/Auftrag.
|
TERMINATE_TASK
_debug, _shouldTerminate, archMgr, didTree, INDEX_MEMORY_SIZE, persMgr
Constructor and Description |
---|
MultiTask(ArchiveManager archiveMgr,
MultiTaskManager tMgr)
Konstruktor für Task.
|
Modifier and Type | Method and Description |
---|---|
int |
getTaskIndex() |
void |
setTaskIndex(int idx) |
protected abstract void |
work()
Diese Methode ist zu überschreiben, um die konkrete Aufgabe der Task zu implementieren.
|
protected void |
work(ResultData step) |
getQueue, step, submit, terminateTask
execute
addTaskStepListener, cleanUp, getArchMgr, getName, getObjectsFromDav, getState, isAlive, isTerminated, join, removeTaskStepListener, setName, shouldTerminate, start, suspendTaskIfNecessary, taskStepDone
protected ResultData resultData
Aktueller Datensatz/Anfrage/Auftrag. Muss auf null gesetzt werden wenn kein solcher vorliegt.
public MultiTask(ArchiveManager archiveMgr, MultiTaskManager tMgr)
Konstruktor für Task.
tMgr
- Task-ManagerdTree
- DataIdentTreepMgr
- Persistence-Managerpublic void setTaskIndex(int idx)
public int getTaskIndex()
protected final void work(ResultData step) throws java.lang.InterruptedException
work
in class QueueTask<ResultData>
java.lang.InterruptedException
protected abstract void work()
Diese Methode ist zu überschreiben, um die konkrete Aufgabe der Task zu implementieren. In der Methode soll keine weitere Synchronisation stattfinden.