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, syncObj
TERMINATE_TASK
_debug, _shouldTerminate, archMgr, didTree, INDEX_MEMORY_SIZE, persMgr
START_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, unsubscribeSender
getQueue, step, submit, terminateTask
addTaskStepListener, cleanUp, getArchMgr, getName, getState, isAlive, isTerminated, join, removeTaskStepListener, setName, shouldTerminate, start, suspendTaskIfNecessary, taskStepDone
public 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()
Task
Diese Methode muss implementiert werden und definiert die Aktion, die dieser Task ausführt
execute
in class RepeatingTask
protected 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.Exception
public 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.Exception
public 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
- PersistenceException
IndexException
java.lang.Exception