Skip to content

Commit 4ac53dc

Browse files
committed
Migrate amqp tools
1 parent 5c0923d commit 4ac53dc

10 files changed

+28
-46
lines changed

composer.json

+3-3
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,8 @@
1111
"ext-mongodb": "^1.3",
1212
"ext-rdkafka": "^3.0.3",
1313

14-
"queue-interop/amqp-interop": "^0.7.4",
15-
"queue-interop/queue-interop": "^0.6.2",
14+
"queue-interop/amqp-interop": "0.8.x-dev",
15+
"queue-interop/queue-interop": "0.7.x-dev",
1616
"bunny/bunny": "^0.2.4|^0.3|^0.4",
1717
"php-amqplib/php-amqplib": "^2.7",
1818
"doctrine/dbal": "~2.5",
@@ -33,7 +33,7 @@
3333
"require-dev": {
3434
"phpunit/phpunit": "^5.5",
3535
"phpstan/phpstan": "^0.10",
36-
"queue-interop/queue-spec": "^0.5.9@dev",
36+
"queue-interop/queue-spec": "0.6.x-dev",
3737
"symfony/browser-kit": "4.0.*",
3838
"symfony/config": "4.0.*",
3939
"symfony/process": "4.0.*",

pkg/amqp-tools/DelayStrategy.php

+2-5
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,7 @@
99
interface DelayStrategy
1010
{
1111
/**
12-
* @param AmqpContext $context
13-
* @param AmqpDestination $dest
14-
* @param AmqpMessage $message
15-
* @param int $delayMsec
12+
* Delay is in milliseconds.
1613
*/
17-
public function delayMessage(AmqpContext $context, AmqpDestination $dest, AmqpMessage $message, $delayMsec);
14+
public function delayMessage(AmqpContext $context, AmqpDestination $dest, AmqpMessage $message, int $delay): void;
1815
}

pkg/amqp-tools/DelayStrategyAware.php

+1-6
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,5 @@
44

55
interface DelayStrategyAware
66
{
7-
/**
8-
* @param DelayStrategy $delayStrategy
9-
*
10-
* @return self
11-
*/
12-
public function setDelayStrategy(DelayStrategy $delayStrategy = null);
7+
public function setDelayStrategy(DelayStrategy $delayStrategy = null): self;
138
}

pkg/amqp-tools/DelayStrategyAwareTrait.php

+1-6
Original file line numberDiff line numberDiff line change
@@ -9,12 +9,7 @@ trait DelayStrategyAwareTrait
99
*/
1010
protected $delayStrategy;
1111

12-
/**
13-
* @param DelayStrategy|null $delayStrategy
14-
*
15-
* @return self
16-
*/
17-
public function setDelayStrategy(DelayStrategy $delayStrategy = null)
12+
public function setDelayStrategy(DelayStrategy $delayStrategy = null): DelayStrategyAware
1813
{
1914
$this->delayStrategy = $delayStrategy;
2015

pkg/amqp-tools/DelayStrategyTransportFactoryTrait.php

+1-4
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,7 @@
77

88
trait DelayStrategyTransportFactoryTrait
99
{
10-
/**
11-
* {@inheritdoc}
12-
*/
13-
public function registerDelayStrategy(ContainerBuilder $container, array $config, $factoryId, $factoryName)
10+
public function registerDelayStrategy(ContainerBuilder $container, array $config, string $factoryId, string $factoryName): void
1411
{
1512
if ($config['delay_strategy']) {
1613
$factory = $container->getDefinition($factoryId);

pkg/amqp-tools/RabbitMqDelayPluginDelayStrategy.php

+2-5
Original file line numberDiff line numberDiff line change
@@ -12,13 +12,10 @@
1212

1313
class RabbitMqDelayPluginDelayStrategy implements DelayStrategy
1414
{
15-
/**
16-
* {@inheritdoc}
17-
*/
18-
public function delayMessage(AmqpContext $context, AmqpDestination $dest, AmqpMessage $message, $delayMsec)
15+
public function delayMessage(AmqpContext $context, AmqpDestination $dest, AmqpMessage $message, int $delay): void
1916
{
2017
$delayMessage = $context->createMessage($message->getBody(), $message->getProperties(), $message->getHeaders());
21-
$delayMessage->setProperty('x-delay', (int) $delayMsec);
18+
$delayMessage->setProperty('x-delay', (int) $delay);
2219
$delayMessage->setRoutingKey($message->getRoutingKey());
2320

2421
if ($dest instanceof AmqpTopic) {

pkg/amqp-tools/RabbitMqDlxDelayStrategy.php

+5-5
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ class RabbitMqDlxDelayStrategy implements DelayStrategy
1414
/**
1515
* {@inheritdoc}
1616
*/
17-
public function delayMessage(AmqpContext $context, AmqpDestination $dest, AmqpMessage $message, $delayMsec)
17+
public function delayMessage(AmqpContext $context, AmqpDestination $dest, AmqpMessage $message, int $delay): void
1818
{
1919
$properties = $message->getProperties();
2020

@@ -28,17 +28,17 @@ public function delayMessage(AmqpContext $context, AmqpDestination $dest, AmqpMe
2828

2929
if ($dest instanceof AmqpTopic) {
3030
$routingKey = $message->getRoutingKey() ? '.'.$message->getRoutingKey() : '';
31-
$name = sprintf('enqueue.%s%s.%s.x.delay', $dest->getTopicName(), $routingKey, $delayMsec);
31+
$name = sprintf('enqueue.%s%s.%s.x.delay', $dest->getTopicName(), $routingKey, $delay);
3232

3333
$delayQueue = $context->createQueue($name);
3434
$delayQueue->addFlag(AmqpTopic::FLAG_DURABLE);
35-
$delayQueue->setArgument('x-message-ttl', $delayMsec);
35+
$delayQueue->setArgument('x-message-ttl', $delay);
3636
$delayQueue->setArgument('x-dead-letter-exchange', $dest->getTopicName());
3737
$delayQueue->setArgument('x-dead-letter-routing-key', (string) $delayMessage->getRoutingKey());
3838
} elseif ($dest instanceof AmqpQueue) {
39-
$delayQueue = $context->createQueue('enqueue.'.$dest->getQueueName().'.'.$delayMsec.'.delayed');
39+
$delayQueue = $context->createQueue('enqueue.'.$dest->getQueueName().'.'.$delay.'.delayed');
4040
$delayQueue->addFlag(AmqpTopic::FLAG_DURABLE);
41-
$delayQueue->setArgument('x-message-ttl', $delayMsec);
41+
$delayQueue->setArgument('x-message-ttl', $delay);
4242
$delayQueue->setArgument('x-dead-letter-exchange', '');
4343
$delayQueue->setArgument('x-dead-letter-routing-key', $dest->getQueueName());
4444
} else {

pkg/amqp-tools/SignalSocketHelper.php

+3-3
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ public function __construct()
1919
$this->handlers = [];
2020
}
2121

22-
public function beforeSocket()
22+
public function beforeSocket(): void
2323
{
2424
// PHP 7.1 and higher
2525
if (false == function_exists('pcntl_signal_get_handler')) {
@@ -51,7 +51,7 @@ public function beforeSocket()
5151
}
5252
}
5353

54-
public function afterSocket()
54+
public function afterSocket(): void
5555
{
5656
// PHP 7.1 and higher
5757
if (false == function_exists('pcntl_signal_get_handler')) {
@@ -74,7 +74,7 @@ public function afterSocket()
7474
/**
7575
* @return bool
7676
*/
77-
public function wasThereSignal()
77+
public function wasThereSignal(): bool
7878
{
7979
return (bool) $this->wasThereSignal;
8080
}

pkg/amqp-tools/Tests/RabbitMqDelayPluginDelayStrategyTest.php

+9-8
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
use Interop\Queue\InvalidDestinationException;
1616
use Interop\Queue\PsrDestination;
1717
use Interop\Queue\PsrMessage;
18+
use Interop\Queue\PsrProducer;
1819
use PHPUnit\Framework\TestCase;
1920

2021
class RabbitMqDelayPluginDelayStrategyTest extends TestCase
@@ -183,35 +184,35 @@ private function createProducerMock()
183184

184185
class TestProducer implements AmqpProducer, DelayStrategy
185186
{
186-
public function delayMessage(AmqpContext $context, AmqpDestination $dest, \Interop\Amqp\AmqpMessage $message, $delayMsec)
187+
public function delayMessage(AmqpContext $context, AmqpDestination $dest, \Interop\Amqp\AmqpMessage $message, int $delay): void
187188
{
188189
}
189190

190-
public function send(PsrDestination $destination, PsrMessage $message)
191+
public function send(PsrDestination $destination, PsrMessage $message): void
191192
{
192193
}
193194

194-
public function setDeliveryDelay($deliveryDelay)
195+
public function setDeliveryDelay(int $deliveryDelay = null): PsrProducer
195196
{
196197
}
197198

198-
public function getDeliveryDelay()
199+
public function getDeliveryDelay(): ?int
199200
{
200201
}
201202

202-
public function setPriority($priority)
203+
public function setPriority(int $priority = null): PsrProducer
203204
{
204205
}
205206

206-
public function getPriority()
207+
public function getPriority(): ?int
207208
{
208209
}
209210

210-
public function setTimeToLive($timeToLive)
211+
public function setTimeToLive(int $timeToLive = null): PsrProducer
211212
{
212213
}
213214

214-
public function getTimeToLive()
215+
public function getTimeToLive(): ?int
215216
{
216217
}
217218
}

pkg/amqp-tools/composer.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
"license": "MIT",
88
"require": {
99
"php": "^7.1.3",
10-
"queue-interop/amqp-interop": "^0.7.4"
10+
"queue-interop/amqp-interop": "0.8.x-dev"
1111
},
1212
"require-dev": {
1313
"phpunit/phpunit": "~5.4.0",

0 commit comments

Comments
 (0)