de.bsvrz.dav.daf.main
Class ClientDavConnection

java.lang.Object
  extended by de.bsvrz.dav.daf.main.ClientDavConnection
All Implemented Interfaces:
ClientDavInterface

public class ClientDavConnection
extends Object
implements ClientDavInterface

Diese Klasse repräsentiert die logische Verbindung zum Datenverteiler.

Author:
Kappich Systemberatung

Nested Class Summary
private  class ClientDavConnection.ImplicitReceiver
           
(package private)  class ClientDavConnection.ImplicitSubscriptionNote
           
(package private)  class ClientDavConnection.ImplicitUnsubscriber
           
private  class ClientDavConnection.ReadyMessageSender
           
 
Field Summary
private  boolean _applicationSendsDoneMessage
          Hält fest, ob sich eine Applikation explizit selbst um die Fertigmeldung kümmert oder nicht.
private  List<DavConnectionListener> _connectionListeners
          Enthält die Beobachter, die eine Mitteilung erhalten wollen, wenn die Verbindung zum Datenverteiler terminiert wird.
private static Debug _debug
           
private  Map<AttributeGroup,Data> _defaultData
          Diese Map speichert zu einer Attributgruppe, den dazugehörigen "leeren" Datensatz, der vom Datenverteiler zur Verfügung gestellt wurde.
private  ClientSenderInterface _readyMessageSender
          Der Sender, der die Fertigmeldung verschickt.
private  StreamedRequestManager _streamedRequestManager
          verwaltet Archivantworten
private  CacheManager cacheManager
          Der Cachemanager
private  ClientDavParameters clientDavParameters
          Die Startparameter
private  ApplicationCloseActionHandler closer
          Das Objekt, das für das Schliessen nach Auftritt eines Fehlers zuständig ist.
private  ConfigurationManager configurationManager
          Der Konfigurationsmanager
private  boolean connected
          Information über den Verbindungsstatus.
private  DataModel dataModel
          Das DataModel Objekt dieser Verbindung.
private  ClientHighLevelCommunication highLevelCommunication
          Die höhere Ebene der Kommunikation
private  ClientDavConnection.ImplicitReceiver implicitReceiver
          Empfänger für Implizitanmeldungen
private  Object implicitSubscriptionDataReceived
          Monitorobjekt mit dem Aktualisierungen von impliziten Anmeldungen kommuniziert werden.
private  Hashtable implicitSubscriptions
          Die Liste wo die Implizitanmeldungen eingetragen werden.
private  ClientDavConnection.ImplicitUnsubscriber implicitUnsubscriber
          Der Abmelder der Implizitanmeldungen
private  boolean logged
          Information über den Authentifizierungsstatus.
private  SimulationTime simulationTime
          Simulationszeithilfsobjekt
private  SubscriptionManager subscriptionManager
          Der Anmeldemanager
 
Constructor Summary
ClientDavConnection()
          Erzeugt eine neue logische Datenverteilerverbindung mit Default-Parametern.
ClientDavConnection(ClientDavParameters parameters)
          Erzeugt eine neue logische Datenverteilerverbindung mit den angegebenen Parametern.
ClientDavConnection(ClientDavParameters parameters, DataModel dataModel)
          Erzeugt eine neue logische Datenverteilerverbindung mit den angegebenen Parametern.
 
Method Summary
 void addConnectionListener(DavConnectionListener davConnectionListener)
          Ergänzt einen neuen Beobachter für bestimmte Zustandsänderungen bzgl.
private  Aspect aspectToSubstitute(AttributeGroup attributeGroup, Aspect aspect)
          Gibt die Aspektumleitung für eine Kombination von Attributgruppe und Aspekt zurück.
private  void checkDataIdentification(SystemObject[] objects, AttributeGroup atg, Aspect aspect, String context)
          Überprüft, ob die angegebene Kombination von Objekt, Attributgruppe und Aspekt zulässig ist.
 boolean checkLoggedUserNameAndPassword(String userName, String password)
          Vergleicht den angegebenen Benutzernamen und das angegebene Benutzerpasswort mit den entsprechenden Werten, die beim Verbindungsaufbau zum Datenverteiler benutzt wurden.
private  ResultData composeApplicationReadyMessage(DataModel configuration, AttributeGroup attributeGroup, boolean sendNotReadyYet)
          Erstellt die zu versendende Fertigmeldung
 void connect()
          Initialisiert einen Kommunikationskanal zum Datenverteiler mit den in den Verbindungsparametern angegebenen Addressinformationen.
 Data createData(AttributeGroup attributeGroup)
          Liefert einen neuen initialisierten Datensatz zurück, der mit Attributwerten der in der angegebenen Attributgruppe definierten Attribute gefüllt ist.
 void disconnect(boolean error, String message)
          Terminiert die Verbindung mit dem Datenverteiler.
 void enableExplicitApplicationReadyMessage()
          Diese Methode sollte von Applikationen, die den Zeitpunkt zum Versand der Applikations-Fertigmeldung selbst vorgeben möchten, vor der Authentifizierung einer Datenverteilerverbindung aufrufen.
 ArchiveRequestManager getArchive()
          Liefert ein Stellvertreterobjekt zurück, mit dem streambasierte Archivanfragen über das lokale Archivsystem abgewickelt werden können.
 ArchiveRequestManager getArchive(SystemObject archiveSystem)
          Liefert ein Stellvertreterobjekt zurück, mit dem streambasierte Archivanfragen über ein bestimmtes Archivsystem abgewickelt werden können.
 ResultData[] getCachedData(SystemObject[] objects, DataDescription dataDescription, ReceiveOptions options, HistorySpecification history)
          Zugriff auf zwischengespeicherte Datensätze.
 ClientDavParameters getClientDavParameters()
          Bestimmt die Verbindungsparameter der Datenverteiler-Applikationsfunktionen.
 ResultData[] getData(SystemObject[] objects, DataDescription dataDescription, long unsubscriptionTime)
          Zugriff auf die aktuellen Datensätze von verschiedenen System-Objekten.
 ResultData getData(SystemObject object, DataDescription dataDescription, long unsubscriptionTime)
          Zugriff auf den aktuellen Datensatz eines System-Objekts.
 DataModel getDataModel()
          Gibt das Datenmodell zurück, über das auf die Konfiguration zugegriffen werden kann.
 long getDavRoundTripTime()
          Bestimmt die Telegrammlaufzeit von dieser Applikation zum lokalen Datenverteiler und zurück.
 ClientApplication getLocalApplicationObject()
          Gibt das Stellvertreterobjekt für diese Applikation zurück.
 long getLocalApplicationObjectId()
          Gibt die Id des Stellvertreterobjekts für diese Applikation zurück.
 ConfigurationAuthority getLocalConfigurationAuthority()
          Gibt das Stellvertreterobjekt des zugeordneten Konfigurationsverantwortlichen zurück.
 DavApplication getLocalDav()
          Gibt das Stellvertreterobjekt für den Datenverteiler, mit dem die Applikation verbunden ist, zurück.
 DynamicObject getLocalUser()
          Bestimmt das Systemobjekt für den angemeldeten Benutzer.
 long getTime()
          Bestimmt die aktuelle Zeit oder, wenn die Applikation mit der Simulationsvariante einer Offline-Simulation gestartet wurde, die simulierte Zeit.
 void login()
          Start der logischen Verbindung mit dem Datenverteiler.
 void login(String userName, String password)
          Start der logischen Verbindung mit dem Datenverteiler.
