2021-03-26 02:12:34 +08:00
|
|
|
<?php
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
namespace Snowflake\Crontab;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
use Snowflake\Abstracts\Config;
|
|
|
|
|
use Snowflake\Abstracts\Providers;
|
|
|
|
|
use Snowflake\Application;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Class CrontabProviders
|
|
|
|
|
* @package Snowflake\Crontab
|
|
|
|
|
*/
|
|
|
|
|
class CrontabProviders extends Providers
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* @param Application $application
|
|
|
|
|
*/
|
|
|
|
|
public function onImport(Application $application)
|
|
|
|
|
{
|
|
|
|
|
$server = $application->getServer();
|
2021-03-26 02:13:18 +08:00
|
|
|
$application->set('crontab', ['class' => Producer::class]);
|
2021-03-26 02:12:34 +08:00
|
|
|
if (Config::get('crontab.enable') !== true) {
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
$server->addProcess('CrontabZookeeper', ZookeeperProcess::class);
|
|
|
|
|
$server->addProcess('Consumer', Consumer::class);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|