Package de.bsvrz.ars.ars.mgmt.tasks
Class AbstractTask
java.lang.Object
de.bsvrz.ars.ars.mgmt.tasks.AbstractTask
public abstract class AbstractTask
extends java.lang.Object
TBD Dokumentation
-
Field Summary
Fields Modifier and Type Field Description protected static de.bsvrz.sys.funclib.debug.Debug_debugLoggerprotected boolean_shouldTerminateZeigt an ob der Task beendet werden soll.protected ArchiveManagerarchMgrZentrale Archiv-Verwaltung.protected DataIdentTreedidTreeDatenindentifikationenprotected PersistenceManagerpersMgrPersistenceManager für den Zugriff auf die Daten des Archivsystems -
Constructor Summary
Constructors Constructor Description AbstractTask(ArchiveManager archiveMgr)Erstellt einen neuen Task -
Method Summary
Modifier and Type Method Description ArchiveManagergetArchMgr()abstract java.lang.StringgetName()voidgetObjectsFromDav()Wird aufgerufen, sobald eine Datenverteilerverbindung verfügbar ist.abstract booleanisAlive()abstract booleanisTerminated()abstract voidjoin()abstract voidsetName(java.lang.String name)booleanshouldTerminate()Zeigt an, ob der Task beendet werden soll.abstract voidstart()voidsuspendTaskIfNecessary()Hält den Task an, falls sich das Archivsystem in einem kritischen Zustand befindet.voidterminateTask()Terminiert den Task indem dafür gesorgt wird, dasshouldTerminate()true zurückliefert.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Field Details
-
_debug
protected static final de.bsvrz.sys.funclib.debug.Debug _debugLogger -
_shouldTerminate
protected volatile boolean _shouldTerminateZeigt an ob der Task beendet werden soll. Der Task bricht dann möglichst schnell an der nächsten sicheren Stelle ab. -
didTree
Datenindentifikationen -
archMgr
Zentrale Archiv-Verwaltung. -
persMgr
PersistenceManager für den Zugriff auf die Daten des Archivsystems
-
-
Constructor Details
-
AbstractTask
Erstellt einen neuen Task- Parameters:
archiveMgr- Archiv-Manager (Kann für Testfälle und ähnliches null sein, allerdings kann es dann passieren, das bestimmte Funktionen nicht funktionieren.)
-
-
Method Details
-
start
public abstract void start() -
terminateTask
public void terminateTask()Terminiert den Task indem dafür gesorgt wird, dasshouldTerminate()true zurückliefert. Der Task sollte diese Funktion regelmäßig aufrufen um dann bei Rückgabe vontrueden Task zeitnah zu beenden. -
shouldTerminate
public boolean shouldTerminate()Zeigt an, ob der Task beendet werden soll.- Returns:
truefalls der Task beendet werden soll.
-
getArchMgr
-
suspendTaskIfNecessary
public final void suspendTaskIfNecessary()Hält den Task an, falls sich das Archivsystem in einem kritischen Zustand befindet. Wird das Archivsystem beendet, wird der Task fortgesetzt, so dass er seine Aufgabe noch vollständig erfüllen kann.shouldTerminate()liefert anschließendtruezurück. -
getObjectsFromDav
public void getObjectsFromDav()Wird aufgerufen, sobald eine Datenverteilerverbindung verfügbar ist. Kann benutzt werden, um Objekte zu laden und Anmeldungen durchzuführen.Wichtig: Diese Methode wird unter Umständen im Konstruktor ausgeführt und sollte daher nicht erwarten, dass die Subklasse (`this`) vollständig initialisiert ist.
-
getName
public abstract java.lang.String getName() -
setName
public abstract void setName(java.lang.String name) -
join
public abstract void join() throws java.lang.InterruptedException- Throws:
java.lang.InterruptedException
-
isAlive
public abstract boolean isAlive() -
isTerminated
public abstract boolean isTerminated()
-