public class ArchiveInfoQueryTask extends QueryTask
Task zur Bearbeitung von Archiv-Informationsanfragen.
QueryTask.SendingState| Modifier and Type | Field and Description |
|---|---|
private ArchiveDataSpecification[] |
adsList |
private DummyTask |
dummyTask |
private int |
entryCounter |
private static boolean |
GAP |
private byte[] |
indexMem |
private static boolean |
NO_DIR_ACCESS |
private static boolean |
NO_GAP |
private static int |
NO_MEDIUM_ID |
atgQuery, bosResult, ddResponse, deserializer, gData, gResultData, MIN_CONTAINER_FILES, NA, NN, OA, ON, queryAppObj, queryIdx, sendingState, serializer, serializerVersion, syncObj, t_lsMax, tempMemresultDataTERMINATE_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 |
|---|
ArchiveInfoQueryTask(ArchiveManager archiveMgr,
MultiTaskManager tMgr) |
| Modifier and Type | Method and Description |
|---|---|
private void |
addEntry(long startDIdx,
long startAT,
long startDT,
long endDIdx,
long endAT,
long endDT,
TimingType tt,
boolean gap,
boolean direct,
int volID,
int idx) |
private void |
analyze() |
private void |
extendLoeschschutz(long obj,
long atg,
long asp,
int sv,
ArchiveDataKind adk,
long contID) |
private boolean |
getDirAccess(DataIterator iterator) |
private int |
getMedienID(DataIterator iterator) |
private byte[] |
insertNumOfEntries(int numOfEntries) |
private boolean |
isGap(ContainerDataResult result,
long lastDIdx) |
private void |
printError(java.lang.String msg) |
private void |
sendResponse()
Beantwortet die Archivinformationsanfragen.
|
private long |
ttVal(TimingType tt,
long dIdx,
long aTime,
long dTime) |
void |
work()
Diese Methode ist zu überschreiben, um die konkrete Aufgabe der Task zu implementieren.
|
createQueryData, dataRequest, getObjectsFromDav, init, isRequestSupported, parseArchiveDataSpec, sendResultData, setT_lsMax, subscribeSender, unsubscribeSendergetTaskIndex, setTaskIndex, workgetQueue, step, submit, terminateTaskexecuteaddTaskStepListener, cleanUp, getArchMgr, getName, getState, isAlive, isTerminated, join, removeTaskStepListener, setName, shouldTerminate, start, suspendTaskIfNecessary, taskStepDoneprivate static final boolean GAP
private static final boolean NO_GAP
private static final boolean NO_DIR_ACCESS
private static final int NO_MEDIUM_ID
private ArchiveDataSpecification[] adsList
private byte[] indexMem
private int entryCounter
private DummyTask dummyTask
public ArchiveInfoQueryTask(ArchiveManager archiveMgr, MultiTaskManager tMgr)
private void analyze()
throws java.lang.Exception
java.lang.Exceptionprivate void sendResponse()
throws java.io.IOException,
DataNotSubscribedException
Beantwortet die Archivinformationsanfragen. Die einzelnen Archivinformationsanfragen aus adsList werden bearbeitet und beantwortet.
java.io.IOExceptionDataNotSubscribedExceptionSendSubscriptionNotConfirmedprivate boolean isGap(ContainerDataResult result, long lastDIdx)
private void extendLoeschschutz(long obj,
long atg,
long asp,
int sv,
ArchiveDataKind adk,
long contID)
throws PersistenceException
PersistenceExceptionprivate boolean getDirAccess(DataIterator iterator) throws PersistenceException
PersistenceExceptionprivate int getMedienID(DataIterator iterator) throws PersistenceException
PersistenceExceptionprivate long ttVal(TimingType tt, long dIdx, long aTime, long dTime)
private byte[] insertNumOfEntries(int numOfEntries)
throws java.io.IOException
java.io.IOExceptionprivate void printError(java.lang.String msg)
throws java.io.IOException
java.io.IOExceptionprivate void addEntry(long startDIdx,
long startAT,
long startDT,
long endDIdx,
long endAT,
long endDT,
TimingType tt,
boolean gap,
boolean direct,
int volID,
int idx)
throws java.io.IOException
java.io.IOException