private  void notifyConnectionClosed()
           
 void removeConnectionListener(DavConnectionListener davConnectionListener)
          Entfernt einen Beobachter für bestimmte Zustandsänderungen bzgl.
 void sendApplicationReadyMessage()
          Methode, die von der Applikation aufgerufen werden kann, um explizit eine Applikations-Fertigmeldung zu versenden.
private  void sendApplicationReadyMessage(boolean sendNotReadyYet)
          Meldet sich als Quelle beim Datenverteiler an und verschickt eine (Noch-nicht-)Fertigmeldung.
 void sendData(ResultData result)
          Sendet einen Ergebnisdatensatz zum Datenverteiler.
 void sendData(ResultData[] results)
          Sendet mehrere Ergebnisdatensätze zum Datenverteiler.
 void setCloseHandler(ApplicationCloseActionHandler closer)
          Setzt das Objekt, das für die Behandlung von Fehlern der Kommunikationsverbindung zuständig ist.
 void sleep(long timeToSleep)
          Blockiert den aufrufenden Thread für die spezifizierte Zeit.
 void sleepUntil(long absolutTime)
          Blockiert den aufrufenden Thread bis die spezifizierte Zeit erreicht ist.
 void subscribeReceiver(ClientReceiverInterface receiver, Collection<SystemObject> objects, DataDescription dataDescription, ReceiveOptions options, ReceiverRole role)
          Anmeldung zum Empfangen von Daten.
 void subscribeReceiver(ClientReceiverInterface receiver, Collection<SystemObject> objects, DataDescription dataDescription, ReceiveOptions options, ReceiverRole role, long cacheTime)
          Anmeldung zum Empfangen von Daten.
 void subscribeReceiver(ClientReceiverInterface receiver, SystemObject[] objects, DataDescription dataDescription, ReceiveOptions options, ReceiverRole role)
          Anmeldung zum Empfangen von Daten.
 void subscribeReceiver(ClientReceiverInterface receiver, SystemObject[] objects, DataDescription dataDescription, ReceiveOptions options, ReceiverRole role, long cacheTime)
          Anmeldung zum Empfangen von Daten.
 void subscribeReceiver(ClientReceiverInterface receiver, SystemObject object, DataDescription dataDescription, ReceiveOptions options, ReceiverRole role)
          Anmeldung zum Empfangen von Daten.
 void subscribeReceiver(ClientReceiverInterface receiver, SystemObject object, DataDescription dataDescription, ReceiveOptions options, ReceiverRole role, long cacheTime)
          Anmeldung zum Empfangen von Daten.
 void subscribeSender(ClientSenderInterface sender, Collection<SystemObject> objects, DataDescription dataDescription, SenderRole role)
          Anmeldung zum Senden von Daten.
 void subscribeSender(ClientSenderInterface sender, SystemObject[] objects, DataDescription dataDescription, SenderRole role)
          Anmeldung zum Senden von Daten.
 void subscribeSender(ClientSenderInterface sender, SystemObject object, DataDescription dataDescription, SenderRole role)
          Anmeldung zum Senden von Daten.
 void subscribeSource(ClientSenderInterface sender, ResultData initialData)
          Anmeldung als Quelle und versenden von initialen Daten.
 void unsubscribeReceiver(ClientReceiverInterface receiver, Collection<SystemObject> objects, DataDescription dataDescription)
          Abmeldung von angemeldeten Daten.
 void unsubscribeReceiver(ClientReceiverInterface receiver, SystemObject[] objects, DataDescription dataDescription)
          Abmeldung von angemeldeten Daten.
 void unsubscribeReceiver(ClientReceiverInterface receiver, SystemObject object, DataDescription dataDescription)
          Abmeldung von angemeldeten Daten.
 void unsubscribeSender(ClientSenderInterface sender, Collection<SystemObject> objects, DataDescription dataDescription)
          Abmeldung von angemeldeten Daten.
 void unsubscribeSender(ClientSenderInterface sender, SystemObject[] objects, DataDescription dataDescription)
          Abmeldung von angemeldeten Daten.
 void unsubscribeSender(ClientSenderInterface sender, SystemObject object, DataDescription dataDescription)
          Abmeldung von angemeldeten Daten.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

_debug

private static final Debug _debug

highLevelCommunication

private ClientHighLevelCommunication highLevelCommunication
Die höhere Ebene der Kommunikation


cacheManager

private CacheManager cacheManager
Der Cachemanager


configurationManager

private ConfigurationManager configurationManager
Der Konfigurationsmanager


subscriptionManager

private SubscriptionManager subscriptionManager
Der Anmeldemanager


clientDavParameters

private ClientDavParameters clientDavParameters
Die Startparameter


implicitSubscriptionDataReceived

private Object implicitSubscriptionDataReceived
Monitorobjekt mit dem Aktualisierungen von impliziten Anmeldungen kommuniziert werden.


implicitSubscriptions

private Hashtable implicitSubscriptions
Die Liste wo die Implizitanmeldungen eingetragen werden.


implicitUnsubscriber

private ClientDavConnection.ImplicitUnsubscriber implicitUnsubscriber
Der Abmelder der Implizitanmeldungen


implicitReceiver

private final ClientDavConnection.ImplicitReceiver implicitReceiver
Empfänger für Implizitanmeldungen


dataModel

private DataModel dataModel
Das DataModel Objekt dieser Verbindung.


closer

private ApplicationCloseActionHandler closer
Das Objekt, das für das Schliessen nach Auftritt eines Fehlers zuständig ist.


connected

private boolean connected
Information über den Verbindungsstatus.


logged

private boolean logged
Information über den Authentifizierungsstatus.


simulationTime

private SimulationTime simulationTime
Simulationszeithilfsobjekt


_streamedRequestManager

private StreamedRequestManager _streamedRequestManager
verwaltet Archivantworten


_connectionListeners

private List<DavConnectionListener> _connectionListeners
Enthält die Beobachter, die eine Mitteilung erhalten wollen, wenn die Verbindung zum Datenverteiler terminiert wird.


_defaultData

private final Map<AttributeGroup,Data> _defaultData
Diese Map speichert zu einer Attributgruppe, den dazugehörigen "leeren" Datensatz, der vom Datenverteiler zur Verfügung gestellt wurde. Alle Attribute des Datensatzes enthalten entweder den "Default-Wert", falls dieser definiert wurde, oder den sogenannten "undefiniert Wert". Der Datensatz der Map ist nicht änderbar und wird nicht zurückgegeben. Falls der Datensatz gebraucht wird, wird eine "modifizierbare" Kopie angelegt und diese zurückgegeben.

