Skip to content

Commit ca924f7

Browse files
committed
-
1 parent 17d9589 commit ca924f7

File tree

20 files changed

+70
-156
lines changed

20 files changed

+70
-156
lines changed

src/Symfony/Bundle/FrameworkBundle/DependencyInjection/FrameworkExtension.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -715,7 +715,7 @@ public function load(array $configs, ContainerBuilder $container)
715715
$container->registerAttributeForAutoconfiguration(AsTargetedValueResolver::class, static function (ChildDefinition $definition, AsTargetedValueResolver $attribute): void {
716716
$definition->addTag('controller.targeted_value_resolver', $attribute->name ? ['name' => $attribute->name] : []);
717717
});
718-
$container->registerAttributeForAutoconfiguration(AsSchedule::class, static function (ChildDefinition $definition, AsSchedule $attribute, \ReflectionClass $reflector): void {
718+
$container->registerAttributeForAutoconfiguration(AsSchedule::class, static function (ChildDefinition $definition, AsSchedule $attribute): void {
719719
$definition->addTag('scheduler.schedule_provider', ['name' => $attribute->name]);
720720
});
721721

src/Symfony/Bundle/FrameworkBundle/Resources/config/messenger.php

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@
2424
use Symfony\Component\Messenger\EventListener\StopWorkerOnCustomStopExceptionListener;
2525
use Symfony\Component\Messenger\EventListener\StopWorkerOnRestartSignalListener;
2626
use Symfony\Component\Messenger\EventListener\StopWorkerOnSignalsListener;
27-
use Symfony\Component\Messenger\Handler\RedispatchMessageHandler;
2827
use Symfony\Component\Messenger\Middleware\AddBusNameStampMiddleware;
2928
use Symfony\Component\Messenger\Middleware\DispatchAfterCurrentBusMiddleware;
3029
use Symfony\Component\Messenger\Middleware\FailedMessageProcessingMiddleware;
@@ -219,11 +218,5 @@
219218
abstract_arg('message bus locator'),
220219
service('messenger.default_bus'),
221220
])
222-
223-
->set('messenger.redispatch_message_handler', RedispatchMessageHandler::class)
224-
->args([
225-
service('messenger.default_bus'),
226-
])
227-
->tag('messenger.message_handler')
228221
;
229222
};

src/Symfony/Bundle/FrameworkBundle/Tests/Fixtures/Messenger/DummySchedule.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,10 @@
88
use Symfony\Component\Lock\Store\InMemoryStore;
99
use Symfony\Component\Scheduler\Attribute\AsSchedule;
1010
use Symfony\Component\Scheduler\Schedule;
11-
use Symfony\Component\Scheduler\ScheduleableInterface;
11+
use Symfony\Component\Scheduler\ScheduleProviderInterface;
1212

