Files
domain-watchdog/src/Scheduler/UpdateRdapServersSchedule.php
2024-07-19 23:50:41 +02:00

29 lines
734 B
PHP

<?php
namespace App\Scheduler;
use App\Message\UpdateRdapServers;
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]
final readonly class UpdateRdapServersSchedule implements ScheduleProviderInterface
{
public function __construct(
private CacheInterface $cache,
)
{
}
public function getSchedule(): Schedule
{
return (new Schedule())
->add(
RecurringMessage::every('1 month', new UpdateRdapServers()),
)->stateful($this->cache);
}
}