Die Map ist nicht synchronisiert.

Als Schlüssel dient die Attributgruppe, als Value wird ein nicht modifizierbarer Datensatz gespeichert der benutzt wird um eine modifizierbare Kopie zu erzeugen.


_applicationSendsDoneMessage

private boolean _applicationSendsDoneMessage
Hält fest, ob sich eine Applikation explizit selbst um die Fertigmeldung kümmert oder nicht. Aus Kompatibilitätsgründen wird angenommen, dass die Applikation sich nicht um eine Fertigmeldung kümmert. Das Flag kann mit der Methode enableExplicitApplicationReadyMessage() gesetzt werden.


_readyMessageSender

private ClientSenderInterface _readyMessageSender
Der Sender, der die Fertigmeldung verschickt.

Constructor Detail

ClientDavConnection

public ClientDavConnection()
                    throws MissingParameterException
Erzeugt eine neue logische Datenverteilerverbindung mit Default-Parametern.

Throws:
MissingParameterException - Wenn notwendige Informationen nicht in den Default-Parametern spezifiziert wurden.

ClientDavConnection

public ClientDavConnection(ClientDavParameters parameters)
                    throws MissingParameterException
Erzeugt eine neue logische Datenverteilerverbindung mit den angegebenen Parametern.

Parameters:
parameters - Parameter für die Datenverteiler-Applikationsfunktionen.
Throws:
MissingParameterException - Wenn notwendige Informationen nicht in den übergebenen Parametern spezifiziert wurden.

ClientDavConnection

public ClientDavConnection(ClientDavParameters parameters,
                           DataModel dataModel)
                    throws MissingParameterException
Erzeugt eine neue logische Datenverteilerverbindung mit den angegebenen Parametern. Es wird keine Verbindung zur Konfiguration aufgebaut, sämtliche konfigurierenden Anfragen werden über das angegebene Datenmodell abgewickelt. Dieser Konstruktor ist für die Konfigurations-Applikation vorgesehen, da diese ihr Datenmodell selbst verwaltet.

Parameters:
parameters - Parameter für die Datenverteiler-Applikationsfunktionen.
dataModel - Das zu verwendende Datenmodell für Konfigurationsanfragen.
Throws:
MissingParameterException - Wenn notwendige Informationen nicht in den übergebenen Parametern spezifiziert wurden.
Method Detail

setCloseHandler

public void setCloseHandler(ApplicationCloseActionHandler closer)
Description copied from interface: ClientDavInterface
Setzt das Objekt, das für die Behandlung von Fehlern der Kommunikationsverbindung zuständig ist. Die Applikation kann mit dem übergebenen Objekt selbst steuern, wie Verbindungsfehler dargestellt wird, und ob sich die Applikation beenden oder eine neue Verbindung aufgebauen soll. Wenn diese Methode nicht aufgerufen wird, wird als Default ein Objekt der Klasse SystemTerminator benutzt, das bei Kommunikationsfehlern eine Fehlermeldung ausgibt und die Applikation terminiert.

Specified by:
setCloseHandler in interface ClientDavInterface
Parameters:
closer - Objekt für die Behandlung von Kommunikationsfehlern.

getTime

public final long getTime()
Description copied from interface: ClientDavInterface
Bestimmt die aktuelle Zeit oder, wenn die Applikation mit der Simulationsvariante einer Offline-Simulation gestartet wurde, die simulierte Zeit.

Specified by:
getTime in interface ClientDavInterface
Returns:
Zeitpunkt in Millisekunden seit 1970.

sleep

public final void sleep(long timeToSleep)
Description copied from interface: ClientDavInterface
Blockiert den aufrufenden Thread für die spezifizierte Zeit. Die angegebene Dauer der Pause wird in Realzeit oder, wenn die Applikation mit der Simulationsvariante einer Offline-Simulation gestartet wurde, im Zeitfluss der Simulation berücksichtigt.

Specified by:
sleep in interface ClientDavInterface
Parameters:
timeToSleep - Wartezeit in Millisekunden seit 1970.

sleepUntil

public final void sleepUntil(long absolutTime)
Description copied from interface: ClientDavInterface
Blockiert den aufrufenden Thread bis die spezifizierte Zeit erreicht ist. Der angegebene Zeitpunkt wird in Realzeit oder, wenn die Applikation mit der Simulationsvariante einer Offline-Simulation gestartet wurde, im Zeitfluss der Simulation berücksichtigt.

Specified by:
sleepUntil in interface ClientDavInterface
Parameters:
absolutTime - Abzuwartender Zeitpunkt in Millisekunden seit 1970.

getArchive

public ArchiveRequestManager getArchive()
Description copied from interface: ClientDavInterface
Liefert ein Stellvertreterobjekt zurück, mit dem streambasierte Archivanfragen über das lokale Archivsystem abgewickelt werden können. Dieser Aufruf ist äquivalent zu dem Aufruf getArchive(getLocalConfigurationAuthority).

Specified by:
getArchive in interface ClientDavInterface
Returns:
Stellvertreterobjekt zur Abwicklung von Archivanfragen über das lokale Archivsystem.
See Also:
ClientDavInterface.getLocalConfigurationAuthority(), ClientDavInterface.getArchive(SystemObject)

getArchive

public ArchiveRequestManager getArchive(SystemObject archiveSystem)
Description copied from interface: ClientDavInterface
Liefert ein Stellvertreterobjekt zurück, mit dem streambasierte Archivanfragen über ein bestimmtes Archivsystem abgewickelt werden können. Es wird eine Verbindung zu demjenigen Archivsystem hergestellt, dass über das angegebene System-Objekt identifiziert wird.

Specified by:
getArchive in interface ClientDavInterface
Parameters:
archiveSystem - Archivsystem über das Archivanfragen abgewickelt werden sollen.
Returns:
Stellvertreterobjekt zur Abwicklung von Archivanfragen über das spezifizierte Archivsystem.

connect

public final void connect()
                   throws CommunicationError,
                          ConnectionException
Description copied from interface: ClientDavInterface
Initialisiert einen Kommunikationskanal zum Datenverteiler mit den in den Verbindungsparametern angegebenen Addressinformationen. Nach dem Aufbau der physischen Verbindung wird die in der Kommunikation mit dem Datenverteiler zu verwendende Protokollversion verhandelt und die logische Verbindung in den Zustand Initialisiert überführt.

Specified by:
connect in interface ClientDavInterface
Throws:
CommunicationError - Wenn bei der initialen Kommunikation mit dem Datenverteiler Fehler aufgetreten sind.
ConnectionException - Wenn die physische Verbindung zum Datenverteiler nicht hergestellt werden konnte.
See Also:
ClientDavParameters

