Interface ADwinDebugListener
-
- All Superinterfaces:
ADwinDebugListenerPrioConstants
public interface ADwinDebugListener extends ADwinDebugListenerPrioConstants
Empfängt Meldungen aus dem ADwin-Package und zeigt sie, zusammen mit einem Stack-Trace, an.Der
ADwinDebugListenerhat die Methodenenterundleave, die aufgerufen werden, wenn Methoden der KlasseADwinDeviceoder 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
ADwinDebugListenerkeine Meldungen anzeigen, weil der Server auf einem anderen Prozess laufen kann. Für diesen Fall muss derADwinDebugListenerseinen Inhalt auf einenInputOutputStreamschreiben können, wo er von einem internen Debug-Listener gelesen wird. Dabei stauen sich verschiedene Meldungen auf, die derADwinDebugListenerlesen und eventuell ausgeben können muss.- See Also:
ADwinDevice
-
-
Field Summary
-
Fields inherited from interface de.adwin.driver.ADwinDebugListenerPrioConstants
PRIO_ERROR_INFO, PRIO_INFO, PRIO_SPEC_PACKETS
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description voidenter(String Name)Wird am Eintrittspunkt einer Methode des Packages aufgerufen.voidleave()Wird aufgerufen, wenn eine Methode verlassen wird.voidmessage(String Message, int Prio)Meldung aus dem ADwin-Package, die sich nicht in die MethodentryLater,recvAgainodersendAgaineinordnen lässt.voidrecvAgain(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.voidsendAgain(int PaketIndex, int BlockIndex, int CommandField)Wird aufgerufen, wenn ein Paket nochmal (keine Bestätigung erhalten oder ähnliches) verschickt wirdvoidtryLater(int PaketIndex, int NumTry)Wird aufgerufen, wenn das ADwin-System gerade zu beschäftigt ist, um mit diesem Application Server zu kommunizieren.
-
-
-
Method Detail
-
tryLater
void tryLater(int PaketIndex, int NumTry)Wird aufgerufen, wenn das ADwin-System gerade zu beschäftigt ist, um mit diesem Application Server zu kommunizieren.- Parameters:
PaketIndex- Bei welchem Paket-Index das Try-Later-Paket empfangen wurdeNumTry- Der wievielte Versuch das jetzt schon ist
-
sendAgain
void sendAgain(int PaketIndex, int BlockIndex, int CommandField)Wird aufgerufen, wenn ein Paket nochmal (keine Bestätigung erhalten oder ähnliches) verschickt wird- Parameters:
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 wird
-
recvAgain
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.- Parameters:
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.
-
message
void message(String Message, int Prio)
Meldung aus dem ADwin-Package, die sich nicht in die MethodentryLater,recvAgainodersendAgaineinordnen lässt.- Parameters:
Message- NachrichtPrio- Üblicherweise eine Konstanten aus dem InterfaceADwinDebugListenerPrioConstants. Sie dient dazu, evtl. die Ausgabe desADwinDebugListeners übersichtlicher zu gestalten, je nach Verwendungszweck.- See Also:
ADwinDebugListenerPrioConstants
-
enter
void enter(String Name)
Wird am Eintrittspunkt einer Methode des Packages aufgerufen. DerADwinDebugListenermuss diesen Wert bis zu einem passendenleavebehalten, und kann den so gewonnenen Stack-Trace zusammen mit Meldungen anzeigen.- Parameters:
Name- Name und Parameter (in einem String) der Methode, in die eingetreten wird
-
leave
void leave()
Wird aufgerufen, wenn eine Methode verlassen wird. Alles seit dem letzten dazu passendementerist rückgängig zu machen, um immer einen richtigen Stack-Trace im Speicher zu haben.
-
-