示例#1
0
 /**
  * 
  * @return array
  */
 public static function buildTemplatesList()
 {
     $rawTemplatesFileList = array();
     $moduleList = Informations::getModuleList();
     foreach ($moduleList as $module) {
         $modulePath = Informations::getModulePath($module);
         $pollerTemplatesFilePath = $modulePath . '/pollers/*.json';
         $rawTemplatesFileList = array_merge($rawTemplatesFileList, glob($pollerTemplatesFilePath));
     }
     $templatesList = array();
     foreach ($rawTemplatesFileList as $templateFile) {
         $liteTemplate = self::liteFileParser($templateFile);
         if (!isset($templatesList[$liteTemplate['name']])) {
             $myLiteTemplate = new LiteTemplate($liteTemplate['name']);
             if ($liteTemplate['engine']) {
                 $myLiteTemplate->setEnginePath($templateFile);
             }
             if ($liteTemplate['broker']) {
                 $myLiteTemplate->setBrokerPath($templateFile);
             }
             $templatesList[$liteTemplate['name']] = $myLiteTemplate;
         } else {
             $enginePath = $templatesList[$liteTemplate['name']]->getEnginePath();
             if ($liteTemplate['engine'] && empty($enginePath)) {
                 $templatesList[$liteTemplate['name']]->setEnginePath($templateFile);
             }
             $brokerPath = $templatesList[$liteTemplate['name']]->getBrokerPath();
             if ($liteTemplate['broker']) {
                 $templatesList[$liteTemplate['name']]->setBrokerPath($templateFile);
             }
         }
         unset($liteTemplate);
     }
     return $templatesList;
 }
示例#2
0
 public function testToFullTemplate()
 {
     $templatePath = CENTREON_PATH . $this->dataPath;
     $myTestLiteTemplate = new LiteTemplate('myTestLiteTemplate', $templatePath, $templatePath);
     $this->assertInstanceOf('\\CentreonConfiguration\\Internal\\Poller\\Template', $myTestLiteTemplate->toFullTemplate());
 }