InMemoryBroker class

In-memory broker for testing and local development.

Implemented types
Available extensions

Constructors

InMemoryBroker({String namespace = 'stem', Duration delayedInterval = const Duration(milliseconds: 200), Duration claimInterval = const Duration(seconds: 5), Duration defaultVisibilityTimeout = const Duration(seconds: 30)})
Creates an in-memory broker with configurable timing defaults.

Properties

capabilities BrokerCapabilities
Returns the adapter's optional-operation capabilities.
no setteroverride
capabilities BrokerCapabilities

Available on Broker, provided by the BrokerCapabilitiesExtension extension

Returns the adapter's optional-operation capabilities.
no setter
capabilities BrokerCapabilities

Available on QueueBroker, provided by the QueueBrokerCapabilitiesExtension extension

Returns the adapter's optional-operation capabilities.
no setter
claimInterval Duration
Interval used to reclaim expired leases.
final
defaultVisibilityTimeout Duration
Default visibility timeout for claimed deliveries.
final
delayedInterval Duration
Interval used to drain delayed messages.
final
hashCode int
The hash code for this object.
no setterinherited
namespace String
Namespace prefix applied to generated queue names.
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
supportsDelayed bool
Whether this broker supports delayed message delivery.
no setteroverride
supportsPriority bool
Whether this broker supports message priorities.
no setteroverride

Methods

ack(Delivery delivery) Future<void>
Acknowledges a delivery, removing it from in-flight tracking.
override
close() Future<void>
Closes the broker and releases in-memory resources.
override
consume(RoutingSubscription subscription, {int prefetch = 1, String? consumerGroup, String? consumerName}) Stream<Delivery>
Returns a stream of deliveries based on the supplied subscription.
override
deadLetter(Delivery delivery, {String? reason, Map<String, Object?>? meta}) Future<void>
Sends the delivery to the dead letter queue.
override
deadLetter(Delivery delivery, {String? reason, Map<String, Object?>? meta}) Future<void>

Available on QueueBroker, provided by the QueueBrokerOptionalOperations extension

Sends a delivery to the dead-letter store when supported.
dispose() → void
Releases timers and in-memory queue state.
extendLease(Delivery delivery, Duration by) Future<void>
Extends the visibility lease for an in-flight delivery.
override
extendLease(Delivery delivery, Duration by) Future<void>

Available on QueueBroker, provided by the QueueBrokerOptionalOperations extension

Extends a delivery lease when the adapter supports leases.
getDeadLetter(String queue, String id) Future<DeadLetterEntry?>
Fetches a single dead-letter entry by id.
override
getDeadLetter(String queue, String id) Future<DeadLetterEntry?>

Available on QueueBroker, provided by the QueueBrokerOptionalOperations extension

Retrieves one dead-letter entry when supported.
inflightCount(String queue) Future<int?>
Returns the number of in-flight messages for queue, if supported.
override
inflightCount(String queue) Future<int?>

Available on QueueBroker, provided by the QueueBrokerOptionalOperations extension

Returns an in-flight queue count when supported.
listDeadLetters(String queue, {int limit = 50, int offset = 0}) Future<DeadLetterPage>
Lists dead letter queue entries for queue, returning up to limit results starting at offset. Entries are typically ordered from newest to oldest unless documented otherwise by the implementation.
override
listDeadLetters(String queue, {int limit = 50, int offset = 0}) Future<DeadLetterPage>

Available on QueueBroker, provided by the QueueBrokerOptionalOperations extension

Lists dead-letter entries when the adapter supports inspection.
nack(Delivery delivery, {bool requeue = true}) Future<void>
Rejects a delivery, optionally requeuing it.
override
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
pendingCount(String queue) Future<int?>
Returns the number of pending messages for queue, if supported.
override
pendingCount(String queue) Future<int?>

Available on QueueBroker, provided by the QueueBrokerOptionalOperations extension

Returns a pending queue count when supported.
publish(Envelope envelope, {RoutingInfo? routing}) Future<void>
Enqueues a message into the in-memory queue or delay set.
override
purge(String queue) Future<void>
Purges all messages from a queue.
override
purge(String queue) Future<void>

Available on QueueBroker, provided by the QueueBrokerOptionalOperations extension

Removes all messages from a queue when supported.
purgeDeadLetters(String queue, {DateTime? since, int? limit}) Future<int>
Removes dead letter entries from queue.
override
purgeDeadLetters(String queue, {DateTime? since, int? limit}) Future<int>

Available on QueueBroker, provided by the QueueBrokerOptionalOperations extension

Purges dead-letter entries when supported.
replayDeadLetters(String queue, {int limit = 50, DateTime? since, Duration? delay, bool dryRun = false}) Future<DeadLetterReplayResult>
Replays at most limit dead letter entries back onto the active queue.
override
replayDeadLetters(String queue, {int limit = 50, DateTime? since, Duration? delay, bool dryRun = false}) Future<DeadLetterReplayResult>

Available on QueueBroker, provided by the QueueBrokerOptionalOperations extension

Replays dead-letter entries when supported.
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited