/** * Load the routes for a module, using $prefix to namespace to * urls. * * @param AbstractModule $module The module * @param Neptune $neptune */ public function routeModule(AbstractModule $module, Neptune $neptune) { //set the current module name for naming routes $this->current_module = $module->getName(); $module->loadRoutes($this, $neptune); //reset the current module name $this->current_module = null; return true; }
protected function getModuleFixtures(AbstractModule $module) { $namespace = $module->getNamespace() . '\\Fixtures\\'; $directory = $module->getDirectory() . 'Fixtures/'; if (!is_dir($directory)) { return []; } $fixtures = []; $files = new \DirectoryIterator($directory); foreach ($files as $file) { if (!$file->isFile() || substr($file->getFilename(), -4) !== '.php') { continue; } $class = $namespace . $file->getBasename('.php'); $r = new \ReflectionClass($class); if (!$r->isSubclassOf('ActiveDoctrine\\Fixture\\FixtureInterface') || $r->isAbstract()) { continue; } $fixtures[] = $r->newInstance(); } return $fixtures; }
public function getCurrentVersion(AbstractModule $module) { $this->initMigrationsTable(); $qb = $this->connection->createQueryBuilder(); $qb->select('version')->from($this->migrations_table, 't')->where('module = ?')->orderBy('version', 'DESC'); $stmt = $this->connection->prepare($qb->getSql()); $stmt->execute([$module->getName()]); $result = $stmt->fetchColumn(); return $result ? $result : 0; }