public class RedirectionInfo
extends java.lang.Object
Klasse zur Verwaltung der Weiterleitungsinformationen.
Modifier and Type | Field and Description |
---|---|
private static Debug |
_debug |
(package private) java.util.Map<NodeFgPair,java.util.Map<Osi7SingleTelegramConverter,java.util.Set<java.lang.Integer>>> |
_receiveEntries
Map, wobei der Schlüssel die Knotennummer des Absenders ist.
|
(package private) java.util.Set<NodeFgPair> |
_receiveNoNormalProcessing
Set, in der alle Knoten - Funktionsgruppen - Kombinationen aufgeführt sind, die nicht “normal” behandelt werden sollen.
|
(package private) java.util.Map<NodeFgPair,java.util.Map<Osi7SingleTelegramConverter,java.util.Set<java.lang.Integer>>> |
_sendEntries
Map, wobei der Schlüssel die Knotennummer des Empfängers ist.
|
(package private) java.util.Set<NodeFgPair> |
_sendNotToPrimalTarget
Set, in der alle Knoten - Funktionsgruppen - Kombinationen aufgeführt sind, die nicht an des ursprüngliche Ziel geschickt werden sollen.
|
Constructor and Description |
---|
RedirectionInfo()
Konstruktor.
|
Modifier and Type | Method and Description |
---|---|
private void |
addEntry(java.util.Map<NodeFgPair,java.util.Map<Osi7SingleTelegramConverter,java.util.Set<java.lang.Integer>>> entries,
NodeFgPair nodeFgPair,
int[] destinations,
Osi7SingleTelegramConverter converter)
Ergänzt einen neuen Eintrag in der übergebenen Map.
|
(package private) void |
addReceiveEntry(int knr,
int fg,
boolean normalProcessing,
int[] destinations,
Osi7SingleTelegramConverter converter)
Fügt einen Eintrag in die Map zur Behandlung der empfangenen Telegramme hinzu.
|
void |
addSendEntry(java.lang.Integer knr,
java.lang.Integer fg,
boolean normalProcessing,
int[] destinations,
Osi7SingleTelegramConverter converter)
Fügt einen Eintrag in die Map zur Behandlung der zu sendenden Telegramme hinzu.
|
private java.lang.String |
getLocationDistance(int nodeNumber)
Umrechnung der Knotennummer in Location und Distance
|
java.util.Map<Osi7SingleTelegramConverter,java.util.Set<java.lang.Integer>> |
getReceiveRedirectionMap(int knr,
int fg)
Gibt die Map zur Weiterleitung von empfangenden Telegrammen zurück.
|
java.util.Map<Osi7SingleTelegramConverter,java.util.Set<java.lang.Integer>> |
getSendRedirectionMap(int knr,
int fg)
Gibt die Map zur Weiterleitung von zu sendenen Telegrammen zurück.
|
(package private) boolean |
normalProcessing(java.util.Set<NodeFgPair> nonNormalProcessing,
int knr,
int fg)
Prüfung, ob für ein Set von Knoten-Funktionsgruppen Paaren bei einer bestimmten Kombination die “normale Behandlung” durchgeführt werden soll oder nicht.
|
void |
printAllEntries()
Gibt alle gespeicherten Einträge aus.
|
private java.lang.String |
printDestinations(java.util.Set<java.lang.Integer> destinations)
Gibt ein Set von Knotennummern als String zurück.
|
private void |
printEntries(java.util.Map<NodeFgPair,java.util.Map<Osi7SingleTelegramConverter,java.util.Set<java.lang.Integer>>> entries,
java.util.Set<NodeFgPair> noNormalProcessing)
Ausgabe der Informationen zu den Empfangs oder Sendeinträgen.
|
boolean |
receivedTelegramNormalProcessing(int knr,
int fg)
Gibt für ein Paar von Knotennummer des Senders und Funktionsgruppe an, ob Telegramme dieser Kombination auch lokal verarbeitet werden sollen (Rückgabe true)
|
boolean |
sendTelegramToPrimalTarget(int knr,
int fg)
Gibt für ein Paar von Knotennummer des Senders und Funktionsgruppe an, ob Telegramme dieser Kombination auch lokal verarbeitet werden sollen (Rückgabe true)
|
java.util.Map<NodeFgPair,java.util.Map<Osi7SingleTelegramConverter,java.util.Set<java.lang.Integer>>> _receiveEntries
Map, wobei der Schlüssel die Knotennummer des Absenders ist. Als Wert wird in einer Struktur festgehalten, ob für eine bestimmte FG das Telegramm an weitere Zielknoten versendet werden muss und ob weiterhin die lokale Verarbeitung des Telegramms durchgeführt werden muss.
java.util.Set<NodeFgPair> _receiveNoNormalProcessing
Set, in der alle Knoten - Funktionsgruppen - Kombinationen aufgeführt sind, die nicht “normal” behandelt werden sollen.
java.util.Map<NodeFgPair,java.util.Map<Osi7SingleTelegramConverter,java.util.Set<java.lang.Integer>>> _sendEntries
Map, wobei der Schlüssel die Knotennummer des Empfängers ist. Als Wert wird in einer Struktur festgehalten, ob für eine bestimmte FG das Telegramm an weitere Zielknoten versendet werden muss und ob weiterhin die lokale Verarbeitung des Telegramms durchgeführt werden muss.
java.util.Set<NodeFgPair> _sendNotToPrimalTarget
Set, in der alle Knoten - Funktionsgruppen - Kombinationen aufgeführt sind, die nicht an des ursprüngliche Ziel geschickt werden sollen.
private static final Debug _debug
void addReceiveEntry(int knr, int fg, boolean normalProcessing, int[] destinations, Osi7SingleTelegramConverter converter)
Fügt einen Eintrag in die Map zur Behandlung der empfangenen Telegramme hinzu.
knr
- Knotennummer, für den der Eintrag giltfg
- Funktionsgruppe, wenn Null, dann zu allen FunktionsgruppennormalProcessing
- Ob auch zum Originalziel gesendet wird (true). Bei false wird dies unterdrückt.destinations
- Ziele, an die gesendet werden sollconverter
- OSI7 Telegrammkonverter (falls vorhanden) sonst null.public java.util.Map<Osi7SingleTelegramConverter,java.util.Set<java.lang.Integer>> getReceiveRedirectionMap(int knr, int fg)
Gibt die Map zur Weiterleitung von empfangenden Telegrammen zurück. Wenn keine Map für die vorgegebene Kombination von Knotennummer und FG vorhanden ist, wird null zurückgegeben. Schlüssel der Map ist der zu verwendende OSI7-Telegramm-Konverter. Der Schlüssel null besagt, dass hier vor der Weiterleitung keine Konvertierung auf OSI7 Ebene erfolgt. Als Wert enthält die Map eine Set der Ziele, zu denen das Telegramm weitergeleitet werden soll.
knr
- Knotennummerfg
- Funktionsgruppepublic boolean receivedTelegramNormalProcessing(int knr, int fg)
Gibt für ein Paar von Knotennummer des Senders und Funktionsgruppe an, ob Telegramme dieser Kombination auch lokal verarbeitet werden sollen (Rückgabe true)
knr
- Knotennummerfg
- Funktionsgruppeboolean normalProcessing(java.util.Set<NodeFgPair> nonNormalProcessing, int knr, int fg)
Prüfung, ob für ein Set von Knoten-Funktionsgruppen Paaren bei einer bestimmten Kombination die “normale Behandlung” durchgeführt werden soll oder nicht.
nonNormalProcessing
- Set der Ausnahmen (die nicht normal behandelt werden sollen)knr
- Knotennummerfg
- Funktionsgruppepublic void addSendEntry(java.lang.Integer knr, java.lang.Integer fg, boolean normalProcessing, int[] destinations, Osi7SingleTelegramConverter converter)
Fügt einen Eintrag in die Map zur Behandlung der zu sendenden Telegramme hinzu.
knr
- Knotennummer, für den der Eintrag giltfg
- Funktionsgruppe, wenn Null, dann zu allen FunktionsgruppennormalProcessing
- Ob auch zum Originalziel gesendet wird (true). Bei false wird dies unterdrückt.destinations
- Ziele, an die gesendet werden sollconverter
- Telegrammkonverter auf OSI7-Ebene. Wenn keine Konvertierung erfolgen soll wird null angegeben.public java.util.Map<Osi7SingleTelegramConverter,java.util.Set<java.lang.Integer>> getSendRedirectionMap(int knr, int fg)
Gibt die Map zur Weiterleitung von zu sendenen Telegrammen zurück. Wenn keine Map für die vorgegebene Kombination von Knotennummer und FG vorhanden ist, wird null zurückgegeben. Schlüssel der Map ist der zu verwendende OSI7-Telegramm-Konverter. Der Schlüssel null besagt, dass hier vor der Weiterleitung keine Konvertierung auf OSI7 Ebene erfolgt. Als Wert enthält die Map eine Set der Ziele, zu denen das Telegramm weitergeleitet werden soll.
knr
- Knotennummerfg
- Funktionsgruppepublic boolean sendTelegramToPrimalTarget(int knr, int fg)
Gibt für ein Paar von Knotennummer des Senders und Funktionsgruppe an, ob Telegramme dieser Kombination auch lokal verarbeitet werden sollen (Rückgabe true)
knr
- Knotennummerfg
- Funktionsgruppeprivate void addEntry(java.util.Map<NodeFgPair,java.util.Map<Osi7SingleTelegramConverter,java.util.Set<java.lang.Integer>>> entries, NodeFgPair nodeFgPair, int[] destinations, Osi7SingleTelegramConverter converter)
Ergänzt einen neuen Eintrag in der übergebenen Map.
entries
- Map, die ergänzt werden soll.nodeFgPair
- Knoten-Funktionsgruppen Paar.destinations
- Zielknoten, an die weitergeleitet werden soll.converter
- OSI7-Konverter, der verwendet werden soll (bei null keiner).public void printAllEntries()
Gibt alle gespeicherten Einträge aus.
private void printEntries(java.util.Map<NodeFgPair,java.util.Map<Osi7SingleTelegramConverter,java.util.Set<java.lang.Integer>>> entries, java.util.Set<NodeFgPair> noNormalProcessing)
Ausgabe der Informationen zu den Empfangs oder Sendeinträgen.
entries
- Map, in der für die Knotennummer/Funktionsgruppenpaare Maps für die Maps von Telegrammkonvertern und Zielen, an die Telegramme weitergeleitet werden sollen, aufgeführt sindnoNormalProcessing
- Set, in dem die Knotennummer/Funktionsgruppenpaare aufgeführt sind, für die keine normale Behandlung erfolgen soll.private java.lang.String printDestinations(java.util.Set<java.lang.Integer> destinations)
Gibt ein Set von Knotennummern als String zurück.
destinations
- Knotennummernprivate java.lang.String getLocationDistance(int nodeNumber)
Umrechnung der Knotennummer in Location und Distance