コード例 #1
0
ファイル: Aggregator.php プロジェクト: hukumonline/yii
 /**
  * Returns a list of entities with metadata
  */
 public function getSources()
 {
     $sourcesDef = $this->aConfig->getArray('sources');
     try {
         $sources = SimpleSAML_Metadata_MetaDataStorageSource::parseSources($sourcesDef);
     } catch (Exception $e) {
         throw new Exception('Invalid aggregator source configuration for aggregator ' . var_export($id, TRUE) . ': ' . $e->getMessage());
     }
     #echo $exclude; exit;
     /* Find list of all available entities. */
     $entities = array();
     #echo '<pre>'; print_r($this->sets); exit;
     foreach ($sources as $source) {
         foreach ($this->sets as $set) {
             foreach ($source->getMetadataSet($set) as $entityId => $metadata) {
                 if (isset($metadata['tags']) && count(array_intersect($this->excludeTags, $metadata['tags'])) > 0) {
                     SimpleSAML_Logger::debug('Excluding entity ID [' . $entityId . '] becuase it is tagged with one of [' . var_export($this->excludeTags, TRUE) . ']');
                     continue;
                 } else {
                     #echo('<pre>'); print_r($metadata); exit;
                 }
                 if (!array_key_exists($entityId, $entities)) {
                     $entities[$entityId] = array();
                 }
                 if (array_key_exists($set, $entities[$entityId])) {
                     /* Entity already has metadata for the given set. */
                     continue;
                 }
                 $entities[$entityId][$set] = $metadata;
             }
         }
     }
     return $entities;
 }
コード例 #2
0
 /**
  * This constructor initializes this metadata storage handler. It will load and
  * parse the configuration, and initialize the metadata source list.
  */
 protected function __construct()
 {
     $config = SimpleSAML_Configuration::getInstance();
     $sourcesConfig = $config->getArray('metadata.sources', null);
     // for backwards compatibility, and to provide a default configuration
     if ($sourcesConfig === null) {
         $type = $config->getString('metadata.handler', 'flatfile');
         $sourcesConfig = array(array('type' => $type));
     }
     try {
         $this->sources = SimpleSAML_Metadata_MetaDataStorageSource::parseSources($sourcesConfig);
     } catch (Exception $e) {
         throw new Exception("Invalid configuration of the 'metadata.sources' configuration option: " . $e->getMessage());
     }
 }