disconnect

public final void disconnect(boolean error,
                             String message)
Description copied from interface: ClientDavInterface
Terminiert die Verbindung mit dem Datenverteiler. Der physische Kommunikationskanal zum Datenverteiler wird geschlossen und die logische Verbindung in den Zustand AußerBetrieb überführt. Bei einer normalen Terminierung wird sichergestellt, daß alle im Sendepuffer enthaltenen Telegramme vor dem Schließen des Kommunikationskanals gesendet werden. Bei einer abnormalen Terminierung wird der Kommunikationskanal sofort geschlossen.

Specified by:
disconnect in interface ClientDavInterface
Parameters:
error - Information, ob es sich um eine abnormale Terminierung der Verbindung handelt.
message - Fehlertext, der im Falle einer abnormalen Terminierung die Ursache des Terminierung beschreibt, oder null wenn die Ursache nicht bekannt ist.

login

public final void login()
                 throws InconsistentLoginException,
                        CommunicationError
Description copied from interface: ClientDavInterface
Start der logischen Verbindung mit dem Datenverteiler. Dabei wird eine Authentifizierung des Benutzers beim Datenverteiler durchgeführt und die logische Verbindung in den Zustand InBetrieb überführt. Als Benutzername und Passwort werden die entsprechenden Werte aus den Verbindungsparametern benutzt.

Specified by:
login in interface ClientDavInterface
Throws:
InconsistentLoginException - Wenn Benutzername oder Passwort nicht korrekt sind.
CommunicationError - Wenn bei der Kommunikation mit dem Datenverteiler Fehler aufgetreten sind.

login

public final void login(String userName,
                        String password)
                 throws InconsistentLoginException,
                        CommunicationError
Description copied from interface: ClientDavInterface
Start der logischen Verbindung mit dem Datenverteiler. Dabei wird eine Authentifizierung des Benutzers beim Datenverteiler durchgeführt und die logische Verbindung in den Zustand InBetrieb überführt.

Specified by:
login in interface ClientDavInterface
Parameters:
userName - Name des Benutzers für die Authentifizierung.
password - Passwort des Benutzers für die Authentifizierung.
Throws:
InconsistentLoginException - Wenn Benutzername oder Passwort nicht korrekt sind.
CommunicationError - Wenn bei der Kommunikation mit dem Datenverteiler Fehler aufgetreten sind.

aspectToSubstitute

private Aspect aspectToSubstitute(AttributeGroup attributeGroup,
                                  Aspect aspect)
Gibt die Aspektumleitung für eine Kombination von Attributgruppe und Aspekt zurück. Wenn keine entsprechende Aspektumleitung besteht, wird der übergebene Original-Aspekt zurückgegeben.

Parameters:
attributeGroup - die Attributgruppe
aspect - der Aspekt
Returns:
Den zu verwendenden Aspekt, falls es eine Aspektumleitung gibt, sonst den übergebenen Aspekt.

checkDataIdentification

private void checkDataIdentification(SystemObject[] objects,
                                     AttributeGroup atg,
                                     Aspect aspect,
                                     String context)
Überprüft, ob die angegebene Kombination von Objekt, Attributgruppe und Aspekt zulässig ist.

Parameters:
objects - zu prüfende Objekte
atg - zu prüfende Attributgruppe
aspect - zu prüfenden Aspekt
context - Kontext, von dem diese Prüfung vorgenommen wird
Throws:
IllegalArgumentException - Wenn die angegebene Kombination von Objekt, Attributgruppe und Aspekt nicht zulässig ist.

getCachedData

public final ResultData[] getCachedData(SystemObject[] objects,
                                        DataDescription dataDescription,
                                        ReceiveOptions options,
                                        HistorySpecification history)
Description copied from interface: ClientDavInterface
Zugriff auf zwischengespeicherte Datensätze. Über die optionale Zeitangabe kann auch auf historische Datensätze im Zwischenspeicher zugegriffen werden.

Specified by:
getCachedData in interface ClientDavInterface
Parameters:
objects - Feld mit System-Objekten für die die spezifizierten Daten zu lesen sind.
dataDescription - Beschreibende Informationen zu den gewünschten Daten.
options - Für den Zugriff zu verwendenden Optionen
history - Spezifikation der gewünschten Historie oder null wenn nur die aktuellen Daten gewünscht sind.
Returns:
Zeitlich sortiertes Feld mit den gewünschten Daten.

getData

public final ResultData[] getData(SystemObject[] objects,
                                  DataDescription dataDescription,
                                  long unsubscriptionTime)
Description copied from interface: ClientDavInterface
Zugriff auf die aktuellen Datensätze von verschiedenen System-Objekten. Wenn einzelne der spezifizierten Datensätze nicht angemeldet sind, dann werden sie implizit angemeldet. Falls zu einzelnen spezifizierten Datensätzen noch kein Ergebnis vorliegt, wird darauf gewartet. Eine implizite Anmeldung wird wieder rückgängig gemacht, wenn über eine angegebene Zeitspanne kein Zugriff mehr auf das Datum erfolgte.

Specified by:
getData in interface ClientDavInterface
Parameters:
objects - Feld mit System-Objekten für die die spezifizierten Daten zu lesen sind.
dataDescription - Beschreibende Informationen der zu lesenden Daten.
unsubscriptionTime - Relative Zeitangabe in Millisekunden nach der eine implizite Anmeldung wieder abgemeldet werden kann.
Returns:
Feld mit den aktuellen Datensätzen.

getData

public ResultData getData(SystemObject object,
                          DataDescription dataDescription,
                          long unsubscriptionTime)
Description copied from interface: ClientDavInterface
Zugriff auf den aktuellen Datensatz eines System-Objekts. Wenn der spezifizierte Datensatz zwischengespeichert ist, dann wird er sofort zur Verfügung gestellt. Wenn der Datensatz nicht angemeldet ist, dann wird er implizit angemeldet. Falls noch kein Ergebnis vorliegt, wartet die Methode darauf. Eine implizite Anmeldung wird wieder rückgängig gemacht, wenn über eine angegebene Zeitspanne kein Zugriff mehr auf das Datum erfolgte.

Specified by:
getData in interface ClientDavInterface
Parameters:
object - System-Objekt für das die spezifizierten Daten zu lesen sind.
dataDescription - Beschreibende Informationen zu dem zu lesenden Datensatz.
unsubscriptionTime - Relative Zeitangabe in Millisekunden nach der eine implizite Anmeldung wieder abgemeldet werden kann.
Returns:
Der aktuelle Datensatz.

getDataModel

public final DataModel getDataModel()
Description copied from interface: ClientDavInterface
Gibt das Datenmodell zurück, über das auf die Konfiguration zugegriffen werden kann.

Specified by:
getDataModel in interface ClientDavInterface
Returns:
Datenmodell zum Zugriff auf die Konfiguration

getDavRoundTripTime

