MemoryMessageQueue class Null safety
Message queue that sends and receives messages within the same process by using shared memory.
This queue is typically used for testing to mock real queues.
Configuration parameters
- name: name of the message queue
References
- *:logger:*:*:1.0 (optional) ILogger components to pass log messages
- *:counters:*:*:1.0 (optional) ICounters components to pass collected measurements
See MessageQueue See MessagingCapabilities
Example
var queue = MessageQueue("myqueue");
await queue.send("123", MessageEnvelop(null, "mymessage", "ABC"));
var message = await queue.receive("123");
if (message != null) {
...
await queue.complete("123", message);
}
- Inheritance
-
- Object
- MessageQueue
- MemoryMessageQueue
Constructors
- MemoryMessageQueue([String? name])
- Creates a new instance of the message queue.
Properties
- capabilities ↔ MessagingCapabilities
-
read / writeinherited
- connectionResolver ↔ ConnectionResolver
-
read / writeinherited
- counters ↔ CompositeCounters
-
read / writeinherited
- credentialResolver ↔ CredentialResolver
-
read / writeinherited
- hashCode → int
-
The hash code for this object.
read-onlyinherited
- logger ↔ CompositeLogger
-
read / writeinherited
- name ↔ String
-
read / writeinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
read-onlyinherited
Methods
-
abandon(
MessageEnvelope message) → Future -
Returnes message into the queue and makes it available for all subscribers to receive it again.
This method is usually used to return a message which could not be processed at the moment
to repeat the attempt. Messages that cause unrecoverable errors shall be removed permanently
or/and send to dead letter queue.
override
-
beginListen(
String? correlationId, IMessageReceiver receiver) → void -
Listens for incoming messages without blocking the current thread.
inherited
-
checkOpen(
String? correlationId) → void -
Checks if the queue has been opened and throws an exception is it's not.
inherited
-
clear(
String? correlationId) → Future -
Clears component state.
override
-
close(
String? correlationId) → Future -
Closes component and frees used resources.
override
-
complete(
MessageEnvelope message) → Future -
Permanently removes a message from the queue.
This method is usually used to remove the message after successful processing.
override
-
configure(
ConfigParams config) → void -
Configures component by passing configuration parameters.
override
-
endListen(
String? correlationId) → void -
Ends listening for incoming messages.
When this method is call listen unblocks the thread and execution continues.
override
-
getCapabilities(
) → MessagingCapabilities -
Gets the queue capabilities
inherited
-
getName(
) → String -
Gets the queue name
inherited
-
isOpen(
) → bool -
Checks if the component is opened.
override
-
listen(
String? correlationId, IMessageReceiver receiver) → void -
Listens for incoming messages and blocks the current thread until queue is closed.
override
-
moveToDeadLetter(
MessageEnvelope message) → Future -
Permanently removes a message from the queue and sends it to dead letter queue.
override
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a non-existent method or property is accessed.
inherited
-
open(
String? correlationId) → Future -
Opens the component.
inherited
-
openWithParams(
String? correlationId, ConnectionParams? connection, CredentialParams? credential) → Future -
Opens the component with given connection and credential parameters.
override
-
peek(
String? correlationId) → Future< MessageEnvelope?> -
Peeks a single incoming message from the queue without removing it.
If there are no messages available in the queue it returns null.
override
-
peekBatch(
String? correlationId, int messageCount) → Future< List< MessageEnvelope?> > -
Peeks multiple incoming messages from the queue without removing them.
If there are no messages available in the queue it returns an empty list.
override
-
readMessageCount(
) → Future< int> -
Reads the current number of messages in the queue to be delivered.
override
-
receive(
String? correlationId, int waitTimeout) → Future< MessageEnvelope?> -
Receives an incoming message and removes it from the queue.
override
-
renewLock(
MessageEnvelope message, int lockTimeout) → Future -
Renews a lock on a message that makes it invisible from other receivers in the queue.
This method is usually used to extend the message processing time.
override
-
send(
String? correlationId, MessageEnvelope envelope) → Future -
Sends a message into the queue.
override
-
sendAsObject(
String? correlationId, String messageType, dynamic message) → Future -
Sends an object into the queue.
Before sending the object is converted into JSON string and wrapped in a MessageEnvelope.
inherited
-
setReferences(
IReferences references) → void -
Sets references to dependent components.
inherited
-
toString(
) → String -
Gets a string representation of the object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited