public class TaskManager extends java.lang.Object implements TaskManagerInterface
| Constructor and Description |
|---|
TaskManager(ClientDavInterface dav,
DataManager dataManager,
int maxProtocols,
int maxQueries,
long maxDelay,
int timeout,
ConfigurationObject configAuth)
Erzeugt den Task Manager
|
| Modifier and Type | Method and Description |
|---|---|
java.lang.Long[] |
getActiveProtocols()
Liste mit den Protokollen die gerade gesendet / erstellt werden.
|
ThreadPool |
getPool() |
java.util.List<ThreadPool.QueuedThread> |
getWaitingProtocols()
Liste mit den Anfrage-Ids und zugehörigen Protokoll-Ids, die momentan in der Warteschlange liegen.
|
boolean |
isTerminated()
Zeigt an ob der Taskmanager und alle Subthreads beendet wurden.
|
void |
process(SystemObject client,
long id,
int operation,
byte[] data,
long initialFlowControl)
Übergeben einer Anfrage an das Task Manager Submodul.
|
void |
shutdown()
Fährt den Task-Manager herunter.
|
public TaskManager(ClientDavInterface dav, DataManager dataManager, int maxProtocols, int maxQueries, long maxDelay, int timeout, ConfigurationObject configAuth) throws FailureException
dav - Verbindung zum DatenverteilerdataManager - Daten ManagermaxProtocols - Maximale Anzahl von Threads die gleichzeitig ausgeführt werden dürfen.maxQueries - Maximale Größe der Warteschlange für Anufträge zur Protokollerstellung.maxDelay - Maximale Zeitdauer in ms, für die die Protokollerstellung angehalten werden kann.timeout - Anzahl Minuten ohne Antwort vom Client, nach der die Übertragung getrennt wirdconfigAuth - Konfigurationsverantwortlicher für Anfragen an das Archivsystem.FailureException - Keine Verbindung zum Datenverteiler; Anlegen aller Treads scheitertpublic void process(SystemObject client, long id, int operation, byte[] data, long initialFlowControl)
process in interface TaskManagerInterfaceclient - Empfänger an den das Ergebnis der Anfrage gesendet werden sollid - Id der Anfrageoperation - Operationscode (gültige Werte sind ProtocolRelatedOperationdata - Byte-Feld mit serialisierten AnfragedateninitialFlowControl - public void shutdown()
TaskManagerInterfaceshutdown in interface TaskManagerInterfaceTaskManagerInterface.shutdown()public boolean isTerminated()
true falls der Taskmanager beendet wurde.public java.lang.Long[] getActiveProtocols()
TaskManagerInterfacegetActiveProtocols in interface TaskManagerInterfaceTaskManagerInterface.getActiveProtocols()public java.util.List<ThreadPool.QueuedThread> getWaitingProtocols()
TaskManagerInterfacegetWaitingProtocols in interface TaskManagerInterfaceTaskManagerInterface.getWaitingProtocols()public ThreadPool getPool()
getPool in interface TaskManagerInterface