public final long getDavRoundTripTime()
Description copied from interface: ClientDavInterface
Bestimmt die Telegrammlaufzeit von dieser Applikation zum lokalen Datenverteiler und zurück.

Specified by:
getDavRoundTripTime in interface ClientDavInterface
Returns:
Telegrammlaufzeit in Millisekunden oder -1, wenn innerhalb 60 Sekunden keine Antwort empfangen wurde.

getLocalConfigurationAuthority

public ConfigurationAuthority getLocalConfigurationAuthority()
Description copied from interface: ClientDavInterface
Gibt das Stellvertreterobjekt des zugeordneten Konfigurationsverantwortlichen zurück.

Specified by:
getLocalConfigurationAuthority in interface ClientDavInterface
Returns:
Konfigurationsverantwortlicher.

getLocalApplicationObject

public final ClientApplication getLocalApplicationObject()
Description copied from interface: ClientDavInterface
Gibt das Stellvertreterobjekt für diese Applikation zurück. Die Erzeugung des entsprechenden Objekts in der Konfiguration wird vom Datenverteiler nach dem Verbindungsaufbau und der erfolgreichen Authentifizierung veranlasst.

Specified by:
getLocalApplicationObject in interface ClientDavInterface
Returns:
Stellvertreterobjekt für die lokale Applikation.

getLocalApplicationObjectId

public long getLocalApplicationObjectId()
Gibt die Id des Stellvertreterobjekts für diese Applikation zurück. Die Erzeugung des entsprechenden Objekts in der Konfiguration wird vom Datenverteiler nach dem Verbindungsaufbau und der erfolgreichen Authentifizierung veranlasst.

Returns:
Id des Stellvertreterobjekts für die lokale Applikation.

getLocalUser

public final DynamicObject getLocalUser()
Description copied from interface: ClientDavInterface
Bestimmt das Systemobjekt für den angemeldeten Benutzer.

Specified by:
getLocalUser in interface ClientDavInterface
Returns:
Stellvertreterobjekt für den angemeldeten Benutzer.
Throws:
InitialisationNotCompleteException - Wenn die Authentifizierung noch nicht erfolgreich durchgeführt wurde.

getLocalDav

public final DavApplication getLocalDav()
Description copied from interface: ClientDavInterface
Gibt das Stellvertreterobjekt für den Datenverteiler, mit dem die Applikation verbunden ist, zurück.

Specified by:
getLocalDav in interface ClientDavInterface
Returns:
Stellvertreterobjekt für den verbundenen Datenverteiler.

sendData

public final void sendData(ResultData result)
                    throws DataNotSubscribedException,
                           SendSubscriptionNotConfirmed
Description copied from interface: ClientDavInterface
Sendet einen Ergebnisdatensatz zum Datenverteiler. Die Daten müssen vorher zum Senden angemeldet worden sein. Falls beim ersten Sendeversuch keine positive/negative Sendesteuerung vorhanden ist, wird ein fest vorgegebener Zeitraum abgewartet in dem eine positive/negative Sendesteuerung vorliegen muss. Wenn nach Ablauf des Zeitraums keine positive/negative Sendesteuerung vorliegt, wird eine SendSubscriptionNotConfirmed Exception geworfen, falls die positive Sendesteuerung vor dem Ablauf des Zeitraums vorliegt, werden die Daten verschickt, liegt eine negative Sendesteuerung vor, wird eine SendSubscriptionNotConfirmed Exception geworfen.
Falls die Sendesteuerung nach dem ersten erfolgreichen Sendeversuch wieder negativ wird, und es sollen erneut Daten verschickt werden, wird eine SendSubscriptionNotConfirmed Exception geworfen ohne die fest vorgegebene Zeitspanne abzuwarten.

Specified by:
sendData in interface ClientDavInterface
Parameters:
result - Ergebnis mit dem zu sendenden Datensatz.
Throws:
DataNotSubscribedException - Wenn die Daten nicht zum Senden angemeldet waren.
SendSubscriptionNotConfirmed - Wenn beim Senden als einfacher Sender gesendet wird, ohne die Sendesteuerung abzuwarten.

sendData

public final void sendData(ResultData[] results)
                    throws DataNotSubscribedException,
                           SendSubscriptionNotConfirmed
Description copied from interface: ClientDavInterface
Sendet mehrere Ergebnisdatensätze zum Datenverteiler. Die Daten müssen vorher zum Senden angemeldet worden sein. Falls beim ersten Sendeversuch keine positive/negative Sendesteuerung vorhanden ist, wird ein fest vorgegebener Zeitraum abgewartet in dem eine positive/negative Sendesteuerung vorliegen muss. Wenn nach Ablauf des Zeitraums keine positive/negative Sendesteuerung vorliegt, wird eine SendSubscriptionNotConfirmed Exception geworfen, falls die positive Sendesteuerung vor dem Ablauf des Zeitraums vorliegt, werden die Daten verschickt, liegt eine negative Sendesteuerung vor, wird eine SendSubscriptionNotConfirmed Exception geworfen.
Falls die Sendesteuerung nach dem ersten erfolgreichen Sendeversuch wieder negativ wird, und es sollen erneut Daten verschickt werden, wird eine SendSubscriptionNotConfirmed Exception geworfen ohne die fest vorgegebene Zeitspanne abzuwarten.

Specified by:
sendData in interface ClientDavInterface
Parameters:
results - Die zu sendenden Ergebnisdatensätze.
Throws:
DataNotSubscribedException - Wenn nicht alle Datensätze zum Senden angemeldet waren.
SendSubscriptionNotConfirmed - Wenn beim Senden als einfacher Sender gesendet wird, ohne die Sendesteuerung abzuwarten.

subscribeReceiver

public final void subscribeReceiver(ClientReceiverInterface receiver,
                                    Collection<SystemObject> objects,
                                    DataDescription dataDescription,
                                    ReceiveOptions options,
                                    ReceiverRole role)
Description copied from interface: ClientDavInterface
Anmeldung zum Empfangen von Daten. Mit der Anmeldung wird von der Applikation ein Objekt bereitgestellt, daß bei nachfolgenden Aktualisierungen der Daten entsprechend benachrichtigt wird.

Specified by:
subscribeReceiver in interface ClientDavInterface
Parameters:
receiver - Ein von der Applikation bereitzustellendes Objekt, das bei Aktualisierungen entsprechende Methodenaufrufe erhält.
objects - Liste mit System-Objekten für die die spezifizierten Daten anzumelden sind.
dataDescription - Beschreibende Informationen zu den anzumeldenden Daten.
options - Für die Anmeldung zu verwendende Optionen.
role - Für die Anmeldung zu verwendende Rolle (Empfänger oder Senke).

subscribeReceiver

public final void subscribeReceiver(ClientReceiverInterface receiver,
                                    Collection<SystemObject> objects,
                                    DataDescription dataDescription,
                                    ReceiveOptions options,
                                    ReceiverRole role,
                                    long cacheTime)
