Click or drag to resize

IDispatcherQueueManagerService Interface

A service which is responsible for storing messages in a reliable place for dispatching

Namespace:  SanteDB.Core.Queue
Assembly:  SanteDB.Core.Api (in SanteDB.Core.Api.dll) Version: 2.2.1
Syntax
public interface IDispatcherQueueManagerService : IServiceImplementation

The IDispatcherQueueManagerService type exposes the following members.

Properties
  NameDescription
Public propertyServiceName
Gets the service name
(Inherited from IServiceImplementation.)
Top
Methods
  NameDescription
Public methodDequeue
Dequeues the last added item from the persistent queue
Public methodDequeueById
De-queue a specific message
Public methodEnqueue
Enqueue the specified data to the persistent queue
Public methodGetQueueEntries
Get all queue entries
Public methodGetQueueEntry
Get the specified queue entry
Public methodGetQueues
Gets the queues for this system
Public methodMove
Move an entry from one queue to another
Public methodOpen
Opens the specified queue name and enables subscriptions
Public methodPurge
Purge the queue
Public methodSubscribeTo
Subscribes to queueName using callback
Public methodUnSubscribe
Remove the callback registration
Top
Remarks
Whenever SanteDB sends messages to another system using messaging, there is no guarantee that the remote endpoint will be available, or accessable, etc. Therefore all messages which are sent (dispatched) to a remote system are first queued using this wrapper service.

The purpose of the dispatcher queue is the store the outbound message locally in some persistent place, then to notify any listeners that a new message is ready for sending. If the message cannot be sent, then the sending service should place the message back onto the queue or onto a dedicated deadletter queue.

See Also