Class UdaClient

  • All Implemented Interfaces:
    de.bsvrz.dav.daf.main.ApplicationCloseActionHandler, de.bsvrz.dav.daf.main.DavConnectionListener, java.lang.Runnable

    public class UdaClient
    extends java.util.TimerTask
    implements de.bsvrz.dav.daf.main.DavConnectionListener, de.bsvrz.dav.daf.main.ApplicationCloseActionHandler
    Realisierung einer logsichen Verbindung mit einer Anwendung "Umfassende Datenanalyse"
    Die Klasse stellt eine neue Datenverteilerverbindung auf Basis der übergebenen Verbindung her und führt eine Anmeldung mit den gegebenen Nutzerdaten aus. Die Anmeldeversuche werden solange wiederholt, bis eine Verbindung hergestellt werden konnte bzw. wir automatisch wiederhergestellt, wenn die Verbindung unterbrochen wird. Innerhalb der Klasse werden die Daten der über eine Liste von PID definierten UDA-Module verwaltet und zur Verfügung gestellt.
    • Constructor Summary

      Constructors 
      Constructor Description
      UdaClient​(de.bsvrz.dav.daf.main.ClientDavInterface verbindung, java.lang.String nutzer, java.lang.String passwort, java.lang.String[] modulPids)
      Konstruktor.
      Die Funktion erzeugt eine Instanz der Klasse, die eine Datenverteilerverbindung mit den Parametern der übergebenen Verbindung herstellt.
    • Method Summary

      Modifier and Type Method Description
      void addConnectionListener​(UdaConnectionListener listener)
      fügt der Klasse einen Listener hinzu, der bei der Änderung des Verbindungszustandes benachrichtigt werden soll.
      void close​(java.lang.String error)
      .
      void connectionClosed​(de.bsvrz.dav.daf.main.ClientDavInterface conn)
      behandelt den Abbruch der Verbindung zum Datenverteiler.
      Die Liste der Module wird zurückgesetzt.
      java.util.Collection<ClientModul> getModule()
      liefert die Menge der verwalteten UdaModule.
      de.bsvrz.dav.daf.main.ClientDavInterface getVerbindung()
      liefert die Verbindung, über den das Modul mit dem Datenverteiler kommunizieren sollen.
      boolean isConnected()
      ermittelt, ob die Verbindung des Moduls mit dem Datenverteiler erfolgreich hergestellt werden konnte.
      ParserResult parseSkriptText​(java.lang.String fileName)
      prüfen eines Uda-Skripttextes auf syntaktische Korrektheit.
      void removeConnectionListener​(UdaConnectionListener listener)
      entfernt einen Listener, der bei der Änderung des Verbindungszustandes benachrichtigt wurde.
      void run()
      .
      • Methods inherited from class java.util.TimerTask

        cancel, scheduledExecutionTime
      • Methods inherited from class java.lang.Object

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

      • UdaClient

        public UdaClient​(de.bsvrz.dav.daf.main.ClientDavInterface verbindung,
                         java.lang.String nutzer,
                         java.lang.String passwort,
                         java.lang.String[] modulPids)
                  throws de.bsvrz.dav.daf.main.MissingParameterException
        Konstruktor.
        Die Funktion erzeugt eine Instanz der Klasse, die eine Datenverteilerverbindung mit den Parametern der übergebenen Verbindung herstellt. Wird keine Verbindung übergeben, werden die Standard-Parameter für eine Datenverteilerverbindung verwendet.
        Die Anmeldung beim Datenverteiler erfolgt mit den übergebenen Identifikationsdaten.
        Die Liste der PIDs beschreibt, die zu verwaltenden Module.
        Parameters:
        verbindung - die Datenverteilerverbindung
        nutzer - der Name des Nutzers für die Datenverteileranmeldung
        passwort - das Passwort für die Anmeldung
        modulPids - die Liste der PIDs zur Ermittlung der UdaModule
        Throws:
        de.bsvrz.dav.daf.main.MissingParameterException - ein für die Herstellung der Verbindung erforderlicher Parameter wurde nicht angegeben
    • Method Detail

      • getVerbindung

        public de.bsvrz.dav.daf.main.ClientDavInterface getVerbindung()
        liefert die Verbindung, über den das Modul mit dem Datenverteiler kommunizieren sollen.
        Returns:
        die Verbindung
      • isConnected

        public boolean isConnected()
        ermittelt, ob die Verbindung des Moduls mit dem Datenverteiler erfolgreich hergestellt werden konnte.
        Returns:
        true, wenn eine gültige Verbindung besteht
      • run

        public void run()
        . Die Funktion versucht die Verbindung zum Datenverteiler bei Bedarf wiederherzustellen.
        Specified by:
        run in interface java.lang.Runnable
        Specified by:
        run in class java.util.TimerTask
        See Also:
        TimerTask.run()
      • connectionClosed

        public void connectionClosed​(de.bsvrz.dav.daf.main.ClientDavInterface conn)
        behandelt den Abbruch der Verbindung zum Datenverteiler.
        Die Liste der Module wird zurückgesetzt. .
        Specified by:
        connectionClosed in interface de.bsvrz.dav.daf.main.DavConnectionListener
        See Also:
        DavConnectionListener.connectionClosed(de.bsvrz.dav.daf.main.ClientDavInterface)
      • close

        public void close​(java.lang.String error)
        . Die Funktion implementiert die entsprechende Funktion des CloseHandlers, um ein Beenden der gesamten Anwendung zu verhindern (Standardverhalten).
        Die Liste der Module wird zurückgesetzt.
        Specified by:
        close in interface de.bsvrz.dav.daf.main.ApplicationCloseActionHandler
        See Also:
        ApplicationCloseActionHandler.close(java.lang.String)
      • getModule

        public java.util.Collection<ClientModul> getModule()
        liefert die Menge der verwalteten UdaModule.
        Returns:
        die Module
      • parseSkriptText

        public ParserResult parseSkriptText​(java.lang.String fileName)
        prüfen eines Uda-Skripttextes auf syntaktische Korrektheit.
        Parameters:
        fileName - der Name der Datei, die den Skripttext enthält
        Returns:
        das Ergebnis