public abstract class OperatingMessageSink
extends java.lang.Object
Diese Klasse regelt den Versand von Betriebsmeldungen. Im Gegensatz zum direkten Aufruf von MessageSender.sendMessage(de.bsvrz.sys.funclib.operatingMessage.MessageType, de.bsvrz.sys.funclib.operatingMessage.MessageGrade, java.lang.String)
können sich hier weitere Empfänger auf Betriebsmeldungen anmelden (z. B. für Testfälle) und die Betriebsmeldung wird auch über die Debug-Funktion mit dem Level INFO ausgegeben.
Modifier and Type | Field and Description |
---|---|
private static Debug |
_debug |
private static java.util.concurrent.atomic.AtomicBoolean |
_initialized |
private static java.util.concurrent.CopyOnWriteArraySet<OperatingMessageSink> |
_sinks |
Constructor and Description |
---|
OperatingMessageSink() |
Modifier and Type | Method and Description |
---|---|
private static void |
initialize() |
abstract void |
publish(OperatingMessageInterface message)
Benutzerdefinierte Methode zum “Versand” einer Betriebsmeldung
|
static void |
publishEverywhere(OperatingMessageInterface message)
Veröffentlicht eine Betriebsmeldung über alle registrierten OperatingMessageSink-Objekte.
|
static void |
register(OperatingMessageSink sink)
Meldet eine neue Klasse an, die zu versendende Betriebsmeldungen entgegen nimmt
|
static void |
unregister(OperatingMessageSink sink)
Meldet ein Sink-Objekt wieder ab
|
private static final Debug _debug
private static final java.util.concurrent.CopyOnWriteArraySet<OperatingMessageSink> _sinks
private static final java.util.concurrent.atomic.AtomicBoolean _initialized
public static void register(OperatingMessageSink sink)
Meldet eine neue Klasse an, die zu versendende Betriebsmeldungen entgegen nimmt
sink
- OperatingMessageSink-Objekt mit benutzerdefinierter Implementierungpublic static void unregister(OperatingMessageSink sink)
Meldet ein Sink-Objekt wieder ab
sink
- OperatingMessageSink-Objekt mit benutzerdefinierter Implementierungpublic static void publishEverywhere(OperatingMessageInterface message)
Veröffentlicht eine Betriebsmeldung über alle registrierten OperatingMessageSink-Objekte. Standardmäßig werden Betriebsmeldungen über die MessageSender-Klasse und die Debug-Ausgabe veröffentlicht.
message
- Betriebsmeldung, die versendet werden sollprivate static void initialize()
public abstract void publish(OperatingMessageInterface message)
Benutzerdefinierte Methode zum “Versand” einer Betriebsmeldung
message
- Betriebsmeldungs-Objekt