public class TlsNetworkLayer extends java.lang.Object implements NetworkLayer, NetworkLayerSender
| Modifier and Type | Field and Description |
|---|---|
int |
_localDeviceAddress |
PRIORITY_CLASS_1, PRIORITY_CLASS_2| Constructor and Description |
|---|
TlsNetworkLayer() |
| Modifier and Type | Method and Description |
|---|---|
void |
addEventListener(NetworkLayerListener networkLayerListener)
Meldet einen Empfänger für Ereignis der Netzebene an.
|
void |
completeInitialization()
Suchalgorithmus zur Ermittlung aller möglichen Routen zu anderen Geräten.
|
DataLinkLayerListener |
getDataLinkLayerListener() |
int[] |
getJobNummernBereichFuerLink(int device) |
int[] |
getRoutedRemoteDevices(int device)
Bestimmt die Geräte, die über das angegebene Gerät erreichbar sind.
|
void |
handleDataLinkLayerEvent(DataLinkLayerEvent event)
Wird aufgerufen, wenn ein Daten-Telegramm von der Osi2 Schnittstelle empfangen wird.
|
boolean |
isReducingToControlByte(DataLinkLayer.Link link)
Es wird geprüft ob die Option auf ReduzierungAufSteuerbyte aktiviert ist, d.h. der Osi3-Header wird auf das Steuerbyte reduziert
(Osi3-Routinginformationen entfernt) Falls keine Einstellung dafür vorhanden ist, wird das Telegram normal (mit Osi3-Routinginformationen)
weitergeleitet.
|
void |
removeEventListener(NetworkLayerListener networkLayerListener)
Meldet einen angemeldeten Empfänger für Ereignisse der Netzebene wieder ab.
|
void |
sendData(int destination,
byte[] data,
boolean longTelegram)
Sendet ein Telegramm mit hoher Priorität an ein vorgegebenes Zielgerät.
|
void |
sendData(int destination,
int priority,
byte[] data,
boolean longTelegram)
Methode zum Versenden von Telegrammen mit vorgegebener Priorität
|
void |
sendWithoutRedirection(int destination,
int priority,
byte[] data,
boolean longTelegram) |
void |
setTelegramProcessor(TelegramProcessor telegramProcessor) |
void |
start()
Startet die Verarbeitung von Telegrammen
|
public void addEventListener(NetworkLayerListener networkLayerListener)
NetworkLayeraddEventListener in interface NetworkLayernetworkLayerListener - Anzumeldender Empfänger, der die Verarbeitung von empfangenen Telegrammen und Statusänderungen von Verbindungen übernimmt.public void removeEventListener(NetworkLayerListener networkLayerListener)
NetworkLayerremoveEventListener in interface NetworkLayernetworkLayerListener - Abzumeldender Empfängerpublic int[] getRoutedRemoteDevices(int device)
NetworkLayergetRoutedRemoteDevices in interface NetworkLayerdevice - Gerät zu dem die darüber erreichbaren Geräte ermittelt werden sollen.public void sendData(int destination,
byte[] data,
boolean longTelegram)
throws DestinationUnreachableException
NetworkLayersendData in interface NetworkLayerdestination - Knotennummer des Geräts an das das Telegramm gesendet werden soll.data - Nutzdaten aus Sicht des NetworkLayers (i.a. ein OSI-7 Telegrammblock).longTelegram - true = Langtelegramm, das nicht der TLS Definition entspricht; false = Telegramm, das der TLS Definition entsprichtDestinationUnreachableException - Wenn das angegebene Ziel nicht erreichbar ist.public void sendData(int destination,
int priority,
byte[] data,
boolean longTelegram)
throws DestinationUnreachableException
sendData in interface NetworkLayerdestination - Knotennummer, an die gesendet werden sollpriority - Priorität, unter der das Telegramm versendet werden solldata - Bytearray Telegrammdaten OSI7longTelegram - true = Es soll ein Langtelegramm verschickt werden, das nicht der TLS-Norm entsprichtDestinationUnreachableException - Exceptionpublic void sendWithoutRedirection(int destination,
int priority,
byte[] data,
boolean longTelegram)
throws DestinationUnreachableException
sendWithoutRedirection in interface NetworkLayerSenderDestinationUnreachableExceptionpublic void start()
NetworkLayerstart in interface NetworkLayerpublic DataLinkLayerListener getDataLinkLayerListener()
public boolean isReducingToControlByte(DataLinkLayer.Link link)
link - Verbindung, von der die Einstellungen bezogen werdenfalse: Osi3-Adressen werden nicht ignoriert true: Osi3-Adressen werden ignoriert und werden bis auf das
Steuerbyte
entfernt.public void handleDataLinkLayerEvent(DataLinkLayerEvent event)
Wenn das Telegramm keine Informationen über den Verbindungdstatus beinhaltet, wird das Telegram anhand des Osi3-Header-Information (Steuerbyte und Routinginformationen) ausgewertet und weitergeleitet.
event - Beinhaltet das Telegram und die verwendeten Schnittstellen-Informationen.public void completeInitialization()
public void setTelegramProcessor(TelegramProcessor telegramProcessor)
public int[] getJobNummernBereichFuerLink(int device)