public class LZVTask extends SingleClientSenderTask
Task zur Bearbeitung von Loeschzeit-Verlaengerungsauftraegen.
| Modifier and Type | Class and Description |
|---|---|
static class |
LZVTask.CapacityCheckResultData |
class |
LZVTask.ChangeTime |
class |
LZVTask.DeleteLater
Späteres Löschen, wie DeleteNow, nur wird nur der Löschschutz aufgehoben statt den Container zu löschen
|
class |
LZVTask.DeleteNow
Sofortiges Löschen auf Anfrage.
|
class |
LZVTask.DeleteRegular
Reguläres Löschen.
|
static class |
LZVTask.DeleteRegularResultData |
class |
LZVTask.DeleteSpontan
Spontanes Löschen bei wenig freiem Speicherplatz
|
| Modifier and Type | Field and Description |
|---|---|
static long |
CHANGETIME_REGULAR |
static boolean |
IGNORE_LOESCH_SCHUTZ |
atgQuery, ddResponse, deserializer, queryAppObj, queryIdx, SENDCONTROL_TIMEOUT, serializerVersion, syncObjTERMINATE_TASK_debug, _shouldTerminate, archMgr, didTree, INDEX_MEMORY_SIZE, persMgrSTART_SENDING, STOP_SENDING, STOP_SENDING_NO_RIGHTS, STOP_SENDING_NOT_A_VALID_SUBSCRIPTION| Constructor and Description |
|---|
LZVTask(ArchiveManager archiveMgr,
java.util.concurrent.BlockingQueue<java.lang.Object> inputData,
LongTermTaskStatePublisher longTermTaskStatePublisher)
Erzeugt eine neue Loeschzeit-Verlaengerungs-Task.
|
| Modifier and Type | Method and Description |
|---|---|
void |
containerWalk(ArchiveDataSpecification[] ads,
de.bsvrz.ars.ars.mgmt.tasks.LZVTask.ContainerHandler handler)
Die generelle Container-Walk-Methode.
|
void |
deleteSpontan(ArchiveDataSpecification[] ads)
Der
DeleteSpontanTask löscht bei knapp werdendem Speicherplatz unwichtige Container. |
void |
execute()
Diese Methode muss implementiert werden und definiert die Aktion, die dieser Task ausführt
|
static LZVTask.CapacityCheckResultData |
getCapacityCheckResultData(ArchiveManager archMgr) |
static LZVTask.DeleteRegularResultData |
getDeleteRegularResultData(ArchiveManager archMgr) |
long |
getFreeDiskSpace()
Gibt den freien Speicherplatz zurück und veröffentlicht ihn ebenfalls über den Datenverteiler (falls möglich)
|
static long |
getMinRemainingDiskCapa()
Liefert die Mindest-Restkapazitaet der Festplatte.
|
static void |
setMinRemainingDiskCapa(long minRemainingDiskCapa)
Setzt die Mindest-Restkapazitaet der Festplatte.
|
protected void |
work(ResultData resultData)
Führt das Löschen, spontanes Löschen oder die Löschzeitverlängerung aus.
|
dataRequest, getObjectsFromDav, init, insertData, isRequestSupported, parseArchiveDataSpec, sendErrorResponse, sendErrorResponse, sendSuccessResponse, sendSuccessResponse, subscribeSender, unsubscribeSendergetQueue, step, submit, terminateTaskaddTaskStepListener, cleanUp, getArchMgr, getName, getState, isAlive, isTerminated, join, removeTaskStepListener, setName, shouldTerminate, start, suspendTaskIfNecessary, taskStepDonepublic static final long CHANGETIME_REGULAR
public static boolean IGNORE_LOESCH_SCHUTZ
public LZVTask(ArchiveManager archiveMgr, java.util.concurrent.BlockingQueue<java.lang.Object> inputData, LongTermTaskStatePublisher longTermTaskStatePublisher)
Erzeugt eine neue Loeschzeit-Verlaengerungs-Task.
rodl - Der Listener wird benachrichtigt beim Beenden der Task.archiveMgr - Der Archiv-Manager.inputData - Eingangswarteschlange.public static long getMinRemainingDiskCapa()
Liefert die Mindest-Restkapazitaet der Festplatte.
public static void setMinRemainingDiskCapa(long minRemainingDiskCapa)
Setzt die Mindest-Restkapazitaet der Festplatte.
minRemainingDiskCapa - Neue Mindestrestkapazitaet in Byte.public static LZVTask.CapacityCheckResultData getCapacityCheckResultData(ArchiveManager archMgr)
public static LZVTask.DeleteRegularResultData getDeleteRegularResultData(ArchiveManager archMgr)
public void execute()
TaskDiese Methode muss implementiert werden und definiert die Aktion, die dieser Task ausführt
execute in class RepeatingTaskprotected void work(ResultData resultData)
Führt das Löschen, spontanes Löschen oder die Löschzeitverlängerung aus.
work in class QueueTask<ResultData>de.bsvrz.ars.ars.mgmt.tasks.SingleTask#work(ResultData)public void deleteSpontan(ArchiveDataSpecification[] ads) throws java.lang.Exception
Der DeleteSpontanTask löscht bei knapp werdendem Speicherplatz unwichtige Container.
Dazu ueberprueft er in einem parametrierbaren Zyklus, wieviel Speicherplatz dem Archivsystem noch zur Verfuegung steht. Erreicht die vorhandene Kapazität einen Schwellwert, werden folgende Daten geloescht:
java.lang.Exceptionpublic long getFreeDiskSpace()
throws java.lang.Exception
Gibt den freien Speicherplatz zurück und veröffentlicht ihn ebenfalls über den Datenverteiler (falls möglich)
java.lang.Exceptionpublic void containerWalk(ArchiveDataSpecification[] ads, de.bsvrz.ars.ars.mgmt.tasks.LZVTask.ContainerHandler handler) throws java.lang.Exception
Die generelle Container-Walk-Methode.
Je nachdem, ob die ArchiveDataSpec gefuellt ist oder nicht, wird ein ContainerWalk über das komplette Persistenz-Verzeichnis (containerWalkAllFromDir) oder alle spezifizierten Container (containerWalkAllByDataSpec) ausgeführt.
Achtung!
Die Methode löscht je nach übergebenen Parametern Archivdaten!
ads - changeTime - compareDate - PersistenceExceptionIndexExceptionjava.lang.Exception