1313
#[AsSchedule('dummy')]
14-
class DummySchedule implements ScheduleableInterface
14+
class DummySchedule implements ScheduleProviderInterface
1515
{
1616
public static array $recurringMessages;
1717

src/Symfony/Bundle/FrameworkBundle/Tests/Functional/SchedulerTest.php

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,15 +18,14 @@
1818
use Symfony\Component\HttpKernel\KernelInterface;
1919
use Symfony\Component\Scheduler\Messenger\SchedulerTransport;
2020
use Symfony\Component\Scheduler\RecurringMessage;
21-
use Symfony\Component\Scheduler\Trigger\PeriodicalTrigger;
2221

2322
class SchedulerTest extends AbstractWebTestCase
2423
{
2524
public function testScheduler()
2625
{
2726
$scheduledMessages = [
28-
new RecurringMessage($foo = new FooMessage(), PeriodicalTrigger::create(600, '2020-01-01T00:00:00Z')),
29-
new RecurringMessage($bar = new BarMessage(), PeriodicalTrigger::create(600, '2020-01-01T00:01:00Z')),
27+
RecurringMessage::every('5 minutes', $foo = new FooMessage()),
28+
RecurringMessage::every('5 minutes', $bar = new BarMessage()),
3029
];
3130
DummySchedule::$recurringMessages = $scheduledMessages;
3231

src/Symfony/Component/Messenger/CHANGELOG.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@ CHANGELOG
1414
* Deprecate `StopWorkerOnSigtermSignalListener` in favor of
1515
`StopWorkerOnSignalsListener` and make it configurable with SIGINT and
1616
SIGTERM by default
17-
* Add `RedispatchMessage` and `RedispatchMessageHandler`
1817

1918
6.2
2019
---

src/Symfony/Component/Messenger/Handler/RedispatchMessageHandler.php

Lines changed: 0 additions & 28 deletions
This file was deleted.

src/Symfony/Component/Messenger/Message/RedispatchMessage.php

Lines changed: 0 additions & 25 deletions
This file was deleted.

src/Symfony/Component/Messenger/composer.json

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,6 @@
2121
},
2222
"require-dev": {
2323
"psr/cache": "^1.0|^2.0|^3.0",
24-
"symfony/cache": "^5.4|^6.0",
25-
"symfony/clock": "^6.2",
2624
"symfony/console": "^5.4|^6.0",
2725
"symfony/dependency-injection": "^5.4|^6.0",
2826
"symfony/event-dispatcher": "^5.4|^6.0",

src/Symfony/Component/Scheduler/Generator/Checkpoint.php

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@
1212
namespace Symfony\Component\Scheduler\Generator;
1313

1414
use Symfony\Component\Lock\LockInterface;
15-
use Symfony\Component\Lock\NoLock;
1615
use Symfony\Contracts\Cache\CacheInterface;
1716

1817
/**
@@ -26,14 +25,14 @@ final class Checkpoint implements CheckpointInterface
2625

2726
public function __construct(
2827
private readonly string $name,
29-
private readonly LockInterface $lock = new NoLock(),
28+
private readonly ?LockInterface $lock = null,
3029
private readonly ?CacheInterface $cache = null,
3130
) {
3231
}
3332

3433
public function acquire(\DateTimeImmutable $now): bool
3534
{
36-
if (!$this->lock->acquire()) {
35+
if ($this->lock && !$this->lock->acquire()) {
3736
// Reset local state if a `Lock` is acquired by another `Worker`.
3837
$this->reset = true;
3938

@@ -77,6 +76,10 @@ public function save(\DateTimeImmutable $time, int $index): void
7776
*/
7877
public function release(\DateTimeImmutable $now, ?\DateTimeImmutable $nextTime): void
7978
{
79+
if (!$this->lock) {
80+
return;
81+
}
82+
8083
if (!$nextTime) {
8184
$this->lock->release();
8285
} elseif ($remaining = $this->lock->getRemainingLifetime()) {

src/Symfony/Component/Scheduler/Generator/MessageGenerator.php

Lines changed: 8 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
use Psr\Clock\ClockInterface;
1515
use Symfony\Component\Clock\Clock;
1616
use Symfony\Component\Scheduler\Schedule;
17-
use Symfony\Component\Scheduler\ScheduleableInterface;
17+
use Symfony\Component\Scheduler\ScheduleProviderInterface;
1818
use Symfony\Component\Scheduler\Trigger\TriggerInterface;
1919

2020
/**
@@ -25,24 +25,17 @@ final class MessageGenerator implements MessageGeneratorInterface
2525
private TriggerHeap $triggerHeap;
2626
private ?\DateTimeImmutable $waitUntil;
2727
private CheckpointInterface $checkpoint;
28-
private Schedule $schedule;
2928

3029
public function __construct(
31-
private readonly string $name,
32-
ScheduleableInterface $scheduleProvider,
33-
private readonly ClockInterface $clock = new Clock(),
30+
private Schedule $schedule,
31+
string|CheckpointInterface $checkpoint,
32+
private ClockInterface $clock = new Clock(),
3433
) {
3534
$this->waitUntil = new \DateTimeImmutable('@0');
36-
$this->schedule = $scheduleProvider->getSchedule();
37-
$this->checkpoint = new Checkpoint('scheduler_checkpoint_'.$name, $this->schedule->getLock(), $this->schedule->getState());
38-
}
39-
40-
public function withCheckpoint(CheckpointInterface $checkpoint): static
41-
{
42-
$generator = clone $this;
43-
$generator->checkpoint = $checkpoint;
44-
45-
return $generator;
35+
if (\is_string($checkpoint)) {
36+
$checkpoint = new Checkpoint('scheduler_checkpoint_'.$checkpoint, $this->schedule->getLock(), $this->schedule->getState());
37+
}
38+
$this->checkpoint = $checkpoint;
4639
}
4740

4841
public function getMessages(): \Generator

0 commit comments

Comments
 (0)