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, tempMem
resultData
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 |
---|
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, unsubscribeSender
getTaskIndex, setTaskIndex, work
getQueue, step, submit, terminateTask
execute
addTaskStepListener, cleanUp, getArchMgr, getName, getState, isAlive, isTerminated, join, removeTaskStepListener, setName, shouldTerminate, start, suspendTaskIfNecessary, taskStepDone
private 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.Exception
private void sendResponse() throws java.io.IOException, DataNotSubscribedException
Beantwortet die Archivinformationsanfragen. Die einzelnen Archivinformationsanfragen aus adsList
werden bearbeitet und beantwortet.
java.io.IOException
DataNotSubscribedException
SendSubscriptionNotConfirmed
private boolean isGap(ContainerDataResult result, long lastDIdx)
private void extendLoeschschutz(long obj, long atg, long asp, int sv, ArchiveDataKind adk, long contID) throws PersistenceException
PersistenceException
private boolean getDirAccess(DataIterator iterator) throws PersistenceException
PersistenceException
private int getMedienID(DataIterator iterator) throws PersistenceException
PersistenceException
private long ttVal(TimingType tt, long dIdx, long aTime, long dTime)
private byte[] insertNumOfEntries(int numOfEntries) throws java.io.IOException
java.io.IOException
private void printError(java.lang.String msg) throws java.io.IOException
java.io.IOException
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) throws java.io.IOException
java.io.IOException