Package de.willuhn.jameica.messaging
Interface MessagingQueue
-
- All Known Implementing Classes:
MessagingFactory,NamedConcurrentQueue,NamedQueue
public interface MessagingQueueEine Queue, ueber die Nachrichten verschickt werden koennen. Die Messaging-Factory selbst implementiert dieses Interface auch. Es kann allerdings weitere Implementierungen geben.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description voidclose()Schliesst die Queue und sendet alle noch offenen Nachrichten.voidflush()Sendet alle noch offenen Nachrichten.intgetQueueSize()Liefert die aktuelle Anzahl noch zuzustellender Nachrichten.voidqueueMessage(Message message)Stellt eine Nachricht in die Queue.voidregisterMessageConsumer(MessageConsumer consumer)Registriert einen Nachrichten-Consumer manuell in der Queue.voidsendMessage(Message message)Sendet eine Nachricht asynchron an alle Nachrichtenverbraucher der Queue.voidsendSyncMessage(Message message)Sendet eine Nachricht synchron an alle Nachrichtenverbraucher der Queue.voidunRegisterMessageConsumer(MessageConsumer consumer)Entfernt einen Nachrichten-Consumer aus der Queue.
-
-
-
Method Detail
-
sendMessage
void sendMessage(Message message)
Sendet eine Nachricht asynchron an alle Nachrichtenverbraucher der Queue.- Parameters:
message- die zu versendende Nachricht.
-
sendSyncMessage
void sendSyncMessage(Message message)
Sendet eine Nachricht synchron an alle Nachrichtenverbraucher der Queue.- Parameters:
message- die zu versendende Nachricht.
-
queueMessage
void queueMessage(Message message)
Stellt eine Nachricht in die Queue. Dort bleibt sie solange, bis ein Consumer dafuer vorhanden ist.- Parameters:
message- die zu versendende Nachricht.
-
getQueueSize
int getQueueSize()
Liefert die aktuelle Anzahl noch zuzustellender Nachrichten.- Returns:
- aktuelle Queue-Groesse.
-
registerMessageConsumer
void registerMessageConsumer(MessageConsumer consumer)
Registriert einen Nachrichten-Consumer manuell in der Queue.- Parameters:
consumer- zu registrierender Consumer.
-
unRegisterMessageConsumer
void unRegisterMessageConsumer(MessageConsumer consumer)
Entfernt einen Nachrichten-Consumer aus der Queue.- Parameters:
consumer- zu entfernender Consumer.
-
close
void close()
Schliesst die Queue und sendet alle noch offenen Nachrichten.
-
flush
void flush()
Sendet alle noch offenen Nachrichten. Die Funktion kehrt erst zurueck, nachdem alle Nachrichten zugestellt wurden.
-
-