Klasse DBSchemaStatus

java.lang.Object
de.svws_nrw.db.utils.schema.DBSchemaStatus

public final class DBSchemaStatus extends Object
Diese Klasse stellt Methode für den Zugriff auf den aktuellen Status einen Schema zur Verfügung.
  • Methodendetails

    • read

      public static DBSchemaStatus read(DBEntityManager conn) throws DBException
      Liest den Schema-Status mithilfe des übergebenen DB-Benutzers aus. Dabei wird das Schema abgefragt, welches dem Benutzer zugeordnet ist
      Parameter:
      conn - die Datenbank-Verbindung mit dem Benutzer für den Zugriff auf die Schema-Informationen
      Gibt zurück:
      der Schema-Status
      Löst aus:
      DBException - wenn ein Verbindungsfehler auftritt
    • read

      public static DBSchemaStatus read(DBEntityManager conn, String schemaName) throws DBException
      Liest den Schema-Status mithilfe der übergebenen Datenbank-Verbindung aus. Dabei wird das Schema mit dem übergebenen Namen abgefragt.
      Parameter:
      conn - die Datenbank-Verbindung für den Zugriff auf die Schema-Informationen
      schemaName - der Name des Schemas, dessen Status abgefragt werden soll
      Gibt zurück:
      der Schema-Status
      Löst aus:
      DBException - wenn ein Verbindungsfehler auftritt
    • getSchemaname

      public String getSchemaname()
      Gibt den Namen des Schemas zurück.
      Gibt zurück:
      der Name des Schemas;
    • getVersion

      public DBSchemaVersion getVersion()
      Gibt die aktuelle Revision des Datenbankschemas zurück.
      Gibt zurück:
      die aktuelle Revision des Datenbankschemas
    • getTabellen

      public List<String> getTabellen()
      Gibt die vorhandenen Tabellen im Datenbankschema zurück.
      Gibt zurück:
      die im Datenbankschema vorhandenen Tabellen
    • update

      public void update()
      Aktualisiert den Schema-Status
    • update

      public void update(DBEntityManager conn)
      Aktualisiert den Schema-Status über die angegebene Datenbabk-Verbindung
      Parameter:
      conn - die Datenbank-Verbindung
    • hasTable

      public boolean hasTable(String tabname)
      Prüft, ob der angegebene Tabellenname in der Datenbank vorhanden ist. Dabei ist die Groß- und Klein-Schreibung nicht relevant.
      Parameter:
      tabname - der zu prüfende Tabellenname
      Gibt zurück:
      true, falls die Tabelle vorhanden ist und ansonsten false
    • getCoreTypeVersion

      public DTOSchemaCoreTypeVersion getCoreTypeVersion(DBEntityManager conn, String tabname)
      Liefert die Version des Core-Types zurück, welcher in der übergebenen Tabelle gespeichert wird.
      Parameter:
      conn - die Datenbankverbindung mit aktiver Transaktion
      tabname - der Name der Tabelle
      Gibt zurück:
      die Version des Core-Types oder null, wenn aktuell keine Version in der Tabelle gespeichert ist
    • getSchuleInfo

      public SchuleInfo getSchuleInfo()
      Gibt die Informationen zu der Schule zurück.
      Gibt zurück:
      die Informationen zu der Schule
    • hasColumn

      public boolean hasColumn(String tabname, String colname)
      Diese Methode prüft, ob die angegebene Spealte bei der angebenen Tabelle vorhanden ist.
      Parameter:
      tabname - der zu prüfende Tabellenname
      colname - der zu prüfende Spaltenname
      Gibt zurück:
      true, falls die Spalte bei der Tabelle vorhanden ist und ansonsten false
    • filterColumns

      public List<String> filterColumns(String tabname, List<String> cols)
      Filtert die übergebene Liste der Spaltennamen der angegebenen Tabelle anhand der im Schema existierenden Spalten.
      Parameter:
      tabname - der Name der Tabelle
      cols - eine Liste mit Spaltennamen, die gefiltert werden soll
      Gibt zurück:
      die gefilterte Liste von Spaltennamen