Description copied from interface: ClientDavInterface
Anmeldung zum Empfangen von Daten. Mit der Anmeldung wird von der Applikation ein Objekt bereitgestellt, daß bei nachfolgenden Aktualisierungen der Daten entsprechend benachrichtigt wird.

Specified by:
subscribeReceiver in interface ClientDavInterface
Parameters:
receiver - Ein von der Applikation bereitzustellendes Objekt, das bei Aktualisierungen entsprechende Methodenaufrufe erhält.
objects - Liste mit System-Objekten für die die spezifizierten Daten anzumelden sind.
dataDescription - Beschreibende Informationen zu den anzumeldenden Daten.
options - Für die Anmeldung zu verwendende Optionen.
role - Für die Anmeldung zu verwendende Rolle (Empfänger oder Senke).
cacheTime - Vorhaltezeitraum in Millisekunden. Der Vorhaltezeitraum spezifiziert, wie lange empfangene Daten zwischengespeichert werden sollen. Der Wert -1 setzt den Vorhaltezeitraum auf den Default-Wert.

subscribeReceiver

public void subscribeReceiver(ClientReceiverInterface receiver,
                              SystemObject object,
                              DataDescription dataDescription,
                              ReceiveOptions options,
                              ReceiverRole role)
Description copied from interface: ClientDavInterface
Anmeldung zum Empfangen von Daten. Mit der Anmeldung wird von der Applikation ein Objekt bereitgestellt, daß bei nachfolgenden Aktualisierungen der Daten entsprechend benachrichtigt wird.

Specified by:
subscribeReceiver in interface ClientDavInterface
Parameters:
receiver - Ein von der Applikation bereitzustellendes Objekt, das bei Aktualisierungen entsprechende Methodenaufrufe erhält.
object - System-Objekt für das die spezifizierten Daten anzumelden sind.
dataDescription - Beschreibende Informationen zu den anzumeldenden Daten.
options - Für die Anmeldung zu verwendende Optionen.
role - Für die Anmeldung zu verwendende Rolle (Empfänger oder Senke).

subscribeReceiver

public void subscribeReceiver(ClientReceiverInterface receiver,
                              SystemObject object,
                              DataDescription dataDescription,
                              ReceiveOptions options,
                              ReceiverRole role,
                              long cacheTime)
Description copied from interface: ClientDavInterface
Anmeldung zum Empfangen von Daten. Mit der Anmeldung wird von der Applikation ein Objekt bereitgestellt, daß bei nachfolgenden Aktualisierungen der Daten entsprechend benachrichtigt wird.

Specified by:
subscribeReceiver in interface ClientDavInterface
Parameters:
receiver - Ein von der Applikation bereitzustellendes Objekt, das bei Aktualisierungen entsprechende Methodenaufrufe erhält.
object - System-Objekt für das die spezifizierten Daten anzumelden sind.
dataDescription - Beschreibende Informationen zu den anzumeldenden Daten.
options - Für die Anmeldung zu verwendende Optionen.
role - Für die Anmeldung zu verwendende Rolle (Empfänger oder Senke).
cacheTime - Vorhaltezeitraum in Millisekunden. Der Vorhaltezeitraum spezifiziert, wie lange empfangene Daten zwischengespeichert werden sollen. Der Wert -1 setzt den Vorhaltezeitraum auf den Default-Wert.

subscribeReceiver

public final void subscribeReceiver(ClientReceiverInterface receiver,
                                    SystemObject[] objects,
                                    DataDescription dataDescription,
                                    ReceiveOptions options,
                                    ReceiverRole role)
Description copied from interface: ClientDavInterface
Anmeldung zum Empfangen von Daten. Mit der Anmeldung wird von der Applikation ein Objekt bereitgestellt, daß bei nachfolgenden Aktualisierungen der Daten entsprechend benachrichtigt wird.

Specified by:
subscribeReceiver in interface ClientDavInterface
Parameters:
receiver - Ein von der Applikation bereitzustellendes Objekt, das bei Aktualisierungen entsprechende Methodenaufrufe erhält.
objects - Feld mit System-Objekten für die die spezifizierten Daten anzumelden sind.
dataDescription - Beschreibende Informationen zu den anzumeldenden Daten.
options - Für die Anmeldung zu verwendende Optionen.
role - Für die Anmeldung zu verwendende Rolle (Empfänger oder Senke).

subscribeReceiver

public final void subscribeReceiver(ClientReceiverInterface receiver,
                                    SystemObject[] objects,
                                    DataDescription dataDescription,
                                    ReceiveOptions options,
                                    ReceiverRole role,
                                    long cacheTime)
Description copied from interface: ClientDavInterface
Anmeldung zum Empfangen von Daten. Mit der Anmeldung wird von der Applikation ein Objekt bereitgestellt, daß bei nachfolgenden Aktualisierungen der Daten entsprechend benachrichtigt wird.

Specified by:
subscribeReceiver in interface ClientDavInterface
Parameters:
receiver - Ein von der Applikation bereitzustellendes Objekt, das bei Aktualisierungen entsprechende Methodenaufrufe erhält.
objects - Feld mit System-Objekten für die die spezifizierten Daten anzumelden sind.
dataDescription - Beschreibende Informationen zu den anzumeldenden Daten.
options - Für die Anmeldung zu verwendende Optionen.
role - Für die Anmeldung zu verwendende Rolle (Empfänger oder Senke).
cacheTime - Vorhaltezeitraum in Millisekunden. Der Vorhaltezeitraum spezifiziert, wie lange empfangene Daten zwischengespeichert werden sollen. Der Wert -1 setzt den Vorhaltezeitraum auf den Default-Wert.

unsubscribeReceiver

public void unsubscribeReceiver(ClientReceiverInterface receiver,
                                Collection<SystemObject> objects,
                                DataDescription dataDescription)
Description copied from interface: ClientDavInterface
Abmeldung von angemeldeten Daten. Die Methode macht eine mit der Methode ClientDavInterface.subscribeReceiver(de.bsvrz.dav.daf.main.ClientReceiverInterface, de.bsvrz.dav.daf.main.config.SystemObject[], de.bsvrz.dav.daf.main.DataDescription, de.bsvrz.dav.daf.main.ReceiveOptions, de.bsvrz.dav.daf.main.ReceiverRole, long) durchgeführte Empfangsanmeldung wieder rückgängig.

Specified by:
unsubscribeReceiver in interface ClientDavInterface
Parameters:
receiver - Das Anwendungsobjekt, das bei der Anmeldung benutzt wurde.
objects - Liste mit System-Objekten für die die spezifizierten Daten abzumelden sind.
dataDescription - Beschreibende Informationen zu den abzumeldenden Daten.

unsubscribeReceiver

public void unsubscribeReceiver(ClientReceiverInterface receiver,
                                SystemObject object,
                                DataDescription dataDescription)
