REDROOM
PHP 8.2.31
Path:
Logout
Edit File
Size: 3.62 KB
Close
/home/nshryvcy/himaltourism.com/wp-content/plugins/mailpoet/lib/Cron/Daemon.php
Text
Base64
<?php // phpcs:ignore SlevomatCodingStandard.TypeHints.DeclareStrictTypes.DeclareStrictTypesMissing namespace MailPoet\Cron; if (!defined('ABSPATH')) exit; use MailPoet\Cron\Workers\WorkersFactory; use MailPoet\Logging\LoggerFactory; class Daemon { public $timer; /** @var CronHelper */ private $cronHelper; /** @var CronWorkerRunner */ private $cronWorkerRunner; /** @var WorkersFactory */ private $workersFactory; /** @var LoggerFactory */ private $loggerFactory; public function __construct( CronHelper $cronHelper, CronWorkerRunner $cronWorkerRunner, WorkersFactory $workersFactory, LoggerFactory $loggerFactory ) { $this->timer = microtime(true); $this->workersFactory = $workersFactory; $this->cronWorkerRunner = $cronWorkerRunner; $this->cronHelper = $cronHelper; $this->loggerFactory = $loggerFactory; } public function run($settingsDaemonData) { $settingsDaemonData['run_started_at'] = time(); $this->cronHelper->saveDaemon($settingsDaemonData); $errors = []; foreach ($this->getWorkers() as $worker) { try { if ($worker instanceof CronWorkerInterface) { $this->cronWorkerRunner->run($worker); } else { $worker->process($this->timer); // BC for workers not implementing CronWorkerInterface } } catch (\Exception $e) { $workerClassNameParts = explode('\\', get_class($worker)); $workerName = end($workerClassNameParts); $errors[] = [ 'worker' => $workerName, 'message' => $e->getMessage(), ]; if ($e->getCode() === CronHelper::DAEMON_EXECUTION_LIMIT_REACHED) { break; } $this->loggerFactory->getLogger(LoggerFactory::TOPIC_CRON)->error($e->getMessage(), ['error' => $e, 'worker' => $workerName]); } } if (!empty($errors)) { $this->cronHelper->saveDaemonLastError($errors); } // Log successful execution $this->cronHelper->saveDaemonRunCompleted(time()); } private function getWorkers() { yield $this->workersFactory->createStatsNotificationsWorker(); // not CronWorkerInterface compatible yield $this->workersFactory->createScheduleWorker(); // not CronWorkerInterface compatible yield $this->workersFactory->createQueueWorker(); // not CronWorkerInterface compatible yield $this->workersFactory->createSendingServiceKeyCheckWorker(); yield $this->workersFactory->createPremiumKeyCheckWorker(); yield $this->workersFactory->createSubscribersStatsReportWorker(); yield $this->workersFactory->createBounceWorker(); yield $this->workersFactory->createExportFilesCleanupWorker(); yield $this->workersFactory->createBeamerkWorker(); yield $this->workersFactory->createSubscribersEmailCountsWorker(); yield $this->workersFactory->createInactiveSubscribersWorker(); yield $this->workersFactory->createUnsubscribeTokensWorker(); yield $this->workersFactory->createWooCommerceSyncWorker(); yield $this->workersFactory->createAuthorizedSendingEmailsCheckWorker(); yield $this->workersFactory->createWooCommercePastOrdersWorker(); yield $this->workersFactory->createStatsNotificationsWorkerForAutomatedEmails(); yield $this->workersFactory->createSubscriberLinkTokensWorker(); yield $this->workersFactory->createSubscribersEngagementScoreWorker(); yield $this->workersFactory->createSubscribersLastEngagementWorker(); yield $this->workersFactory->createSubscribersCountCacheRecalculationWorker(); yield $this->workersFactory->createReEngagementEmailsSchedulerWorker(); yield $this->workersFactory->createNewsletterTemplateThumbnailsWorker(); } }
Save
Close
Exit & Reset
Text mode: syntax highlighting auto-detects file type.
Directory Contents
Dirs: 3 × Files: 10
Delete Selected
Select All
Select None
Sort:
Name
Size
Modified
Enable drag-to-move
Name
Size
Perms
Modified
Actions
ActionScheduler
DIR
-
drwxr-xr-x
2023-04-04 05:35:40
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
Triggers
DIR
-
drwxr-xr-x
2023-04-04 05:35:40
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
Workers
DIR
-
drwxr-xr-x
2023-04-04 05:35:40
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
CronHelper.php
7.13 KB
lrw-r--r--
2023-04-04 05:35:40
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
CronTrigger.php
1.71 KB
lrw-r--r--
2023-04-04 05:35:40
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
CronWorkerInterface.php
939 B
lrw-r--r--
2023-04-04 05:35:40
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
CronWorkerRunner.php
6.00 KB
lrw-r--r--
2023-04-04 05:35:40
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
CronWorkerScheduler.php
2.99 KB
lrw-r--r--
2023-04-04 05:35:40
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
Daemon.php
3.62 KB
lrw-r--r--
2023-04-04 05:35:40
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
DaemonActionSchedulerRunner.php
2.04 KB
lrw-r--r--
2023-04-04 05:35:40
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
DaemonHttpRunner.php
5.13 KB
lrw-r--r--
2023-04-04 05:35:40
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
index.php
0 B
lrw-r--r--
2023-04-04 05:35:40
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
Supervisor.php
1.36 KB
lrw-r--r--
2023-04-04 05:35:40
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
Zip Selected
If ZipArchive is unavailable, a
.tar
will be created (no compression).