Ejemplo n.º 1
0
 private function importSnippets()
 {
     $this->IOHelper->writeln("Import snippets...");
     /** @var DumpIterator $dump */
     $dump = $this->container->get('dump');
     if (!$dump) {
         $this->IOHelper->writeln("skipped...");
         return 1;
     }
     /** @var \PDO $conn */
     $conn = $this->container->get('db');
     $snippetStep = new SnippetStep($conn, $dump);
     $progress = $this->IOHelper->createProgressBar($dump->count());
     $progress->start();
     $offset = 0;
     do {
         $progress->setCurrent($offset);
         $result = $snippetStep->run($offset);
         if ($result instanceof ErrorResult) {
             throw new \Exception($result->getMessage(), 0, $result->getException());
         }
         $offset = $result->getOffset();
         $progress->setCurrent($offset);
     } while ($result instanceof ValidResult);
     $progress->finish();
     $this->IOHelper->writeln("");
 }
Ejemplo n.º 2
0
 /**
  * @param \PDO         $conn
  * @param DumpIterator $dump
  */
 private function dumpProgress(\PDO $conn, DumpIterator $dump)
 {
     $totalCount = $dump->count();
     $progress = $this->IOHelper->createProgressBar($totalCount);
     $progress->setRedrawFrequency(20);
     $progress->start();
     foreach ($dump as $sql) {
         // Execute each query one by one
         // https://bugs.php.net/bug.php?id=61613
         $conn->exec($sql);
         $progress->advance();
     }
     $progress->finish();
     $this->IOHelper->writeln("");
 }