Class UdaFehler

  • All Implemented Interfaces:
    Struktur, Kopierbar, java.io.Serializable
    Direct Known Subclasses:
    ArgumentFehler, ArithmetischerFehler, ContainerZugriffsFehler, DatenZugriffsFehler, Fehler, KonfigurationsFehler, ObjektZugriffsFehler, SymbolUndefiniertFehler

    public abstract class UdaFehler
    extends de.bsvrz.sys.funclib.bitctrl.interpreter.InterpreterException
    implements Struktur, Kopierbar
    Abstrakte Definition eines Fehler innerhalb des Uda-Skripts-Interpreters.
    UdaFehler sind Fehler, die durch Probleme in der Programmierung eines Uda-Skripts verursacht werden. Bei der Abarbeitung innerhalb eines Skripts werden diese Fehler-Exceptions durch die entsprechende Auswertungsfunktion einer Anweisung abgefangen und entsprechend der gültigen Fehlerbahnadlungsstrategie weitergereicht und ausgwertet.
    Die Klasse implementiert die Schnittstelle Struktur, um den Zugriff auf ihre Elemente über Namen zu ermöglichen. Folgende Elemente können abgefragt werden:
    1. typ - der Typ des Fehlers als String
    2. subtyp - der Subtyp des Fehlers als String
    3. subtypText - der Text des Subtyp des Fehlers als String
    4. zusatztext - die Meldung die dem Fehler zugeordnet ist
    5. funktion - die Funktion in der der Fehler aufgetreten ist, falls er in einer Funktion aufgetreten ist
    6. skript - die Bezeichnung des Skripts, in dem der Fehler aufgetreten ist
    7. zeile - die Zeile des Quelltextes in der die den Fehler verurschende Anweisung zu finden ist
    8. ursprünglicherFehler - der Fehler, der den Fehler ausgelöst hat, wenn es sich um einen Folgefehlerhandelt
    See Also:
    Serialized Form
    • Method Summary

      Modifier and Type Method Description
      UdaFehler getFehler()
      liefert den Fehler, der diesen Fehler ausgelöst hat, sofern es sich um einen Folgefehler handelt.
      java.lang.String getFehlerTyp()
      liefert den Typ des Fehlers als Zeichenkette.
      java.lang.String getFunktion()
      liefert den Namen der Funktion, in der der Fehler aufgetreten ist, sofern es sich um eine Funktion handelt.
      java.lang.String getMessage()
      .
      java.lang.String getSkriptName()
      liefert den Name des Skripts, in dem der Fehler aufgetreten ist.
      java.lang.Object getStrukturElement​(java.lang.String name)
      liefert das über den übergebenen Namen identifizierte Element aus dem Fehlerobjekt zurüück.
      Folgende Elemente können abgefragt werden.
      UdaFehlerSubtyp getSubTyp()
      liefert den Subtyp des Fehlers.
      UdaFehler getVorgaenger()
      liefert den Fehler, der diesen verursacht hat, wenn es sich um einen Folgefehler handelt.
      int getZeile()
      liefert die Zeile, in der der Fehler verursacht wurde.
      java.lang.String getZusatztext()
      liefert den Meldungstext, mit dem der Fehler erzeugt wurde.
      java.lang.String meldungen​(int tiefe)
      liefert die Meldungen des Fehlers und die aller Fehler, die diesen verursacht haben bis zur angegebenen Suchtiefe.
      void setFunktion​(java.lang.String name)
      setzt den Namen der Funktion, in der der Fehler aufgetreten ist, sofern es sich um eine Funktion handelt.
      void setMeldung​(java.lang.String meldung)
      setzt die Meldung des Fehlerobjekts.
      void setSkript​(java.lang.String skript)
      setzt den Name des Skripts, in dem der Fehler aufgetreten ist.
      void setStrukturElement​(java.lang.String name, java.lang.Object daten)
      die Funktion implementiert die Schnittstelle zum setzen des Wertes eines Strukturelements.
      void setVorgaenger​(UdaFehler vorgaenger)
      setzt den Fehler, der diesen verursacht.
      void setZeile​(int zeile)
      setzt die Zeile des Quelltextes des Skripts, in dem der Fehler aufgetreten ist.
      java.lang.String toString()
      liefert eine Repräsentation des Fehlers als Zeichenkette (entspricht dem einfachen Klassenname).
      • Methods inherited from class java.lang.Throwable

        addSuppressed, fillInStackTrace, getCause, getLocalizedMessage, getStackTrace, getSuppressed, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace
      • Methods inherited from class java.lang.Object

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

      • UdaFehler

        public UdaFehler()
        Standardkonstruktor.
      • UdaFehler

        public UdaFehler​(UdaFehler fehler)
        Konstruktor, der die Daten eines übergebenen Fehlerobjekts verwendet.
        Parameters:
        fehler - der ursprüngliche Fehler
      • UdaFehler

        public UdaFehler​(UdaFehlerSubtyp subtyp)
        Konstruktor mit Angabe des Untertypen.
        Parameters:
        subtyp - der Subtyp des Fehlers
      • UdaFehler

        public UdaFehler​(UdaFehlerSubtyp subtyp,
                         java.lang.String text)
        Konstruktor mit Angabe der Fehlermeldung.
        Parameters:
        subtyp - der Subtyp des Fehlers
        text - die Meldung
      • UdaFehler

        public UdaFehler​(UdaFehlerSubtyp subtyp,
                         java.lang.String text,
                         UdaFehler vorgaenger)
        Konstruktor mit Angabe von Meldungstext und Vorgängerfehler.
        Parameters:
        subtyp - der Subtyp des Fehlers
        text - die Meldung des Fehlers
        vorgaenger - der ursprüngliche Fehler
    • Method Detail

      • getFehler

        public UdaFehler getFehler()
        liefert den Fehler, der diesen Fehler ausgelöst hat, sofern es sich um einen Folgefehler handelt. Anderenfalls wird null geliefert.
        Returns:
        den Fehler oder null
      • getFehlerTyp

        public java.lang.String getFehlerTyp()
        liefert den Typ des Fehlers als Zeichenkette. Die Zeichenkette entspricht dem Name der Fehlerklasse, mit dem der Fehler innerhalb eines Uda-Skriptes erzeugt werden kann.
        Returns:
        den Name des Typs
      • getFunktion

        public java.lang.String getFunktion()
        liefert den Namen der Funktion, in der der Fehler aufgetreten ist, sofern es sich um eine Funktion handelt. Anderenfalls wird null geliefert.
        Returns:
        den Name der Funktion oder null
        See Also:
        setFunktion(String)
      • getMessage

        public java.lang.String getMessage()
        .
        Overrides:
        getMessage in class java.lang.Throwable
        See Also:
        Throwable.getMessage()
      • getSkriptName

        public java.lang.String getSkriptName()
        liefert den Name des Skripts, in dem der Fehler aufgetreten ist. Ist der Name nicht definiert, wird ein Leerstring geliefert.
        Returns:
        den Name des Skripts
      • getStrukturElement

        public java.lang.Object getStrukturElement​(java.lang.String name)
        liefert das über den übergebenen Namen identifizierte Element aus dem Fehlerobjekt zurüück.
        Folgende Elemente können abgefragt werden.
        1. typ - der Typ des Fehlers als String
        2. zusatztext - die Meldung die dem Fehler zugeordnet ist
        3. funktion - die Funktion in der der Fehler aufgetreten ist, falls er in einer Funktion aufgetreten ist
        4. skript - die Bezeichnung des Skripts, in dem der Fehler aufgetreten ist
        5. zeile - die Zeile des Quelltextes in der die den Fehler verurschende Anweisung zu finden ist
        6. ursprünglicherFehler - der Fehler, der den Fehler ausgelöst hat, wenn es sich um einen Folgefehlerhandelt
        liefert das Element des Objekts, dass mit dem übergebenen Namen spezifiziert wird..
        Specified by:
        getStrukturElement in interface Struktur
        Parameters:
        name - der Name
        Returns:
        das Objekt
        See Also:
        Struktur.getStrukturElement(java.lang.String), setStrukturElement(String, Object)
      • getSubTyp

        public UdaFehlerSubtyp getSubTyp()
        liefert den Subtyp des Fehlers.
        Returns:
        subTyp
      • getVorgaenger

        public UdaFehler getVorgaenger()
        liefert den Fehler, der diesen verursacht hat, wenn es sich um einen Folgefehler handelt.
        Returns:
        vorgaenger den vorigen Fehler
        See Also:
        setVorgaenger(UdaFehler)
      • getZeile

        public int getZeile()
        liefert die Zeile, in der der Fehler verursacht wurde. Ist die Zeile nicht bekannt, wird der Wert -1 geliefert.
        Returns:
        die Zeile oder -1.
        See Also:
        setZeile(int)
      • getZusatztext

        public java.lang.String getZusatztext()
        liefert den Meldungstext, mit dem der Fehler erzeugt wurde. Wurde kein spezieller Meldungstext übergeben, ist das Ergebnis der Funktion ein Leerstring.
        Returns:
        die Meldung
        See Also:
        setMeldung(String)
      • meldungen

        public java.lang.String meldungen​(int tiefe)
        liefert die Meldungen des Fehlers und die aller Fehler, die diesen verursacht haben bis zur angegebenen Suchtiefe.
        Parameters:
        tiefe - die Suchtiefe
        Returns:
        der verkettete Meldungstext
      • setFunktion

        public void setFunktion​(java.lang.String name)
        setzt den Namen der Funktion, in der der Fehler aufgetreten ist, sofern es sich um eine Funktion handelt.
        Parameters:
        name - der Name der Funktion
        See Also:
        getFunktion()
      • setMeldung

        public void setMeldung​(java.lang.String meldung)
        setzt die Meldung des Fehlerobjekts.
        Parameters:
        meldung - festzulegende Meldung
        See Also:
        getZusatztext()
      • setSkript

        public void setSkript​(java.lang.String skript)
        setzt den Name des Skripts, in dem der Fehler aufgetreten ist.
        Parameters:
        skript - der Name
      • setStrukturElement

        public void setStrukturElement​(java.lang.String name,
                                       java.lang.Object daten)
        die Funktion implementiert die Schnittstelle zum setzen des Wertes eines Strukturelements. Fehlerobjekte können über das Skript nicht geändert werden, deshalb wird beim Aufruf der Funktion in jedem Fall ein Obektzugriffsfehler erzeugt. setzt das Element des Objekts, dass mit dem übergebenen Namen beschrieben wird auf den übergebenen Wert..
        Specified by:
        setStrukturElement in interface Struktur
        Parameters:
        name - der Name
        daten - das Datenobjekt
        See Also:
        Struktur.setStrukturElement(java.lang.String, java.lang.Object), getStrukturElement(String)
      • setVorgaenger

        public void setVorgaenger​(UdaFehler vorgaenger)
        setzt den Fehler, der diesen verursacht.
        Parameters:
        vorgaenger - festzulegender Vorgänger
        See Also:
        getVorgaenger()
      • setZeile

        public void setZeile​(int zeile)
        setzt die Zeile des Quelltextes des Skripts, in dem der Fehler aufgetreten ist.
        Parameters:
        zeile - Festzulegender zeile
        See Also:
        getZeile()
      • toString

        public java.lang.String toString()
        liefert eine Repräsentation des Fehlers als Zeichenkette (entspricht dem einfachen Klassenname). .
        Overrides:
        toString in class java.lang.Throwable
        See Also:
        Throwable.toString()