Class SingleDavStarter

    • Constructor Summary

      Constructors 
      Constructor Description
      SingleDavStarter()
      Erstellt eine neue Testumgebung mit einem einzelnen Datenverteiler und mit Standard-Parametern
      SingleDavStarter​(de.bsvrz.dav.daf.accessControl.AccessControlMode accessControlType, java.lang.String... accessControlPlugIns)
      Erstellt eine neue Testumgebung mit der angegebenen Rechteprüfung
      SingleDavStarter​(java.lang.String name, java.lang.String remoteConf, java.lang.String[] accessControlPlugIns, de.bsvrz.dav.daf.accessControl.AccessControlMode accessControlType, int appPort, int davPort, int passivePort)
      Erstellt eine neue Testumgebung
      SingleDavStarter​(java.lang.String name, java.lang.String remoteConf, java.lang.String[] accessControlPlugIns, de.bsvrz.dav.daf.accessControl.AccessControlMode accessControlType, int appPort, int davPort, int passivePort, java.lang.Class<?> testClass, java.nio.file.Path workingDir)
      Erstellt eine neue Testumgebung
    • Method Summary

      Modifier and Type Method Description
      void activate​(java.lang.String... configurationAreaPids)
      Importiert und aktiviert die angegebenen Konfigurationsbereiche in den angegebenen Versionen.
      void activateAndReleaseForActivation​(java.lang.String... configurationAreaPids)
      Diese Methode tut das selbe wie activate(String...), mit dem Unterschied, dass die Bereiche nicht nur aktiviert, sondern auch für die Aktivierung durch andere freigegeben werden.
      protected DaVStarter configureDaVStarter​(DaVStarter daVStarter)
      Konfiguriert den DaV-Starter.
      de.bsvrz.dav.daf.main.ClientDavInterface connect()
      Erstellt eine Verbindung, wartet gegebenenfalls auf das Laden des Datenverteilers.
      de.bsvrz.dav.daf.main.ClientDavInterface connect​(de.bsvrz.dav.daf.main.ClientDavParameters clientDavParameters)  
      de.bsvrz.dav.daf.main.ClientDavInterface connect​(java.lang.String user, de.bsvrz.dav.daf.main.authentication.ClientCredentials password)
      Erstellt eine Verbindung, wartet gegebenenfalls auf das Laden des Datenverteilers.
      de.bsvrz.dav.daf.main.ClientDavInterface connect​(java.lang.String user, de.bsvrz.dav.daf.main.authentication.ClientCredentials password, de.bsvrz.dav.daf.main.ClientDavParameters clientDavParameters)
      Erstellt eine Verbindung, wartet gegebenenfalls auf das Laden des Datenverteilers.
      java.nio.file.Path copyResources​(java.lang.String resourceNamePrefix, java.lang.String destinationDirectoryName)
      Kopiert Resourcedateien mit einem angegebenen Präfix in ein neues Verzeichnis.
      <T> DafApplication<T> createApplication​(java.util.function.Function<java.lang.String[],​T> creator, java.util.List<java.lang.String> args)
      Diese Funktion erlaubt es, eine Instanz einer Dav-Applikation zu erzeugen und diese dann im laufenden Betrieb zu testen und fernzusteuern.
      <T> DafApplication<T> createApplication​(java.util.function.Function<java.lang.String[],​T> creator, java.util.List<java.lang.String> args, java.lang.String user)
      Diese Funktion erlaubt es, eine Instanz einer Dav-Applikation zu erzeugen und diese dann im laufenden Betrieb zu testen und fernzusteuern.
      protected DaVStarter createDavStarter()
      Erstellt einen Dav-Starter und initialisiert ihn mit den Test-Einstellungen
      <T extends de.bsvrz.sys.funclib.application.StandardApplication>
      DafApplication<T>
      createStandardApplication​(T application, java.util.List<java.lang.String> args)
      Diese Funktion erlaubt es, eine Instanz einer Dav-Applikation zu erzeugen und diese dann im laufenden Betrieb zu testen und fernzusteuern.
      <T extends de.bsvrz.sys.funclib.application.StandardApplication>
      DafApplication<T>
      createStandardApplication​(T application, java.util.List<java.lang.String> args, java.lang.String user)
      Diese Funktion erlaubt es, eine Instanz einer Dav-Applikation zu erzeugen und diese dann im laufenden Betrieb zu testen und fernzusteuern.
      protected void finalize()  
      java.lang.String[] getAccessControlPlugIns()
      Gibt die verwendeten Rechteprüfungs-Plugins zurück
      de.bsvrz.dav.daf.accessControl.AccessControlMode getAccessControlType()
      Gibt die Art der Rechteprüfung zurück
      int[] getActivePorts()
      Gibt die Ports zurück, zu denen der Datenverteiler aktiv Applikationsverbindungen aufbaut
      java.lang.String getAddress()  
      int getAppPort()
      Gibt den Anwendungs-Port zurück
      com.google.common.collect.ImmutableMap<java.lang.String,​de.bsvrz.dav.daf.main.authentication.ClientCredentials> getAuthenticationFile()
      Gibt die Inhalte der Passwort-Datei zurück
      java.lang.String[] getClassPath()
      Gibt den zusätzlichen ClassPath zurück
      java.lang.String getConfigurationAuthority()
      Gibt den KV zurück
      java.lang.String getConfigurationDebugLevel()
      Gibt den Debug-Level der Konfiguration (puk.config) zurück
      java.lang.String getConfigUser()
      Gibt den Konfigurationsbenutzer zurück
      int getDavPort()
      Gibt den Datenverteiler-Port zurück
      java.lang.String getDavUser()
      Gibt den Datenverteiler-Benutzer zurück
      FakeParamApp getFakeParamApp()
      Gibt die Fake-Parametrierung zurück.
      de.bsvrz.puk.config.main.managementfile.ManagementFile getManagementFile()
      Gibt die Verwaltungsdaten zurück
      java.lang.String getName()
      Gibt den Namen dieses Datenverteilers zurück
      java.lang.String getParamDebugLevel()
      Gibt den Debug-Level der Parameterierung zurück
      int getPassivePort()
      Gibt den Port zurück, dem dem der Datenverteiler auf den aktiven Applikations-Verbindungsaufbau eines anderen Datenverteilers wartet.
      int getPort()  
      ReleaseVersion getReleaseVersion()
      Gibt das verwendete Release der Kernsoftware zurück
      java.lang.String getRemoteConf()
      Gibt die im Konstruktor übergebene Remote-Konfiguration zurück, mit der sich der datenverteiler verbinden soll
      java.nio.file.Path getRootDir()
      Gibt das Wurzelverzeichnis der Testumgebung zurück.
      static java.lang.Class<?> getTestClass​(java.lang.Class<?> testerClass)  
      de.bsvrz.dav.dav.main.Transmitter getTransmitter()
      Gibt das Transmitter-Objekt des Datenverteilers zurück
      java.lang.String getTransmitterDebugLevel()
      Gibt den Debug-Level des Datenverteilers
      java.util.List<UserAccount> getUserAccounts()
      Gibt die Inhalte der Benutzerverwaltung zurück
      java.nio.file.Path getWorkingDirectory()
      Gibt das datenverteilerspezifische Verzeichnis der Testumgebung zurück
      boolean isRunning()
      Gibt zurück, ob der Datenverteiler gestartet wurde, also entweder gerade startet oder schon läuft.
      protected void onSuccessfulStart()  
      void setActivePorts​(int... activePorts)
      Setzt die aktiven Ports
      void setAuthenticationFile​(java.util.Map<java.lang.String,​de.bsvrz.dav.daf.main.authentication.ClientCredentials> authenticationFile)
      Setzt die Inhalte der Passwort-Datei (passwd.properties)
      void setConfigurationDebugLevel​(java.lang.String configurationDebugLevel)
      Setzt den Konfigurations-Debug-Level.
      void setConfigUser​(java.lang.String configUser)
      Setzt den Benutzer, mit dem die Konfiguration gestartet wird
      void setDavUser​(java.lang.String davUser)
      Setzt den Benutzer, mit dem der Datenverteiler gestartet wird
      void setParamAppType​(ParamAppType paramAppType)
      Setzt den Typ der zu startenden Parametrierung.
      void setParamDebugLevel​(java.lang.String paramDebugLevel)
      Setzt den Parametrierungs-Debug-Level.
      void setTransmitterDebugLevel​(java.lang.String transmitterDebugLevel)
      Setzt den Datenverteiler-Debug-Level.
      void setUserAccounts​(UserAccount... userAccounts)
      Setzt die Inhalte der Benutzerverwaltung.xml
      void start​(java.lang.String... configurationAreas)
      Startet den Datenverteiler, sowie Konfiguration und Parameterierung (wenn entsprechend konfiguriert).
      void startWithoutWaiting()
      Startet den Datenverteiler ohne auf Fertigstellung zu warten
      void stop()
      Stoppt den Datenverteiler (ohne das Verzeichnis zu löschen)
      void stopWithoutFileDeletion()
      Deprecated.
      java.lang.String toString()  
      void waitUntilReady()
      Wartet bis der Datenverteiler fertig geladen ist.
      SingleDavStarter withClassPath​(java.lang.String... classPath)
      Erweitert den Classpath um die angegebenen Dateien.
      SingleDavStarter withParam​(ParamAppType paramAppType)
      Setzt die Art der Parametrierung an diesem Datenverteiler
      SingleDavStarter withReleaseVersion​(ReleaseVersion version)
      Setzt die Version von Datenverteiler, Konfiguration und ggf.
      • Methods inherited from class java.lang.Object

        clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Constructor Detail

      • SingleDavStarter

        public SingleDavStarter()
        Erstellt eine neue Testumgebung mit einem einzelnen Datenverteiler und mit Standard-Parametern

        Ein Beispiel für einen einfachen Testfall ist `de.kappich.pat.testumg.util.TestSample`.

      • SingleDavStarter

        public SingleDavStarter​(de.bsvrz.dav.daf.accessControl.AccessControlMode accessControlType,
                                java.lang.String... accessControlPlugIns)
        Erstellt eine neue Testumgebung mit der angegebenen Rechteprüfung
        Parameters:
        accessControlType - Art der Rechteprüfung
        accessControlPlugIns - Rechteprüfungs-Plugins (Optional, Klassennamen)
      • SingleDavStarter

        public SingleDavStarter​(java.lang.String name,
                                @Nullable
                                java.lang.String remoteConf,
                                java.lang.String[] accessControlPlugIns,
                                de.bsvrz.dav.daf.accessControl.AccessControlMode accessControlType,
                                int appPort,
                                int davPort,
                                int passivePort)
        Erstellt eine neue Testumgebung
        Parameters:
        accessControlType - Art der Rechteprüfung
        accessControlPlugIns - Rechteprüfungs-Plugins (Optional, Klassennamen)
        appPort - Applikations-Port
        davPort - Datenverteiler-Port
        passivePort - Port for passiven Verbindungaufbau (oder 0 bei aktivem Verbindungsaufbau)
        name - Name der Testumgebung
        remoteConf - Remote-Konfiguration (wird vom MultiDavTestEnvironment.MultiDavStarter bei Bedarf gesetzt, falls true wird keine eigene Konfiguration gestartet)
      • SingleDavStarter

        public SingleDavStarter​(java.lang.String name,
                                @Nullable
                                java.lang.String remoteConf,
                                java.lang.String[] accessControlPlugIns,
                                de.bsvrz.dav.daf.accessControl.AccessControlMode accessControlType,
                                int appPort,
                                int davPort,
                                int passivePort,
                                java.lang.Class<?> testClass,
                                java.nio.file.Path workingDir)
        Erstellt eine neue Testumgebung
        Parameters:
        name - Name der Testumgebung
        remoteConf - Remote-Konfiguration (wird vom MultiDavTestEnvironment.MultiDavStarter bei Bedarf gesetzt, falls true wird keine eigene Konfiguration gestartet)
        accessControlPlugIns - Rechteprüfungs-Plugins (Optional, Klassennamen)
        accessControlType - Art der Rechteprüfung
        appPort - Applikations-Port
        davPort - Datenverteiler-Port
        passivePort - Port for passiven Verbindungaufbau (oder 0 bei aktivem Verbindungsaufbau)
        testClass - Klasse des Testfalls
        workingDir - Arbeitsverzeichnis
    • Method Detail

      • getTestClass

        @NotNull
        public static java.lang.Class<?> getTestClass​(java.lang.Class<?> testerClass)
      • getConfigurationDebugLevel

        public final java.lang.String getConfigurationDebugLevel()
        Gibt den Debug-Level der Konfiguration (puk.config) zurück
        Returns:
        den Debug-Level
        See Also:
        setConfigurationDebugLevel(String)
      • setConfigurationDebugLevel

        public final void setConfigurationDebugLevel​(java.lang.String configurationDebugLevel)
        Setzt den Konfigurations-Debug-Level. Diese Methode muss vor dem Start der Umgebung aufgerufen werden, um wirksam zu sein.
        Parameters:
        configurationDebugLevel - Einer der folgenden Werte: "ERROR" "WARNING" "CONFIG" "INFO" "FINE" "FINER" "FINEST" "ALL".
      • getTransmitterDebugLevel

        public final java.lang.String getTransmitterDebugLevel()
        Gibt den Debug-Level des Datenverteilers
        Returns:
        den Debug-Level
        See Also:
        setTransmitterDebugLevel(String)
      • setTransmitterDebugLevel

        public final void setTransmitterDebugLevel​(java.lang.String transmitterDebugLevel)
        Setzt den Datenverteiler-Debug-Level. Diese Methode muss vor dem Start der Umgebung aufgerufen werden, um wirksam zu sein.
        Parameters:
        transmitterDebugLevel - Einer der folgenden Werte: "ERROR" "WARNING" "CONFIG" "INFO" "FINE" "FINER" "FINEST" "ALL".
      • getParamDebugLevel

        public final java.lang.String getParamDebugLevel()
        Gibt den Debug-Level der Parameterierung zurück
        Returns:
        den Debug-Level
        See Also:
        setParamDebugLevel(String)
      • setParamDebugLevel

        public final void setParamDebugLevel​(java.lang.String paramDebugLevel)
        Setzt den Parametrierungs-Debug-Level. Diese Methode muss vor dem Start der Umgebung aufgerufen werden, um wirksam zu sein.
        Parameters:
        paramDebugLevel - Einer der folgenden Werte: "ERROR" "WARNING" "CONFIG" "INFO" "FINE" "FINER" "FINEST" "ALL".
      • isRunning

        public final boolean isRunning()
        Gibt zurück, ob der Datenverteiler gestartet wurde, also entweder gerade startet oder schon läuft.
        Returns:
        Ob der Datenverteiler gestartet wurde
      • createDavStarter

        protected DaVStarter createDavStarter()
                                       throws java.lang.Exception
        Erstellt einen Dav-Starter und initialisiert ihn mit den Test-Einstellungen
        Returns:
        DavStarter
        Throws:
        java.lang.Exception - Allgemeine Exception, wird nur für Testfälle gebraucht.
      • configureDaVStarter

        @NotNull
        protected final DaVStarter configureDaVStarter​(DaVStarter daVStarter)
                                                throws java.io.IOException
        Konfiguriert den DaV-Starter. Dabei werden Classpath, Passwortdatei und benutzerverwaltung.xml geschrieben.
        Parameters:
        daVStarter - Zu konfigurierendes Objekt
        Returns:
        Konfiguriertes Objekt (identisch zum Parameter)
        Throws:
        java.io.IOException - IO-Fehler
      • createApplication

        public <T> DafApplication<T> createApplication​(java.util.function.Function<java.lang.String[],​T> creator,
                                                       java.util.List<java.lang.String> args)
        Diese Funktion erlaubt es, eine Instanz einer Dav-Applikation zu erzeugen und diese dann im laufenden Betrieb zu testen und fernzusteuern.
        Type Parameters:
        T - Beliebiger, für den Test relevanter Typ der Applikation
        Parameters:
        creator - Vom Anwender der Klasse festzulegender Ausdruck, der eine Instanz der Applikation erstellt. Der Parameter der Funktion sind dabei die Aufrufargumente. Die Rückgabe der Funktion ist ein beliebiges Objekt, zum Beispiel die Main-Klasse oder Hauptklasse der Applikation. Sie kann später abgefragt werden.
        args - Zusätzliche applikationsspezifische Start-Argumente (Standard-Argumente wie "-benutzer" können weggelassen werden und werden automatisch erzeugt)
        Returns:
        Objekt, das die zu testende Applikation kapselt und Befehle wie Starten und Stoppen ermöglicht.
      • createApplication

        public <T> DafApplication<T> createApplication​(java.util.function.Function<java.lang.String[],​T> creator,
                                                       java.util.List<java.lang.String> args,
                                                       java.lang.String user)
        Diese Funktion erlaubt es, eine Instanz einer Dav-Applikation zu erzeugen und diese dann im laufenden Betrieb zu testen und fernzusteuern.
        Type Parameters:
        T - Beliebiger, für den Test relevanter Typ der Applikation
        Parameters:
        creator - Vom Anwender der Klasse festzulegender Ausdruck, der eine Instanz der Applikation erstellt. Der Parameter der Funktion sind dabei die Aufrufargumente. Die Rückgabe der Funktion ist ein beliebiges Objekt, zum Beispiel die Main-Klasse oder Hauptklasse der Applikation. Sie kann später abgefragt werden.
        args - Zusätzliche applikationsspezifische Start-Argumente (Standard-Argumente wie "-benutzer" können weggelassen werden und werden automatisch erzeugt)
        user - Benutzer der Applikation (muss in passwd und Benutzerverwaltung vorhanden sein, siehe setAuthenticationFile(Map) und setUserAccounts(UserAccount...)).
        Returns:
        Objekt, das die zu testende Applikation kapselt und Befehle wie Starten und Stoppen ermöglicht.
      • createStandardApplication

        public <T extends de.bsvrz.sys.funclib.application.StandardApplication> DafApplication<T> createStandardApplication​(T application,
                                                                                                                            java.util.List<java.lang.String> args)
        Diese Funktion erlaubt es, eine Instanz einer Dav-Applikation zu erzeugen und diese dann im laufenden Betrieb zu testen und fernzusteuern.
        Type Parameters:
        T - Implementierugn von StandardApplication
        Parameters:
        application - Neue, bisher nicht initialisierte Instant einer StandardApplication.
        args - Zusätzliche applikationsspezifische Start-Argumente (Standard-Argumente wie "-benutzer" können weggelassen werden und werden automatisch erzeugt)
        Returns:
        Objekt, das die zu testende Applikation kapselt und Befehle wie Starten und Stoppen ermöglicht.
      • createStandardApplication

        public <T extends de.bsvrz.sys.funclib.application.StandardApplication> DafApplication<T> createStandardApplication​(T application,
                                                                                                                            java.util.List<java.lang.String> args,
                                                                                                                            java.lang.String user)
        Diese Funktion erlaubt es, eine Instanz einer Dav-Applikation zu erzeugen und diese dann im laufenden Betrieb zu testen und fernzusteuern.
        Type Parameters:
        T - Implementierugn von StandardApplication
        Parameters:
        application - Neue, bisher nicht initialisierte Instant einer StandardApplication.
        args - Zusätzliche applikationsspezifische Start-Argumente (Standard-Argumente wie "-benutzer" können weggelassen werden und werden automatisch erzeugt)
        user - Benutzer der Applikation (muss in passwd und Benutzerverwaltung vorhanden sein, siehe setAuthenticationFile(Map) und setUserAccounts(UserAccount...)).
        Returns:
        Objekt, das die zu testende Applikation kapselt und Befehle wie Starten und Stoppen ermöglicht.
      • getDavPort

        public int getDavPort()
        Gibt den Datenverteiler-Port zurück
        Returns:
        Datenverteiler-Port
      • getName

        public java.lang.String getName()
        Gibt den Namen dieses Datenverteilers zurück
        Specified by:
        getName in interface DavInformation
        Returns:
        Name
      • startWithoutWaiting

        public void startWithoutWaiting()
        Startet den Datenverteiler ohne auf Fertigstellung zu warten
      • onSuccessfulStart

        protected void onSuccessfulStart()
      • stop

        public void stop()
        Stoppt den Datenverteiler (ohne das Verzeichnis zu löschen)
      • stopWithoutFileDeletion

        @Deprecated
        public void stopWithoutFileDeletion()
        Deprecated.
        Stoppt den Datenverteiler ohne das Verzeichnis zu löschen
      • connect

        public de.bsvrz.dav.daf.main.ClientDavInterface connect()
        Erstellt eine Verbindung, wartet gegebenenfalls auf das Laden des Datenverteilers. Er muss aber vorher gestartet worden sein.
        Specified by:
        connect in interface DafApplicationEnvironment
        Returns:
        Verbindung
      • connect

        public de.bsvrz.dav.daf.main.ClientDavInterface connect​(de.bsvrz.dav.daf.main.ClientDavParameters clientDavParameters)
      • connect

        public de.bsvrz.dav.daf.main.ClientDavInterface connect​(java.lang.String user,
                                                                de.bsvrz.dav.daf.main.authentication.ClientCredentials password)
        Erstellt eine Verbindung, wartet gegebenenfalls auf das Laden des Datenverteilers. Er muss aber vorher gestartet worden sein.
        Parameters:
        user - Benutzername zur Authentifizierung
        password - Passwort zur Authentifizierung
        Returns:
        Verbindung
      • connect

        public de.bsvrz.dav.daf.main.ClientDavInterface connect​(java.lang.String user,
                                                                de.bsvrz.dav.daf.main.authentication.ClientCredentials password,
                                                                @Nullable
                                                                de.bsvrz.dav.daf.main.ClientDavParameters clientDavParameters)
        Erstellt eine Verbindung, wartet gegebenenfalls auf das Laden des Datenverteilers. Er muss aber vorher gestartet worden sein.
        Parameters:
        user - Benutzername zur Authentifizierung
        password - Passwort zur Authentifizierung
        clientDavParameters -
        Returns:
        Verbindung
      • getTransmitter

        @Nullable
        public de.bsvrz.dav.dav.main.Transmitter getTransmitter()
        Gibt das Transmitter-Objekt des Datenverteilers zurück
        Returns:
        Transmitter-Objekt oder null falls nicht vorhanden
      • waitUntilReady

        public void waitUntilReady()
        Wartet bis der Datenverteiler fertig geladen ist.
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
      • getRootDir

        public java.nio.file.Path getRootDir()
        Description copied from interface: DafApplicationEnvironment
        Gibt das Wurzelverzeichnis der Testumgebung zurück. Hier können allgemeien daten abgelegt werden
        Specified by:
        getRootDir in interface DafApplicationEnvironment
        Returns:
        Wurzelverzeichnis
      • getManagementFile

        public de.bsvrz.puk.config.main.managementfile.ManagementFile getManagementFile()
        Gibt die Verwaltungsdaten zurück
        Returns:
        verwaltungsdaten
      • withClassPath

        public SingleDavStarter withClassPath​(java.lang.String... classPath)
        Erweitert den Classpath um die angegebenen Dateien. Bei wiederholten Aufruf dieser Methode werden die vorherigen Erweiterungen ersetzt.
        Parameters:
        classPath - ClassPath-Erweiterungen
        Returns:
        this
      • withReleaseVersion

        public SingleDavStarter withReleaseVersion​(ReleaseVersion version)
        Setzt die Version von Datenverteiler, Konfiguration und ggf. Parametrierung für diesen Datenverteiler
        Parameters:
        version - Version
        Returns:
        this
      • withParam

        public SingleDavStarter withParam​(ParamAppType paramAppType)
        Setzt die Art der Parametrierung an diesem Datenverteiler
        Parameters:
        paramAppType - Art
        Returns:
        this
      • setAuthenticationFile

        public void setAuthenticationFile​(java.util.Map<java.lang.String,​de.bsvrz.dav.daf.main.authentication.ClientCredentials> authenticationFile)
        Setzt die Inhalte der Passwort-Datei (passwd.properties)
        Parameters:
        authenticationFile - Inhalte. Der Key ist der Benutzername, der Value das Passwort bzw. der verschlüsselte SRP-Login-Token
      • getAuthenticationFile

        public com.google.common.collect.ImmutableMap<java.lang.String,​de.bsvrz.dav.daf.main.authentication.ClientCredentials> getAuthenticationFile()
        Gibt die Inhalte der Passwort-Datei zurück
        Returns:
        die Inhalte der Passwort-Datei, falls null wird die Standard-Passwortdatei benutzt
        See Also:
        setAuthenticationFile(Map)
      • setUserAccounts

        public void setUserAccounts​(UserAccount... userAccounts)
        Setzt die Inhalte der Benutzerverwaltung.xml
        Parameters:
        userAccounts - Liste mit Benutzerkonten (Accounts)
      • getUserAccounts

        public java.util.List<UserAccount> getUserAccounts()
        Gibt die Inhalte der Benutzerverwaltung zurück
        Returns:
        die Inhalte der Benutzerverwaltung, falls null wird die Standard-Benutzerverwaltung benutzt
      • setDavUser

        public void setDavUser​(java.lang.String davUser)
        Setzt den Benutzer, mit dem der Datenverteiler gestartet wird
        Parameters:
        davUser - Dav-Benutzer
      • getDavUser

        public java.lang.String getDavUser()
        Gibt den Datenverteiler-Benutzer zurück
        Returns:
        den Datenverteiler-Benutzer
      • setConfigUser

        public void setConfigUser​(java.lang.String configUser)
        Setzt den Benutzer, mit dem die Konfiguration gestartet wird
        Parameters:
        configUser - Konfigurations-Benutzer
      • getConfigUser

        public java.lang.String getConfigUser()
        Gibt den Konfigurationsbenutzer zurück
        Returns:
        den Konfigurationsbenutzer
      • start

        public void start​(java.lang.String... configurationAreas)
        Startet den Datenverteiler, sowie Konfiguration und Parameterierung (wenn entsprechend konfiguriert).
        Parameters:
        configurationAreas - Optional vor dem Start zu aktivierende Konfigurationsbereiche. Die Konfigurationsbereiche können mit Versionsnummern versehen sein, das Verhalten ist in der activate-Methode beschrieben.
      • activate

        public void activate​(java.lang.String... configurationAreaPids)
        Importiert und aktiviert die angegebenen Konfigurationsbereiche in den angegebenen Versionen.

        Die Konfigurationsbereiche müssen sich als Resource im Package des Testfalls befinden. Es kann entweder nur die Pid angegeben werden, dann wird die Datei einfach importiert. Z. B. die Angabe von "kb.testObjekte" importiert den Bereich mit der Pid "kb.testObjekte" aus der Datei "kb.testObjekte.xml".

        Bei manchen Tests ist es sinnvoll nacheinander verschiedene Versionen eines Bereiches zu aktivieren, dafür kann zusätzlich eine Versionsangabe getrennt mit einem Doppelpunkt nach der Pid gemacht werden. Beispiel:

        • Die Angabe von "kb.testObjekte:1" importiert den Bereich mit der id "kb.testObjekte" aus der Datei "kb.testObjekte1.xml"
        • Die Angabe von "kb.testObjekte:2" importiert den Bereich mit der Pid "kb.testObjekte" aus der Datei "kb.testObjekte2.xml"
        • usw.

        Die Versionsangabe korreliert nicht notwendigerweise mit der resultierten Version der Konfigurationsdatei, es kann also auch z. B. erst "kb.testObjekte:2" importiert und aktiviert werden und danach "kb.testObjekte:1".

        Für manche Testfälle können die Konfigurationsdateien nicht gleichzeitig importiert werden, sondern müssen nacheinander oder Blockweise importiert werden. Durch die Einfügung eines null-Elements können verschiedene Blöcke getrennt werden. Beispiel: activate("kb.test1", "kb.test2", null, "kb.test3"); importiert und aktiviert zuerst gemeinsam die Bereiche "test1" und "test2", startet dann die Konfiguration neu und importiert und aktiviert "test3.

        Parameters:
        configurationAreaPids - die Pids der Konfigurationsbereiche, optional mit Version. Die String sollten (wenn sie eine Version enthalten) das Format "kb.bereich:2" oder ähnlich haben, also die Version mit einem Doppelpunkt getrennt enthalten. Null-Elemente sorgen für einen Neustart der Konfiguration nach Import und aktivierung der bisherigen Elemente.
      • activateAndReleaseForActivation

        public void activateAndReleaseForActivation​(java.lang.String... configurationAreaPids)
        Diese Methode tut das selbe wie activate(String...), mit dem Unterschied, dass die Bereiche nicht nur aktiviert, sondern auch für die Aktivierung durch andere freigegeben werden.
        Parameters:
        configurationAreaPids - die Pids der Konfigurationsbereiche, optional mit Version. Die String sollten (wenn sie eine Version enthalten) das Format "kb.bereich:2" oder ähnlich haben, also die Version mit einem Doppelpunkt getrennt enthalten. Null-Elemente sorgen für einen Neustart der Konfiguration nach Import und aktivierung der bisherigen Elemente.
      • getRemoteConf

        public java.lang.String getRemoteConf()
        Gibt die im Konstruktor übergebene Remote-Konfiguration zurück, mit der sich der datenverteiler verbinden soll
        Returns:
        Remote-Konfiguration
        See Also:
        MultiDavTestEnvironment
      • getAccessControlType

        public de.bsvrz.dav.daf.accessControl.AccessControlMode getAccessControlType()
        Gibt die Art der Rechteprüfung zurück
        Returns:
        die Art der Rechteprüfung
      • getAccessControlPlugIns

        public java.lang.String[] getAccessControlPlugIns()
        Gibt die verwendeten Rechteprüfungs-Plugins zurück
        Returns:
        die verwendeten Rechteprüfungs-Plugins
      • getClassPath

        @Nullable
        public java.lang.String[] getClassPath()
        Gibt den zusätzlichen ClassPath zurück
        Returns:
        den zusätzlichen ClassPath
        See Also:
        withClassPath(String...)
      • getReleaseVersion

        public ReleaseVersion getReleaseVersion()
        Gibt das verwendete Release der Kernsoftware zurück
        Returns:
        Kernsoftware-Release
      • copyResources

        public java.nio.file.Path copyResources​(java.lang.String resourceNamePrefix,
                                                java.lang.String destinationDirectoryName)
        Kopiert Resourcedateien mit einem angegebenen Präfix in ein neues Verzeichnis. Die Resourcedateien müssen im Classpath auffindbar sein. Die Methode kann sowohl mit wirklichen Dateien, als auch mit Resourcen in JAR-Dateien umgehen. Dabei geht die Methode davon aus, dass alle Resource-Dateien in der gleichen JAR-Datei enthalten sind.
        Parameters:
        resourceNamePrefix - Prefix der zu kopierenden Resourcen. Resourcenamen entsprechen Packagenamen, bei denen die Punkte durch Slashes (/) ersetzt wurden. Beispielsweise: 'de/kappich/pat/testumg/util'.
        destinationDirectoryName - Name des zu erzeugenden Verzeichnis, das innerhalb eines temporären Verzeichnisses (siehe @{link #getTemporaryDirectory}) angelegt wird.
        Returns:
        Erzeugtes Verzeichnis mit den kopierten Resource-Dateien
      • finalize

        protected void finalize()
                         throws java.lang.Throwable
        Overrides:
        finalize in class java.lang.Object
        Throws:
        java.lang.Throwable
      • getPassivePort

        public int getPassivePort()
        Gibt den Port zurück, dem dem der Datenverteiler auf den aktiven Applikations-Verbindungsaufbau eines anderen Datenverteilers wartet. Fall 0, wird die datenverteilerinterne Applikations-Verbindung zum anderen Datenverteiler aktiv aufgebaut.
        Returns:
        Port-Nummer oder 0
      • getActivePorts

        public int[] getActivePorts()
        Gibt die Ports zurück, zu denen der Datenverteiler aktiv Applikationsverbindungen aufbaut
        Returns:
        Ports
      • setActivePorts

        public void setActivePorts​(int... activePorts)
        Setzt die aktiven Ports
        Parameters:
        activePorts - Ports, zu denen der Datenverteiler aktiv Applikationsverbindungen aufbaut