Class SatzXml

All Implemented Interfaces:
Cloneable
Direct Known Subclasses:
MyUnfallDatensatz

public class SatzXml extends Datensatz
Im Gegensatz zum SOP-Ansatz und zur SatzX-Klasse wird hier eine XML- Beschreibung verwendet, um die einzelnen Teildatensaetze mit ihren Feldern zu bestimmen. Da die XML-Datei mit der Komplett-Beschreibung relativ gross ist (ca. 7 MB), verwenden wir hier nicht einen DOM-Parser. Und auch keinen XPath-Ansatz.
Since:
1.0 (30.07.2014)
Author:
oliver (oliver.boehm@gmail.com)
  • Constructor Details

    • SatzXml

      public SatzXml(XMLEventReader parser) throws XMLStreamException
      Instantiiert einen neuen Satz.
      Parameters:
      parser - XML-Event-Parser
      Throws:
      XMLStreamException - the XML stream exception
    • SatzXml

      public SatzXml(XMLEventReader parser, StartElement element, Config config) throws XMLStreamException
      Instantiiert einen neuen Satz.
      Parameters:
      parser - XML-Event-Parser
      element - the element
      config - Konfiguration
      Throws:
      XMLStreamException - the XML stream exception
    • SatzXml

      public SatzXml(Datensatz orig)
      Dies ist der Copy-Constructor, mit dem man einen bestehenden Satz kopieren kann.
      Parameters:
      orig - der originale Satz
  • Method Details

    • setGdvSatzartName

      protected void setGdvSatzartName(String string)
      Setzen des Namens einer Gdv-Satzart.

      Der string wird mit dem Trennzeichen '.' an den bisherigen Inhalt angehaengt.

      Overrides:
      setGdvSatzartName in class Satz
      Parameters:
      string - Satzart-Name
    • setFelder

      public void setFelder(Map<String,FeldXml> felder)
      Verwendet die uebergebene Map, um die Teildatensaetze um fehlende Informationen zu ergaenzen.
      Parameters:
      felder - the felder
    • getSupportedSatzTypen

      public List<SatzTyp> getSupportedSatzTypen()
      Liefert eine Liste der unterstuetzten Satz-Typen. Dies ist vor allem fuer Satz 220 Sparte 10 von Bedeutung, die verschienden Wagnisarten unterstuetzen koennen.
      Returns:
      the supported satz typen
    • of

      public static SatzXml of(File file) throws IOException, XMLStreamException
      Hier kann man mithilfe einer XML-Beschreibung einen Satz generieren. Diese Methode dient dazu, um die Notwendigkeit der Enum-Beschreibung weiter zu reduzieren.
      Parameters:
      file - Datei mit XML-Beschreibung
      Returns:
      einen Satz gemaess der XML-Beschreibung
      Throws:
      IOException - the io exception
      XMLStreamException - the xml stream exception
      Since:
      5.0
    • of

      public static SatzXml of(String resource) throws IOException, XMLStreamException
      Hier kann man mithile einer XML-Beschreibung einen Satz generieren. Diese Methode dient dazu, um die Notwendigkeit der Enum-Beschreibung weiter zu reduzieren.
      Parameters:
      resource - Classpath-Resource mit XML-Beschreibung
      Returns:
      einen Satz gemaess der XML-Beschreibung
      Throws:
      IOException - the io exception
      XMLStreamException - the xml stream exception
      Since:
      5.0
    • of

      public static SatzXml of(URI resource) throws IOException, XMLStreamException
      Im Gegensatz zu of(String) und of(File) kann hier eine beliebige URI als Parameter uebergeben werden. Allerdings werden momentan nur "classpath:" und "file:" als Protokoll unterstuetzt.
      Parameters:
      resource - URI der Resource (z.B. "classpath:/mein/satz.xml")
      Returns:
      einen Satz gemaess der XML-Beschreibung
      Throws:
      IOException - the io exception
      XMLStreamException - the xml stream exception
      Since:
      6.1