Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 75131bf

Browse files
committed
[Messenger] changed AmqpExt classes constructor signature
1 parent 0cd1da6 commit 75131bf

10 files changed

+28
-22
lines changed

src/Symfony/Component/Messenger/CHANGELOG.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,13 @@ CHANGELOG
44
4.2.0
55
-----
66

7+
* [BC BREAK] The signature of Amqp* classes changed to take a `Connection` as a first argument and an optional
8+
`Serializer` as a second argument.
79
* [BC BREAK] `SenderLocator` has been renamed to `ContainerSenderLocator`
810
Be careful as there is still a `SenderLocator` class, but it does not rely on a `ContainerInterface` to find senders.
911
Instead, it accepts the sender instance itself instead of its identifier in the container.
1012
* [BC BREAK] `MessageSubscriberInterface::getHandledMessages()` return value has changed. The value of an array item
11-
needs to be an associative array or the method name.
13+
needs to be an associative array or the method name.
1214
* `ValidationMiddleware::handle()` and `SendMessageMiddleware::handle()` now require an `Envelope` object
1315
* `EnvelopeItemInterface` doesn't extend `Serializable` anymore
1416
* [BC BREAK] The `ConsumeMessagesCommand` class now takes an instance of `Psr\Container\ContainerInterface`

src/Symfony/Component/Messenger/Tests/Transport/AmqpExt/AmqpExtIntegrationTest.php

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -48,8 +48,8 @@ public function testItSendsAndReceivesMessages()
4848
$connection->setup();
4949
$connection->queue()->purge();
5050

51-
$sender = new AmqpSender($serializer, $connection);
52-
$receiver = new AmqpReceiver($serializer, $connection);
51+
$sender = new AmqpSender($connection, $serializer);
52+
$receiver = new AmqpReceiver($connection, $serializer);
5353

5454
$sender->send($first = Envelope::wrap(new DummyMessage('First')));
5555
$sender->send($second = Envelope::wrap(new DummyMessage('Second')));
@@ -74,7 +74,7 @@ public function testItReceivesSignals()
7474
$connection->setup();
7575
$connection->queue()->purge();
7676

77-
$sender = new AmqpSender($serializer, $connection);
77+
$sender = new AmqpSender($connection, $serializer);
7878
$sender->send(Envelope::wrap(new DummyMessage('Hello')));
7979

8080
$amqpReadTimeout = 30;
@@ -123,7 +123,7 @@ public function testItSupportsTimeoutAndTicksNullMessagesToTheHandler()
123123
$connection->setup();
124124
$connection->queue()->purge();
125125

126-
$receiver = new AmqpReceiver($serializer, $connection);
126+
$receiver = new AmqpReceiver($connection, $serializer);
127127

128128
$receivedMessages = 0;
129129
$receiver->receive(function (?Envelope $envelope) use ($receiver, &$receivedMessages) {

src/Symfony/Component/Messenger/Tests/Transport/AmqpExt/AmqpReceiverTest.php

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ public function testItSendTheDecodedMessageToTheHandlerAndAcknowledgeIt()
4444

4545
$connection->expects($this->once())->method('ack')->with($envelope);
4646

47-
$receiver = new AmqpReceiver($serializer, $connection);
47+
$receiver = new AmqpReceiver($connection, $serializer);
4848
$receiver->receive(function (?Envelope $envelope) use ($receiver) {
4949
$this->assertEquals(new DummyMessage('Hi'), $envelope->getMessage());
5050
$receiver->stop();
@@ -71,7 +71,7 @@ public function testItNonAcknowledgeTheMessageIfAnExceptionHappened()
7171

7272
$connection->expects($this->once())->method('nack')->with($envelope);
7373

74-
$receiver = new AmqpReceiver($serializer, $connection);
74+
$receiver = new AmqpReceiver($connection, $serializer);
7575
$receiver->receive(function () {
7676
throw new InterruptException('Well...');
7777
});
@@ -96,7 +96,7 @@ public function testItRejectsTheMessageIfTheExceptionIsARejectMessageExceptionIn
9696
$connection->method('get')->willReturn($envelope);
9797
$connection->expects($this->once())->method('reject')->with($envelope);
9898

99-
$receiver = new AmqpReceiver($serializer, $connection);
99+
$receiver = new AmqpReceiver($connection, $serializer);
100100
$receiver->receive(function () {
101101
throw new WillNeverWorkException('Well...');
102102
});

src/Symfony/Component/Messenger/Tests/Transport/AmqpExt/AmqpSenderTest.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ public function testItSendsTheEncodedMessage()
3434
$connection = $this->getMockBuilder(Connection::class)->disableOriginalConstructor()->getMock();
3535
$connection->expects($this->once())->method('publish')->with($encoded['body'], $encoded['headers']);
3636

37-
$sender = new AmqpSender($serializer, $connection);
37+
$sender = new AmqpSender($connection, $serializer);
3838
$sender->send($envelope);
3939
}
4040
}

src/Symfony/Component/Messenger/Tests/Transport/AmqpExt/AmqpTransportFactoryTest.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ public function testItCreatesTheTransport()
3838
true
3939
);
4040

41-
$expectedTransport = new AmqpTransport($serializer, Connection::fromDsn('amqp://localhost', array('foo' => 'bar'), true));
41+
$expectedTransport = new AmqpTransport(Connection::fromDsn('amqp://localhost', array('foo' => 'bar'), true), $serializer);
4242

4343
$this->assertEquals($expectedTransport, $factory->createTransport('amqp://localhost', array('foo' => 'bar')));
4444
}

