|
||||||||||
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.MultiTask
de.bsvrz.ars.ars.mgmt.tasks.QueryTask
public abstract class QueryTask
Oberklasse fuer Tasks, die Archivanfragen oder Archiv-Informationsanfragen bearbeiten.
Nested Class Summary | |
---|---|
protected static class |
QueryTask.SendingState
Zustand der Sendesteuerung (Senden / Anhalten / Abbrechen). |
Nested classes/interfaces inherited from class java.lang.Thread |
---|
java.lang.Thread.State, java.lang.Thread.UncaughtExceptionHandler |
Field Summary | |
---|---|
protected static AttributeGroup |
atgQuery
Attributgruppe fuer Archiv-Anfragen. |
protected java.io.ByteArrayOutputStream |
bosResult
Wiederverwendbarer ByteArrayOutputStream. |
protected static DataDescription |
ddResponse
Datenidentifikation der Archiv-Antwort. |
protected Deserializer |
deserializer
Der Deserialisierer aus DAF. |
protected Data |
gData
Dieses Datenobjekt wird zum Senden des Ergebnisses verwendet |
protected ResultData |
gResultData
Wird zum Senden verwendet (muss nur einmal angelegt werden) |
static int |
MIN_CONTAINER_FILES
Mindest-Anzahl an ContainerFile-Objekten, die der PersistenzManager fuer diesen Task vorhalten soll. |
protected static ArchiveDataKind |
NA
Datensatzart Nachgefordert Aktuell |
protected static ArchiveDataKind |
NN
Datensatzart Nachgefordert Nachgeliefert |
protected static ArchiveDataKind |
OA
Datensatzart Online Aktuell |
protected static ArchiveDataKind |
ON
Datensatzart Online Nachgeliefert |
protected SystemObject |
queryAppObj
Applikations-Objekt des Absenders der Archiv-Anfrage. |
protected int |
queryIdx
Anfrage-Index der anfragenden Applikation zur Archiv-Anfrage. |
protected QueryTask.SendingState |
sendingState
Aktueller Zustand der Sendesteuerung. |
protected Serializer |
serializer
Der Serialisierer aus DAF. |
protected int |
serializerVersion
Serialisiererversion der anfragenden Applikation, mit der auch die Antwort erstellt wird. |
protected java.lang.Object |
syncObj
Spezielles Objekt zur Synchronisiserung. |
protected static long |
t_lsMax
Maximale Dauer, um die der Loeschschutz automatisch verlaengert wird (gemessn ab Ende Vorhaltezeitraum) |
protected byte[] |
tempMem
Speicher fuer das Abfragen der Indexe. |
Fields inherited from class de.bsvrz.ars.ars.mgmt.tasks.MultiTask |
---|
resultData, taskMgr |
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 |
Constructor Summary | |
---|---|
QueryTask(ArchiveManager archiveMgr,
MultiTaskManager tMgr)
Konstruktor fuer den QueryTask. |
Method Summary | |
---|---|
protected void |
createQueryData()
Legt alle Datenstrukturen an, die zu Beginn der Anfrage ermittelt werden koennen. |
void |
dataRequest(SystemObject object,
DataDescription dataDescription,
byte state)
|
static void |
getObjectsFromDAV(ClientDavInterface davCon)
In dieser Methode werden alle notwendigen Objekte von DAV geladen. |
protected void |
init()
Initialisiert den Task fuer eine neue Anfrage. |
boolean |
isRequestSupported(SystemObject object,
DataDescription dataDescription)
|
protected ArchiveDataSpecification[] |
parseArchiveDataSpec(Deserializer ds)
Interpretiert die empfangene Archivanfrage oder Archiv-Informationsanfrage und zerlegt sie in einzelne Unterabfragen vom Typ ArchiveDataSpecification. |
protected void |
sendResultData(byte[] resultBytes,
int msgType)
Sendet das uebergebene Byte-Array in einem Ergebnis-Datensatz ( ResultData ) an das
Empfaenger-Applikations-Objekt. |
static void |
setT_lsMax(long tlsMax)
|
protected void |
subscribeSender()
Meldet den Task als Sender fuer Archiv-Antworten an das angegebene Empfaenger-Applikations-Objekt an. |
protected void |
unsubscribeSender()
Meldet den Task als Sender fuer Archiv-Antworten an das angegebene Empfaenger-Applikations-Objekt ab. |
Methods inherited from class de.bsvrz.ars.ars.mgmt.tasks.MultiTask |
---|
doWork, getTaskIndex, run, setTaskIndex, work |
Methods inherited from class de.bsvrz.ars.ars.mgmt.tasks.Task |
---|
addTaskStepListener, getArchMgr, isTaskTerminated, removeTaskStepListener, suspendTaskIfNecessary, terminateTask |
Methods inherited from class java.lang.Thread |
---|
activeCount, checkAccess, 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 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
protected static ArchiveDataKind OA
protected static ArchiveDataKind ON
protected static ArchiveDataKind NA
protected static ArchiveDataKind NN
public static final int MIN_CONTAINER_FILES
protected QueryTask.SendingState sendingState
protected java.lang.Object syncObj
protected byte[] tempMem
protected SystemObject queryAppObj
protected static AttributeGroup atgQuery
protected static DataDescription ddResponse
protected int queryIdx
protected int serializerVersion
protected Data gData
protected ResultData gResultData
protected java.io.ByteArrayOutputStream bosResult
protected Serializer serializer
protected Deserializer deserializer
protected static long t_lsMax
Constructor Detail |
---|
public QueryTask(ArchiveManager archiveMgr, MultiTaskManager tMgr)
archiveMgr
- Der Archiv-Manager.tMgr
- Der MultiTaskManager.Method Detail |
---|
protected void init()
public static void getObjectsFromDAV(ClientDavInterface davCon) throws ConfigurationException
davCon
- Verbindung zum Datenverteiler
ConfigurationException
public static void setT_lsMax(long tlsMax)
t_lsMax
public boolean isRequestSupported(SystemObject object, DataDescription dataDescription)
ClientSenderInterface#isRequestSupported(SystemObject, DataDescription)
public void dataRequest(SystemObject object, DataDescription dataDescription, byte state)
ClientSenderInterface#dataRequest(SystemObject, DataDescription, byte)
protected void subscribeSender() throws ConfigurationException, OneSubscriptionPerSendData
receiver
- Empfaenger-Applikations-Objekt
OneSubscriptionPerSendData
ConfigurationException
protected void unsubscribeSender()
protected void createQueryData() throws NoSuchVersionException
NoSuchVersionException
protected void sendResultData(byte[] resultBytes, int msgType)
ResultData
) an das
Empfaenger-Applikations-Objekt.
resultBytes
- Zu versendendes Byte-ArraymsgType
- ArchivNachrichtenTyp wie definiert in MessageType
protected ArchiveDataSpecification[] parseArchiveDataSpec(Deserializer ds) throws java.io.IOException
ds
- Deserialisierer mit der Anfrage.
java.io.IOException
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |