|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectjava.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.RequestGapTask
public class RequestGapTask
Task zur Nachforderung fehlender Archivdaten aus anderen Archivsystemen gemaess Parametrierung.
| Nested Class Summary | |
|---|---|
class |
RequestGapTask.GapFile
Diese Klasse speichert nicht schliessbare Datenluecken in einer Datei im Verzeichnis der Datenidentifikation in der Form 10-20 |
static class |
RequestGapTask.GapMarker
Speichert pro Archivsystem die Luecken, die von diesem nicht geschlossen werden konnten. |
static class |
RequestGapTask.RequestGapResultData
Diese Klasse sieht aus wie ein ResultData, wird aber nur intern verwendet, um einen über den Scheduler angestoßenen Sicherungslauf von einem extern angestoßenen zu unterscheieden |
private class |
RequestGapTask.RequestGapWorker
|
| Nested classes/interfaces inherited from class java.lang.Thread |
|---|
Thread.State, Thread.UncaughtExceptionHandler |
| Field Summary | |
|---|---|
private ArchiveDataSpecification[] |
archDataSpecs
|
private List<SystemObject> |
archiveList
|
private ArchiveTimeSpecification |
archTimeSpec
Zeitspezifikation, die beim Nachfordern verwendet werden soll oder null, falls keine Einschränkung berücksichtigt werden soll. |
private Semaphore |
finishedSema
|
private static String |
GAP_ARCH_SEPARATOR
|
static String |
GAP_FILE_NAME
Dateiname der Datenluecken-Datei. |
private static String |
GAP_IDX_SEPARATOR
|
private static String |
GAP_KEYWORD
|
private static Pattern |
GAP_PAT
|
static int |
REQUEST_GAP_THREADS
Anzahl der Threads zum Nachfordern fehlender Archivdaten. |
static ArchiveQueryPriority |
REQUEST_PRIO
Prioritaet der Nachforserungsanfragen. |
private static ArchiveDataKindCombination |
requestAdk
|
private RequestGapTask.RequestGapWorker[] |
requester
|
private static RequestGapTask.RequestGapResultData |
requestGapResultData
|
private AtomicInteger |
totalGapsFound
|
| Fields inherited from class de.bsvrz.ars.ars.mgmt.tasks.SingleClientSenderTask |
|---|
atgQuery, ddResponse, deserializer, queryAppObj, queryIdx, SENDCONTROL_TIMEOUT, serializerVersion, syncObj |
| Fields inherited from class de.bsvrz.ars.ars.mgmt.tasks.Task |
|---|
archMgr, didTree, INDEX_MEMORY_SIZE, isTerminated, logger, persMgr, ringOfDeathListener, taskStepListeners |
| Fields inherited from class java.lang.Thread |
|---|
MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY |
| Fields inherited from interface de.bsvrz.dav.daf.main.ClientSenderInterface |
|---|
START_SENDING, STOP_SENDING, STOP_SENDING_NO_RIGHTS, STOP_SENDING_NOT_A_VALID_SUBSCRIPTION |
| Constructor Summary | |
|---|---|
RequestGapTask(ArchiveManager archiveMgr,
RingOfDeathListener rodl,
RingBuffer<ResultData> inputData)
Erzeugt einen neuen Task zur Nachforderung fehlender Archivdaten. |
|
| Method Summary | |
|---|---|
static RequestGapTask.RequestGapResultData |
getRequestGapResultData()
Liefert den Nachforderungsanfrage-Datensatz. |
private List<SystemObject> |
parseArchiveList(Deserializer ds)
Extrahiert die Liste der Archivsysteme, bei denen nachgefordert werden soll. |
private void |
performRequest()
Erzeugt eine Anzahl ( REQUEST_GAP_THREADS) von RequestGapTask(ArchiveManager,RingOfDeathListener,RingBuffer)- Objekten, die die
Nachforderung durchführen. |
void |
terminateTask()
Beendet den Nachforderungs-Task. |
protected void |
work(ResultData resultData)
Startet das automatische oder manuelle Nachfordern entsprechend dem uebergebenen Nachforderungs-Datensatz. |
| 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 de.bsvrz.ars.ars.mgmt.tasks.SingleTask |
|---|
run |
| Methods inherited from class de.bsvrz.ars.ars.mgmt.tasks.Task |
|---|
addTaskStepListener, getArchMgr, isTaskTerminated, removeTaskStepListener, suspendTaskIfNecessary |
| 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 |
| Methods inherited from class java.lang.Object |
|---|
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Field Detail |
|---|
public static String GAP_FILE_NAME
public static int REQUEST_GAP_THREADS
public static ArchiveQueryPriority REQUEST_PRIO
private static String GAP_KEYWORD
private static String GAP_IDX_SEPARATOR
private static String GAP_ARCH_SEPARATOR
private static Pattern GAP_PAT
private static ArchiveDataKindCombination requestAdk
private static RequestGapTask.RequestGapResultData requestGapResultData
private RequestGapTask.RequestGapWorker[] requester
private Semaphore finishedSema
private ArchiveDataSpecification[] archDataSpecs
private List<SystemObject> archiveList
private AtomicInteger totalGapsFound
private ArchiveTimeSpecification archTimeSpec
null, falls keine Einschränkung berücksichtigt werden soll.
| Constructor Detail |
|---|
public RequestGapTask(ArchiveManager archiveMgr,
RingOfDeathListener rodl,
RingBuffer<ResultData> inputData)
archiveMgr - Der Archiv-Manager.rodl - Der Listener wird benachrichtigt beim Beenden der Task.inputData - Eingangswarteschlange| Method Detail |
|---|
public static RequestGapTask.RequestGapResultData getRequestGapResultData()
protected void work(ResultData resultData)
work in class SingleTaskresultData - Nachforderungs-Datensatz.
private List<SystemObject> parseArchiveList(Deserializer ds)
throws Exception
ds -
IOException
Exception
private void performRequest()
throws Exception
REQUEST_GAP_THREADS) von RequestGapTask(ArchiveManager,RingOfDeathListener,RingBuffer)- Objekten, die die
Nachforderung durchführen. Diese Methode wartet, bis alle Threads fertig sind.
Exceptionpublic void terminateTask()
terminateTask in class Task
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||