Class ClientDavConnection
- java.lang.Object
-
- de.bsvrz.dav.daf.main.ClientDavConnection
-
- All Implemented Interfaces:
ClientDavInterface
public final class ClientDavConnection extends java.lang.Object implements ClientDavInterface
Diese Klasse repräsentiert die logische Verbindung zum Datenverteiler.
-
-
Constructor Summary
Constructors Modifier Constructor Description 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.protected
ClientDavConnection(ClientDavParameters parameters, DataModel dataModel, java.lang.Object lock)
Erzeugt eine neue logische Datenverteilerverbindung mit den angegebenen Parametern.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addConnectionListener(DavConnectionListener davConnectionListener)
Ergänzt einen neuen Beobachter für bestimmte Zustandsänderungen bzgl. der Verbindung zum Datenverteiler.boolean
checkLoggedUserNameAndPassword(java.lang.String userName, java.lang.String password)
Vergleicht den angegebenen Benutzernamen und das angegebene Benutzerpasswort mit den entsprechenden Werten, die beim Verbindungsaufbau zum Datenverteiler benutzt wurden.void
connect()
Initialisiert einen Kommunikationskanal zum Datenverteiler mit den in denVerbindungsparametern
angegebenen Adressinformationen.Data
createData(AttributeGroup attributeGroup)
Erzeugt ein neuesData
-Objekt zu der angegebenen Attributgruppe.void
disconnect(boolean error, java.lang.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.AccessControlManager
getAccessControlManager()
Gibt ein Objekt zurück, mit dem die Rechte des eigenen oder eines anderen Benutzers abgefragt werden können.AccessControlMode
getAccessControlMode()
Gibt die vom lokalen Datenverteiler verwendete Art der Rechteprüfung zurück.AccessControlMode
getAccessControlMode(DavApplication davApplication)
Gibt die vom angegebenen Datenverteiler verwendete Art der Rechteprüfung zurück.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.AuthenticationStatus
getAuthenticationStatus()
Liefert den aktuellen Zustand der Authentifizierung zurück.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 lokale Konfiguration zugegriffen werden kann.DataModel
getDataModel(long configAuthorityId)
Gibt ein Datenmodell zurück, über das auf eine beliebige Konfiguration zugegriffen werden kann.DataModel
getDataModel(SystemObject configAuthority)
Gibt ein Datenmodell zurück, über das auf eine beliebige Konfiguration zugegriffen werden kann.DataModel
getDataModel(java.lang.String configAuthority)
Gibt ein Datenmodell zurück, über das auf eine beliebige Konfiguration zugegriffen werden kann.long
getDavRoundTripTime()
Bestimmt die Telegrammlaufzeit von dieser Applikation zum lokalen Datenverteiler und zurück.ConfigurationArea
getDefaultConfigurationArea(DynamicObjectType dynamicObjectType)
Gibt den Standard-Konfigurationsbereich für den angegebenen dynamischen Typen zurück.ConfigurationArea
getDefaultConfigurationArea(DynamicObjectType dynamicObjectType, ConfigurationAuthority configurationAuthority)
Gibt den Standard-Konfigurationsbereich für den angegebenen dynamischen Typen zurück.EncryptionStatus
getEncryptionStatus()
Liefert den aktuellen Zustand der Verschlüsselung 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.ApplicationSubscriptionInfo
getSubscriptionInfo(DavApplication davApplication, ClientApplication application)
Gibt Informationen über die Datenanmeldungen einer Applikation zurückClientSubscriptionInfo
getSubscriptionInfo(DavApplication davApplication, SystemObject object, AttributeGroupUsage usage, short simulationVariant)
Gibt Informationen über eine Datenanmeldung zurück.long
getTime()
Bestimmt die aktuelle Zeit oder, wenn die Applikation mit der Simulationsvariante einer Offline-Simulation gestartet wurde, die simulierte Zeit.int
getTimeStampFromSenderSubscription(BaseSubscriptionInfo info)
Gibt den Zeitpunkt einer Sender-Anmeldung zurückTransactions
getTransactions()
Gibt eine Klasse zurück, die für diese Verbindung Transaktions-Anmeldungen durchführt.boolean
isConnected()
Gibttrue
zurück, wenn die Verbindung aufgebaut wurde.boolean
isLoggedIn()
Gibttrue
zurück, wenn der Benutzer erfolgreich eingeloggt ist.void
login()
Start der logischen Verbindung mit dem Datenverteiler.void
login(ClientCredentials clientCredentials)
void
login(java.lang.String userName, char[] password)
Start der logischen Verbindung mit dem Datenverteiler.void
login(java.lang.String userName, int passwordIndex, ClientCredentials clientCredentials)
void
login(java.lang.String userName, ClientCredentials clientCredentials)
Start der logischen Verbindung mit dem Datenverteiler.void
login(java.lang.String userName, java.lang.String password)
Start der logischen Verbindung mit dem Datenverteiler.void
removeConnectionListener(DavConnectionListener davConnectionListener)
Entfernt einen Beobachter für bestimmte Zustandsänderungen bzgl. der Verbindung zum Datenverteiler.void
sendApplicationReadyMessage()
Methode, die von der Applikation aufgerufen werden kann, um explizit eine Applikations-Fertigmeldung zu versenden.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, 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
subscribeReceiver(ClientReceiverInterface receiver, java.util.Collection<? extends SystemObject> objects, DataDescription dataDescription, ReceiveOptions options, ReceiverRole role)
Anmeldung zum Empfangen von Daten.void
subscribeReceiver(ClientReceiverInterface receiver, java.util.Collection<? extends SystemObject> objects, DataDescription dataDescription, ReceiveOptions options, ReceiverRole role, long cacheTime)
Anmeldung zum Empfangen 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
subscribeSender(ClientSenderInterface sender, java.util.Collection<? extends SystemObject> objects, 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, SystemObject[] objects, DataDescription dataDescription)
Abmeldung von angemeldeten Daten.void
unsubscribeReceiver(ClientReceiverInterface receiver, SystemObject object, DataDescription dataDescription)
Abmeldung von angemeldeten Daten.void
unsubscribeReceiver(ClientReceiverInterface receiver, java.util.Collection<? extends 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.void
unsubscribeSender(ClientSenderInterface sender, java.util.Collection<? extends SystemObject> objects, DataDescription dataDescription)
Abmeldung von angemeldeten Daten.
-
-
-
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.
-
ClientDavConnection
protected ClientDavConnection(ClientDavParameters parameters, DataModel dataModel, java.lang.Object lock) 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.lock
- Objekt, welches zur Synchronisierung verwendet wird. Wird eine zweite Verbindung aufgebaut, synchronisieren beide Objekte auf dasselbe Lock-Objekt um Deadlocks zu vermeiden. (Ansonsten passiert es sehr schnell, dass jede Verbindung das eigene Lock hält und irgendeine Aktion auf der anderen Verbindung triggert, was dann zu einem Deadlock führt.)- 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 aufbauen soll. Wenn diese Methode nicht aufgerufen wird, wird als Default ein Objekt der KlasseSystemTerminator
benutzt, das bei Kommunikationsfehlern eine Fehlermeldung ausgibt und die Applikation terminiert.- Specified by:
setCloseHandler
in interfaceClientDavInterface
- Parameters:
closer
- Objekt für die Behandlung von Kommunikationsfehlern oder null, falls bei einem Verbindungsfehler nichts passieren soll.
-
getTime
public 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 interfaceClientDavInterface
- Returns:
- Zeitpunkt in Millisekunden seit 1970.
-
sleep
public 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 interfaceClientDavInterface
- Parameters:
timeToSleep
- Wartezeit in Millisekunden seit 1970.
-
sleepUntil
public 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 interfaceClientDavInterface
- 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 AufrufgetArchive(getLocalConfigurationAuthority)
.- Specified by:
getArchive
in interfaceClientDavInterface
- 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 interfaceClientDavInterface
- Parameters:
archiveSystem
- Archivsystem über das Archivanfragen abgewickelt werden sollen.- Returns:
- Stellvertreterobjekt zur Abwicklung von Archivanfragen über das spezifizierte Archivsystem.
-
connect
public void connect() throws CommunicationError, ConnectionException
Description copied from interface:ClientDavInterface
Initialisiert einen Kommunikationskanal zum Datenverteiler mit den in denVerbindungsparametern
angegebenen Adressinformationen. Nach dem Aufbau der physischen Verbindung wird die in der Kommunikation mit dem Datenverteiler zu verwendende Protokollversion verhandelt und die logische Verbindung in den ZustandInitialisiert
überführt.- Specified by:
connect
in interfaceClientDavInterface
- 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 void disconnect(boolean error, java.lang.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 ZustandAuß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 interfaceClientDavInterface
- 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, odernull
wenn die Ursache nicht bekannt ist.
-
login
public 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 ZustandInBetrieb
überführt. Als Benutzername und Passwort werden die entsprechenden Werte aus denVerbindungsparametern
benutzt.- Specified by:
login
in interfaceClientDavInterface
- Throws:
InconsistentLoginException
- Wenn Benutzername oder Passwort nicht korrekt sind.CommunicationError
- Wenn bei der Kommunikation mit dem Datenverteiler Fehler aufgetreten sind.
-
login
public void login(ClientCredentials clientCredentials) throws InconsistentLoginException, CommunicationError
-
login
public void login(java.lang.String userName, java.lang.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 ZustandInBetrieb
überführt.- Specified by:
login
in interfaceClientDavInterface
- 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.
-
login
public void login(java.lang.String userName, char[] 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 ZustandInBetrieb
überführt.- Specified by:
login
in interfaceClientDavInterface
- 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.
-
login
public void login(java.lang.String userName, ClientCredentials clientCredentials) 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 ZustandInBetrieb
überführt.- Specified by:
login
in interfaceClientDavInterface
- Parameters:
userName
- Name des Benutzers für die Authentifizierung.clientCredentials
- Passwort oder Login-Token- Throws:
InconsistentLoginException
- Wenn Benutzername oder Passwort nicht korrekt sind.CommunicationError
- Wenn bei der Kommunikation mit dem Datenverteiler Fehler aufgetreten sind.
-
login
public void login(java.lang.String userName, int passwordIndex, ClientCredentials clientCredentials) throws InconsistentLoginException, CommunicationError
-
getCachedData
public 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 interfaceClientDavInterface
- 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 Optionenhistory
- Spezifikation der gewünschten Historie odernull
wenn nur die aktuellen Daten gewünscht sind.- Returns:
- Zeitlich sortiertes Feld mit den gewünschten Daten.
-
getData
public 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 interfaceClientDavInterface
- 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 interfaceClientDavInterface
- 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 DataModel getDataModel()
Description copied from interface:ClientDavInterface
Gibt das Datenmodell zurück, über das auf die lokale Konfiguration zugegriffen werden kann.- Specified by:
getDataModel
in interfaceClientDavInterface
- Returns:
- Datenmodell zum Zugriff auf die Konfiguration
-
getDataModel
public DataModel getDataModel(SystemObject configAuthority) throws ConfigurationTaskException
Description copied from interface:ClientDavInterface
Gibt ein Datenmodell zurück, über das auf eine beliebige Konfiguration zugegriffen werden kann.- Specified by:
getDataModel
in interfaceClientDavInterface
- Parameters:
configAuthority
- Systemobjekt zum Konfigurationsverantwortlichen der Konfiguration- Returns:
- Datenmodell zum Zugriff auf die Konfiguration.
- Throws:
ConfigurationTaskException
- Falls die angegebene Konfiguration innerhalb von 10 Minuten nicht geantwortet hat oder ein Fehler in der Kommunikation auftrat
-
getDataModel
public DataModel getDataModel(java.lang.String configAuthority) throws ConfigurationTaskException
Description copied from interface:ClientDavInterface
Gibt ein Datenmodell zurück, über das auf eine beliebige Konfiguration zugegriffen werden kann.- Specified by:
getDataModel
in interfaceClientDavInterface
- Parameters:
configAuthority
- Pid des Konfigurationsverantwortlichen der Konfiguration- Returns:
- Datenmodell zum Zugriff auf die Konfiguration.
- Throws:
ConfigurationTaskException
- Falls die angegebene Konfiguration innerhalb von 10 Minuten nicht geantwortet hat oder ein Fehler in der Kommunikation auftrat
-
getDataModel
public DataModel getDataModel(long configAuthorityId) throws ConfigurationTaskException
Description copied from interface:ClientDavInterface
Gibt ein Datenmodell zurück, über das auf eine beliebige Konfiguration zugegriffen werden kann. Diese Funktion kann verwendet werden, wenn das Systemobjekt des Konfigurationsverantwortlichen der lokalen Konfiguration nicht bekannt ist.- Specified by:
getDataModel
in interfaceClientDavInterface
- Parameters:
configAuthorityId
- Id des Konfigurationsverantwortlichen der Konfiguration- Returns:
- Datenmodell zum Zugriff auf die Konfiguration.
- Throws:
ConfigurationTaskException
- Falls die angegebene Konfiguration innerhalb von 10 Minuten nicht geantwortet hat oder ein Fehler in der Kommunikation auftrat
-
getDavRoundTripTime
public long getDavRoundTripTime()
Description copied from interface:ClientDavInterface
Bestimmt die Telegrammlaufzeit von dieser Applikation zum lokalen Datenverteiler und zurück.- Specified by:
getDavRoundTripTime
in interfaceClientDavInterface
- 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 interfaceClientDavInterface
- Returns:
- Konfigurationsverantwortlicher.
-
getLocalApplicationObject
public 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 interfaceClientDavInterface
- 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 DynamicObject getLocalUser()
Description copied from interface:ClientDavInterface
Bestimmt das Systemobjekt für den angemeldeten Benutzer.- Specified by:
getLocalUser
in interfaceClientDavInterface
- Returns:
- Stellvertreterobjekt für den angemeldeten Benutzer.
-
getLocalDav
public 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 interfaceClientDavInterface
- Returns:
- Stellvertreterobjekt für den verbundenen Datenverteiler.
-
sendData
public 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 eineSendSubscriptionNotConfirmed
Exception geworfen, falls die positive Sendesteuerung vor dem Ablauf des Zeitraums vorliegt, werden die Daten verschickt, liegt eine negative Sendesteuerung vor, wird eineSendSubscriptionNotConfirmed
Exception geworfen.
Falls die Sendesteuerung nach dem ersten erfolgreichen Sendeversuch wieder negativ wird, und es sollen erneut Daten verschickt werden, wird eineSendSubscriptionNotConfirmed
Exception geworfen ohne die fest vorgegebene Zeitspanne abzuwarten.- Specified by:
sendData
in interfaceClientDavInterface
- 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 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 eineSendSubscriptionNotConfirmed
Exception geworfen, falls die positive Sendesteuerung vor dem Ablauf des Zeitraums vorliegt, werden die Daten verschickt, liegt eine negative Sendesteuerung vor, wird eineSendSubscriptionNotConfirmed
Exception geworfen.
Falls die Sendesteuerung nach dem ersten erfolgreichen Sendeversuch wieder negativ wird, und es sollen erneut Daten verschickt werden, wird eineSendSubscriptionNotConfirmed
Exception geworfen ohne die fest vorgegebene Zeitspanne abzuwarten.- Specified by:
sendData
in interfaceClientDavInterface
- 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 void subscribeReceiver(ClientReceiverInterface receiver, java.util.Collection<? extends 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 interfaceClientDavInterface
- 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 void subscribeReceiver(ClientReceiverInterface receiver, java.util.Collection<? extends 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 interfaceClientDavInterface
- 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 interfaceClientDavInterface
- 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 interfaceClientDavInterface
- 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 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 interfaceClientDavInterface
- 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 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 interfaceClientDavInterface
- 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, java.util.Collection<? extends SystemObject> objects, DataDescription dataDescription)
Description copied from interface:ClientDavInterface
Abmeldung von angemeldeten Daten. Die Methode macht eine mit der MethodeClientDavInterface.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 interfaceClientDavInterface
- 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 MethodeClientDavInterface.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 interfaceClientDavInterface
- 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 MethodeClientDavInterface.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 interfaceClientDavInterface
- 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 void subscribeSender(ClientSenderInterface sender, java.util.Collection<? extends SystemObject> objects, DataDescription dataDescription, SenderRole role) throws OneSubscriptionPerSendData
Description copied from interface:ClientDavInterface
Anmeldung zum Senden von Daten. Für jedes mitobjects
angegebene Objekt wird ein Sendeanmeldung für die mitdataDescription
spezifizierten Daten beim Datenverteiler durchgeführt. Bei Anmeldungen als Quelle (siehe Parameterrole
) wird nach der Anmeldung automatisch ein leerer Datensatz versendet.- Specified by:
subscribeSender
in interfaceClientDavInterface
- 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 mitdataDescription
spezifizierten Daten beim Datenverteiler durchgeführt. Bei Anmeldungen als Quelle (siehe Parameterrole
) wird nach der Anmeldung automatisch ein leerer Datensatz versendet.- Specified by:
subscribeSender
in interfaceClientDavInterface
- 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 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 mitobjects
angegebene Objekt wird ein Sendeanmeldung für die mitdataDescription
spezifizierten Daten beim Datenverteiler durchgeführt. Bei Anmeldungen als Quelle (siehe Parameterrole
) wird nach der Anmeldung automatisch ein leerer Datensatz versendet.- Specified by:
subscribeSender
in interfaceClientDavInterface
- 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 ininitialData
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 interfaceClientDavInterface
- 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 void unsubscribeSender(ClientSenderInterface sender, java.util.Collection<? extends SystemObject> objects, DataDescription dataDescription)
Description copied from interface:ClientDavInterface
Abmeldung von angemeldeten Daten. Die Methode macht eine mit der MethodeClientDavInterface.subscribeSender(de.bsvrz.dav.daf.main.ClientSenderInterface, java.util.Collection<? extends de.bsvrz.dav.daf.main.config.SystemObject>, de.bsvrz.dav.daf.main.DataDescription, de.bsvrz.dav.daf.main.SenderRole)
durchgeführte Sendeanmeldung wieder rückgängig.- Specified by:
unsubscribeSender
in interfaceClientDavInterface
- 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 MethodeClientDavInterface.subscribeSender(de.bsvrz.dav.daf.main.ClientSenderInterface, java.util.Collection<? extends de.bsvrz.dav.daf.main.config.SystemObject>, de.bsvrz.dav.daf.main.DataDescription, de.bsvrz.dav.daf.main.SenderRole)
durchgeführte Sendeanmeldung wieder rückgängig.- Specified by:
unsubscribeSender
in interfaceClientDavInterface
- 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 void unsubscribeSender(ClientSenderInterface sender, SystemObject[] objects, DataDescription dataDescription)
Description copied from interface:ClientDavInterface
Abmeldung von angemeldeten Daten. Die Methode macht eine mit der MethodeClientDavInterface.subscribeSender(de.bsvrz.dav.daf.main.ClientSenderInterface, java.util.Collection<? extends de.bsvrz.dav.daf.main.config.SystemObject>, de.bsvrz.dav.daf.main.DataDescription, de.bsvrz.dav.daf.main.SenderRole)
durchgeführte Sendeanmeldung wieder rückgängig.- Specified by:
unsubscribeSender
in interfaceClientDavInterface
- 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
Erzeugt ein neuesData
-Objekt zu der angegebenen Attributgruppe. Mit diesem Data-Objekt können Daten zu der Attributgruppe hinterlegt werden. Das erzeugte Data-Objekt kann dann mit Werten befüllt werden (z. B.data.getTextValue("Attribut").setText("Test");
) und dann später entweder konfigurierend gespeichert werden oder als Online-Datensatz versendet werden. Für letzteres muss das Data-Objekt noch in einResultData
verpackt werden, um Meta-Informationen wie den Datenzeitstempel zu ergänzen.Diese Methode kann durch
AttributeGroup.createData()
ersetzt werden, falls keine Kompatibilität mit alten Kernsoftware-Versionen erforderlich ist.- Specified by:
createData
in interfaceClientDavInterface
- 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 MethodeClientDavInterface.enableExplicitApplicationReadyMessage()
aufgerufen hat.- Specified by:
sendApplicationReadyMessage
in interfaceClientDavInterface
-
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 MethodeClientDavInterface.sendApplicationReadyMessage()
veranlassen.- Specified by:
enableExplicitApplicationReadyMessage
in interfaceClientDavInterface
-
getTimeStampFromSenderSubscription
public int getTimeStampFromSenderSubscription(BaseSubscriptionInfo info)
Gibt den Zeitpunkt einer Sender-Anmeldung zurück- Parameters:
info
- Anmeldung- Returns:
- Sekunden seit 1970
-
getEncryptionStatus
public EncryptionStatus getEncryptionStatus()
Description copied from interface:ClientDavInterface
Liefert den aktuellen Zustand der Verschlüsselung zurück.- Specified by:
getEncryptionStatus
in interfaceClientDavInterface
- Returns:
- Zustand der Verschlüsselung
-
getAuthenticationStatus
public AuthenticationStatus getAuthenticationStatus()
Description copied from interface:ClientDavInterface
Liefert den aktuellen Zustand der Authentifizierung zurück.- Specified by:
getAuthenticationStatus
in interfaceClientDavInterface
- Returns:
- Zustand der Authentifizierung
-
getDefaultConfigurationArea
public ConfigurationArea getDefaultConfigurationArea(DynamicObjectType dynamicObjectType)
Gibt den Standard-Konfigurationsbereich für den angegebenen dynamischen Typen zurück. Die Methode greift auf den Parameterdatensatz `atg.verwaltungDynamischerObjekte` zu. Sollte dieser nicht vorhanden sein oder für den angegebenen Typen keine Zuordnung definiert sein, wird der Standardbereich des Konfigurationsverantwortlichen verwendet.Diese Methode bietet die gleiche Kern-Funktionalität wie die de.bsvrz.sys.funclib.dynobj, aber keine erweiterten Möglichkeiten zum Anlegen/Löschen von Objekten.
- Specified by:
getDefaultConfigurationArea
in interfaceClientDavInterface
- Parameters:
dynamicObjectType
- Typ- Returns:
- Default-Bereich in dem Objekte dieses Typs angelegt werden sollen. (kann in Ausnahmefällen null sein, wenn kein Parameter definiert wurde und kein Defaultbereich konfiguriert wurde)
- Since:
- 3.9.2
- See Also:
ConfigurationArea.createDynamicObject(DynamicObjectType, String, String, Collection)
-
getDefaultConfigurationArea
public ConfigurationArea getDefaultConfigurationArea(DynamicObjectType dynamicObjectType, ConfigurationAuthority configurationAuthority)
Gibt den Standard-Konfigurationsbereich für den angegebenen dynamischen Typen zurück. Die Methode greift auf den Parameterdatensatz `atg.verwaltungDynamischerObjekte` zu. Sollte dieser nicht vorhanden sein oder für den angegebenen Typen keine Zuordnung definiert sein, wird der Standardbereich des Konfigurationsverantwortlichen verwendet.Diese Methode bietet die gleiche Kern-Funktionalität wie die de.bsvrz.sys.funclib.dynobj, aber keine erweiterten Möglichkeiten zum Anlegen/Löschen von Objekten.
- Parameters:
dynamicObjectType
- TypconfigurationAuthority
- Autarke Organisationseinheit- Returns:
- Default-Bereich in dem Objekte dieses Typs angelegt werden sollen. (kann in Ausnahmefällen null sein, wenn kein Parameter definiert wurde und kein Defaultbereich konfiguriert wurde)
- Since:
- 3.9.2
-
getSubscriptionInfo
public ClientSubscriptionInfo getSubscriptionInfo(DavApplication davApplication, SystemObject object, AttributeGroupUsage usage, short simulationVariant) throws java.io.IOException
Gibt Informationen über eine Datenanmeldung zurück.- Specified by:
getSubscriptionInfo
in interfaceClientDavInterface
- Parameters:
davApplication
- Datenverteiler, der gefragt werden sollobject
- Systemobjektusage
- AttributgruppenverwendungsimulationVariant
- Simulationsvariante- Returns:
- Klasse mit Informationen über die angemeldeten Applikationen auf dieses Datum
- Throws:
java.io.IOException
- Falls der Datenverteiler die Anfrage nicht erlaubt oder nicht unterstützt
-
getSubscriptionInfo
public ApplicationSubscriptionInfo getSubscriptionInfo(DavApplication davApplication, ClientApplication application) throws java.io.IOException
Gibt Informationen über die Datenanmeldungen einer Applikation zurück- Specified by:
getSubscriptionInfo
in interfaceClientDavInterface
- Parameters:
davApplication
- Datenverteiler, der gefragt werden sollapplication
- Applikation von der vorhandene Anmeldungen abgefragt werden sollen- Returns:
- Klasse mit Informationen über die angemeldeten Applikationen auf dieses Datum
- Throws:
java.io.IOException
- Falls der Datenverteiler die Anfrage nicht erlaubt oder nicht unterstützt
-
getClientDavParameters
public ClientDavParameters getClientDavParameters()
Description copied from interface:ClientDavInterface
Bestimmt die Verbindungsparameter der Datenverteiler-Applikationsfunktionen. Es wird eine schreibgeschützte Kopie zurückgegeben.- Specified by:
getClientDavParameters
in interfaceClientDavInterface
- Returns:
- Verbindungsparameter der Datenverteiler-Applikationsfunktionen
- See Also:
ClientDavParameters.clone(boolean)
-
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 interfaceClientDavInterface
- 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 interfaceClientDavInterface
- Parameters:
davConnectionListener
- Beobachterobjekt, das entfernt werden soll.
-
checkLoggedUserNameAndPassword
public boolean checkLoggedUserNameAndPassword(java.lang.String userName, java.lang.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 interfaceClientDavInterface
- Parameters:
userName
- Zu prüfender Benutzernamepassword
- Zu prüfendes Passwort- Returns:
true
, wenn eine Verbindung zum Datenverteiler besteht und mit dem angegebenen Benutzernamen und Passwort aufgebaut wurde, sonstfalse
-
getTransactions
public Transactions getTransactions()
Description copied from interface:ClientDavInterface
Gibt eine Klasse zurück, die für diese Verbindung Transaktions-Anmeldungen durchführt.- Specified by:
getTransactions
in interfaceClientDavInterface
- Returns:
- Klasse die Funktionen zu Transaktionen bietet
-
isConnected
public boolean isConnected()
Gibttrue
zurück, wenn die Verbindung aufgebaut wurde.- Specified by:
isConnected
in interfaceClientDavInterface
- Returns:
true
, wenn die Verbindung aufgebaut wurde, sonstfalse
-
isLoggedIn
public boolean isLoggedIn()
Gibttrue
zurück, wenn der Benutzer erfolgreich eingeloggt ist.- Specified by:
isLoggedIn
in interfaceClientDavInterface
- Returns:
true
, wenn der Benutzer erfolgreich eingeloggt ist, sonstfalse
-
getAccessControlManager
public AccessControlManager getAccessControlManager()
Description copied from interface:ClientDavInterface
Gibt ein Objekt zurück, mit dem die Rechte des eigenen oder eines anderen Benutzers abgefragt werden können.Diese Rechte werden clientseitig anhand der vorhandenen Daten ermittelt und können ggf. vom Laufzeitverhalten abweichen, insbesondere wenn die Rechte von mehreren Datenverteilern mit unterschiedlicher Parametrierung geprüft werden oder ein Datensatz unter Verwendung von mehreren Benutzern übertragen wird.
Eine Rückgabe von
true
vonUserInfo.maySubscribeData
heißt also nicht, dass der Datensatz in jedem Fall ankommt, sondern nur, dass der lokale Datenverteiler diesen anhand der aktuellen Parametrierung (voraussichtlich) nicht filtern wird.Es werden nur die Rechte beim lokalen Datenverteiler geprüft!
Das zurückgegebene Objekt kann verwendet werden, um beispielsweise Buttons oder Menüs bei fehlenden Rechten zu deaktivieren oder auszublenden.
Außerdem kann das Objekt dazu verwendet werden, statt dem Datenverteiler innerhalb einer Applikation beliebige Rechte lokal zu prüfen. So kann bspw. die PuA-Applikation, die Aufträge eines Benutzers annimmt und dann in dessen Namen Daten abfragt, prüfen, ob der Benutzer berechtigt ist, die Daten überhaupt abzufragen. Der Datenverteiler kann diese Prüfung nicht vornehmen, da aus seiner Sicht alle Daten von der PuA-Applikation (und dem Benutzer unter dem diese gestartet wurde) selbst abgefragt werden.
Hinweis: Ist die verwendete Rechteprüfung des Datenverteilers nicht abfragbar, weil dieser eine zu alte Version verwendet oder das Datenmodell veraltet ist, wird angenommen, dass die alte Rechteprüfung verwendet wird. Im Zweifelsfall werden dadurch Operationen als verboten aufgeführt, die eigentlich erlaubt sind. Das Problem kann durch ein Update des Datenmodells und der Kernsoftware am Datenverteiler gelöst werden.
- Specified by:
getAccessControlManager
in interfaceClientDavInterface
- Returns:
- AccessControlManager
-
getAccessControlMode
@Nullable public AccessControlMode getAccessControlMode()
Description copied from interface:ClientDavInterface
Gibt die vom lokalen Datenverteiler verwendete Art der Rechteprüfung zurück.- Specified by:
getAccessControlMode
in interfaceClientDavInterface
- Returns:
- Art der Rechteprüfung oder
null
, falls nicht ermittelbar
-
getAccessControlMode
@Nullable public AccessControlMode getAccessControlMode(@Nullable DavApplication davApplication)
Description copied from interface:ClientDavInterface
Gibt die vom angegebenen Datenverteiler verwendete Art der Rechteprüfung zurück.- Specified by:
getAccessControlMode
in interfaceClientDavInterface
- Parameters:
davApplication
- Datenverteiler-Objekt- Returns:
- Art der Rechteprüfung oder
null
, falls nicht ermittelbar
-
-