Class Osi7Telegram

java.lang.Object
de.bsvrz.kex.tls.osi7.Osi7Telegram

public class Osi7Telegram
extends java.lang.Object
Stellt ein Stellvertreterobjekt für ein Osi7Telegramm zum einfachen, lesenden Zugriff auf die einzelnen Bestandteile (Einzeltelegramme, De-Blöcke) zur Verfügung.
  • Constructor Summary

    Constructors 
    Constructor Description
    Osi7Telegram​(int sender, byte[] tlsData, boolean longtelegram)
    Erzeugt eine Instanz eines Osi7Telegramms aus dem übergebenen Bytearray.
  • Method Summary

    Modifier and Type Method Description
    int getCountSingleTelegram()
    Gibt die Anzahl der Einzeltelgramme im Osi7Telegramm zurück.
    int getOsi7Adress()
    Liefert die KnotenNummer des Osi7Telegramms in Dezimaldarstellung (0..16777215).
    java.lang.String getOsi7AdressHex()
    Liefert die KnotenNummer des Osi7Telegramms als Hex-Darstellung (0..ffffff).
    java.lang.String getOsi7AdressLocCode()
    Liefert die KnotenNummer des Osi7Telegramms in der Darstellung "LocationCode-Distanz" (0-0 .. 65535-255).
    int getSender()
    Gibt den Absender des Telegramms zurück.
    SingleTelegram[] getSingleTelegram()
    Gibt die Einzeltelgramme des Osi7Telegramms zurück.
    java.lang.String toString()
    Liefert die Darstellung eines Osi7Telegramms.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Constructor Details

    • Osi7Telegram

      public Osi7Telegram​(int sender, byte[] tlsData, boolean longtelegram) throws IllegalOsi7TelegramStructureException
      Erzeugt eine Instanz eines Osi7Telegramms aus dem übergebenen Bytearray. Zerlegt das Osi7Telegramm zudem in seine Einzeltelegramme (SingleTelegram) und DE-Blöcke DeBlock
      Parameters:
      sender - Absender des Telegramms
      tlsData - Byteblock mit den Daten eines empfangenen Osi7Telegramms gemäß TLS.
      longtelegram - true = Das Telegramm ist ein spezielles Langtelegramm, das größer ist als normale Langtelegramm. Ausserdem ist nur ein Einzeltelegramm vorhanden und das Byte für die "Anzahl Einzeltelegramme" und das Byte "Länge Einzeltelegramme" fehlt; false = Normale Telegramme
      Throws:
      IllegalOsi7TelegramStructureException - wenn der Telegrammaufbau nicht den formalen Anforderungen der TLS genügt.
  • Method Details

    • getCountSingleTelegram

      public int getCountSingleTelegram()
      Gibt die Anzahl der Einzeltelgramme im Osi7Telegramm zurück.
      Returns:
      Anzahl der Einzeltelegramme (1..46) im Osi7Telegramm.
    • getOsi7Adress

      public int getOsi7Adress()
      Liefert die KnotenNummer des Osi7Telegramms in Dezimaldarstellung (0..16777215).
      Returns:
      KnotenNummer des Osi7Telegramms in Dezimaldarstellung (0..16777215)
    • getOsi7AdressHex

      public java.lang.String getOsi7AdressHex()
      Liefert die KnotenNummer des Osi7Telegramms als Hex-Darstellung (0..ffffff).
      Returns:
      KnotenNummer des Osi7Telegramms als Hex-Darstellung (0..ffffff).
    • getOsi7AdressLocCode

      public java.lang.String getOsi7AdressLocCode()
      Liefert die KnotenNummer des Osi7Telegramms in der Darstellung "LocationCode-Distanz" (0-0 .. 65535-255).
      Returns:
      KnotenNummer des Osi7Telegramms in der Darstellung "LocationCode-Distanz" (0-0 .. 65535-255).
    • getSender

      public int getSender()
      Gibt den Absender des Telegramms zurück.
      Returns:
      Absender des Telegramms.
    • getSingleTelegram

      public SingleTelegram[] getSingleTelegram()
      Gibt die Einzeltelgramme des Osi7Telegramms zurück.
      Returns:
      Einzeltelegramme des Osi7Telegramms.
    • toString

      public java.lang.String toString()
      Liefert die Darstellung eines Osi7Telegramms. Beispielausgabe:
      Overrides:
      toString in class java.lang.Object
      Returns:
      Osi7Telegramm dargestellt mit Basisinformationen und Gliederung in EinzelTelegramme und De-Blöcke.