public class Meldungsdekodierer extends Thread implements de.bsvrz.dav.daf.main.ClientReceiverInterface, de.bsvrz.dav.daf.main.ClientSenderInterface, LMSFTPListener, de.bsvrz.dav.daf.main.config.InvalidationListener
Modifier and Type | Class and Description |
---|---|
(package private) class |
Meldungsdekodierer.ListeOhneNullElemente<E>
Erweiterung einer ArrayList, die 'null' als Element nicht annimmt.
|
(package private) class |
Meldungsdekodierer.MengeListener
Listener für Änderungen der Menge der RDS-Meldungen des
Landesmeldestelle.
|
Thread.State, Thread.UncaughtExceptionHandler
Modifier and Type | Field and Description |
---|---|
private static String |
ATTRIBUTGRUPPE_PARAMETER
Attributgruppe der Kommunikationsparameter.
|
private de.bsvrz.dav.daf.main.config.DataModel |
config
Datenmodell der Konfiguration.
|
private Map<File,List<RDSMeldung>> |
dateiMap
Map zur Zuordnung von Dateien zu enthaltenen Meldungen.
|
private de.bsvrz.dav.daf.main.ClientDavInterface |
dav
DaV Interface.
|
(package private) de.bsvrz.sys.funclib.debug.Debug |
debug
DebugLogger für Debug-Ausgaben.
|
private LMSFTPServer |
ftpserver
FTP-Serverthread.
|
private LMSKommunikationsstatus |
kommunikationsStatus
Kommunikationsstatus.
|
(package private) de.bsvrz.dav.daf.main.config.ConfigurationObject |
lms
Objektreferenz auf das Objekt vom Typ "typ.landesMeldeStelle".
|
private LMSParameter |
lmsParameter
Die aktuellen Parameter.
|
(package private) Map<String,RDSMeldung> |
meldungen
Die Liste der zu empfangenen Meldungen.
|
(package private) de.bsvrz.dav.daf.main.config.MutableSet |
meldungsmenge
Die Menge der RDSMeldungen der Landesmeldestelle.
|
private ArrayList<File> |
neueDateien
die Liste neu empfangener Dateien.
|
(package private) de.bsvrz.dav.daf.main.config.DynamicObjectType |
objektTyp
Objekttyp der Meldungen.
|
private de.bsvrz.dav.daf.main.DataDescription |
paramEmpfang
Datenbeschreibung, mit der Parameter empfangen werden.
|
(package private) boolean |
run
Run-Flag.
|
(package private) de.bsvrz.sys.funclib.dynobj.DynamischeObjekte |
vdo
Klasse zum Verwalten dynamischer Objekte.
|
private Object |
waitLock
Waitlock.
|
MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY
Constructor and Description |
---|
Meldungsdekodierer(de.bsvrz.dav.daf.main.ClientDavInterface dav,
de.bsvrz.dav.daf.main.config.ConfigurationObject lms)
Konstruktor.
|
Modifier and Type | Method and Description |
---|---|
private RDSMeldung |
aktualisiereMeldung(RDSMeldungsDaten meldungsdaten)
Aktualisiert eine bestehende Meldung.
|
(package private) void |
copy(InputStream in,
OutputStream out)
Kopiert den Dateiinhalt.
|
void |
dataRequest(de.bsvrz.dav.daf.main.config.SystemObject object,
de.bsvrz.dav.daf.main.DataDescription dataDescription,
byte state) |
void |
empfangen(List<File> dateien)
Diese Methode wird aufgerufen, wenn neu empfangene Dateien von der LMS
zur Verfügung stehen.
|
(package private) void |
entfernenMeldung(de.bsvrz.dav.daf.main.config.SystemObject so)
Entfernt eine Meldung aus der Meldungsliste.
|
private de.bsvrz.dav.daf.main.config.SystemObject |
erzeugeMeldungsObjekt(RDSMeldungsDaten meldungsdaten)
Erzeugt ein dynamisches Objekt für die RDSMeldung.
|
void |
hinzufuegenMeldung(de.bsvrz.dav.daf.main.config.SystemObject objekt)
Fügt eine Meldung zur Meldungsliste hinzu.
|
void |
invalidObject(de.bsvrz.dav.daf.main.config.DynamicObject dynamicObject) |
boolean |
isRequestSupported(de.bsvrz.dav.daf.main.config.SystemObject object,
de.bsvrz.dav.daf.main.DataDescription dataDescription) |
private boolean |
istRelevant(RDSMeldungsDaten meldung)
Filterung eingehender Meldungen.
|
void |
kommunikationsStatus(LMSKommunikationsstatus status)
Diese Methode wird aufgerufen, wenn eine Änderung des
Kommunikationszustandes zur LMS erkannt wird.
|
(package private) void |
kopiereDatei(String quelldatei,
String zieldatei)
Kopiert eine Datei.
|
private void |
loescheMeldungsObjekt(de.bsvrz.dav.daf.main.config.SystemObject obj)
Ezeugt ein dynamisches Objekt für die RDSMeldung.
|
private RDSMeldung |
neueMeldung(RDSMeldungsDaten meldungsdaten)
Ezeugt ein neues Objekt vom Typ RDSMeldung.
|
void |
run() |
private void |
sichereDatei(File datei)
Kopiert eine Datei in das Sicherungsverzeichnis.
|
void |
stopp()
Stoppt den Thread.
|
protected void |
subscribeData()
Anmeldung aller Daten am DAV.
|
private void |
ueberpruefeDateien()
Überprüft alle Dateien, ob sie gelöscht werden
können.
|
private void |
ueberpruefeSicherungsverzeichnis()
Überpüft das Sicherungsverzeichnis und löscht alle
Dateien, die länger als die parametrierte Sicherungszeit nicht
geändert wurden.
|
void |
update(de.bsvrz.dav.daf.main.ResultData[] results) |
private void |
verarbeiteNeueDateien()
Verarbeitet neu empfangene Dateien.
|
void |
versendet(List<File> dateien)
Diese Methode wird aufgerufen, wenn Dateien zur LMS übertragen
wurden.
|
activeCount, checkAccess, clone, countStackFrames, currentThread, destroy, dumpStack, enumerate, getAllStackTraces, getContextClassLoader, getDefaultUncaughtExceptionHandler, getId, getName, getPriority, getStackTrace, getState, getThreadGroup, getUncaughtExceptionHandler, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, resume, setContextClassLoader, setDaemon, setDefaultUncaughtExceptionHandler, setName, setPriority, setUncaughtExceptionHandler, sleep, sleep, start, stop, stop, suspend, toString, yield
private static final String ATTRIBUTGRUPPE_PARAMETER
final de.bsvrz.sys.funclib.debug.Debug debug
private de.bsvrz.dav.daf.main.ClientDavInterface dav
private de.bsvrz.dav.daf.main.config.DataModel config
de.bsvrz.dav.daf.main.config.ConfigurationObject lms
Map<String,RDSMeldung> meldungen
de.bsvrz.dav.daf.main.config.MutableSet meldungsmenge
private final LMSParameter lmsParameter
private de.bsvrz.dav.daf.main.DataDescription paramEmpfang
private LMSKommunikationsstatus kommunikationsStatus
private final Map<File,List<RDSMeldung>> dateiMap
private LMSFTPServer ftpserver
boolean run
de.bsvrz.sys.funclib.dynobj.DynamischeObjekte vdo
de.bsvrz.dav.daf.main.config.DynamicObjectType objektTyp
private final Object waitLock
public Meldungsdekodierer(de.bsvrz.dav.daf.main.ClientDavInterface dav, de.bsvrz.dav.daf.main.config.ConfigurationObject lms)
dav
- Datenverteiler-Verbindunglms
- Landesmeldestelleprivate RDSMeldung aktualisiereMeldung(RDSMeldungsDaten meldungsdaten) throws RDSException
meldungsdaten
- MeldungsdatenRDSException
- bei Ausnahmenvoid copy(InputStream in, OutputStream out) throws IOException
in
- Eingabestromout
- AusgabestromIOException
- bei Ausnahmenpublic void dataRequest(de.bsvrz.dav.daf.main.config.SystemObject object, de.bsvrz.dav.daf.main.DataDescription dataDescription, byte state)
dataRequest
in interface de.bsvrz.dav.daf.main.ClientSenderInterface
public void empfangen(List<File> dateien)
LMSFTPListener
empfangen
in interface LMSFTPListener
dateien
- Liste mit neuen Dateienvoid entfernenMeldung(de.bsvrz.dav.daf.main.config.SystemObject so)
so
- Systemobjekt der Meldungpublic void hinzufuegenMeldung(de.bsvrz.dav.daf.main.config.SystemObject objekt)
objekt
- Systemobjekt der Meldungpublic boolean isRequestSupported(de.bsvrz.dav.daf.main.config.SystemObject object, de.bsvrz.dav.daf.main.DataDescription dataDescription)
isRequestSupported
in interface de.bsvrz.dav.daf.main.ClientSenderInterface
private boolean istRelevant(RDSMeldungsDaten meldung)
atg.rdsKommunikationsParameter.AkzeptierteLocationCodes
und
atg.rdsKommunikationsParameter.IgnorierteLocationCodes
. Eine
empfangene RDS-Meldung wird unter folgender Bedingung als relevant
betrachtet: atg.rdsKommunikationsParameter.AkzeptierteLocationCodes
wird
als pauschale Akzeptanz interpretiert, d. h. alle LocationCodes werden
akzeptiert.meldung
- die zu prüfende Meldungpublic void kommunikationsStatus(LMSKommunikationsstatus status)
LMSFTPListener
kommunikationsStatus
in interface LMSFTPListener
status
- der Kommunikationsstatusvoid kopiereDatei(String quelldatei, String zieldatei) throws IOException
quelldatei
- Quelldateizieldatei
- ZieldateiIOException
- bei Ausnahmenprivate de.bsvrz.dav.daf.main.config.SystemObject erzeugeMeldungsObjekt(RDSMeldungsDaten meldungsdaten) throws RDSException
meldungsdaten
- MeldungsdatenRDSException
- bei Ausnahmenprivate void loescheMeldungsObjekt(de.bsvrz.dav.daf.main.config.SystemObject obj) throws RDSException
obj
- MeldungsobjektRDSException
- bei Ausnahmenprivate RDSMeldung neueMeldung(RDSMeldungsDaten meldungsdaten) throws RDSException
meldungsdaten
- MeldungsdatenRDSException
- bei Ausnahmenprivate void sichereDatei(File datei)
datei
- die zusichernde Dateipublic void stopp()
protected void subscribeData() throws RDSException
RDSException
- bei Ausnahmenprivate void ueberpruefeDateien()
private void ueberpruefeSicherungsverzeichnis()
public void update(de.bsvrz.dav.daf.main.ResultData[] results)
update
in interface de.bsvrz.dav.daf.main.ClientReceiverInterface
private void verarbeiteNeueDateien()
public void versendet(List<File> dateien)
LMSFTPListener
versendet
in interface LMSFTPListener
dateien
- Liste mit versendeten Dateienpublic void invalidObject(de.bsvrz.dav.daf.main.config.DynamicObject dynamicObject)
invalidObject
in interface de.bsvrz.dav.daf.main.config.InvalidationListener
Copyright © 2017 BitCtrl Systems GmbH. All rights reserved.