Klasse DataStundenplanRaeume

java.lang.Object
de.svws_nrw.data.DataManager<Long>
de.svws_nrw.data.stundenplan.DataStundenplanRaeume

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

    • DataStundenplanRaeume

      public DataStundenplanRaeume(DBEntityManager conn, Long stundenplanID)
      Erstellt einen neuen DataManager für den Core-DTO StundenplanRaum.
      Parameter:
      conn - die Datenbank-Verbindung für den Datenbankzugriff
      stundenplanID - die ID des Stundenplans, dessen Räume abgefragt werden
  • Methodendetails

    • getAll

      public jakarta.ws.rs.core.Response getAll() throws ApiOperationException
      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
      Löst aus:
      ApiOperationException - im Fehlerfall
    • getRaeume

      public static List<StundenplanRaum> getRaeume(@NotNull @NotNull DBEntityManager conn, long idStundenplan) throws ApiOperationException
      Gibt die Räume des Stundenplans zurück.
      Parameter:
      conn - die Datenbankverbindung
      idStundenplan - die ID des Stundenplans
      Gibt zurück:
      die Liste der Räume
      Löst aus:
      ApiOperationException - im Fehlerfall
    • getRaeumeByUnterrichtId

      public static Map<Long,List<StundenplanRaum>> getRaeumeByUnterrichtId(@NotNull @NotNull DBEntityManager conn, long idStundenplan, List<Long> unterrichtIds) throws ApiOperationException
      Mappt die Stundenplanraeume auf die gegebenen UnterrichtIds
      Parameter:
      conn - die Datenbankverbindung
      idStundenplan - die ID des Stundenplans
      unterrichtIds - die Unterrichte, für die die Räume gesucht und gemappt werden sollen
      Gibt zurück:
      eine Map, in der die Räume der jeweiligen UnterrichtId zugeordnet ist
      Löst aus:
      ApiOperationException - im Fehlerfall
    • getOrCreateRaum

      public static StundenplanRaum getOrCreateRaum(@NotNull @NotNull DBEntityManager conn, long idStundenplan, String kuerzel) throws ApiOperationException
      Ermittelt zu Stundenplans mit der angegebenen ID und dem Raumkürzel den zugehörigen Raumeintrag in der Datenbank. Existiert ein solcher noch nicht, so wird ein neuer Raum mit Standardinformationen erzeugt.
      Parameter:
      conn - die Datenbankverbindung
      idStundenplan - die ID des Stundenplans
      kuerzel - das Kürzel des Raums
      Gibt zurück:
      der Zeitrastereintrag
      Löst aus:
      ApiOperationException - im Fehlerfall
    • getList

      public jakarta.ws.rs.core.Response getList() throws ApiOperationException
      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
      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
    • 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
    • add

      public jakarta.ws.rs.core.Response add(InputStream is) throws ApiOperationException
      Fügt einen Raum mit den übergebenen JSON-Daten der Datenbank hinzu und gibt das zugehörige CoreDTO zurück. Falls ein Fehler auftritt wird ein entsprechender Response-Code zurückgegeben.
      Parameter:
      is - der InputStream mit den JSON-Daten
      Gibt zurück:
      die Response mit den Daten
      Löst aus:
      ApiOperationException - im Fehlerfall
    • addMultiple

      public jakarta.ws.rs.core.Response addMultiple(InputStream is) throws ApiOperationException
      Fügt mehrere Räume mit den übergebenen JSON-Daten der Datenbank hinzu und gibt die zugehörigen CoreDTOs zurück. Falls ein Fehler auftritt wird ein entsprechender Response-Code zurückgegeben.
      Parameter:
      is - der InputStream mit den JSON-Daten
      Gibt zurück:
      die Response mit den Daten
      Löst aus:
      ApiOperationException - im Fehlerfall
    • addRaeume

      public static void addRaeume(@NotNull @NotNull DBEntityManager conn, DTOStundenplan dtoStundenplan, List<Raum> raeume)
      Kopiert die Räume des allgemeinen Katalogs zu den Räumen des angegebenen Stundenplans hinzu. Dabei wird die angegebene Datenbankverbingung genutzt, welche eine offene Transaktion haben muss.
      Parameter:
      conn - die Datenbankverbindung
      dtoStundenplan - das DTO des Stundenplans
      raeume - die hinzuzufügenden Räume
    • delete

      public jakarta.ws.rs.core.Response delete(Long id) throws ApiOperationException
      Löscht einen Raum
      Parameter:
      id - die ID des Raums
      Gibt zurück:
      die HTTP-Response, welchen den Erfolg der Lösch-Operation angibt.
      Löst aus:
      ApiOperationException - im Fehlerfall
    • deleteMultiple

      public jakarta.ws.rs.core.Response deleteMultiple(List<Long> ids) throws ApiOperationException
      Löscht mehrere Räume
      Parameter:
      ids - die IDs der Räume
      Gibt zurück:
      die HTTP-Response, welchen den Erfolg der Lösch-Operation angibt.
      Löst aus:
      ApiOperationException - im Fehlerfall