de.bsvrz.ste.rdstmcvew
Class RDSVewSender

java.lang.Object
  extended by de.bsvrz.ste.rdstmcvew.RDSVewSender
All Implemented Interfaces:
de.bsvrz.dav.daf.main.ClientSenderInterface

public class RDSVewSender
extends java.lang.Object
implements de.bsvrz.dav.daf.main.ClientSenderInterface

Die Klasse zum Versenden von Daten unter dem Aspekt "Senden" der Attributgruppe "RDSMeldung". Sie implementiert das ClientSenderInterface welches die Methoden zum Versenden der Daten bereitstellt.

Version:
$Revision: 1.2 $ / $Date: 2008/09/30 15:20:19 $ / ($Author: Hilpp $) Geprüft Hilpp 30.9.2008
Author:
Dambach Werke GmbH, Stefan Sans

Field Summary
protected  de.bsvrz.dav.daf.main.DataDescription _datenBeschreibung
          Datenbeschreibung "gesendet"
protected  RDSVewMeldung meldung
          Übergeordnet Instanz vom Typ RDSVewMeldung
static de.bsvrz.dav.daf.main.SenderRole ROLLE
          Rolle, mit der als Sender angemeldet wird
static long SENDE_TIMEOUT
          Zeitin ms, die max. auf Sendesteuerung gewartet wird
 
Fields inherited from interface de.bsvrz.dav.daf.main.ClientSenderInterface
START_SENDING, STOP_SENDING, STOP_SENDING_NO_RIGHTS, STOP_SENDING_NOT_A_VALID_SUBSCRIPTION
 
Constructor Summary
RDSVewSender(RDSVewMeldung meldung)
          Konstruktor der Klasse
 
Method Summary
 void dataRequest(de.bsvrz.dav.daf.main.config.SystemObject object, de.bsvrz.dav.daf.main.DataDescription dataDescription, byte state)
           
 void dispose()
          Gibt die mit dieser Instanz verbundenen Ressourcen wieder frei
 de.bsvrz.dav.daf.main.ClientDavInterface getConnection()
           
 de.bsvrz.dav.daf.main.ResultData getDatenSenden()
           
 de.bsvrz.dav.daf.main.config.SystemObject getDavObjekt()
           
 boolean isAngemeldet()
           
 boolean isRequestSupported(de.bsvrz.dav.daf.main.config.SystemObject so, de.bsvrz.dav.daf.main.DataDescription dd)
           
protected  boolean send(de.bsvrz.dav.daf.main.ResultData resultData)
          Unmittelbares Senden von Daten.
 void starteSenden(de.bsvrz.dav.daf.main.Data data, long zeitStempel, long verzoegerung, boolean bedingterAbbruch, de.bsvrz.dav.daf.main.config.Aspect empfangsAspekt)
          Starte neuen SendeTread - ein evtl. laufender Sendethread wird durch den übergebenen ersetzt und ggf. abgebrochen
 void stopSenden()
          Abbrechen eines evtl. gestarteten und laufenden SendeThreads
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

ROLLE

public static final de.bsvrz.dav.daf.main.SenderRole ROLLE
Rolle, mit der als Sender angemeldet wird


SENDE_TIMEOUT

public static final long SENDE_TIMEOUT
Zeitin ms, die max. auf Sendesteuerung gewartet wird

See Also:
Constant Field Values

_datenBeschreibung

protected final de.bsvrz.dav.daf.main.DataDescription _datenBeschreibung
Datenbeschreibung "gesendet"


meldung

protected final RDSVewMeldung meldung
Übergeordnet Instanz vom Typ RDSVewMeldung

Constructor Detail

RDSVewSender

public RDSVewSender(RDSVewMeldung meldung)
Konstruktor der Klasse

Parameters:
meldung - Objekt vom Typ RDSVewMeldung, für das das Senden von Daten erfolgt
Method Detail

isAngemeldet

public boolean isAngemeldet()
Returns:
ist diese Instanz zum DAV-Senden angemeldet?

getConnection

public de.bsvrz.dav.daf.main.ClientDavInterface getConnection()
Returns:
die Datenverteiler-Verbindung

getDavObjekt

public de.bsvrz.dav.daf.main.config.SystemObject getDavObjekt()
Returns:
das Dav-Systemobject, für das das Senden von Daten erfolgt

dispose

public void dispose()
Gibt die mit dieser Instanz verbundenen Ressourcen wieder frei


send

protected boolean send(de.bsvrz.dav.daf.main.ResultData resultData)
Unmittelbares Senden von Daten.

Parameters:
resultData - die zu sendenden Daten
Returns:
true, wenn das Senden erfolgreich war, false sonst

dataRequest

public void dataRequest(de.bsvrz.dav.daf.main.config.SystemObject object,
                        de.bsvrz.dav.daf.main.DataDescription dataDescription,
                        byte state)
Specified by:
dataRequest in interface de.bsvrz.dav.daf.main.ClientSenderInterface

isRequestSupported

public boolean isRequestSupported(de.bsvrz.dav.daf.main.config.SystemObject so,
                                  de.bsvrz.dav.daf.main.DataDescription dd)
Specified by:
isRequestSupported in interface de.bsvrz.dav.daf.main.ClientSenderInterface

getDatenSenden

public de.bsvrz.dav.daf.main.ResultData getDatenSenden()
Returns:
die unter dem Aspekt senden aktuell gesendeten Daten

starteSenden

public void starteSenden(de.bsvrz.dav.daf.main.Data data,
                         long zeitStempel,
                         long verzoegerung,
                         boolean bedingterAbbruch,
                         de.bsvrz.dav.daf.main.config.Aspect empfangsAspekt)
Starte neuen SendeTread - ein evtl. laufender Sendethread wird durch den übergebenen ersetzt und ggf. abgebrochen

Parameters:
data - die zu sendenden Daten - der Sendeauftrag verwaltet eine Kopie dieser Daten
verzoegerung - die Sendeverzögerung in s
bedingterAbbruch - wenn true wird ein laufender SendeThread abgebrochen, wenn er mit Verzögerung gestartet wurde

stopSenden

public void stopSenden()
Abbrechen eines evtl. gestarteten und laufenden SendeThreads