Package de.willuhn.jameica.messaging
Interface MessagingQueue
-
- All Known Implementing Classes:
MessagingFactory
,NamedConcurrentQueue
,NamedQueue
public interface MessagingQueue
Eine 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 void
close()
Schliesst die Queue und sendet alle noch offenen Nachrichten.void
flush()
Sendet alle noch offenen Nachrichten.int
getQueueSize()
Liefert die aktuelle Anzahl noch zuzustellender Nachrichten.void
queueMessage(Message message)
Stellt eine Nachricht in die Queue.void
registerMessageConsumer(MessageConsumer consumer)
Registriert einen Nachrichten-Consumer manuell in der Queue.void
sendMessage(Message message)
Sendet eine Nachricht asynchron an alle Nachrichtenverbraucher der Queue.void
sendSyncMessage(Message message)
Sendet eine Nachricht synchron an alle Nachrichtenverbraucher der Queue.void
unRegisterMessageConsumer(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.
-
-