Ejemplo n.º 1
1
 /**
  *
  * @param PWECore $PWE
  * @param bool $forceNewConnection
  * @param string $alias
  * @return Connection
  * @throws DBALException
  */
 public static function getConnection(PWECore $PWE, $forceNewConnection = false, $alias = null)
 {
     if (!$forceNewConnection && self::$connection[$alias]) {
         PWELogger::debug('Used cached connection');
         return self::$connection[$alias];
     }
     $settings = $PWE->getModulesManager()->getModuleSettings(self::getClass());
     $connections = $settings['!c']['connection'];
     $ix = PWEXMLFunctions::findNodeWithAttributeValue($connections, 'alias', $alias);
     if ($ix < 0) {
         throw new \InvalidArgumentException("Alias {$alias} not found in database configs");
     }
     $params = $connections[$ix]['!a'];
     $config = new Configuration();
     $config->setSQLLogger(new PWEDoctrineLogger($alias ? $alias : ''));
     PWELogger::debug("Getting connection: %s", $params);
     self::$connection[$alias] = DriverManager::getConnection($params, $config);
     return self::$connection[$alias];
 }
Ejemplo n.º 2
0
 public function run()
 {
     $this->setRegistryFile($this->PWE->getModulesManager()->getRegistryFile());
     PWELogger::debug("Dumping config");
     $this->loadRegistry();
     $this->xml_as_options($this->registryArray);
 }
Ejemplo n.º 3
0
 public function getModulesManager()
 {
     try {
         return parent::getModulesManager();
     } catch (BadFunctionCallException $e) {
         return null;
     }
 }