Klasse DataGostBlockungsdaten

java.lang.Object
de.svws_nrw.data.DataManager<Long>
de.svws_nrw.data.gost.DataGostBlockungsdaten

public final class DataGostBlockungsdaten extends DataManager<Long>
Diese Klasse erweitert den abstrakten DataManager für den Core-DTO GostBlockungsdaten.
  • Konstruktordetails

  • Methodendetails

    • getAll

      public jakarta.ws.rs.core.Response getAll()
      Beschreibung aus Klasse kopiert: DataManager
      Ermittelt eine Liste mit allen Informationen in der DB. Wird üblicherweise durch GET-Methoden für Listen verwendet. Meist ist die Methode getList zu bevorzugen.
      Angegeben von:
      getAll in Klasse DataManager<Long>
      Gibt zurück:
      eine Liste mit den Informationen
    • getList

      public jakarta.ws.rs.core.Response getList()
      Beschreibung aus Klasse kopiert: DataManager
      Ermittelt eine Liste mit Informationen. Wird üblicherweise durch GET-Methoden für Listen verwendet. Bei dieser Liste werden ggf. Filter verwendet (z.B. nur als sichtbar markierte Einträge)
      Angegeben von:
      getList in Klasse DataManager<Long>
      Gibt zurück:
      eine Liste mit den Informationen
    • pruefeNurVorlageErgebnis

      public static DTOGostBlockungZwischenergebnis pruefeNurVorlageErgebnis(DBEntityManager conn, DTOGostBlockung blockung) throws ApiOperationException
      Prüft, ob die übergebene Blockung nur ein Vorlage-Ergebnis hat oder auch weitere Ergebnisse.
      Parameter:
      conn - die Datenbankverbindung
      blockung - die zu prüfende Blockung
      Gibt zurück:
      das Vorlage-Ergebnis, falls dies das einzige Ergebnis ist, sonst null
      Löst aus:
      ApiOperationException - im Fehlerfall
    • getBlockungsdatenManagerFromDB

      public static GostBlockungsdatenManager getBlockungsdatenManagerFromDB(DBEntityManager conn, Long id) throws ApiOperationException
      Bestimmt für die angegebene ID alle Daten für die Initialisierung eines Blockungsdaten-Managers zur Bestimmung der Blockungsdaten. Folgende Information werden nicht geladen: die Liste der Blockungsergebnisse und das aktuelle Blockungsergebnis
      Parameter:
      conn - die Datenbankverbindung
      id - die ID der Blockung
      Gibt zurück:
      der Blockungsdaten-Manager
      Löst aus:
      ApiOperationException - im Fehlerfall
    • get

      public jakarta.ws.rs.core.Response get(Long id) throws ApiOperationException
      Beschreibung aus Klasse kopiert: DataManager
      Ermittelt die Informationen anhand der angegebenen ID. Wird üblicherweise durch GET-Methoden verwendet.
      Angegeben von:
      get in Klasse DataManager<Long>
      Parameter:
      id - die ID der gesuchten Informationen
      Gibt zurück:
      die Information mit der angebenen ID
      Löst aus:
      ApiOperationException - im Fehlerfall
    • getGZip

      public static jakarta.ws.rs.core.Response getGZip(DBEntityManager conn, Long id) throws ApiOperationException
      Gibt die Blockungsdaten für die Blockung mit der angegebenen ID als GZip-Json zurück.
      Parameter:
      conn - die Datenbankverbindung
      id - die ID der Blockung
      Gibt zurück:
      die Response mit der gz-Datei
      Löst aus:
      ApiOperationException - im Fehlerfall
    • markiereBlockungAktiv

      public static DTOGostBlockung markiereBlockungAktiv(DBEntityManager conn, long idBlockung, boolean aktiv) throws ApiOperationException
      Markiert die Blockung als aktiv und alle anderen Blockung mit gleichem Abiturjahrgang und Halbjahr als inaktiv, wenn der Wert auf true gesetzt ist und ansonsten nur die angegebene Blockung auf inaktiv
      Parameter:
      conn - die Datenbankverbindung
      idBlockung - die ID der Blockung
      aktiv - gibt an,
      Gibt zurück:
      das DTO zur Blockung, falls damit weitergearbeitet werden soll
      Löst aus:
      ApiOperationException - im Fehlerfall
    • patch

      public jakarta.ws.rs.core.Response patch(Long id, InputStream is) throws ApiOperationException
      Beschreibung aus Klasse kopiert: DataManager
      Passt die Informationen mithilfe des JSON-Patches aus dem übergebenen InputStream an.
      Angegeben von:
      patch in Klasse DataManager<Long>
      Parameter:
      id - die ID der anzupassenden Informationen
      is - der InputStream mit dem JSON-Patch
      Gibt zurück:
      Die HTTP-Response der Patch-Operation
      Löst aus:
      ApiOperationException - im Fehlerfall
    • create

      public jakarta.ws.rs.core.Response create(int abiturjahr, int halbjahr) throws ApiOperationException
      Erstellt eine neue Blockung auf Basis der aktuellen Fachwahlen, dem angegeben Namen der neuen Blockung und der Anzahl der Schienen mit Vorgabe-Werten.
      Parameter:
      abiturjahr - der Abitur-Jahrgang
      halbjahr - das Halbjahr der gymnasialen Oberstufe
      Gibt zurück:
      Eine Response mit der neuen Blockung
      Löst aus:
      ApiOperationException - im Fehlerfall
    • delete

      public jakarta.ws.rs.core.Response delete(Long id) throws ApiOperationException
      Entfernt die Blockung mit der angegebenen ID aus der Datenbank.
      Parameter:
      id - die ID der zu löschenden Blockung
      Gibt zurück:
      die HTTP-Response, welchen den Erfolg der Lösch-Operation angibt.
      Löst aus:
      ApiOperationException - im Fehlerfall
    • berechne

      public jakarta.ws.rs.core.Response berechne(long id, long zeit) throws ApiOperationException
      Berechnet für die übergebene Blockung Zwischenergebnis, wobei der Algorithmus nur maximal eine spezifizierte Zeit läuft.
      Parameter:
      id - die ID der Blockung
      zeit - die maximale Zeit in ms
      Gibt zurück:
      die HTTP-Response mit einer Liste von IDs der Zwischenergebnisse
      Löst aus:
      ApiOperationException - im Fehlerfall
    • dupliziere

      public jakarta.ws.rs.core.Response dupliziere(long idErgebnisOriginal) throws ApiOperationException
      Erzeugt ein Duplikat der Blockung des angegebenen Ergebnis. Dabei wird auch das Ergebnis dupliziert.
      Parameter:
      idErgebnisOriginal - das zu duplizierende Blockungsergebnis
      Gibt zurück:
      die Blockungsdaten der duplizierten Blockung
      Löst aus:
      ApiOperationException - im Fehlerfall
    • hochschreiben

      public jakarta.ws.rs.core.Response hochschreiben(long idErgebnisOriginal) throws ApiOperationException
      Erzeugt ein Duplikat der Blockung des angegebenen Ergebnis und des Ergebnisses selber und schreibt dieses direkt in das nächste Halbjahr hoch. Wird diese Methode auf eine Blockung der Q2.2 ausgeführt, so wird eine Fehlermeldung erzeugt
      Parameter:
      idErgebnisOriginal - das hochzuschreibende Blockungsergebnis
      Gibt zurück:
      die Blockungsdaten der hochgeschriebenen Blockung
      Löst aus:
      ApiOperationException - im Fehlerfall
    • restore

      public jakarta.ws.rs.core.Response restore(int abiturjahr, int halbjahrID) throws ApiOperationException
      Versucht eine Blockung aus den Kursen und den Leistungsdaten wiederherzustellen, wenn für den Abiturjahrgang in dem angegebenen Halbjahr bereits eine Blockung aktiviert wurde.
      Parameter:
      abiturjahr - das Abiturjahr
      halbjahrID - die ID des Halbjahres der gymnasialen Oberstufe (siehe auch GostHalbjahr)
      Gibt zurück:
      die Blockungsdaten der restaurierten Blockung
      Löst aus:
      ApiOperationException - im Fehlerfall