public class ParamApp extends java.lang.Object implements ClientSenderInterface, ClientReceiverInterface
Diese Klasse implementiert die Parametrierung, die sich über Aufrufargumente gesteuert auf beliebige Vorgabe-Parameter-Daten des Systems anmelden kann, und diese als Soll-Parameter publiziert.
Datenfluss:
Ein zu verwendender Paramtersatz wird (i.d.R. durch die Bedienung) als Vorgabe-Parameter versandt und von der Paramterierung (die darauf als Senke angemeldet ist) als Soll-Paramter publiziert. Der Soll-Parameter wird von den zu parametrierenden Applikationen verwendet. Eine solche Applikation hat zudem die Möglichkeit (wird i.d.R. aber nicht verwendet) den von ihr tatsächlichen benutzten Paramtersatz als Ist-Parameter zu publizieren.
Bespiel: Bedienung setzt Vorgabe-Parameter für Erfassungszyklus auf Wert 1,1 Minuten. Parameterierung publiziert dies an alle angemeldeten Applikationen als Soll-Parameter. Die TLS-Applikation (als ein Abnehmer) sendet diesen Wert an die Streckenstation. Da dort keine 1,1 Minuten eingestellt werden können, meldet die Streckenstation als eingestellten Wert 1 Minute zurück. Die TLS-Applikation publiziert daraufhin als Ist-Paramter den Wert 1-Minute. In der Bedienung könnte z.B. über eine Gegenüberstellung von Vorgabe-, Soll- und Ist-Parameter auf diese Abweichung hingewiesen werden.
Aufruf:
Pid: PID des Parametrierungsobjekts (typ.parametrierung) an dem die Parameter für diese Parametrierung verwaltet werden. Default: parametrierung.global Die Beschreibung der Parameterattributgruppe siehe DatKat, atg.parametrierung.
mit: java de.kappich.puk.param.main.ParamApp -parameterPfad=ParameterPfad -parametrierung=Pid
ParameterPfad: Pfadangabe, in der die Parameterdaten persistent gehalten werden. Default: “./parameter”. Der spezifizierte Zielordner muss existieren!
START_SENDING, STOP_SENDING, STOP_SENDING_NO_RIGHTS, STOP_SENDING_NOT_A_VALID_SUBSCRIPTION
Constructor and Description |
---|
ParamApp()
Konstruiert ein ParamApp Objekt.
|
Modifier and Type | Method and Description |
---|---|
void |
dataRequest(SystemObject object,
DataDescription dataDescription,
byte state)
Sendesteuerung des Datenverteilers an die Applikation.
|
boolean |
isRequestSupported(SystemObject object,
DataDescription dataDescription)
Liefert
false zurück, um den Datenverteiler-Applikationsfunktionenen zu signalisieren, dass keine Sendesteuerung gewünscht wird. |
static void |
main(java.lang.String[] arguments)
Main-Methode mit Auswertung der Aufrufparamter Anmeldung an den Datenverteiler Erzeugen ein ParamApp
|
void |
update(ResultData[] results)
Aktualisierungsmethode, die nach Empfang eines angemeldeten Datensatzes von den Datenverteiler-Applikationsfunktionen aufgerufen wird.
|
public ParamApp()
Konstruiert ein ParamApp Objekt. Bei der Konstruktion werden folgende Schritte durchgeführt:
atg.parametrierung
des als Aufrufparameter übergebenen ParamApp-Objekts.SettingsManager
zur Verarbeitung geänderter Parameterzuständigkeiten. atg.parametrierung
der ParametrierungDamit empfängt die Parametrierung als erstes “ihren” Parametersatz und wertet ihn aus, wodurch dann alle zu parametrierenden Datensätze angemeldet, eventuell vorhande persistente Daten versandt und geänderte Vorgaben verarbeitet werden (d.h. die Parameterierung zieht sich so beim Start selbst aus dem Sumpf.
public 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.
dataRequest
in interface ClientSenderInterface
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.ClientSenderInterface.START_SENDING
,
ClientSenderInterface.STOP_SENDING
,
ClientSenderInterface.STOP_SENDING_NO_RIGHTS
,
ClientSenderInterface.STOP_SENDING_NOT_A_VALID_SUBSCRIPTION
public boolean isRequestSupported(SystemObject object, DataDescription dataDescription)
Liefert false
zurück, um den Datenverteiler-Applikationsfunktionenen zu signalisieren, dass keine Sendesteuerung gewünscht wird.
isRequestSupported
in interface ClientSenderInterface
object
- Wird ignoriert.dataDescription
- Wird ignoriert.false
.ClientSenderInterface.dataRequest(de.bsvrz.dav.daf.main.config.SystemObject, de.bsvrz.dav.daf.main.DataDescription, byte)
public void update(ResultData[] results)
Aktualisierungsmethode, die nach Empfang eines angemeldeten Datensatzes von den Datenverteiler-Applikationsfunktionen aufgerufen wird.
update
in interface ClientReceiverInterface
results
- Feld mit den empfangenen Ergebnisdatensätzen.public static void main(java.lang.String[] arguments)
Main-Methode mit
arguments
- Die Aufrufparameter der Applikation