Package de.willuhn.jameica.messaging
Class AutoRegisterMessageConsumer
java.lang.Object
de.willuhn.jameica.messaging.AutoRegisterMessageConsumer
- All Implemented Interfaces:
MessageConsumer
Uebernimmt das Suchen und Aktivieren der automatisch zu registrierenden Message-Consumer.
Das Aktivieren der automatisch zu registrierenden Message-Consumer machen wir deshalb hier,
damit die erst dann gesucht werden, wenn das System komplett gebootet ist. Vorher
wurde das direkt in MessagingFactory#sendMessage gemacht. Mit dem Effekt, dass
die Consumer eventuell viel zu frueh gesucht wurden - noch bevor die Klassen
geladen wurden. Beispielsweise schickt der Deploy-Service Messages, wenn er
Plugins installiert oder aktualisiert hat. Zu dem Zeitpunkt darf aber noch nicht
nach den Consumern gesucht werden - da wuerden noch keine gefunden werden.
Daher machen wir das jetzt erst dann, wenn das System komplett gebootet wurde.
Nachrichten koennen zwar auch schon vorher geschickt werden. Aber die automatisch
registrierten stehen erst zur Verfuegung, nachdem alles gestartet ist.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionboolean
Legt fest, ob der Messaging-Consumer automatisch registriert werden soll.Class[]
Wenn der Message-Consumer nur ganz bestimmte Nachrichten empfangen will, dann kann er hier die Liste der gewuenschten Arten angeben.void
handleMessage
(Message message) Ueber diese Methode wird die Nachricht an den Verbraucher zugestellt.
-
Constructor Details
-
AutoRegisterMessageConsumer
public AutoRegisterMessageConsumer()
-
-
Method Details
-
getExpectedMessageTypes
Description copied from interface:MessageConsumer
Wenn der Message-Consumer nur ganz bestimmte Nachrichten empfangen will, dann kann er hier die Liste der gewuenschten Arten angeben. Liefert die Funktionnull
, werden alle Nachrichten an den Consumer zugestellt.- Specified by:
getExpectedMessageTypes
in interfaceMessageConsumer
- Returns:
- Liste der gewuenschten Nachrichtenarten.
- See Also:
-
handleMessage
Description copied from interface:MessageConsumer
Ueber diese Methode wird die Nachricht an den Verbraucher zugestellt.- Specified by:
handleMessage
in interfaceMessageConsumer
- Parameters:
message
- die eigentliche Nachricht.- Throws:
Exception
- See Also:
-
autoRegister
public boolean autoRegister()Description copied from interface:MessageConsumer
Legt fest, ob der Messaging-Consumer automatisch registriert werden soll.- Specified by:
autoRegister
in interfaceMessageConsumer
- Returns:
- true, wenn er automatisch registriert werden soll.
- See Also:
-