de.bsvrz.dav.daf.main
Interface ClientSenderInterface

All Known Implementing Classes:
AbstractSenderReceiverCommunication.RequestSender, ClientDavConnection.ReadyMessageSender, StreamedArchiveRequester.ClientSender

public interface ClientSenderInterface

Schnittstelle die seitens der Applikation zu implementieren ist, um bei getriggerten Sendeanmeldungen, den Versand von Daten auszulösen.

Author:
Kappich Systemberatung
See Also:
ClientDavInterface.subscribeSender(de.bsvrz.dav.daf.main.ClientSenderInterface, java.util.Collection, de.bsvrz.dav.daf.main.DataDescription, de.bsvrz.dav.daf.main.SenderRole)

Field Summary
static byte START_SENDING
          Eine Sendesteuerung mit diesem Status-Wert signalisiert, dass der Versand von Daten gestartet werden soll.
static byte STOP_SENDING
          Eine Sendesteuerung mit diesem Status-Wert signalisiert, dass der Versand von Daten angehalten werden soll, weil momentan kein Abnehmer sich für die Daten interessiert.
static byte STOP_SENDING_NO_RIGHTS
          Eine Sendesteuerung mit diesem Status-Wert signalisiert, dass der Versand von Daten angehalten werden soll, weil momentan keine Rechte für den Versand vorliegen.
static byte STOP_SENDING_NOT_A_VALID_SUBSCRIPTION
          Eine Sendesteuerung mit diesem Status-Wert signalisiert, dass der Versand von Daten angehalten werden soll, weil die entsprechende Anmeldung momentan nicht gültig ist (z.B.
 
Method Summary
 void dataRequest(SystemObject object, DataDescription dataDescription, byte state)
          Sendesteuerung des Datenverteilers an die Applikation.
 boolean isRequestSupported(SystemObject object, DataDescription dataDescription)
          Diese Methode muss von der Applikation implementiert werden, um zu signalisieren, ob Sendesteuerungen erwünscht sind und mit der Methode dataRequest verarbeitet werden.
 

Field Detail

START_SENDING

static final byte START_SENDING
Eine Sendesteuerung mit diesem Status-Wert signalisiert, dass der Versand von Daten gestartet werden soll.

See Also:
Constant Field Values

STOP_SENDING

static final byte STOP_SENDING
Eine Sendesteuerung mit diesem Status-Wert signalisiert, dass der Versand von Daten angehalten werden soll, weil momentan kein Abnehmer sich für die Daten interessiert.

See Also:
Constant Field Values

STOP_SENDING_NO_RIGHTS

static final byte STOP_SENDING_NO_RIGHTS
Eine Sendesteuerung mit diesem Status-Wert signalisiert, dass der Versand von Daten angehalten werden soll, weil momentan keine Rechte für den Versand vorliegen.

See Also:
Constant Field Values

STOP_SENDING_NOT_A_VALID_SUBSCRIPTION

static final byte STOP_SENDING_NOT_A_VALID_SUBSCRIPTION
Eine Sendesteuerung mit diesem Status-Wert signalisiert, dass der Versand von Daten angehalten werden soll, weil die entsprechende Anmeldung momentan nicht gültig ist (z.B. wegen doppelter Quelle).

See Also:
Constant Field Values
Method Detail

dataRequest

void dataRequest(SystemObject object,
                 DataDescription dataDescription,
                 byte state)
Sendesteuerung des Datenverteilers an die Applikation. Diese Methode muss von der Applikation implementiert werden, um den Versand von Daten zu starten bzw. anzuhalten. Der Datenverteiler signalisiert damit einer Quelle oder einem Sender dass mindestens ein Abnehmer bzw. kein Abnehmer mehr für die zuvor angemeldeten Daten vorhanden ist. Die Quelle wird damit aufgefordert den Versand von Daten zu starten bzw. zu stoppen.

Parameters:
object - Das in der zugehörigen Sendeanmeldung angegebene Objekt, auf das sich die Sendesteuerung bezieht.
dataDescription - Beschreibende Informationen zu den angemeldeten Daten auf die sich die Sendesteuerung bezieht.
state - Status der Sendesteuerung. Kann einen der Werte START_SENDING, STOP_SENDING, STOP_SENDING_NO_RIGHTS, STOP_SENDING_NOT_A_VALID_SUBSCRIPTION enthalten.
See Also:
START_SENDING, STOP_SENDING, STOP_SENDING_NO_RIGHTS, STOP_SENDING_NOT_A_VALID_SUBSCRIPTION

isRequestSupported

boolean isRequestSupported(SystemObject object,
                           DataDescription dataDescription)
Diese Methode muss von der Applikation implementiert werden, um zu signalisieren, ob Sendesteuerungen erwünscht sind und mit der Methode dataRequest verarbeitet werden. In der Implementierung dieser Methode dürfen keine synchronen Aufrufe, die auf Telegramme vom Datenverteiler warten (wie z.B. Konfigurationsanfragen) durchgeführt werden, da ansonsten ein Deadlock entsteht.

Parameters:
object - Das in der zugehörigen Sendeanmeldung angegebene System-Objekt.
dataDescription - Die in der zugehörigen Sendeanmeldung angegebenen beschreibenden Informationen der angemeldeten Daten.
Returns:
true, falls Sendesteuerungen gewünscht sind, sonst false.
See Also:
dataRequest(de.bsvrz.dav.daf.main.config.SystemObject, de.bsvrz.dav.daf.main.DataDescription, byte)