public function register(Application $app) { $app['task-manager.notifier'] = $app->share(function (Application $app) { if (isset($app['phraseanet.setup_mode']) && $app['phraseanet.setup_mode']) { return new NullNotifier(); } return Notifier::create($app['monolog'], $app['task-manager.options']); }); $app['task-manager.options'] = $app->share(function (Application $app) { return array_replace(['protocol' => 'tcp', 'host' => '127.0.0.1', 'port' => 6660, 'linger' => 500], $app['conf']->get(['main', 'task-manager', 'options'], [])); }); $app['task-manager.job-factory'] = $app->share(function (Application $app) { return new JobFactory($app['dispatcher'], isset($app['task-manager.logger']) ? $app['task-manager.logger'] : $app['monolog'], $app['translator']); }); $app['task-manager.status'] = $app->share(function (Application $app) { return new TaskManagerStatus($app['conf']); }); $app['task-manager.live-information'] = $app->share(function (Application $app) { return new LiveInformation($app['task-manager.status'], $app['task-manager.notifier']); }); $app['task-manager.log-file.root'] = $app->share(function (Application $app) { return $app['log.path']; }); $app['task-manager.log-file.factory'] = $app->share(function (Application $app) { return new LogFileFactory($app['task-manager.log-file.root']); }); $app['task-manager.available-jobs'] = $app->share(function (Application $app) { $logger = isset($app['task-manager.logger']) ? $app['task-manager.logger'] : $app['monolog']; return [(new FtpJob($app['translator'], $app['dispatcher'], $logger))->setDelivererLocator(new LazyLocator($app, 'notification.deliverer')), new ArchiveJob($app['translator'], $app['dispatcher'], $logger), new IndexerJob($app['translator'], $app['dispatcher'], $logger), new BridgeJob($app['translator'], $app['dispatcher'], $logger), new FtpPullJob($app['translator'], $app['dispatcher'], $logger), new RecordMoverJob($app['translator'], $app['dispatcher'], $logger), new SubdefsJob($app['translator'], $app['dispatcher'], $logger), new WriteMetadataJob($app['translator'], $app['dispatcher'], $logger), new WebhookJob($app['translator'], $app['dispatcher'], $logger)]; }); }
public function register(Application $app) { $app['task-manager.notifier'] = $app->share(function (Application $app) { return Notifier::create($app['monolog'], $app['task-manager.listener.options']); }); $app['task-manager.listener.options'] = $app->share(function (Application $app) { return array_replace(['protocol' => 'tcp', 'host' => '127.0.0.1', 'port' => 6660, 'linger' => 500], $app['conf']->get(['main', 'task-manager', 'listener'], [])); }); $app['task-manager.job-factory'] = $app->share(function (Application $app) { return new JobFactory($app['dispatcher'], isset($app['task-manager.logger']) ? $app['task-manager.logger'] : $app['monolog'], $app['translator']); }); $app['task-manager.status'] = $app->share(function (Application $app) { return new TaskManagerStatus($app['conf']); }); $app['task-manager.live-information'] = $app->share(function (Application $app) { return new LiveInformation($app['task-manager.status'], $app['task-manager.notifier']); }); $app['task-manager.log-file.root'] = $app->share(function (Application $app) { return $app['root.path'] . '/logs'; }); $app['task-manager.log-file.factory'] = $app->share(function (Application $app) { return new LogFileFactory($app['task-manager.log-file.root']); }); $app['task-manager.available-jobs'] = $app->share(function (Application $app) { $logger = isset($app['task-manager.logger']) ? $app['task-manager.logger'] : $app['monolog']; return [new FtpJob($app['dispatcher'], $logger, $app['translator']), new ArchiveJob($app['dispatcher'], $logger, $app['translator']), new BridgeJob($app['dispatcher'], $logger, $app['translator']), new FtpPullJob($app['dispatcher'], $logger, $app['translator']), new PhraseanetIndexerJob($app['dispatcher'], $logger, $app['translator']), new RecordMoverJob($app['dispatcher'], $logger, $app['translator']), new SubdefsJob($app['dispatcher'], $logger, $app['translator']), new WriteMetadataJob($app['dispatcher'], $logger, $app['translator'])]; }); }