Package de.bsvrz.puk.param.anfrage
Class ParameterAnfrageBeantworter
- java.lang.Object
-
- java.lang.Thread
-
- de.bsvrz.puk.param.anfrage.ParameterAnfrageBeantworter
-
- All Implemented Interfaces:
de.bsvrz.dav.daf.main.ClientSenderInterface
,java.lang.Runnable
- Direct Known Subclasses:
ControlAnfrageBeantworter
public abstract class ParameterAnfrageBeantworter extends java.lang.Thread implements de.bsvrz.dav.daf.main.ClientSenderInterface
Abstrakte Basisklasse zur Repräsentation eines Beantworters auf eine Anfrage, die die Parametrierung über die Parametrierungsschnittstelle erhalten hat (atg.parameterSchnittstelle). Für eine Anfrage wird ein Thread gestartet, der die gesuchten Informationen ermittelt und diese als Sender an die anfragende Applikation übermittelt.
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
ParameterAnfrageBeantworter(Parametrierung parametrierung, de.bsvrz.dav.daf.main.config.SystemObject anfrager, int index)
Konstruktor.
Die Funktion erzeugt einen Anfragebeantworter der eine Anfrage mit Hilfe des übergebenen Parametrierungsmodul bearbeitet.
-
Method Summary
Modifier and Type Method Description void
dataRequest(de.bsvrz.dav.daf.main.config.SystemObject object, de.bsvrz.dav.daf.main.DataDescription dataDescription, byte state)
protected abstract java.io.Serializable
ermittleAntwort()
die Funktion ermittelt aus den übergebenen Daten eine Antwort, die später an den Anfrager als Attribut im Datensatz "atg.parametrierungSchnittstelle" zurückgesendet wird.static ParameterAnfrageBeantworter
erzeugeBeantworter(Parametrierung parametrierung, de.bsvrz.dav.daf.main.Data daten)
Factory zum Erstellen eines konkreten Anfragebeantworters in Abhängigkeit vom empfangenen Anfragetyp.
Unterstützt werden Anfragen mit folgenden Typen:KonfigurierbareObjekteErmittler
: zum Ermitteln der Objekte, die durch Setzen des übergebenen Parameterdatensatzes potentiell mit Parametern versorgt werden.protected abstract de.bsvrz.puk.param.lib.ParametrierungsAnfrageTyp
getAntwortTyp()
liefert den Typ der Antwort auf die entsprechende Anfrage.protected int
getIndex()
liefert den Index der Anfrage.protected Parametrierung
getParametrierung()
liefert die Parametrierung, die die Anfrage erhalten hat.boolean
isRequestSupported(de.bsvrz.dav.daf.main.config.SystemObject object, de.bsvrz.dav.daf.main.DataDescription dataDescription)
void
run()
-
Methods inherited from class java.lang.Thread
activeCount, checkAccess, clone, countStackFrames, currentThread, dumpStack, enumerate, getAllStackTraces, getContextClassLoader, getDefaultUncaughtExceptionHandler, getId, getName, getPriority, getStackTrace, getState, getThreadGroup, getUncaughtExceptionHandler, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, onSpinWait, resume, setContextClassLoader, setDaemon, setDefaultUncaughtExceptionHandler, setName, setPriority, setUncaughtExceptionHandler, sleep, sleep, start, stop, suspend, toString, yield
-
-
-
-
Constructor Detail
-
ParameterAnfrageBeantworter
protected ParameterAnfrageBeantworter(Parametrierung parametrierung, de.bsvrz.dav.daf.main.config.SystemObject anfrager, int index)
Konstruktor.
Die Funktion erzeugt einen Anfragebeantworter der eine Anfrage mit Hilfe des übergebenen Parametrierungsmodul bearbeitet. Das übergebene Anfrageobjekt muss ein Objekt vom Typ "typ.applikation" sein, da über dessen Attributgruppe "atg.paremetrierungSchnittstelle" das Ergebnis übermittelt wird. Der Index wird im Ergebnis zurückgeliefert.- Parameters:
parametrierung
- die Parametrierung, die die Anfrage erhalten hat.anfrager
- das anfragende Applikationsobjektindex
- der Index der Anfrage
-
-
Method Detail
-
erzeugeBeantworter
public static ParameterAnfrageBeantworter erzeugeBeantworter(Parametrierung parametrierung, de.bsvrz.dav.daf.main.Data daten)
Factory zum Erstellen eines konkreten Anfragebeantworters in Abhängigkeit vom empfangenen Anfragetyp.
Unterstützt werden Anfragen mit folgenden Typen:KonfigurierbareObjekteErmittler
: zum Ermitteln der Objekte, die durch Setzen des übergebenen Parameterdatensatzes potentiell mit Parametern versorgt werden. Das ist nur sinnvoll für Objekte, die eine Hierarchie beschreiben oder Typ-Objekte.ParameterLesenErmittler
: zum Ermitteln der konkreten Parameter für die übergebene Spezifikation. über diese Anfrage können auch die Parameter ermittelt werden, die an Typ-Objekten bzw. Hierarchieobjekten für die versorgten untergeordneten Objekte gelten.ParameterSchreibenErmittler
: zum Schreiben der Parameter für die übergebene Spezifikation.SucheWurzelErmittler
: zum Ermitteln der Basisobjektes, aus dem die Parameter für eine übergebene Parameterspezifikation stammen.
IllegalArgumentException
.- Parameters:
parametrierung
- die Parametrierung, die die Anfrage erhalten hatdaten
- die Daten die mit der Anfrage empfangen wurden- Returns:
- der erzeugte Beantworter
-
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 interfacede.bsvrz.dav.daf.main.ClientSenderInterface
-
ermittleAntwort
protected abstract java.io.Serializable ermittleAntwort()
die Funktion ermittelt aus den übergebenen Daten eine Antwort, die später an den Anfrager als Attribut im Datensatz "atg.parametrierungSchnittstelle" zurückgesendet wird.- Returns:
- die Antwort als serialisierbares Objekt
-
getAntwortTyp
protected abstract de.bsvrz.puk.param.lib.ParametrierungsAnfrageTyp getAntwortTyp()
liefert den Typ der Antwort auf die entsprechende Anfrage. Der Typ der Antwort hängt vom Typ der Anfrage ab, ist aber durch den gleichen Zustand definiert, da Anfrage und Antwort mit der gleichen Attributgruppe versendet werden.- Returns:
- den Antworttyp
-
getIndex
protected int getIndex()
liefert den Index der Anfrage.- Returns:
- den Index
-
getParametrierung
protected Parametrierung getParametrierung()
liefert die Parametrierung, die die Anfrage erhalten hat.- Returns:
- parametrierung die Parametrierung
-
isRequestSupported
public boolean isRequestSupported(de.bsvrz.dav.daf.main.config.SystemObject object, de.bsvrz.dav.daf.main.DataDescription dataDescription)
- Specified by:
isRequestSupported
in interfacede.bsvrz.dav.daf.main.ClientSenderInterface
-
run
public void run()
- Specified by:
run
in interfacejava.lang.Runnable
- Overrides:
run
in classjava.lang.Thread
-
-