1
0
Fork 0
mirror of synced 2024-10-03 19:53:33 +13:00

chore: matej review

This commit is contained in:
loks0n 2024-06-17 14:12:02 +01:00
parent 83ffc41d92
commit 5f144f91ad
2 changed files with 18 additions and 31 deletions

View file

@ -3,7 +3,6 @@
namespace Appwrite\Platform\Tasks;
use Appwrite\Event\Func;
use Cron\CronExpression;
use Utopia\Database\Database;
use Utopia\Pools\Group;
@ -24,8 +23,12 @@ class ScheduleExecutions extends ScheduleBase
protected function enqueueResources(Group $pools, Database $dbForConsole): void
{
$queue = $pools->get('queue')->pop();
$connection = $queue->getResource();
$queueForFunctions = new Func($connection);
foreach ($this->schedules as $schedule) {
if (!$schedule['active'] || CronExpression::isValidExpression($schedule['schedule'])) {
if (!$schedule['active']) {
unset($this->schedules[$schedule['resourceId']]);
continue;
}
@ -37,30 +40,21 @@ class ScheduleExecutions extends ScheduleBase
continue;
}
\go(function () use ($schedule, $pools, $dbForConsole) {
$queue = $pools->get('queue')->pop();
$connection = $queue->getResource();
$queueForFunctions
->setType('schedule')
->setFunctionId($schedule['resource']['functionId'])
->setExecution($schedule['resource'])
->setProject($schedule['project'])
->trigger();
$queueForFunctions = new Func($connection);
$dbForConsole->deleteDocument(
'schedules',
$schedule['$id'],
);
$queueForFunctions
->setType('schedule')
->setFunctionId($schedule['resource']['functionId'])
->setExecution($schedule['resource'])
->setMethod('POST')
->setPath('/')
->setProject($schedule['project'])
->trigger();
$dbForConsole->deleteDocument(
'schedules',
$schedule['$id'],
);
$queue->reclaim();
unset($this->schedules[$schedule['resourceId']]);
});
unset($this->schedules[$schedule['resourceId']]);
}
$queue->reclaim();
}
}

View file

@ -41,11 +41,6 @@ class ScheduleFunctions extends ScheduleBase
$delayedExecutions = []; // Group executions with same delay to share one coroutine
foreach ($this->schedules as $key => $schedule) {
if (!$schedule['active'] || !CronExpression::isValidExpression($schedule['schedule'])) {
unset($this->schedules[$schedule['resourceId']]);
continue;
}
$cron = new CronExpression($schedule['schedule']);
$nextDate = $cron->getNextRunDate();
$next = DateTime::format($nextDate);
@ -89,8 +84,6 @@ class ScheduleFunctions extends ScheduleBase
$queueForFunctions
->setType('schedule')
->setFunction($schedule['resource'])
->setMethod('POST')
->setPath('/')
->setProject($schedule['project'])
->trigger();
}