public function testMissingRequestReturnNull() { $this->socket->expects($this->once())->method('send')->with(TaskManager::MESSAGE_PROCESS_UPDATE); $this->socket->expects($this->once())->method('recv')->will($this->returnValue(json_encode(['request' => TaskManager::MESSAGE_PROCESS_UPDATE]))); $this->setExpectedException(RuntimeException::class, 'Invalid task manager response : missing fields.'); $this->sut->notify(Notifier::MESSAGE_CREATE); }
public function testMissingRequestReturnNull() { $socket = $this->createSocketMock(); $socket->expects($this->once())->method('send')->with(TaskManager::MESSAGE_PROCESS_UPDATE); $socket->expects($this->once())->method('recv')->will($this->returnValue(json_encode(['request' => TaskManager::MESSAGE_PROCESS_UPDATE]))); $notifier = new Notifier($socket, $this->getMock('Psr\\Log\\LoggerInterface')); $this->setExpectedException('Alchemy\\Phrasea\\Exception\\RuntimeException', 'Invalid task manager response : missing fields.'); $notifier->notify(Notifier::MESSAGE_CREATE); }
private function notify($message) { try { $this->notifier->notify($message); } catch (RuntimeException $e) { } }
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'])]; }); }