2024-07-21 00:56:27 +02:00
|
|
|
<?php
|
|
|
|
|
|
|
|
|
|
namespace App\Scheduler;
|
|
|
|
|
|
2024-07-21 16:55:39 +02:00
|
|
|
use App\Message\ProcessWatchListsTrigger;
|
2024-07-21 00:56:27 +02:00
|
|
|
use Symfony\Component\Scheduler\Attribute\AsSchedule;
|
|
|
|
|
use Symfony\Component\Scheduler\RecurringMessage;
|
|
|
|
|
use Symfony\Component\Scheduler\Schedule;
|
|
|
|
|
use Symfony\Component\Scheduler\ScheduleProviderInterface;
|
|
|
|
|
use Symfony\Contracts\Cache\CacheInterface;
|
|
|
|
|
|
|
|
|
|
#[AsSchedule('notif_watchlist')]
|
|
|
|
|
final readonly class SendNotifWatchListTriggerSchedule implements ScheduleProviderInterface
|
|
|
|
|
{
|
|
|
|
|
public function __construct(
|
|
|
|
|
private CacheInterface $cache,
|
2024-08-02 23:24:52 +02:00
|
|
|
) {
|
2024-07-21 00:56:27 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function getSchedule(): Schedule
|
|
|
|
|
{
|
|
|
|
|
return (new Schedule())
|
|
|
|
|
->add(
|
2024-08-10 15:44:16 +02:00
|
|
|
RecurringMessage::every('1 day', new ProcessWatchListsTrigger()),
|
2024-07-21 00:56:27 +02:00
|
|
|
)
|
2024-07-21 16:55:39 +02:00
|
|
|
->stateful($this->cache);
|
2024-07-21 00:56:27 +02:00
|
|
|
}
|
|
|
|
|
}
|