Skip to content

Commit 4a62957

Browse files
committed
Added Subscription consumer to docs
1 parent d0ea85f commit 4a62957

File tree

1 file changed

+34
-0
lines changed

1 file changed

+34
-0
lines changed

docs/transport/mongodb.md

+34
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ Allows to use [MongoDB](https://www.mongodb.com/) as a message queue broker.
1010
* [Send expiration message](#send-expiration-message)
1111
* [Send delayed message](#send-delayed-message)
1212
* [Consume message](#consume-message)
13+
* [Subscription consumer](#subscription-consumer)
1314

1415
## Installation
1516

@@ -139,4 +140,37 @@ $consumer->acknowledge($message);
139140
// $consumer->reject($message);
140141
```
141142

143+
## Subscription consumer
144+
145+
```php
146+
<?php
147+
use Interop\Queue\PsrMessage;
148+
use Interop\Queue\PsrConsumer;
149+
150+
/** @var \Enqueue\Mongodb\MongodbContext $psrContext */
151+
/** @var \Enqueue\Mongodb\MongodbDestination $fooQueue */
152+
/** @var \Enqueue\Mongodb\MongodbDestination $barQueue */
153+
154+
$fooConsumer = $psrContext->createConsumer($fooQueue);
155+
$barConsumer = $psrContext->createConsumer($barQueue);
156+
157+
$subscriptionConsumer = $psrContext->createSubscriptionConsumer();
158+
$subscriptionConsumer->subscribe($fooConsumer, function(PsrMessage $message, PsrConsumer $consumer) {
159+
// process message
160+
161+
$consumer->acknowledge($message);
162+
163+
return true;
164+
});
165+
$subscriptionConsumer->subscribe($barConsumer, function(PsrMessage $message, PsrConsumer $consumer) {
166+
// process message
167+
168+
$consumer->acknowledge($message);
169+
170+
return true;
171+
});
172+
173+
$subscriptionConsumer->consume(2000); // 2 sec
174+
```
175+
142176
[back to index](../index.md)

0 commit comments

Comments
 (0)