Class DafApplication<T>


  • public class DafApplication<T>
    extends java.lang.Object
    Diese Klasse ermöglicht es, eine beliebige Datenverteiler-Applikation in einer Datenverteiler-Testumgebung zu instantiieren und zu testen.

    In der Regel werden Instanzen dieser Klasse mit SingleDavStarter.createStandardApplication(StandardApplication, List) oder (falls die Applikation nicht StandardApplication implementiert) mit SingleDavStarter.createApplication(Function, List) erzeugt.

    Wenn mehr Kontrolle über die Aufrufparameter etc. benötigt wird, kann von dieser Klasse abgeleitet werden, dann muss im Konstruktor eine Referenz auf die Testumgebung übergeben werden.

    • Constructor Summary

      Constructors 
      Modifier Constructor Description
      protected DafApplication​(DafApplicationEnvironment dafApplicationEnvironment, java.util.function.Function<java.lang.String[],​T> creator, java.util.List<java.lang.String> args, java.lang.String user)
      Konstruktor, bei dem die benötigten Informationen übergeben werden.
      protected DafApplication​(DafApplicationEnvironment dafApplicationEnvironment, java.util.function.Function<java.lang.String[],​T> creator, java.util.List<java.lang.String> args, java.lang.String debugLevel, java.lang.String user)
      Deprecated.
      debugLevel-Parameter ist überflüssig
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void addArguments​(java.lang.String... arguments)
      Fügt zusätzliche Aufrufargumente hinzu, muss vor dem Starten der Applikation aufgerufen werden.
      protected void addCustomArgs​(com.google.common.collect.ImmutableList.Builder<java.lang.String> builder)
      Kann überschrieben werden, un Aufrufargumente hinzuzufügen, die die Applikation immer benötigt
      de.bsvrz.dav.daf.main.config.ClientApplication getClientApplication()
      Gibt das Objekt zurück, das Datenverteilerseitig die gestartete Applikation repräsentiert.
      FakeParamApp getFakeParamApp()
      Gibt die FakeParamApp der Testumgebung zurück
      T getInstance()
      Gibt die Instanz der Applikationsklasse zurück
      de.bsvrz.dav.daf.main.ClientDavInterface getManagementConnection()  
      java.util.List<java.lang.String> getParameters()  
      java.nio.file.Path getRootDir()
      Gibt das Wurzelverzeichnis der Testumgebung zurück.
      protected void sendTerminationSignal()
      Sorgt dafür, dass die Applikation terminiert.
      T start()
      Startet die Applikation
      void startAndWait()
      Startet die Applikation und wartet, bis sie am Datenverteiler angemeldet ist.
      void startAndWaitUntilReady()
      Startet die Applikation und wartet, bis sie die Fertigmeldung verschickt hat.
      void terminate()
      Terminiert die Applikation
      java.lang.String toString()  
      de.bsvrz.dav.daf.main.config.ClientApplication waitUntilReady()
      Wartet, bis die Applikation die Fertigmeldung verschickt hat.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Method Detail

      • start

        public T start()
        Startet die Applikation
        Returns:
        Instanz der Applikationsklasse (z. B. Main-Klasse der Applikation)
      • getClientApplication

        public de.bsvrz.dav.daf.main.config.ClientApplication getClientApplication()
        Gibt das Objekt zurück, das Datenverteilerseitig die gestartete Applikation repräsentiert. Sollte die Applikation nicht sofort ermittelbar sein, wartet diese Methode, bis Sie gefunden wurde.

        Die Applikation wird über einen eindeutigen Inkarnationsnamen identifiziert

        Returns:
        Applikationsobjekt
      • waitUntilReady

        public de.bsvrz.dav.daf.main.config.ClientApplication waitUntilReady()
        Wartet, bis die Applikation die Fertigmeldung verschickt hat.
        Returns:
        Applikationsobjekt
      • startAndWait

        public void startAndWait()
        Startet die Applikation und wartet, bis sie am Datenverteiler angemeldet ist.
      • startAndWaitUntilReady

        public void startAndWaitUntilReady()
        Startet die Applikation und wartet, bis sie die Fertigmeldung verschickt hat.
      • getInstance

        public T getInstance()
        Gibt die Instanz der Applikationsklasse zurück
        Returns:
        Instanz
      • terminate

        public final void terminate()
        Terminiert die Applikation
      • sendTerminationSignal

        protected void sendTerminationSignal()
        Sorgt dafür, dass die Applikation terminiert. In der Standard-Implementierung wird der Datenverteiler aufgefordert, die Verbindung zu terminieren. Falls ein anderes Verhalten gewünscht ist, kann die Methode überschrieben werden.
      • getRootDir

        public final java.nio.file.Path getRootDir()
        Gibt das Wurzelverzeichnis der Testumgebung zurück. Hier können allgemeien daten abgelegt werden
        Returns:
        Wurzelverzeichnis
      • addArguments

        public void addArguments​(java.lang.String... arguments)
        Fügt zusätzliche Aufrufargumente hinzu, muss vor dem Starten der Applikation aufgerufen werden.
        Parameters:
        arguments -
      • addCustomArgs

        protected void addCustomArgs​(com.google.common.collect.ImmutableList.Builder<java.lang.String> builder)
        Kann überschrieben werden, un Aufrufargumente hinzuzufügen, die die Applikation immer benötigt
        Parameters:
        builder - List-Builder, an den zusätzliche Argumente angehängt werden können
      • getFakeParamApp

        public FakeParamApp getFakeParamApp()
        Gibt die FakeParamApp der Testumgebung zurück
        Returns:
        FakeParamApp
      • getManagementConnection

        public de.bsvrz.dav.daf.main.ClientDavInterface getManagementConnection()
      • getParameters

        public java.util.List<java.lang.String> getParameters()
      • toString

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