|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjava.lang.Thread
de.bsvrz.dav.dav.main.ConnectionsManager.ApplicationStatusUpdater
public final class ConnectionsManager.ApplicationStatusUpdater
Dieser Thread verschickt den Status(angemeldete Appliktionen, Telegrammlaufzeiten, durch Applikationen angemeldete Datenidentifikationen) aller angemeldeten Applikationen.
Nested Class Summary |
---|
Nested classes/interfaces inherited from class java.lang.Thread |
---|
Thread.State, Thread.UncaughtExceptionHandler |
Field Summary | |
---|---|
private List<ConnectionsManager.ApplicationConnection> |
_application
Enthält alle Applikationen, die an/ab gemeldet werden sollen. |
private DataDescription |
_applicationDataDescriptionDD
Die DataDescription, die zum Versandt von Anmeldungen einer Applikation benutzt wird. |
private ConnectionsManager.SourceApplicationUpdater |
_applicationRuntime
Zum verschicken aller Telegrammlaufzeiten der angemeldeten Applikationen |
private DataDescription |
_applicationRuntimeDataDescription
DataDescription, mit der eine Quelle zum verschicken der Telegrammlaufzeiten der angemeldeten Applikationen. |
private ConnectionsManager.SourceApplicationUpdater |
_applicationUpdater
Zum verschicken aller angemeldeten Applikationen |
private DataDescription |
_applicationUpdaterDataDescription
DataDescription, mit der eine Quelle zum verschicken aller angemeldeten Applikationen angemeldet wird. |
private SystemObject |
_davObject
|
private Map<T_A_HighLevelCommunication,ConnectionsManager.SourceApplicationUpdater> |
_subcribedDataIdentifications
Key = Applikation, die bereits Daten angemeldet hat; Value = ClientSenderInterface(SourceApplicationUpdater). |
private Map<T_A_HighLevelCommunication,TimerTask> |
_threadsForDataIdentificationUpdates
Wird für eine Applikation eine neue Datenidentifikation angemeldet, so wird dies über einen TimerTask publiziert. |
private Timer |
_timer
Verschickt zyklisch alle angemeldeten Applikationen und deren Telegrammlaufzeiten. |
Fields inherited from class java.lang.Thread |
---|
MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY |
Constructor Summary | |
---|---|
ConnectionsManager.ApplicationStatusUpdater()
|
Method Summary | |
---|---|
void |
applicationAdded(T_A_HighLevelCommunication applicationConnection)
Fügt eine neue Applikation den Datenstrukturen hinzu und der Thread, der Aktualisierungsdatensätze verschickt, wird aufgeweckt. |
void |
applicationRemoved(T_A_HighLevelCommunication applicationConnection)
Speichert die entfernte Applikation und weckt den wartende Thread auf, der daraufhin eine Datensatz mit den aktuell angemeldeten Applikationen verschickt. |
void |
applicationSubscribedNewConnection(T_A_HighLevelCommunication application)
Diese Methode wird aufgerufen, wenn eine Applikation eine neue Datenidentifikation anmeldet. |
void |
applicationUnsubscribeConnection(T_A_HighLevelCommunication application)
Diese Methode wird aufgerufen, wenn eine Applikation eine Datenidentifikation abmeldet. |
private void |
createPeriodicUpdateTask()
Erstellt einen TimerTask, der alls 60 Sekunden alle angemeldeten Applikationen und deren Telegrammlaufzeiten verschickt (wenn ein Empfänger angemeldet ist). |
private void |
inscribeDataDescription(Data data,
BaseSubscriptionInfo baseSubscriptionInfo,
String role)
Schreibt in den übergebenen Datensatz(atl.angemeldeteDatenidentifikation) alle Daten benötigten Daten. |
private boolean |
isSpecialTreatedApplicationObject(T_A_HighLevelCommunication unknownObject)
Prüft, ob das übergebene Objekt gleich dem Objekt ist, das die Applikation des DaV darstellt, die sich selbst beim DaV anmeldet oder aber die Konfiguration. |
private void |
publishConnectionChanged(T_A_HighLevelCommunication application)
Wird aufgerufen, wenn eine Applikation einen Datenidentifikation an/abmeldet. |
void |
run()
|
private void |
sendApplicationTelegramRuntimeUpdate()
Verschickt ein Telegramm, das für alle angemeldeten Applikationen die Telegrammlaufzeit vom DaV zur Applikation enthält. |
private void |
sendApplicationUpdate()
Es wird ein Datensatz verschickt, der alle Applikationen enthält, die gerade am DaV angemeldet sind. |
private void |
sendDataDescriptionUpdate(T_A_HighLevelCommunication application)
Verschickt einen Datensatz mit der ATG "atg.angemeldeteDatenidentifikationen". |
private void |
subscribeDataDescriptionSource(T_A_HighLevelCommunication newApplication)
Meldet für eine neue Applikation eine Quelle an, die Datensätze vom mit der ATG "atg.angemeldeteDatenidentifikationen" verschickt. |
private void |
unsubscribeDataDescriptionSource(T_A_HighLevelCommunication removedApplication)
Meldet die Datensätze der ATG "atg.angemeldeteDatenidentifikationen" wieder ab und entfernt die Objekte aus allen Datenstrukturen. |
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 |
---|
private final List<ConnectionsManager.ApplicationConnection> _application
private final SystemObject _davObject
private final ConnectionsManager.SourceApplicationUpdater _applicationUpdater
private final DataDescription _applicationUpdaterDataDescription
private final ConnectionsManager.SourceApplicationUpdater _applicationRuntime
private final DataDescription _applicationRuntimeDataDescription
private final DataDescription _applicationDataDescriptionDD
private final Timer _timer
private final Map<T_A_HighLevelCommunication,TimerTask> _threadsForDataIdentificationUpdates
null
zurückgegeben.
private final Map<T_A_HighLevelCommunication,ConnectionsManager.SourceApplicationUpdater> _subcribedDataIdentifications
Constructor Detail |
---|
public ConnectionsManager.ApplicationStatusUpdater()
Method Detail |
---|
private boolean isSpecialTreatedApplicationObject(T_A_HighLevelCommunication unknownObject)
true
zurück gegeben.
unknownObject
- Objekt, das vielleicht das DaV-Objekt darstellen könnte.
private void sendApplicationUpdate()
private void sendApplicationTelegramRuntimeUpdate()
private void sendDataDescriptionUpdate(T_A_HighLevelCommunication application)
application
- Applikation, deren angemeldete Datenidentifiaktionen propagiert werden sollen.private void inscribeDataDescription(Data data, BaseSubscriptionInfo baseSubscriptionInfo, String role)
data
- Datensatz (atl.angemeldeteDatenidentifikation)baseSubscriptionInfo
- Enthält das SystemObject(Id), die verwendete ATGV (Id) und die Simulationsvarianterole
- Verwendete Rolle, siehe auch att.rolleAnmeldung. Zulässige Werte: Quelle, Sender, Senke, Empfängerprivate void createPeriodicUpdateTask()
private void subscribeDataDescriptionSource(T_A_HighLevelCommunication newApplication)
newApplication
- enthält alle Daten zum anmelden.private void unsubscribeDataDescriptionSource(T_A_HighLevelCommunication removedApplication)
removedApplication
- Objekt, deren Quellenanmeldung zurückgenommen werden soll.public void run()
run
in interface Runnable
run
in class Thread
public void applicationAdded(T_A_HighLevelCommunication applicationConnection)
applicationConnection
- Neue Applikationpublic void applicationRemoved(T_A_HighLevelCommunication applicationConnection)
applicationConnection
- Applikation, die entfernt wurdepublic void applicationSubscribedNewConnection(T_A_HighLevelCommunication application)
application
- Applikation, die neue Daten anmeldet.public void applicationUnsubscribeConnection(T_A_HighLevelCommunication application)
application
- Applikation, die eine Datenidentifikation abmeldet.private void publishConnectionChanged(T_A_HighLevelCommunication application)
application
- Applikation, die neue Daten an oder abmeldet.
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |