share(function(Application $app) { return Notifier::create($app['task-manager.listener.options']); }); $app['task-manager.listener.options'] = $app->share(function(Application $app) { if (isset($app['phraseanet.configuration']['task-manager']) && isset($app['phraseanet.configuration']['task-manager']['listener'])) { $listenerConf = $app['phraseanet.configuration']['task-manager']['listener']; } else { $listenerConf = array(); } return array_replace(array( 'protocol' => 'tcp', 'host' => '127.0.0.1', 'port' => 6660, 'linger' => 500, ), $listenerConf); }); $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['logger']); }); $app['task-manager.status'] = $app->share(function(Application $app) { return new TaskManagerStatus($app['phraseanet.configuration']); }); $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) { return array( new FtpJob(), new ArchiveJob(), new BridgeJob(), new FtpPullJob(), new PhraseanetIndexerJob(), new RecordMoverJob(), new SubdefsJob(), new WriteMetadataJob(), ); }); } public function boot(Application $app) { } }