Package de.bsvrz.dav.dav.main
Class ConnectionMap<T extends ServerHighLevelCommunication>
java.lang.Object
de.bsvrz.dav.dav.main.ConnectionMap<T>
- Direct Known Subclasses:
ApplicationConnectionMap
,TransmitterConnectionMap
Eine Map von ID zu Verbindung
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
addUnsortedConnection
(T communication) Fügt eine Verbindung hinzu, deren ID unbekannt istvoid
clear()
Gibt alle bekannten (typischerweise aktiven) Verbindungen zurück.getConnection
(long id) Gibt die Verbindung zum Datenverteiler mit der angegebenen ID zurückvoid
putConnection
(long id, T communication) Merkt sich die angegebene Verbindung unter der angegebenen ID.boolean
removeConnection
(long id, T communication) Entfernt eine Verbindung (zum Beispiel weil diese geschlossen wurde)boolean
removeConnection
(T communication) Entfernt eine Verbindung (zum Beispiel weil diese geschlossen wurde)toString()
-
Constructor Details
-
ConnectionMap
public ConnectionMap()
-
-
Method Details
-
getConnection
Gibt die Verbindung zum Datenverteiler mit der angegebenen ID zurück- Parameters:
id
- Datenverteiler-ID- Returns:
- die Verbindung zum Datenverteiler mit der angegebenen ID, oder
null
falls nicht vorhanden
-
addUnsortedConnection
Fügt eine Verbindung hinzu, deren ID unbekannt ist- Parameters:
communication
- Verbindung
-
putConnection
Merkt sich die angegebene Verbindung unter der angegebenen ID. Die ID wird separat übergeben, daServerHighLevelCommunication.getId()
die verbundene ID erst zurückliefert, wenn die Authentifizierung ausreichend abgeschlossen wurde. Für ausgehende Verbindungen wird der Datenverteiler mit der erwarteten ID sofort eingetragen, damit die Verbindung immer der konfigurierten Verbindung zugeordnet werden kann. (Sollte die ID später nicht der erwarteten ID entsprechen, muss das OutgoingTransmitterConnections.updateId(T_T_HighLevelCommunication) korrigiert werden}. Besteht berets eine Verbindung mit dieser ID, wird diese überschrieben.- Parameters:
id
- IDcommunication
- Verbindung
-
removeConnection
Entfernt eine Verbindung (zum Beispiel weil diese geschlossen wurde)- Parameters:
id
- ID der Verbindungcommunication
- zu entfernende Verbindung unter dieser ID (wenn die gespeicherte Verbindung unter dieser ID nicht dem parameter entspricht, tut diese Methode nichts. Damit wird verhindert, dass die falsche Verbindung entfernt wird)- Returns:
- true falls erfolgreich entfernt, sonst false
-
removeConnection
Entfernt eine Verbindung (zum Beispiel weil diese geschlossen wurde)- Parameters:
communication
- zu entfernende Verbindung unter dieser ID (wenn die gespeicherte Verbindung unter dieser ID nicht dem parameter entspricht, tut diese Methode nichts. Damit wird verhindert, dass die falsche Verbindung entfernt wird)- Returns:
- true falls erfolgreich entfernt, sonst false
-
getAllConnections
Gibt alle bekannten (typischerweise aktiven) Verbindungen zurück. Diese Methode erzeugt einen nicht änderbaren, Schnappschuss über den iteriert werden kann, ohne dasConcurrentModificationException
s auftreten können.- Returns:
- alle aktiven Verbindungen
-
toString
-
clear
public void clear()
-