java.lang.Object
de.tillmenke.studium.informatik.masterarbeit.sachverhalt.Handlungssatz
All Implemented Interfaces:
SachverhaltselementEditable, Invalidator, Sachverhaltselement
Direct Known Subclasses:
Kommunikationsakt

public class Handlungssatz extends Object implements Sachverhaltselement, SachverhaltselementEditable, Invalidator
Objekt, welches eine Handlung in Form eines Satzes (Subjekt, Prädikat, ggf. Objekt, ggf. Attribute) speichert
Author:
Till Menke
  • Constructor Details

    • Handlungssatz

      public Handlungssatz()
  • Method Details

    • registerListener

      public void registerListener(Invalidator l)
      Description copied from interface: Sachverhaltselement
      informiert das Sachverhaltselement darüber, dass bei Änderung Invalidatoren aufgerufen werden müssen; kann in der Implementierung leer sein, wenn ein entsprechender Mechanismus auf Ebene einzelner Getter umgesetzt wird
      Specified by:
      registerListener in interface Sachverhaltselement
      Parameters:
      l - Ein Objekt mit Referenz auf die Invalidatormethode
    • getText

      public String getText()
      Description copied from interface: Sachverhaltselement
      gibt eine Zeichenkette für die Darstellung des Sachverhaltselements zurück
      Specified by:
      getText in interface Sachverhaltselement
      Returns:
      Zeichenkette, welche das Sachverhaltselement darstellt
    • getText

      public String getText(Handlungssatz.Zeitform zeitform)
      gibt den Handlungssatz als sprachlichen Satz zurück
      Parameters:
      zeitform - die zu verwendende Zeitform
      Returns:
      Handlungssatz als Zeichenkette
    • getSubjekt

      public Personendaten getSubjekt()
      Returns:
      Subjekt
    • setSubjekt

      public void setSubjekt(Personendaten subjekt)
      Parameters:
      subjekt - Subjekt
    • getPrädikat

      public Prädikat getPrädikat()
      Returns:
      Prädikat
    • setPrädikat

      public void setPrädikat(Prädikat prädikat)
      Parameters:
      prädikat - Prädikat
    • getObjekt

      Returns:
      Objekt
      Throws:
      PrädikatNichtObjektfähigException - wenn Prädikat des Satzes kein Objekt im Satz unterstützt
    • setObjekt

      public void setObjekt(Personendaten objekt) throws PrädikatNichtObjektfähigException
      Parameters:
      objekt - Objekt
      Throws:
      PrädikatNichtObjektfähigException - wenn Prädikat des Satzes kein Objekt im Satz unterstützt
    • isAttributZulässig

      public boolean isAttributZulässig(Class<?> a)
      prüft, ob ein Attribut für das Prädikat dieses Handlungssatzes zulässig ist
      Parameters:
      a - Klasse des zu überprüfenden Attributobjekts
      Returns:
      false, wenn die zu prüfende Klasse nicht in der Musterliste der aktuellen Prädikats steht, also für dieses nicht zulässig ist, sonst true
    • isAttributVorhanden

      public boolean isAttributVorhanden(Class<?> a2)
      prüft, ob ein Attribut bereits vorhanden ist
      Parameters:
      a2 - Klasse des zu überprüfenden Attributobjekts
      Returns:
      true, wenn schon ein Objekt der angegebenen Klasse vorhanden ist, sonst false
    • getAttribut

      public <E extends Attribut> E getAttribut(Class<E> typ) throws AttributNichtVorhandenException, AttributNichtZulässigException
      liefert das Attribut vom angegebenen Typ zurück
      Parameters:
      typ - Objekt, welches den angefragten Typ repräsentiert
      Returns:
      Attribut
      Throws:
      AttributNichtZulässigException - wenn das abzurufende Objekt nicht in der Musterliste der aktuellen Prädikats steht, also für dieses nicht zulässig ist
      AttributNichtVorhandenException - wenn die Liste ein Attribut des angeforderten Typs nicht enthält
    • addAttribut

      public boolean addAttribut(Attribut a) throws AttributNichtZulässigException
      fügt das angegebene Attributobjekt hinzu, falls noch kein Objekt desselben Typs vorhanden ist
      Parameters:
      a - hinzuzufügendes Attributobjekt
      Returns:
      Wahrheitswert, welcher den Operationserfolg angibt
      Throws:
      AttributNichtZulässigException - wenn das hinzuzufügende Objekt nicht in der Musterliste der aktuellen Prädikats steht, also für dieses nicht zulässig ist, oder bereits vorhanden ist
    • removeAttribut

      public boolean removeAttribut(Attribut a)
      Attribut entfernen
      Parameters:
      a - das zu entfernende Attribut
      Returns:
      Wahrheitswert, welcher den Operationserfolg angibt
    • getHandlungszeit

      public ZonedDateTime getHandlungszeit()
      Returns:
      Handlungszeit
    • setHandlungszeit

      public void setHandlungszeit(ZonedDateTime handlungszeit)
      Parameters:
      handlungszeit - Handlungszeit
    • getNebensatzIndem

      public String getNebensatzIndem()
      erzeugt einen Nebensatz, welcher im Präteritum die Handlung beschreibt (typischerweise verwendet in Obersätzen einer handlungsbezogenen Prüfung)
      Returns:
      Nebensatz, der mit ", indem " beginnt
    • getEditor

      Specified by:
      getEditor in interface SachverhaltselementEditable
      Returns:
      AWT-Panel, welches ermöglicht, Werte des Objektes zu verändern und eine Funktion zum externen aktualisieren besitzt
    • getEditor

      public SachverhaltselementEditable.Editor getEditor(Sachverhalt sachverhalt, PersonendatenListe personenwahl, List<Prädikat> prädikatwahl)
      Parameters:
      personenwahl - Die Liste der Personen, welche in Auswahlfeldern angezeigt werden
      prädikatwahl - Die Liste der Prädikate, welche in Auswahlfeldern angezeigt werden
      sachverhalt - Referenz auf das Sachverhaltsobjekt, welches für die Erstellung der Komponenten verwendet wird, sofern dies erforderlich ist
      Returns:
      AWT-Panel, welches ermöglicht, Werte des Objekts zu verändern
    • invalidate

      public void invalidate()
      Description copied from interface: Invalidator
      fordert den Empfänger auf, den betroffenen Teil zu invalidieren
      Specified by:
      invalidate in interface Invalidator