/** * {@inheritdoc} */ public function process(IndentedLoggerInterface $out, ContainerAwareCommand $command = null) { $links = $this->getLinks(); $data = $this->compiler->generateSitemap($links); file_put_contents($this->filedir . '/' . $this->filepath, $data); $out->writeln(count($links) . ' links processed'); }
/** * @inheritdoc * * @LoggerAware() */ public function process(IndentedLoggerInterface $output, ContainerAwareCommand $command = null) { $this->logger->debug('Processing queue'); $output->write('Processing queue... '); $jobs = $this->repoJob->getLastActive(50); $this->toggleJobsLocks($jobs, true); $amount = 0; $skipped = 0; $failed = 0; foreach ($jobs as $job) { try { $this->em->refresh($job); if (!$job->isActive()) { continue; } $result = $this->processJob($job); if ($result === true) { $amount++; } elseif ($result === -1) { $skipped++; } else { $failed++; } } catch (\Exception $e) { $output->write('finished with exception. '); break; } } $this->toggleJobsLocks($jobs, false); $output->writeln(sprintf('%s processed, %s skipped, %s failed', (string) $amount, (string) $skipped, (string) $failed)); $this->logger->debug('finished'); if (isset($e)) { throw $e; } }
/** * {@inheritdoc} */ public function process(IndentedLoggerInterface $logger, ContainerAwareCommand $command = null, $class = null, $noStuff = false) { uasort($this->providers, function ($a, $b) { if ($a['priority'] == $b['priority']) { return 0; } return $a['priority'] > $b['priority'] ? -1 : 1; }); if ($class) { if (!isset($this->providers[$class])) { throw new ProviderNotFoundException('Provider not found: ' . $class); } $provider = $this->providers[$class]; $list = [$class => $provider]; } else { $list = $this->providers; } foreach ($list as $class => $row) { if ($class == 'stuff' && $noStuff) { $logger->writeln('Stuff skipped'); continue; } $provider = $row['provider']; /** @var CompileProviderInterface $provider */ $logger->write('Processing ' . $class . ': '); $provider->process($logger, $command); } }
/** * {@inheritdoc} */ public function process(IndentedLoggerInterface $logger, ContainerAwareCommand $command = null) { $logger->writeln('running update'); $logger->indent(); try { $this->stuff->process($logger, $command, null, false, 1); } catch (NoProvidersException $e) { $logger->writeln('Stuff skipped as not providers found' . PHP_EOL); } $logger->outdent(); }
/** * {@inheritdoc} */ public function process(IndentedLoggerInterface $logger, ContainerAwareCommand $command = null, $class = null, $tickin = false) { $tick = $tickin; if (!count($this->providers)) { throw new NoProvidersException('No providers found'); } if (!$class) { if (!$tick) { $tick = $this->ticker->addTick(); } if (!$tickin) { $logger->writeln('Current tick is ' . $tick); } else { $logger->writeln('Forcing tick to ' . $tick); } } uasort($this->providers, function ($a, $b) { if ($a['priority'] == $b['priority']) { return 0; } return $a['priority'] > $b['priority'] ? -1 : 1; }); if ($class) { if (!isset($this->providers[$class])) { throw new ProviderNotFoundException('Provider not found: ' . $class); } $list = [$class => $this->providers[$class]]; } else { $list = $this->providers; } foreach ($list as $pclass => $provider) { if (!$class && $provider['tick'] && $tick > 1 && $tick % $provider['tick'] !== 0) { continue; } $lockName = static::LOCK_PREFIX . $pclass; if (!$this->locks->lock($lockName, static::LOCK_TIMEOUT)) { $logger->writeln(sprintf('%s is locked, skipping', $pclass)); continue; } $provider = $provider['service']; /** @var StuffProviderInterface $provider */ try { $this->processProvider($provider, $logger, $command); } catch (\Exception $e) { $logger->writeln('EXCEPTION: ' . $e->getMessage() . ', skipping'); // TODO: log exceptions } $this->locks->unlock($lockName); } }