Class SingleDavStarter
- java.lang.Object
-
- de.kappich.pat.testumg.util.SingleDavStarter
-
- All Implemented Interfaces:
DavInformation,DafApplicationEnvironment
- Direct Known Subclasses:
MultiDavTestEnvironment.MultiDavStarter
public class SingleDavStarter extends java.lang.Object implements DavInformation, DafApplicationEnvironment
Klasse, die das Testen von Applikationen und sonstigem Code innerhalb einer Datenverteilerumgebung erlaubt.Ein Beispiel für einen einfachen Testfall ist de.kappich.pat.testumg.util.TestSample.
-
-
Field Summary
Fields Modifier and Type Field Description protected ConfigurationController_configurationController
-
Constructor Summary
Constructors Constructor Description SingleDavStarter()Erstellt eine neue Testumgebung mit einem einzelnen Datenverteiler und mit Standard-ParameternSingleDavStarter(de.bsvrz.dav.daf.accessControl.AccessControlMode accessControlType, java.lang.String... accessControlPlugIns)Erstellt eine neue Testumgebung mit der angegebenen RechteprüfungSingleDavStarter(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 TestumgebungSingleDavStarter(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
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description voidactivate(java.lang.String... configurationAreaPids)Importiert und aktiviert die angegebenen Konfigurationsbereiche in den angegebenen Versionen.voidactivateAndReleaseForActivation(java.lang.String... configurationAreaPids)Diese Methode tut das selbe wieactivate(String...), mit dem Unterschied, dass die Bereiche nicht nur aktiviert, sondern auch für die Aktivierung durch andere freigegeben werden.protected DaVStarterconfigureDaVStarter(DaVStarter daVStarter)Konfiguriert den DaV-Starter.de.bsvrz.dav.daf.main.ClientDavInterfaceconnect()Erstellt eine Verbindung, wartet gegebenenfalls auf das Laden des Datenverteilers.de.bsvrz.dav.daf.main.ClientDavInterfaceconnect(de.bsvrz.dav.daf.main.ClientDavParameters clientDavParameters)de.bsvrz.dav.daf.main.ClientDavInterfaceconnect(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.ClientDavInterfaceconnect(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.PathcopyResources(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 DaVStartercreateDavStarter()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 voidfinalize()java.lang.String[]getAccessControlPlugIns()Gibt die verwendeten Rechteprüfungs-Plugins zurückde.bsvrz.dav.daf.accessControl.AccessControlModegetAccessControlType()Gibt die Art der Rechteprüfung zurückint[]getActivePorts()Gibt die Ports zurück, zu denen der Datenverteiler aktiv Applikationsverbindungen aufbautjava.lang.StringgetAddress()intgetAppPort()Gibt den Anwendungs-Port zurückcom.google.common.collect.ImmutableMap<java.lang.String,de.bsvrz.dav.daf.main.authentication.ClientCredentials>getAuthenticationFile()Gibt die Inhalte der Passwort-Datei zurückjava.lang.String[]getClassPath()Gibt den zusätzlichen ClassPath zurückjava.lang.StringgetConfigurationAuthority()Gibt den KV zurückjava.lang.StringgetConfigurationDebugLevel()Gibt den Debug-Level der Konfiguration (puk.config) zurückjava.lang.StringgetConfigUser()Gibt den Konfigurationsbenutzer zurückintgetDavPort()Gibt den Datenverteiler-Port zurückjava.lang.StringgetDavUser()Gibt den Datenverteiler-Benutzer zurückFakeParamAppgetFakeParamApp()Gibt die Fake-Parametrierung zurück.de.bsvrz.puk.config.main.managementfile.ManagementFilegetManagementFile()Gibt die Verwaltungsdaten zurückjava.lang.StringgetName()Gibt den Namen dieses Datenverteilers zurückjava.lang.StringgetParamDebugLevel()Gibt den Debug-Level der Parameterierung zurückintgetPassivePort()Gibt den Port zurück, dem dem der Datenverteiler auf den aktiven Applikations-Verbindungsaufbau eines anderen Datenverteilers wartet.intgetPort()ReleaseVersiongetReleaseVersion()Gibt das verwendete Release der Kernsoftware zurückjava.lang.StringgetRemoteConf()Gibt die im Konstruktor übergebene Remote-Konfiguration zurück, mit der sich der datenverteiler verbinden solljava.nio.file.PathgetRootDir()Gibt das Wurzelverzeichnis der Testumgebung zurück.static java.lang.Class<?>getTestClass(java.lang.Class<?> testerClass)de.bsvrz.dav.dav.main.TransmittergetTransmitter()Gibt das Transmitter-Objekt des Datenverteilers zurückjava.lang.StringgetTransmitterDebugLevel()Gibt den Debug-Level des Datenverteilersjava.util.List<UserAccount>getUserAccounts()Gibt die Inhalte der Benutzerverwaltung zurückjava.nio.file.PathgetWorkingDirectory()Gibt das datenverteilerspezifische Verzeichnis der Testumgebung zurückbooleanisRunning()Gibt zurück, ob der Datenverteiler gestartet wurde, also entweder gerade startet oder schon läuft.protected voidonSuccessfulStart()voidsetActivePorts(int... activePorts)Setzt die aktiven PortsvoidsetAuthenticationFile(java.util.Map<java.lang.String,de.bsvrz.dav.daf.main.authentication.ClientCredentials> authenticationFile)Setzt die Inhalte der Passwort-Datei (passwd.properties)voidsetConfigurationDebugLevel(java.lang.String configurationDebugLevel)Setzt den Konfigurations-Debug-Level.voidsetConfigUser(java.lang.String configUser)Setzt den Benutzer, mit dem die Konfiguration gestartet wirdvoidsetDavUser(java.lang.String davUser)Setzt den Benutzer, mit dem der Datenverteiler gestartet wirdvoidsetParamAppType(ParamAppType paramAppType)Setzt den Typ der zu startenden Parametrierung.voidsetParamDebugLevel(java.lang.String paramDebugLevel)Setzt den Parametrierungs-Debug-Level.voidsetTransmitterDebugLevel(java.lang.String transmitterDebugLevel)Setzt den Datenverteiler-Debug-Level.voidsetUserAccounts(UserAccount... userAccounts)Setzt die Inhalte der Benutzerverwaltung.xmlvoidstart(java.lang.String... configurationAreas)Startet den Datenverteiler, sowie Konfiguration und Parameterierung (wenn entsprechend konfiguriert).voidstartWithoutWaiting()Startet den Datenverteiler ohne auf Fertigstellung zu wartenvoidstop()Stoppt den Datenverteiler (ohne das Verzeichnis zu löschen)voidstopWithoutFileDeletion()Deprecated.java.lang.StringtoString()voidwaitUntilReady()Wartet bis der Datenverteiler fertig geladen ist.SingleDavStarterwithClassPath(java.lang.String... classPath)Erweitert den Classpath um die angegebenen Dateien.SingleDavStarterwithParam(ParamAppType paramAppType)Setzt die Art der Parametrierung an diesem DatenverteilerSingleDavStarterwithReleaseVersion(ReleaseVersion version)Setzt die Version von Datenverteiler, Konfiguration und ggf.
-
-
-
Field Detail
-
_configurationController
protected final ConfigurationController _configurationController
-
-
Constructor Detail
-
SingleDavStarter
public SingleDavStarter()
Erstellt eine neue Testumgebung mit einem einzelnen Datenverteiler und mit Standard-ParameternEin 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üfungaccessControlPlugIns- 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üfungaccessControlPlugIns- Rechteprüfungs-Plugins (Optional, Klassennamen)appPort- Applikations-PortdavPort- Datenverteiler-PortpassivePort- Port for passiven Verbindungaufbau (oder 0 bei aktivem Verbindungsaufbau)name- Name der TestumgebungremoteConf- Remote-Konfiguration (wird vomMultiDavTestEnvironment.MultiDavStarterbei 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 TestumgebungremoteConf- Remote-Konfiguration (wird vomMultiDavTestEnvironment.MultiDavStarterbei Bedarf gesetzt, falls true wird keine eigene Konfiguration gestartet)accessControlPlugIns- Rechteprüfungs-Plugins (Optional, Klassennamen)accessControlType- Art der RechteprüfungappPort- Applikations-PortdavPort- Datenverteiler-PortpassivePort- Port for passiven Verbindungaufbau (oder 0 bei aktivem Verbindungsaufbau)testClass- Klasse des TestfallsworkingDir- 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, siehesetAuthenticationFile(Map)undsetUserAccounts(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 einerStandardApplication.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 einerStandardApplication.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, siehesetAuthenticationFile(Map)undsetUserAccounts(UserAccount...)).- Returns:
- Objekt, das die zu testende Applikation kapselt und Befehle wie Starten und Stoppen ermöglicht.
-
getAddress
public java.lang.String getAddress()
- Specified by:
getAddressin interfaceDavInformation
-
getPort
public final int getPort()
- Specified by:
getPortin interfaceDavInformation
-
getAppPort
public final int getAppPort()
Gibt den Anwendungs-Port zurück- Specified by:
getAppPortin interfaceDafApplicationEnvironment- Returns:
- Anwendungs-Port
-
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:
getNamein interfaceDavInformation- 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:
connectin interfaceDafApplicationEnvironment- 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 Authentifizierungpassword- 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 Authentifizierungpassword- Passwort zur AuthentifizierungclientDavParameters-- 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
-
getFakeParamApp
public FakeParamApp getFakeParamApp()
Gibt die Fake-Parametrierung zurück. Der Datenverteiler muss vorher erzeugt worden sein.- Specified by:
getFakeParamAppin interfaceDafApplicationEnvironment- Returns:
- FakeParamApp oder null falls nicht mit
setParamAppType(ParamAppType)aktiviert.
-
getConfigurationAuthority
public java.lang.String getConfigurationAuthority()
Description copied from interface:DafApplicationEnvironmentGibt den KV zurück- Specified by:
getConfigurationAuthorityin interfaceDafApplicationEnvironment- Returns:
- KV-Pid
-
waitUntilReady
public void waitUntilReady()
Wartet bis der Datenverteiler fertig geladen ist.
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
getWorkingDirectory
public java.nio.file.Path getWorkingDirectory()
Description copied from interface:DafApplicationEnvironmentGibt das datenverteilerspezifische Verzeichnis der Testumgebung zurück- Specified by:
getWorkingDirectoryin interfaceDafApplicationEnvironment- Returns:
- datenverteilerspezifische Verzeichnis der Testumgebung
-
getRootDir
public java.nio.file.Path getRootDir()
Description copied from interface:DafApplicationEnvironmentGibt das Wurzelverzeichnis der Testumgebung zurück. Hier können allgemeien daten abgelegt werden- Specified by:
getRootDirin interfaceDafApplicationEnvironment- Returns:
- Wurzelverzeichnis
-
setParamAppType
public void setParamAppType(ParamAppType paramAppType)
Setzt den Typ der zu startenden Parametrierung.- Specified by:
setParamAppTypein interfaceDafApplicationEnvironment- Parameters:
paramAppType- Typ der Parametrierung.
-
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
-
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)
-
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
-
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
-
setUserAccounts
public void setUserAccounts(UserAccount... userAccounts)
Setzt die Inhalte der Benutzerverwaltung.xml- Parameters:
userAccounts- Liste mit Benutzerkonten (Accounts)
-
getDavUser
public java.lang.String getDavUser()
Gibt den Datenverteiler-Benutzer zurück- Returns:
- den Datenverteiler-Benutzer
-
setDavUser
public void setDavUser(java.lang.String davUser)
Setzt den Benutzer, mit dem der Datenverteiler gestartet wird- Parameters:
davUser- Dav-Benutzer
-
getConfigUser
public java.lang.String getConfigUser()
Gibt den Konfigurationsbenutzer zurück- Returns:
- den Konfigurationsbenutzer
-
setConfigUser
public void setConfigUser(java.lang.String configUser)
Setzt den Benutzer, mit dem die Konfiguration gestartet wird- Parameters:
configUser- Konfigurations-Benutzer
-
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 deractivate-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 wieactivate(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:
finalizein classjava.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
-
-