public class ClientDavConnection extends Object implements ClientDavInterface
| Modifier and Type | Class and Description |
|---|---|
private static class |
ClientDavConnection.ConnectionShutdownHook |
private class |
ClientDavConnection.ImplicitReceiver |
(package private) class |
ClientDavConnection.ImplicitSubscriptionNote |
(package private) class |
ClientDavConnection.ImplicitUnsubscriber |
private class |
ClientDavConnection.ReadyMessageSender |
| Modifier and Type | Field and Description |
|---|---|
private boolean |
_applicationSendsDoneMessage
Hält fest, ob sich eine Applikation explizit selbst um die Fertigmeldung kümmert oder nicht.
|
private CacheManager |
_cacheManager
Der Cachemanager
|
private ClientDavParameters |
_clientDavParameters
Die Startparameter
|
private ClientDavRequester |
_clientDavRequester |
private DavCloseHandler |
_closeHandler
Das Objekt, das für das Schliessen nach Auftritt eines Fehlers zuständig ist.
|
private ConfigurationManager |
_configurationManager
Der Konfigurationsmanager
|
private List<DavConnectionListener> |
_connectionListeners
Enthält die Beobachter, die eine Mitteilung erhalten wollen, wenn die Verbindung zum Datenverteiler terminiert wird.
|
private DataModel |
_dataModel
Das DataModel Objekt dieser Verbindung.
|
private ClientDavConnection |
_dataModelConnection |
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 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<BaseSubscriptionInfo,ClientDavConnection.ImplicitSubscriptionNote> |
_implicitSubscriptions
Die Liste wo die Implizitanmeldungen eingetragen werden.
|
private ClientDavConnection.ImplicitUnsubscriber |
_implicitUnsubscriber
Der Abmelder der Implizitanmeldungen
|
private boolean |
_isConnected
Information über den Verbindungsstatus.
|
private boolean |
_isLoggedIn
Information über den Authentifizierungsstatus.
|
private Object |
_lock |
private ClientSenderInterface |
_readyMessageSender
Der Sender, der die Fertigmeldung verschickt.
|
private boolean |
_reinitializeOnConnect |
private SimulationTime |
_simulationTime
Simulationszeithilfsobjekt
|
private StreamedRequestManager |
_streamedRequestManager
verwaltet Archivantworten
|
private SubscriptionManager |
_subscriptionManager
Der Anmeldemanager
|
private TransactionManager |
_transactionManager |
| Modifier | Constructor and 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,
Object lock)
Erzeugt eine neue logische Datenverteilerverbindung mit den angegebenen Parametern.
|
| Modifier and Type | Method and Description |
|---|---|
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.
|
private void |
createDataModel() |
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 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(String configAuthority)
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.
|
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.
|
ApplicationSubscriptionInfo |
getSubscriptionInfo(DavApplication davApplication,
ClientApplication application)
Gibt Informationen über die Datenanmeldungen eien Appliaktion zurück
|
ClientSubscriptionInfo |
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ück
|
Transactions |
getTransactions()
Gibt eine Klasse zurück, die für diese Verbindung Transaktions-Anmeldungen durchführt
|
boolean |
isConnected() |
boolean |
isLoggedIn() |
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.
|
(package private) void |
triggerTransactionReceiver(ClientReceiverInterface receiver,
TransactionDataDescription dataDescription,
Collection<InnerDataSubscription> subscriptions)
Meldet einen Transaktionsempfänger oder eine Transaktionssenke an.
|
(package private) void |
triggerTransactionSender(ClientSenderInterface sender,
TransactionDataDescription dataDescription,
Collection<InnerDataSubscription> subscriptions)
Meldet einen Transaktionssender oder eine Transaktionsquelle an.
|
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.
|
private static final Debug _debug
private ClientHighLevelCommunication _highLevelCommunication
private CacheManager _cacheManager
private ConfigurationManager _configurationManager
private SubscriptionManager _subscriptionManager
private ClientDavParameters _clientDavParameters
private Object _implicitSubscriptionDataReceived
private Hashtable<BaseSubscriptionInfo,ClientDavConnection.ImplicitSubscriptionNote> _implicitSubscriptions
private ClientDavConnection.ImplicitUnsubscriber _implicitUnsubscriber
private ClientDavConnection.ImplicitReceiver _implicitReceiver
private DataModel _dataModel
private DavCloseHandler _closeHandler
private boolean _isConnected
private boolean _isLoggedIn
private SimulationTime _simulationTime
private StreamedRequestManager _streamedRequestManager
private List<DavConnectionListener> _connectionListeners
private Map<AttributeGroup,Data> _defaultData
private boolean _applicationSendsDoneMessage
enableExplicitApplicationReadyMessage() gesetzt werden.private ClientSenderInterface _readyMessageSender
private boolean _reinitializeOnConnect
private ClientDavRequester _clientDavRequester
private TransactionManager _transactionManager
private ClientDavConnection _dataModelConnection
private final Object _lock
public ClientDavConnection()
throws MissingParameterException
MissingParameterException - Wenn notwendige Informationen nicht in den Default-Parametern spezifiziert wurden.public ClientDavConnection(ClientDavParameters parameters) throws MissingParameterException
parameters - Parameter für die Datenverteiler-Applikationsfunktionen.MissingParameterException - Wenn notwendige Informationen nicht in den übergebenen Parametern spezifiziert wurden.public ClientDavConnection(ClientDavParameters parameters, DataModel dataModel) throws MissingParameterException
parameters - Parameter für die Datenverteiler-Applikationsfunktionen.dataModel - Das zu verwendende Datenmodell für Konfigurationsanfragen.MissingParameterException - Wenn notwendige Informationen nicht in den übergebenen Parametern spezifiziert wurden.protected ClientDavConnection(ClientDavParameters parameters, DataModel dataModel, Object lock) throws MissingParameterException
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.)MissingParameterException - Wenn notwendige Informationen nicht in den übergebenen Parametern spezifiziert wurden.private void createDataModel()
public void setCloseHandler(ApplicationCloseActionHandler closer)
ClientDavInterfaceSystemTerminator benutzt, das bei Kommunikationsfehlern eine Fehlermeldung ausgibt und
die Applikation terminiert.setCloseHandler in interface ClientDavInterfacecloser - Objekt für die Behandlung von Kommunikationsfehlern oder null, falls bei einem Verbindungsfehler nichts passieren soll.public final long getTime()
ClientDavInterfacegetTime in interface ClientDavInterfacepublic final void sleep(long timeToSleep)
ClientDavInterfacesleep in interface ClientDavInterfacetimeToSleep - Wartezeit in Millisekunden seit 1970.public final void sleepUntil(long absolutTime)
ClientDavInterfacesleepUntil in interface ClientDavInterfaceabsolutTime - Abzuwartender Zeitpunkt in Millisekunden seit 1970.public ArchiveRequestManager getArchive()
ClientDavInterfacegetArchive(getLocalConfigurationAuthority).getArchive in interface ClientDavInterfaceClientDavInterface.getLocalConfigurationAuthority(),
ClientDavInterface.getArchive(SystemObject)public ArchiveRequestManager getArchive(SystemObject archiveSystem)
ClientDavInterfacegetArchive in interface ClientDavInterfacearchiveSystem - Archivsystem über das Archivanfragen abgewickelt werden sollen.public final void connect()
throws CommunicationError,
ConnectionException
ClientDavInterfaceVerbindungsparametern 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.connect in interface ClientDavInterfaceCommunicationError - Wenn bei der initialen Kommunikation mit dem Datenverteiler Fehler aufgetreten sind.ConnectionException - Wenn die physische Verbindung zum Datenverteiler nicht hergestellt werden konnte.ClientDavParameterspublic final void disconnect(boolean error,
String message)
ClientDavInterfaceAuß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.disconnect in interface ClientDavInterfaceerror - 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.public final void login()
throws InconsistentLoginException,
CommunicationError
ClientDavInterfaceInBetrieb überführt. Als Benutzername und Passwort werden die entsprechenden Werte aus den
Verbindungsparametern benutzt.login in interface ClientDavInterfaceInconsistentLoginException - Wenn Benutzername oder Passwort nicht korrekt sind.CommunicationError - Wenn bei der Kommunikation mit dem Datenverteiler Fehler aufgetreten sind.public final void login(String userName, String password) throws InconsistentLoginException, CommunicationError
ClientDavInterfaceInBetrieb überführt.login in interface ClientDavInterfaceuserName - Name des Benutzers für die Authentifizierung.password - Passwort des Benutzers für die Authentifizierung.InconsistentLoginException - Wenn Benutzername oder Passwort nicht korrekt sind.CommunicationError - Wenn bei der Kommunikation mit dem Datenverteiler Fehler aufgetreten sind.private Aspect aspectToSubstitute(AttributeGroup attributeGroup, Aspect aspect)
attributeGroup - die Attributgruppeaspect - der Aspektprivate void checkDataIdentification(SystemObject[] objects, AttributeGroup atg, Aspect aspect, String context)
objects - zu prüfende Objekteatg - zu prüfende Attributgruppeaspect - zu prüfenden Aspektcontext - Kontext, von dem diese Prüfung vorgenommen wirdIllegalArgumentException - Wenn die angegebene Kombination von Objekt, Attributgruppe und Aspekt nicht zulässig ist.public final ResultData[] getCachedData(SystemObject[] objects, DataDescription dataDescription, ReceiveOptions options, HistorySpecification history)
ClientDavInterfacegetCachedData in interface ClientDavInterfaceobjects - 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 oder null wenn nur die aktuellen Daten gewünscht sind.public final ResultData[] getData(SystemObject[] objects, DataDescription dataDescription, long unsubscriptionTime)
ClientDavInterfacegetData in interface ClientDavInterfaceobjects - 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.public ResultData getData(SystemObject object, DataDescription dataDescription, long unsubscriptionTime)
ClientDavInterfacegetData in interface ClientDavInterfaceobject - 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.public final DataModel getDataModel()
ClientDavInterfacegetDataModel in interface ClientDavInterfacepublic DataModel getDataModel(SystemObject configAuthority) throws ConfigurationTaskException
ClientDavInterfacegetDataModel in interface ClientDavInterfaceconfigAuthority - Systemobjekt zum Konfigurationsverantwortlichen der KonfigurationConfigurationTaskException - Falls die angegebene Konfiguration innerhalb von 10 Minuten nicht geantwortet hat oder ein Fehler in der Kommunikation auftratpublic final DataModel getDataModel(String configAuthority) throws ConfigurationTaskException
ClientDavInterfacegetDataModel in interface ClientDavInterfaceconfigAuthority - Pid des Konfigurationsverantwortlichen der KonfigurationConfigurationTaskException - Falls die angegebene Konfiguration innerhalb von 10 Minuten nicht geantwortet hat oder ein Fehler in der Kommunikation auftratpublic DataModel getDataModel(long configAuthorityId) throws ConfigurationTaskException
ClientDavInterfacegetDataModel in interface ClientDavInterfaceconfigAuthorityId - Id des Konfigurationsverantwortlichen der KonfigurationConfigurationTaskException - Falls die angegebene Konfiguration innerhalb von 10 Minuten nicht geantwortet hat oder ein Fehler in der Kommunikation auftratpublic final long getDavRoundTripTime()
ClientDavInterfacegetDavRoundTripTime in interface ClientDavInterface-1, wenn innerhalb 60 Sekunden keine Antwort empfangen wurde.public ConfigurationAuthority getLocalConfigurationAuthority()
ClientDavInterfacegetLocalConfigurationAuthority in interface ClientDavInterfacepublic final ClientApplication getLocalApplicationObject()
ClientDavInterfacegetLocalApplicationObject in interface ClientDavInterfacepublic long getLocalApplicationObjectId()
public final DynamicObject getLocalUser()
ClientDavInterfacegetLocalUser in interface ClientDavInterfaceInitialisationNotCompleteException - Wenn die Authentifizierung noch nicht erfolgreich durchgeführt wurde.public final DavApplication getLocalDav()
ClientDavInterfacegetLocalDav in interface ClientDavInterfacepublic final void sendData(ResultData result) throws DataNotSubscribedException, SendSubscriptionNotConfirmed
ClientDavInterfaceSendSubscriptionNotConfirmed 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. SendSubscriptionNotConfirmed Exception geworfen ohne die fest vorgegebene Zeitspanne abzuwarten.sendData in interface ClientDavInterfaceresult - Ergebnis mit dem zu sendenden Datensatz.DataNotSubscribedException - Wenn die Daten nicht zum Senden angemeldet waren.SendSubscriptionNotConfirmed - Wenn beim Senden als einfacher Sender gesendet wird, ohne die Sendesteuerung abzuwarten.public final void sendData(ResultData[] results) throws DataNotSubscribedException, SendSubscriptionNotConfirmed
ClientDavInterfaceSendSubscriptionNotConfirmed 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. SendSubscriptionNotConfirmed Exception geworfen ohne die fest vorgegebene Zeitspanne abzuwarten.sendData in interface ClientDavInterfaceresults - Die zu sendenden Ergebnisdatensätze.DataNotSubscribedException - Wenn nicht alle Datensätze zum Senden angemeldet waren.SendSubscriptionNotConfirmed - Wenn beim Senden als einfacher Sender gesendet wird, ohne die Sendesteuerung abzuwarten.public final void subscribeReceiver(ClientReceiverInterface receiver, Collection<SystemObject> objects, DataDescription dataDescription, ReceiveOptions options, ReceiverRole role)
ClientDavInterfacesubscribeReceiver in interface ClientDavInterfacereceiver - 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).public final void subscribeReceiver(ClientReceiverInterface receiver, Collection<SystemObject> objects, DataDescription dataDescription, ReceiveOptions options, ReceiverRole role, long cacheTime)
ClientDavInterfacesubscribeReceiver in interface ClientDavInterfacereceiver - 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.public void subscribeReceiver(ClientReceiverInterface receiver, SystemObject object, DataDescription dataDescription, ReceiveOptions options, ReceiverRole role)
ClientDavInterfacesubscribeReceiver in interface ClientDavInterfacereceiver - 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).public void subscribeReceiver(ClientReceiverInterface receiver, SystemObject object, DataDescription dataDescription, ReceiveOptions options, ReceiverRole role, long cacheTime)
ClientDavInterfacesubscribeReceiver in interface ClientDavInterfacereceiver - 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.public final void subscribeReceiver(ClientReceiverInterface receiver, SystemObject[] objects, DataDescription dataDescription, ReceiveOptions options, ReceiverRole role)
ClientDavInterfacesubscribeReceiver in interface ClientDavInterfacereceiver - 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).public final void subscribeReceiver(ClientReceiverInterface receiver, SystemObject[] objects, DataDescription dataDescription, ReceiveOptions options, ReceiverRole role, long cacheTime)
ClientDavInterfacesubscribeReceiver in interface ClientDavInterfacereceiver - 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.public void unsubscribeReceiver(ClientReceiverInterface receiver, Collection<SystemObject> objects, DataDescription dataDescription)
ClientDavInterfaceClientDavInterface.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.unsubscribeReceiver in interface ClientDavInterfacereceiver - 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.public void unsubscribeReceiver(ClientReceiverInterface receiver, SystemObject object, DataDescription dataDescription)
ClientDavInterfaceClientDavInterface.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.unsubscribeReceiver in interface ClientDavInterfacereceiver - 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.public void unsubscribeReceiver(ClientReceiverInterface receiver, SystemObject[] objects, DataDescription dataDescription)
ClientDavInterfaceClientDavInterface.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.unsubscribeReceiver in interface ClientDavInterfacereceiver - 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.public final void subscribeSender(ClientSenderInterface sender, Collection<SystemObject> objects, DataDescription dataDescription, SenderRole role) throws OneSubscriptionPerSendData
ClientDavInterfaceobjects 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.subscribeSender in interface ClientDavInterfacesender - 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).OneSubscriptionPerSendData - Wenn bereits eine lokale Sendeanmeldung für die gleichen Daten von einem anderen Anwendungsobjekt vorliegt.public void subscribeSender(ClientSenderInterface sender, SystemObject object, DataDescription dataDescription, SenderRole role) throws OneSubscriptionPerSendData
ClientDavInterfacedataDescription spezifizierten Daten beim
Datenverteiler durchgeführt. Bei Anmeldungen als Quelle (siehe Parameter role) wird nach der Anmeldung automatisch ein leerer Datensatz
versendet.subscribeSender in interface ClientDavInterfacesender - 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).OneSubscriptionPerSendData - Wenn bereits eine lokale Sendeanmeldung für die gleichen Daten von einem anderen Anwendungsobjekt vorliegt.public final void subscribeSender(ClientSenderInterface sender, SystemObject[] objects, DataDescription dataDescription, SenderRole role) throws OneSubscriptionPerSendData
ClientDavInterfaceobjects 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.subscribeSender in interface ClientDavInterfacesender - 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).OneSubscriptionPerSendData - Wenn bereits eine lokale Sendeanmeldung für die gleichen Daten von einem anderen Anwendungsobjekt vorliegt.public void subscribeSource(ClientSenderInterface sender, ResultData initialData) throws OneSubscriptionPerSendData
ClientDavInterfaceinitialData enthaltenen Daten wird ein entsprechende Sendeanmeldung
beim Datenverteiler durchgeführt und anschließend wird der übergebene Datensatz als initialer Datensatz versendet.subscribeSource in interface ClientDavInterfacesender - Anwendungs-Objekt, an das Sendesteuerungen gesendet werden.initialData - Initialer Datensatz, der nach der entsprechenden Anmeldung zu versenden ist.OneSubscriptionPerSendData - Wenn bereits eine lokale Sendeanmeldung für die gleichen Daten von einem anderen Anwendungsobjekt vorliegt.public final void unsubscribeSender(ClientSenderInterface sender, Collection<SystemObject> objects, DataDescription dataDescription)
ClientDavInterfaceClientDavInterface.subscribeSender(de.bsvrz.dav.daf.main.ClientSenderInterface, java.util.Collection<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.unsubscribeSender in interface ClientDavInterfacesender - 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.public void unsubscribeSender(ClientSenderInterface sender, SystemObject object, DataDescription dataDescription)
ClientDavInterfaceClientDavInterface.subscribeSender(de.bsvrz.dav.daf.main.ClientSenderInterface, java.util.Collection<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.unsubscribeSender in interface ClientDavInterfacesender - 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.public final void unsubscribeSender(ClientSenderInterface sender, SystemObject[] objects, DataDescription dataDescription)
ClientDavInterfaceClientDavInterface.subscribeSender(de.bsvrz.dav.daf.main.ClientSenderInterface, java.util.Collection<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.unsubscribeSender in interface ClientDavInterfacesender - 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.public Data createData(AttributeGroup attributeGroup)
ClientDavInterfacecreateData in interface ClientDavInterfaceattributeGroup - Attributgruppe des neuen Datensatzes.public void sendApplicationReadyMessage()
ClientDavInterfaceClientDavInterface.enableExplicitApplicationReadyMessage() aufgerufen hat.sendApplicationReadyMessage in interface ClientDavInterfaceprivate void sendApplicationReadyMessage(boolean sendNotReadyYet)
sendNotReadyYet - gibt an, ob eine Noch-nicht-Fertigmeldung (true) oder eine Fertigmeldung (false)
verschickt werden soll.private ResultData composeApplicationReadyMessage(DataModel configuration, AttributeGroup attributeGroup, boolean sendNotReadyYet)
configuration - Verwendetes DatenmodellattributeGroup - Attributgruppe für die FertigmeldungsendNotReadyYet - true, falls Noch-Nicht-Fertigmeldung versendet werden soll, false sonst.public void enableExplicitApplicationReadyMessage()
ClientDavInterfaceClientDavInterface.sendApplicationReadyMessage() veranlassen.enableExplicitApplicationReadyMessage in interface ClientDavInterfacevoid triggerTransactionSender(ClientSenderInterface sender, TransactionDataDescription dataDescription, Collection<InnerDataSubscription> subscriptions) throws OneSubscriptionPerSendData
sender - Sender-InterfacedataDescription - Daten-Identifikationsubscriptions - Innere Anmeldungen (für Quelle, falls null wird ein Sender angemeldet)OneSubscriptionPerSendData - Fehler bei der Anmeldung (z.B. es gibt schon eine Quelle)void triggerTransactionReceiver(ClientReceiverInterface receiver, TransactionDataDescription dataDescription, Collection<InnerDataSubscription> subscriptions) throws OneSubscriptionPerSendData
receiver - Empfänger-InterfacedataDescription - Daten-Identifikationsubscriptions - Innere Anmeldungen (für Senke, falls null wird ein Empfänger angemeldet)OneSubscriptionPerSendData - Fehler bei der Anmeldung (z.B. es gibt schon eine Senke)public int getTimeStampFromSenderSubscription(BaseSubscriptionInfo info)
info - Anmeldungpublic ClientSubscriptionInfo getSubscriptionInfo(DavApplication davApplication, SystemObject object, AttributeGroupUsage usage, short simulationVariant) throws IOException
davApplication - Datenverteiler, der gefragt werden sollobject - Systemobjektusage - AttributgruppenverwendungsimulationVariant - SimulationsvarianteIOExceptionpublic ApplicationSubscriptionInfo getSubscriptionInfo(DavApplication davApplication, ClientApplication application) throws IOException
davApplication - Datenverteiler, der gefragt werden sollapplication - Applikation von der vorhandene Anmeldungen abgefragt werden sollenIOExceptionpublic ClientDavParameters getClientDavParameters()
ClientDavInterfacegetClientDavParameters in interface ClientDavInterfaceClientDavParameters.clone(boolean)public void addConnectionListener(DavConnectionListener davConnectionListener)
ClientDavInterfaceaddConnectionListener in interface ClientDavInterfacedavConnectionListener - Beobachterobjekt, das hinzugefügt werden soll.public void removeConnectionListener(DavConnectionListener davConnectionListener)
ClientDavInterfaceremoveConnectionListener in interface ClientDavInterfacedavConnectionListener - Beobachterobjekt, das entfernt werden soll.private void notifyConnectionClosed()
public boolean checkLoggedUserNameAndPassword(String userName, String password)
ClientDavInterfacecheckLoggedUserNameAndPassword in interface ClientDavInterfaceuserName - Zu prüfender Benutzernamepassword - Zu prüfendes Passworttrue, wenn eine Verbindung zum Datenverteiler besteht und mit dem angegebenen Benutzernamen und Passwort aufgebaut wurde, sonst
falsepublic Transactions getTransactions()
ClientDavInterfacegetTransactions in interface ClientDavInterfacepublic boolean isConnected()
public boolean isLoggedIn()