public abstract class AbstraktKexVersandKomponente extends Thread
Thread.State, Thread.UncaughtExceptionHandler
Modifier and Type | Field and Description |
---|---|
private boolean |
beenden
Beendet die Endlosschleife.
|
private de.bsvrz.dav.daf.main.ClientDavInterface |
dav
Verbindung zum DAV.
|
private de.bsvrz.sys.funclib.debug.Debug |
logger
Logger.
|
private int |
maxVersuche
Anzahl der Versuche bei Misserfolg.
|
private int |
maxWarteschlangeGroesse
Max.
|
private long |
pause
Länge der Pause zwischen den Versuchen.
|
private ArrayBlockingQueue<IVersandAuftrag> |
warteSchlange
Die Warteschlange.
|
MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY
Constructor and Description |
---|
AbstraktKexVersandKomponente() |
Modifier and Type | Method and Description |
---|---|
int |
bearbeite(IVersandAuftrag auftrag)
Bearbeitet einen Versandauftrag und stellt ihn in die Warteschlange.
|
de.bsvrz.dav.daf.main.ClientDavInterface |
getDav()
.
|
int |
getGroesse()
Gibt die aktuelle Größe der Warteschlange zurück.
|
de.bsvrz.sys.funclib.debug.Debug |
getLogger()
.
|
int |
getMaxGroesse()
Gibt die maximale Größe der Warteschlange zurück.
|
void |
init(de.bsvrz.dav.daf.main.ClientDavInterface connection,
de.bsvrz.dav.daf.main.config.SystemObject modul,
int maxWarteschlange)
Initialisierung des Versandmoduls.
|
void |
parametriereGenerell(int versuche,
long pausenzeit)
Paramtriert das Versandmodul.
|
void |
run()
Endloseschleife zur Abarbeitung der Aufträge.
|
protected abstract VersandStatus |
sendeAuftrag(IVersandAuftrag auftrag,
int versuche,
long pausezeit)
Abstrakte Versandmethode.
|
protected boolean |
sollBeenden()
Testet, ob die Komponente beendet werden soll.
|
void |
terminate()
Beendet den Versandmodul.
|
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 int maxWarteschlangeGroesse
private ArrayBlockingQueue<IVersandAuftrag> warteSchlange
private int maxVersuche
private long pause
private de.bsvrz.sys.funclib.debug.Debug logger
private boolean beenden
private de.bsvrz.dav.daf.main.ClientDavInterface dav
public de.bsvrz.sys.funclib.debug.Debug getLogger()
Debug
public de.bsvrz.dav.daf.main.ClientDavInterface getDav()
ClientDavInterface
public int bearbeite(IVersandAuftrag auftrag)
auftrag
- Versandauftragpublic int getGroesse()
public int getMaxGroesse()
public void init(de.bsvrz.dav.daf.main.ClientDavInterface connection, de.bsvrz.dav.daf.main.config.SystemObject modul, int maxWarteschlange)
connection
- Verbindung zum DAVmodul
- VersandmodulmaxWarteschlange
- max. Grösse der Warteschlangepublic void parametriereGenerell(int versuche, long pausenzeit)
versuche
- Anzahl der Versandversuchepausenzeit
- Pause zwischen den Versuchen in Sekundenpublic void run()
protected abstract VersandStatus sendeAuftrag(IVersandAuftrag auftrag, int versuche, long pausezeit) throws InterruptedException
auftrag
- Der Auftragversuche
- Anzahl der Versuchepausezeit
- Pause zwischen den Versandversuchen in MilisekundenInterruptedException
- Wenn der Versand unterbrochen wurdeprotected boolean sollBeenden()
public void terminate()
Copyright © 2017 BitCtrl Systems GmbH. All rights reserved.