public interface ADwinDebugListener extends ADwinDebugListenerPrioConstants
Der ADwinDebugListener
hat die Methoden enter
und
leave
, die aufgerufen werden, wenn Methoden der Klasse
ADwinDevice
oder Methoden im Application Server aufgerufen
werden. Sie dienen dazu, einen Stacktrace bei Meldungen des ADwin-Packages
anzuzeigen, um zu sehen, woher die Meldung kommt. Die Meldungen beziehen sich
generall auf Vorkommnisse im Netzwerk, z.B. verlorengegangene Pakete usw.
Im Application Server kann der ADwinDebugListener
keine
Meldungen anzeigen, weil der Server auf einem anderen Prozess laufen kann.
Für diesen Fall muss der ADwinDebugListener
seinen Inhalt auf
einen InputOutputStream
schreiben können, wo er von einem
internen Debug-Listener gelesen wird. Dabei stauen sich verschiedene
Meldungen auf, die der ADwinDebugListener
lesen und eventuell
ausgeben können muss.
ADwinDevice
PRIO_ERROR_INFO, PRIO_INFO, PRIO_SPEC_PACKETS
Modifier and Type | Method and Description |
---|---|
void |
enter(String Name)
Wird am Eintrittspunkt einer Methode des Packages aufgerufen.
|
void |
leave()
Wird aufgerufen, wenn eine Methode verlassen wird.
|
void |
message(String Message,
int Prio)
Meldung aus dem ADwin-Package, die sich nicht in die Methoden
tryLater , recvAgain oder sendAgain
einordnen lässt. |
void |
recvAgain(int PaketIndexSent,
int IndexRecvd,
int CommandField)
Wird aufgerufen, wenn nochmals versucht wird, ein Paket zu empfangen, zum
Beispiel weil ein falscher Paket - Index angekommen ist.
|
void |
sendAgain(int PaketIndex,
int BlockIndex,
int CommandField)
Wird aufgerufen, wenn ein Paket nochmal (keine Bestätigung erhalten oder
ähnliches) verschickt wird
|
void |
tryLater(int PaketIndex,
int NumTry)
Wird aufgerufen, wenn das ADwin-System gerade zu beschäftigt ist, um mit
diesem Application Server zu kommunizieren.
|
void tryLater(int PaketIndex, int NumTry)
PaketIndex
- Bei welchem Paket-Index das Try-Later-Paket empfangen
wurdeNumTry
- Der wievielte Versuch das jetzt schon istvoid sendAgain(int PaketIndex, int BlockIndex, int CommandField)
PaketIndex
- Welchen Paket-Index das nochmal verschickte Paket
hatte, oder 0, falls unwichtigBlockIndex
- Welcher Block-Index gerade dran war, falls gerade ein
Data-Austausch aktiv ist, ansonsten 0CommandField
- Welcher Befehl gerade ausgeführt wirdvoid recvAgain(int PaketIndexSent, int IndexRecvd, int CommandField)
PaketIndexSent
- Auf welchen Paket-Index hin das Paket empfangen
werden sollteIndexRecvd
- Welcher Paket-Index tatsächlich empfangen wurdeCommandField
- Welcher Befehl gerade ausgeführt werden sollte.void message(String Message, int Prio)
tryLater
, recvAgain
oder sendAgain
einordnen lässt.Message
- NachrichtPrio
- Üblicherweise eine Konstanten aus dem Interface
ADwinDebugListenerPrioConstants
. Sie dient dazu, evtl. die
Ausgabe des ADwinDebugListener
s übersichtlicher zu
gestalten, je nach Verwendungszweck.ADwinDebugListenerPrioConstants
void enter(String Name)
ADwinDebugListener
muss diesen Wert bis zu einem passenden
leave
behalten, und kann den so gewonnenen Stack-Trace
zusammen mit Meldungen anzeigen.Name
- Name und Parameter (in einem String) der Methode, in die
eingetreten wirdvoid leave()
enter
ist rückgängig zu machen, um immer
einen richtigen Stack-Trace im Speicher zu haben.Copyright © 2021. All rights reserved.