de.bsvrz.ars.ars.mgmt.tasks
Class RestoreTask
java.lang.Object
java.lang.Thread
de.bsvrz.ars.ars.mgmt.tasks.Task
de.bsvrz.ars.ars.mgmt.tasks.SingleTask
de.bsvrz.ars.ars.mgmt.tasks.SingleClientSenderTask
de.bsvrz.ars.ars.mgmt.tasks.RestoreTask
- All Implemented Interfaces:
- SuspendableTask, ClientSenderInterface, Runnable
public class RestoreTask
- extends SingleClientSenderTask
Task zur Wiederherstellung gesicherter Container.
- Author:
- beck et al. projects GmbH, Christian Wied
Methods inherited from class de.bsvrz.ars.ars.mgmt.tasks.SingleClientSenderTask |
dataRequest, getObjectsFromDAV, init, isRequestSupported, parseArchiveDataSpec, sendErrorResponse, sendErrorResponse, sendSuccessResponse, sendSuccessResponse, subscribeSender, unsubscribeSender |
Methods inherited from class java.lang.Thread |
activeCount, checkAccess, clone, countStackFrames, currentThread, destroy, dumpStack, enumerate, getAllStackTraces, getContextClassLoader, getDefaultUncaughtExceptionHandler, getId, getName, getPriority, getStackTrace, getState, getThreadGroup, getUncaughtExceptionHandler, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, resume, setContextClassLoader, setDaemon, setDefaultUncaughtExceptionHandler, setName, setPriority, setUncaughtExceptionHandler, sleep, sleep, start, stop, stop, suspend, toString, yield |
UNAVAIL_MEDIUM_ID_FILE
private static final String UNAVAIL_MEDIUM_ID_FILE
- See Also:
- Constant Field Values
LOESSCHUTZ_VERL
private static long LOESSCHUTZ_VERL
mediumIdIgnoreSet
private Set<String> mediumIdIgnoreSet
indexMem
private byte[] indexMem
_longTermTaskStatePublisherTask
private LongTermTaskStatePublisher.Task _longTermTaskStatePublisherTask
- Objekt, dem Informationen zum aktuellen Zustand der Task und dem Fortschritt von langwierigen Arbeiten übergeben werden.
RestoreTask
public RestoreTask(ArchiveManager archiveMgr,
RingOfDeathListener rodl,
RingBuffer<ResultData> inputData,
LongTermTaskStatePublisher longTermTaskStatePublisher)
throws ConfigurationException
- Erzeugt einen neuen Task zur Wiederherstellung gesicherter Container.
- Parameters:
archiveMgr
- Der Archiv-Manager.rodl
- Der Listener wird benachrichtigt beim Beenden der Task.inputData
- Eingangswarteschlange
- Throws:
ConfigurationException
run
public void run()
- Specified by:
run
in interface Runnable
- Overrides:
run
in class SingleTask
- See Also:
Runnable.run()
isUnavailMediumIDsFile
public static boolean isUnavailMediumIDsFile(String name)
- Prueft, ob der angegebene Dateiname der Name einer _unavailable_mediumids.dat-Datei ist.
- Parameters:
name
- Name einer Datei
- Returns:
- Wahr, wenn es der Name einer _unavailable_mediumids.dat-Datei ist
work
protected void work(ResultData resultData)
- Fuehrt die Wiederherstellung gesicherter Datenvontainer durch.
- Specified by:
work
in class SingleTask
- Parameters:
resultData
- Zu verarbeitender Datensatz aus der Eingangswarteschlange.
restore
private void restore(ResultData resultData)
throws Exception
- Throws:
Exception
collectAllMediumIdsFromDir
private List<RestoreTask.MediumidContainerTupel> collectAllMediumIdsFromDir()
throws Exception
- Throws:
Exception
collectMediumIdsByDataSpec
private List<RestoreTask.MediumidContainerTupel> collectMediumIdsByDataSpec(ArchiveDataSpecification[] ads)
throws Exception
- Throws:
Exception
restoreFromBackup
private void restoreFromBackup(int backupMediumID,
String containerFileName,
long objId,
long atgId,
long aspId,
int sv,
ArchiveDataKind archiveDataKind)
throws Exception
- Holt einen Container aus dem Backup zurueck.
- Throws:
Exception
initIgnoreList
private void initIgnoreList()
- Liest die Datei MEDIUM_ID_IGNORE_FILE aus und schreibt die darin enthaltenen MedienIds in das Set mediumIdIgnoreSet. Fehler werden großzügig behandelt -
notfalls bleibt das Set leer.
isMediumIdToBeRestored
private boolean isMediumIdToBeRestored(String mediumID)
getLOESSCHUTZ_VERL
public static long getLOESSCHUTZ_VERL()
setLOESSCHUTZ_VERL
public static void setLOESSCHUTZ_VERL(long loesschutz_verl)