Klasse SchuldateiKatalogManager

java.lang.Object
de.svws_nrw.schulen.v1.utils.SchuldateiKatalogManager

public class SchuldateiKatalogManager extends Object
Diese Klasse dient der Handhabung von Katalogen zur Schuldatei.
  • Konstruktordetails

    • SchuldateiKatalogManager

      public SchuldateiKatalogManager(@NotNull @NotNull String name)
      Erstellt einen neuen Katalog-Manager.
      Parameter:
      name - der Name des Katalogs
  • Methodendetails

    • getName

      @NotNull public @NotNull String getName()
      Gibt den Namen des Katalogs zurück.
      Gibt zurück:
      der Name des Katalogs
    • getEintraege

      @NotNull public @NotNull List<SchuldateiKatalogeintrag> getEintraege()
      Gibt alle Katalog-Einträge zurück
      Gibt zurück:
      die Liste mit allen Katalog-Einträgen
    • getEintraegeBySchuljahr

      @NotNull public @NotNull List<SchuldateiKatalogeintrag> getEintraegeBySchuljahr(int schuljahr)
      Gibt die Katalog-Einträge für das angegebene Schuljahr zurück
      Parameter:
      schuljahr - das Schuljahr, zu dem die Werte geliefert werden
      Gibt zurück:
      die Liste der Katalog-Einträge, die in dem Schuljahr gültig sind
    • getEintraegeByWert

      public List<SchuldateiKatalogeintrag> getEintraegeByWert(String wert)
      Gibt die Katalog-Einträge zu dem Wert zurück, sofern der Wert gültig ist. Es werden mehrere Einträge zurückgegeben, wenn für verschiedene Zeiträume entsprechende Einträge im Katalog sind.
      Parameter:
      wert - der Wert des gesuchten Katalog-Eintrags
      Gibt zurück:
      die Katalog-Einträge oder null, wenn es keinen für den Wert gibt.
    • getEintraegeByIntegerWert

      public List<SchuldateiKatalogeintrag> getEintraegeByIntegerWert(int wert)
      Gibt die Katalog-Einträge zu dem Wert zurück, sofern der Wert gültig ist.
      Parameter:
      wert - der Wert des gesuchten Katalog-Eintrags
      Gibt zurück:
      die Katalog-Einträge oder null, wenn es keinen für den Wert gibt.
    • getEintragBySchuljahrAndWert

      public SchuldateiKatalogeintrag getEintragBySchuljahrAndWert(int schuljahr, String wert)
      Gibt den Katalog-Eintrag für das Schuljahr und den Wert zurück.
      Parameter:
      schuljahr - das Schuljahr
      wert - der Wert
      Gibt zurück:
      der Katalog-Eintrag für das Schuljahr und den Wert falls er existiert und ansonsten null.
    • getEintragBySchuljahrAndIntegerWert

      public SchuldateiKatalogeintrag getEintragBySchuljahrAndIntegerWert(int schuljahr, int wert)
      Gibt den Katalog-Eintrag für das Schuljahr und den numerischen Wert zurück.
      Parameter:
      schuljahr - das Schuljahr
      wert - der numerische Wert
      Gibt zurück:
      der Katalog-Eintrag für das Schuljahr und den numerischen Wert falls er existiert und ansonsten null.
    • getEintraegeBySchluessel

      public List<SchuldateiKatalogeintrag> getEintraegeBySchluessel(String schluessel)
      Gibt die Katalog-Einträge zu dem Schlüssel zurück, sofern der Schlüssel gültig ist.
      Parameter:
      schluessel - der Schlüssel der gesuchten Katalog-Einträge
      Gibt zurück:
      die Liste der Katalog-Einträge für den Schlüssel existiert der Schlüssel nicht, so wird null zurückgegeben
    • getEintraegeBySchuljahrAndSchluessel

      public List<SchuldateiKatalogeintrag> getEintraegeBySchuljahrAndSchluessel(int schuljahr, String schluessel)
      Gibt die Katalog-Einträge zu dem Schlüssel für ein bestimmtes Schuljahr zurück, sofern der Schlüssel gültig ist.
      Parameter:
      schuljahr - das Schuljahr
      schluessel - der Schlüssel der gesuchten Katalog-Einträge
      Gibt zurück:
      die Liste der Katalog-Eintrag für den Schlüssel existiert der Schlüssel nicht, so wird null zurückgegeben
    • hasEintrag

      public boolean hasEintrag(String wert)
      Gibt zurück, ob ein Katalog-Eintrag für den Wert existiert.
      Parameter:
      wert - der zu prüfende Wert
      Gibt zurück:
      true, falls ein Katalog-Eintrag existiert und ansonsten false.
    • hasEintrag

      public boolean hasEintrag(int wert)
      Gibt zurück, ob ein Katalog-Eintrag für den Wert existiert.
      Parameter:
      wert - der zu prüfende Wert
      Gibt zurück:
      true, falls ein Katalog-Eintrag existiert und ansonsten false.
    • hasEintragBySchuljahr

      public boolean hasEintragBySchuljahr(int schuljahr, @NotNull @NotNull String wert)
      Gibt zurück, ob ein Katalog-Eintrag für den Wert in einem Schuljahr existiert.
      Parameter:
      schuljahr - das Schuljahr
      wert - der zu prüfende Wert
      Gibt zurück:
      true, falls ein Katalog-Eintrag im angegebenen Schuljahr existiert und ansonsten false.
    • hasEintragBySchuljahr

      public boolean hasEintragBySchuljahr(int schuljahr, int wert)
      Gibt zurück, ob ein Katalog-Eintrag für den numerischen Wert existiert.
      Parameter:
      schuljahr - das Schuljahr
      wert - der zu prüfende Wert
      Gibt zurück:
      true, falls ein Katalog-Eintrag existiert und ansonsten false.
    • hasEintragInZeitraum

      public boolean hasEintragInZeitraum(SchuldateiEintrag abBis, String wert)
      Gibt zurück, ob ein Katalog-Eintrag für den Wert in einem Zeitraum existiert.
      Parameter:
      abBis - Der Schuldateieintrag, der den Zeitraum definiert, für den der Eintrag komplett vorliegen muss.
      wert - der zu prüfende Wert
      Gibt zurück:
      true, falls ein Katalog-Eintrag existiert und ansonsten false.
    • hasEintragInZeitraum

      public boolean hasEintragInZeitraum(SchuldateiEintrag abBis, int wert)
      Gibt zurück, ob ein Katalog-Eintrag für den numerischen Wert in einem Zeitraum existiert.
      Parameter:
      abBis - Der Schuldateieintrag, der den Zeitraum definiert, für den der Eintrag komplett vorliegen muss.
      wert - der zu prüfende Wert
      Gibt zurück:
      true, falls ein Katalog-Eintrag existiert und ansonsten false.
    • hasEintragInZeitraum

      public boolean hasEintragInZeitraum(int schuljahrAb, int schuljahrBis, String wert, boolean mitTeilgueltigkeit)
      Prüft ob ein Katalog-Eintrag für den Wert in einem Zeitraum existiert Ist der Parameter mitTeilgueltigkeit auf TRUE reicht es wenn der Wert nur teilweise im Zeitraum existiert Ist er auf FALSE muss der Wert im gesamten Zeitraum definiert sein.
      Parameter:
      schuljahrAb - das erste Schuljahr
      schuljahrBis - das letzte Schuljahr
      wert - der Wert, auf den geprüft wird
      mitTeilgueltigkeit - wenn true, reichts es, wenn der Wert nicht im gesamten Zeitraum definiert ist.
      Gibt zurück:
      boolean, true wenn Eintrag entsprechend vorliegt, sonst false
    • getBezeichnung

      public String getBezeichnung(int schuljahr, String wert)
      Gibt die Bezeichnung des Katalog-Eintrag zu dem Wert im angegebenen Schuljahr zurück, sofern der Wert gültig ist.
      Parameter:
      schuljahr - das Schuljahr
      wert - der Wert des Katalog-Eintrags
      Gibt zurück:
      die Bezeichnung oder null, wenn sie nicht gültig ist
    • validate

      public void validate()
      sortiert die Listen in _mapKatalogeintraegeByWert und prüft, dass die Werte nicht überlappend sind. (Die Liste wird absteigend sortiert!)
      Löst aus:
      IllegalArgumentException - falls eine Überlappung festgestellt wird.