1
0
Files
breadcrumb-the-shire/lib/Service/Scheduler/SchedulerRepositoryFactory.php
2026-03-05 08:26:51 +01:00

33 lines
1.2 KiB
PHP

<?php
namespace MintyPHP\Service\Scheduler;
use MintyPHP\Repository\Scheduler\ScheduledJobRepository;
use MintyPHP\Repository\Scheduler\ScheduledJobRepositoryInterface;
use MintyPHP\Repository\Scheduler\ScheduledJobRunRepository;
use MintyPHP\Repository\Scheduler\ScheduledJobRunRepositoryInterface;
use MintyPHP\Repository\Scheduler\SchedulerRuntimeRepository;
use MintyPHP\Repository\Scheduler\SchedulerRuntimeRepositoryInterface;
class SchedulerRepositoryFactory
{
private ?ScheduledJobRepository $scheduledJobRepository = null;
private ?ScheduledJobRunRepository $scheduledJobRunRepository = null;
private ?SchedulerRuntimeRepository $schedulerRuntimeRepository = null;
public function createScheduledJobRepository(): ScheduledJobRepositoryInterface
{
return $this->scheduledJobRepository ??= new ScheduledJobRepository();
}
public function createScheduledJobRunRepository(): ScheduledJobRunRepositoryInterface
{
return $this->scheduledJobRunRepository ??= new ScheduledJobRunRepository();
}
public function createSchedulerRuntimeRepository(): SchedulerRuntimeRepositoryInterface
{
return $this->schedulerRuntimeRepository ??= new SchedulerRuntimeRepository();
}
}