Description copied from interface: ClientDavInterface
Abmeldung von angemeldeten Daten. Die Methode macht eine mit der Methode ClientDavInterface.subscribeReceiver(de.bsvrz.dav.daf.main.ClientReceiverInterface, de.bsvrz.dav.daf.main.config.SystemObject[], de.bsvrz.dav.daf.main.DataDescription, de.bsvrz.dav.daf.main.ReceiveOptions, de.bsvrz.dav.daf.main.ReceiverRole, long) durchgeführte Empfangsanmeldung wieder rückgängig.

Specified by:
unsubscribeReceiver in interface ClientDavInterface
Parameters:
receiver - Das Anwendungsobjekt, das bei der Anmeldung benutzt wurde.
object - System-Objekt für das die spezifizierten Daten abzumelden sind.
dataDescription - Beschreibende Informationen zu den abzumeldenden Daten.

unsubscribeReceiver

public void unsubscribeReceiver(ClientReceiverInterface receiver,
                                SystemObject[] objects,
                                DataDescription dataDescription)
Description copied from interface: ClientDavInterface
Abmeldung von angemeldeten Daten. Die Methode macht eine mit der Methode ClientDavInterface.subscribeReceiver(de.bsvrz.dav.daf.main.ClientReceiverInterface, de.bsvrz.dav.daf.main.config.SystemObject[], de.bsvrz.dav.daf.main.DataDescription, de.bsvrz.dav.daf.main.ReceiveOptions, de.bsvrz.dav.daf.main.ReceiverRole, long) durchgeführte Empfangsanmeldung wieder rückgängig.

Specified by:
unsubscribeReceiver in interface ClientDavInterface
Parameters:
receiver - Das Anwendungsobjekt, das bei der Anmeldung benutzt wurde.
objects - Feld mit System-Objekten für die die spezifizierten Daten abzumelden sind.
dataDescription - Beschreibende Informationen zu den abzumeldenden Daten.

subscribeSender

public final void subscribeSender(ClientSenderInterface sender,
                                  Collection<SystemObject> objects,
                                  DataDescription dataDescription,
                                  SenderRole role)
                           throws OneSubscriptionPerSendData
Description copied from interface: ClientDavInterface
Anmeldung zum Senden von Daten. Für jedes mit objects angegebene Objekt wird ein Sendeanmeldung für die mit dataDescription spezifizierten Daten beim Datenverteiler durchgeführt. Bei Anmeldungen als Quelle (siehe Parameter role) wird nach der Anmeldung automatisch ein leerer Datensatz versendet.

Specified by:
subscribeSender in interface ClientDavInterface
Parameters:
sender - Anwendungs-Objekt, an das Sendesteuerungen gesendet werden.
objects - Liste mit System-Objekten für die die spezifizierten Daten anzumelden sind.
dataDescription - Beschreibende Informationen zu den anzumeldenden Daten.
role - Für die Anmeldung zu verwendende Rolle (Quelle oder Sender).
Throws:
OneSubscriptionPerSendData - Wenn bereits eine lokale Sendeanmeldung für die gleichen Daten von einem anderen Anwendungsobjekt vorliegt.

subscribeSender

public void subscribeSender(ClientSenderInterface sender,
                            SystemObject object,
                            DataDescription dataDescription,
                            SenderRole role)
                     throws OneSubscriptionPerSendData
Description copied from interface: ClientDavInterface
Anmeldung zum Senden von Daten. Für das angegebene Objekt wird ein Sendeanmeldung für die mit dataDescription spezifizierten Daten beim Datenverteiler durchgeführt. Bei Anmeldungen als Quelle (siehe Parameter role) wird nach der Anmeldung automatisch ein leerer Datensatz versendet.

Specified by:
subscribeSender in interface ClientDavInterface
Parameters:
sender - Anwendungs-Objekt, an das Sendesteuerungen gesendet werden.
object - System-Objekt, für das die spezifizierten Daten anzumelden sind.
dataDescription - Beschreibende Informationen zu den anzumeldenden Daten.
role - Für die Anmeldung zu verwendende Rolle (Quelle oder Sender).
Throws:
OneSubscriptionPerSendData - Wenn bereits eine lokale Sendeanmeldung für die gleichen Daten von einem anderen Anwendungsobjekt vorliegt.

subscribeSender

public final void subscribeSender(ClientSenderInterface sender,
                                  SystemObject[] objects,
                                  DataDescription dataDescription,
                                  SenderRole role)
                           throws OneSubscriptionPerSendData
Description copied from interface: ClientDavInterface
Anmeldung zum Senden von Daten. Für jedes mit objects angegebene Objekt wird ein Sendeanmeldung für die mit dataDescription spezifizierten Daten beim Datenverteiler durchgeführt. Bei Anmeldungen als Quelle (siehe Parameter role) wird nach der Anmeldung automatisch ein leerer Datensatz versendet.

Specified by:
subscribeSender in interface ClientDavInterface
Parameters:
sender - Anwendungs-Objekt, an das Sendesteuerungen gesendet werden.
objects - Feld mit System-Objekten, für die die spezifizierten Daten anzumelden sind.
dataDescription - Beschreibende Informationen zu den anzumeldenden Daten.
role - Für die Anmeldung zu verwendende Rolle (Quelle oder Sender).
Throws:
OneSubscriptionPerSendData - Wenn bereits eine lokale Sendeanmeldung für die gleichen Daten von einem anderen Anwendungsobjekt vorliegt.

subscribeSource

public void subscribeSource(ClientSenderInterface sender,
                            ResultData initialData)
                     throws OneSubscriptionPerSendData
Description copied from interface: ClientDavInterface
Anmeldung als Quelle und versenden von initialen Daten. Für die in initialData enthaltenen Daten wird ein entsprechende Sendeanmeldung beim Datenverteiler durchgeführt und anschließend wird der übergebene Datensatz als initialer Datensatz versendet.

Specified by:
subscribeSource in interface ClientDavInterface
Parameters:
sender - Anwendungs-Objekt, an das Sendesteuerungen gesendet werden.
initialData - Initialer Datensatz, der nach der entsprechenden Anmeldung zu versenden ist.
Throws:
OneSubscriptionPerSendData - Wenn bereits eine lokale Sendeanmeldung für die gleichen Daten von einem anderen Anwendungsobjekt vorliegt.

unsubscribeSender

public final void unsubscribeSender(ClientSenderInterface sender,
                                    Collection<SystemObject> objects,
                                    DataDescription dataDescription)
Description copied from interface: ClientDavInterface
Abmeldung von angemeldeten Daten. Die Methode macht eine mit der Methode ClientDavInterface.subscribeSender(de.bsvrz.dav.daf.main.ClientSenderInterface, java.util.Collection, de.bsvrz.dav.daf.main.DataDescription, de.bsvrz.dav.daf.main.SenderRole) durchgeführte Sendeanmeldung wieder rückgängig.