src/Symfony/Component/Messenger/Tests/Transport/AmqpExt/AmqpTransportTest.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,6 @@ private function getTransport(SerializerInterface $serializer = null, Connection
5959
$serializer = $serializer ?: $this->getMockBuilder(SerializerInterface::class)->getMock();
6060
$connection = $connection ?: $this->getMockBuilder(Connection::class)->disableOriginalConstructor()->getMock();
6161

62-
return new AmqpTransport($serializer, $connection);
62+
return new AmqpTransport($connection, $serializer);
6363
}
6464
}

src/Symfony/Component/Messenger/Transport/AmqpExt/AmqpReceiver.php

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313

1414
use Symfony\Component\Messenger\Transport\AmqpExt\Exception\RejectMessageExceptionInterface;
1515
use Symfony\Component\Messenger\Transport\ReceiverInterface;
16+
use Symfony\Component\Messenger\Transport\Serialization\Serializer;
1617
use Symfony\Component\Messenger\Transport\Serialization\SerializerInterface;
1718

1819
/**
@@ -26,10 +27,10 @@ class AmqpReceiver implements ReceiverInterface
2627
private $connection;
2728
private $shouldStop;
2829

29-
public function __construct(SerializerInterface $serializer, Connection $connection)
30+
public function __construct(Connection $connection, SerializerInterface $serializer = null)
3031
{
31-
$this->serializer = $serializer;
3232
$this->connection = $connection;
33+
$this->serializer = $serializer ?? Serializer::create();
3334
}
3435

3536
/**

src/Symfony/Component/Messenger/Transport/AmqpExt/AmqpSender.php

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313

1414
use Symfony\Component\Messenger\Envelope;
1515
use Symfony\Component\Messenger\Transport\SenderInterface;
16+
use Symfony\Component\Messenger\Transport\Serialization\Serializer;
1617
use Symfony\Component\Messenger\Transport\Serialization\SerializerInterface;
1718

1819
/**
@@ -25,10 +26,10 @@ class AmqpSender implements SenderInterface
2526
private $serializer;
2627
private $connection;
2728

28-
public function __construct(SerializerInterface $serializer, Connection $connection)
29+
public function __construct(Connection $connection, SerializerInterface $serializer = null)
2930
{
30-
$this->serializer = $serializer;
3131
$this->connection = $connection;
32+
$this->serializer = $serializer ?? Serializer::create();
3233
}
3334

3435
/**

src/Symfony/Component/Messenger/Transport/AmqpExt/AmqpTransport.php

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
namespace Symfony\Component\Messenger\Transport\AmqpExt;
1313

1414
use Symfony\Component\Messenger\Envelope;
15+
use Symfony\Component\Messenger\Transport\Serialization\Serializer;
1516
use Symfony\Component\Messenger\Transport\Serialization\SerializerInterface;
1617
use Symfony\Component\Messenger\Transport\TransportInterface;
1718

@@ -25,10 +26,10 @@ class AmqpTransport implements TransportInterface
2526
private $receiver;
2627
private $sender;
2728

28-
public function __construct(SerializerInterface $serializer, Connection $connection)
29+
public function __construct(Connection $connection, SerializerInterface $serializer = null)
2930
{
30-
$this->serializer = $serializer;
3131
$this->connection = $connection;
32+
$this->serializer = $serializer ?? Serializer::create();
3233
}
3334

3435
/**
@@ -57,11 +58,11 @@ public function send(Envelope $envelope): void
5758

5859
private function getReceiver()
5960
{
60-
return $this->receiver = new AmqpReceiver($this->serializer, $this->connection);
61+
return $this->receiver = new AmqpReceiver($this->connection, $this->serializer);
6162
}
6263

6364
private function getSender()
6465
{
65-
return $this->sender = new AmqpSender($this->serializer, $this->connection);
66+
return $this->sender = new AmqpSender($this->connection, $this->serializer);
6667
}
6768
}

src/Symfony/Component/Messenger/Transport/AmqpExt/AmqpTransportFactory.php

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111

1212
namespace Symfony\Component\Messenger\Transport\AmqpExt;
1313

14+
use Symfony\Component\Messenger\Transport\Serialization\Serializer;
1415
use Symfony\Component\Messenger\Transport\Serialization\SerializerInterface;
1516
use Symfony\Component\Messenger\Transport\TransportFactoryInterface;
1617
use Symfony\Component\Messenger\Transport\TransportInterface;
@@ -23,15 +24,15 @@ class AmqpTransportFactory implements TransportFactoryInterface
2324
private $serializer;
2425
private $debug;
2526

26-
public function __construct(SerializerInterface $serializer, bool $debug)
27+
public function __construct(SerializerInterface $serializer = null, bool $debug = false)
2728
{
28-
$this->serializer = $serializer;
29+
$this->serializer = $serializer ?? Serializer::create();
2930
$this->debug = $debug;
3031
}
3132

3233
public function createTransport(string $dsn, array $options): TransportInterface
3334
{
34-
return new AmqpTransport($this->serializer, Connection::fromDsn($dsn, $options, $this->debug));
35+
return new AmqpTransport(Connection::fromDsn($dsn, $options, $this->debug), $this->serializer);
3536
}
3637

3738
public function supports(string $dsn, array $options): bool

0 commit comments

Comments
 (0)