Skip to content

Commit 85a1c4e

Browse files
committed
change constructor argument type to expect a Key instance
This way we don't hide the fact that the DeduplicateStamp requires the Lock component to be installed.
1 parent cb08480 commit 85a1c4e

File tree

2 files changed

+5
-7
lines changed

2 files changed

+5
-7
lines changed

src/Symfony/Component/Messenger/Stamp/DeduplicateStamp.php

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,14 +15,11 @@
1515

1616
final class DeduplicateStamp implements StampInterface
1717
{
18-
private Key $key;
19-
2018
public function __construct(
21-
string $key,
19+
private Key $key,
2220
private ?float $ttl = 300.0,
2321
private bool $onlyDeduplicateInQueue = false,
2422
) {
25-
$this->key = new Key($key);
2623
}
2724

2825
public function onlyDeduplicateInQueue(): bool

src/Symfony/Component/Messenger/Tests/Middleware/DeduplicateMiddlewareTest.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\Tests\Middleware;
1313

14+
use Symfony\Component\Lock\Key;
1415
use Symfony\Component\Lock\LockFactory;
1516
use Symfony\Component\Lock\Store\FlockStore;
1617
use Symfony\Component\Lock\Store\SemaphoreStore;
@@ -39,7 +40,7 @@ public function testDeduplicateMiddlewareIgnoreIfMessageIsNotLockable()
3940
public function testDeduplicateMiddlewareIfMessageHasKey()
4041
{
4142
$message = new DummyMessage('Hello');
42-
$envelope = new Envelope($message, [new DeduplicateStamp('id')]);
43+
$envelope = new Envelope($message, [new DeduplicateStamp(new Key('id'))]);
4344

4445
if (SemaphoreStore::isSupported()) {
4546
$store = new SemaphoreStore();
@@ -53,7 +54,7 @@ public function testDeduplicateMiddlewareIfMessageHasKey()
5354
$this->assertNotNull($envelope->last(DeduplicateStamp::class));
5455

5556
$message2 = new DummyMessage('Hello');
56-
$envelope2 = new Envelope($message2, [new DeduplicateStamp('id')]);
57+
$envelope2 = new Envelope($message2, [new DeduplicateStamp(new Key('id'))]);
5758

5859
$decorator->handle($envelope2, $this->getStackMock(false));
5960

@@ -62,7 +63,7 @@ public function testDeduplicateMiddlewareIfMessageHasKey()
6263
$decorator->handle($envelope, $this->getStackMock(true));
6364

6465
$message3 = new DummyMessage('Hello');
65-
$envelope3 = new Envelope($message3, [new DeduplicateStamp('id')]);
66+
$envelope3 = new Envelope($message3, [new DeduplicateStamp(new Key('id'))]);
6667
$decorator->handle($envelope3, $this->getStackMock(true));
6768
}
6869
}

0 commit comments

Comments
 (0)