Specified by:
unsubscribeSender in interface ClientDavInterface
Parameters:
sender - Das Anwendungsobjekt, das bei der Anmeldung benutzt wurde.
objects - Liste mit System-Objekten für die die spezifizierten Daten abzumelden sind.
dataDescription - Beschreibende Informationen zu den abzumeldenden Daten.

unsubscribeSender

public void unsubscribeSender(ClientSenderInterface sender,
                              SystemObject object,
                              DataDescription dataDescription)
Description copied from interface: ClientDavInterface
Abmeldung von angemeldeten Daten. Die Methode macht eine mit der Methode ClientDavInterface.subscribeSender(de.bsvrz.dav.daf.main.ClientSenderInterface, java.util.Collection, de.bsvrz.dav.daf.main.DataDescription, de.bsvrz.dav.daf.main.SenderRole) durchgeführte Sendeanmeldung wieder rückgängig.

Specified by:
unsubscribeSender in interface ClientDavInterface
Parameters:
sender - Das Anwendungsobjekt, das bei der Anmeldung benutzt wurde.
object - System-Objekt für das die spezifizierten Daten abzumelden sind.
dataDescription - Beschreibende Informationen zu den abzumeldenden Daten.

unsubscribeSender

public final void unsubscribeSender(ClientSenderInterface sender,
                                    SystemObject[] objects,
                                    DataDescription dataDescription)
Description copied from interface: ClientDavInterface
Abmeldung von angemeldeten Daten. Die Methode macht eine mit der Methode ClientDavInterface.subscribeSender(de.bsvrz.dav.daf.main.ClientSenderInterface, java.util.Collection, de.bsvrz.dav.daf.main.DataDescription, de.bsvrz.dav.daf.main.SenderRole) durchgeführte Sendeanmeldung wieder rückgängig.

Specified by:
unsubscribeSender in interface ClientDavInterface
Parameters:
sender - Das Anwendungsobjekt, das bei der Anmeldung benutzt wurde.
objects - Feld mit System-Objekten für die die spezifizierten Daten abzumelden sind.
dataDescription - Beschreibende Informationen zu den abzumeldenden Daten.

createData

public Data createData(AttributeGroup attributeGroup)
Description copied from interface: ClientDavInterface
Liefert einen neuen initialisierten Datensatz zurück, der mit Attributwerten der in der angegebenen Attributgruppe definierten Attribute gefüllt ist.

Specified by:
createData in interface ClientDavInterface
Parameters:
attributeGroup - Attributgruppe des neuen Datensatzes.
Returns:
Neuen initialisierten Datensatz.

sendApplicationReadyMessage

public void sendApplicationReadyMessage()
Description copied from interface: ClientDavInterface
Methode, die von der Applikation aufgerufen werden kann, um explizit eine Applikations-Fertigmeldung zu versenden. Die SW-Einheit Start/Stopp verzögert den Start von Applikationen, die von einer anderen Applikation abhängig sind, bis diese Applikation die Fertigmeldung versendet. Die Fertigmeldung wird automatisch nach dem Verbindungsaufbau versendet, wenn die Applikation nicht vor der Authentifizierung der Verbindung die Methode ClientDavInterface.enableExplicitApplicationReadyMessage() aufgerufen hat.

Specified by:
sendApplicationReadyMessage in interface ClientDavInterface

sendApplicationReadyMessage

private void sendApplicationReadyMessage(boolean sendNotReadyYet)
Meldet sich als Quelle beim Datenverteiler an und verschickt eine (Noch-nicht-)Fertigmeldung.

Parameters:
sendNotReadyYet - gibt an, ob eine Noch-nicht-Fertigmeldung (true) oder eine Fertigmeldung (false) verschickt werden soll.

composeApplicationReadyMessage

private ResultData composeApplicationReadyMessage(DataModel configuration,
                                                  AttributeGroup attributeGroup,
                                                  boolean sendNotReadyYet)
Erstellt die zu versendende Fertigmeldung

Parameters:
configuration - Verwendetes Datenmodell
attributeGroup - Attributgruppe für die Fertigmeldung
sendNotReadyYet - true, falls Noch-Nicht-Fertigmeldung versendet werden soll, false sonst.
Returns:
Datensatz, der verschickt werden soll.

enableExplicitApplicationReadyMessage

public void enableExplicitApplicationReadyMessage()
Description copied from interface: ClientDavInterface
Diese Methode sollte von Applikationen, die den Zeitpunkt zum Versand der Applikations-Fertigmeldung selbst vorgeben möchten, vor der Authentifizierung einer Datenverteilerverbindung aufrufen. Der Aufruf dieser Methode bewirkt, dass nach dem Verbindungsaufbau automatisch eine Noch-Nicht-Fertigmeldung am Applikationsobjekt versendet wird. Die Applikation sollte dann nach erfolgreicher Initialisierung den Versand der Fertig-Meldung mit der Methode ClientDavInterface.sendApplicationReadyMessage() veranlassen.

Specified by:
enableExplicitApplicationReadyMessage in interface ClientDavInterface

getClientDavParameters

public ClientDavParameters getClientDavParameters()
Description copied from interface: ClientDavInterface
Bestimmt die Verbindungsparameter der Datenverteiler-Applikationsfunktionen.

Specified by:
getClientDavParameters in interface ClientDavInterface
Returns:
Verbindungsparameter der Datenverteiler-Applikationsfunktionen

addConnectionListener

public void addConnectionListener(DavConnectionListener davConnectionListener)
Description copied from interface: ClientDavInterface
Ergänzt einen neuen Beobachter für bestimmte Zustandsänderungen bzgl. der Verbindung zum Datenverteiler.

Specified by:
addConnectionListener in interface ClientDavInterface
Parameters:
davConnectionListener - Beobachterobjekt, das hinzugefügt werden soll.

removeConnectionListener

public void removeConnectionListener(DavConnectionListener davConnectionListener)
Description copied from interface: ClientDavInterface
Entfernt einen Beobachter für bestimmte Zustandsänderungen bzgl. der Verbindung zum Datenverteiler.

Specified by:
removeConnectionListener in interface ClientDavInterface
Parameters:
davConnectionListener - Beobachterobjekt, das entfernt werden soll.

notifyConnectionClosed

private void notifyConnectionClosed()

checkLoggedUserNameAndPassword

public boolean checkLoggedUserNameAndPassword(String userName,
                                              String password)
Description copied from interface: ClientDavInterface
Vergleicht den angegebenen Benutzernamen und das angegebene Benutzerpasswort mit den entsprechenden Werten, die beim Verbindungsaufbau zum Datenverteiler benutzt wurden.

Specified by:
checkLoggedUserNameAndPassword in interface ClientDavInterface
Parameters:
userName - Zu prüfender Benutzername
password - Zu prüfendes Passwort
Returns:
true, wenn eine Verbindung zum Datenverteiler besteht und mit dem angegebenen Benutzernamen und Passwort aufgebaut wurde, sonst false