public function load(AbstractMetaModel $environment_metamodel, array $filters = NULL) { LogHelper::log_notice(t('Loading Environment Meta Model from settings.php ...')); $datasourceCount = 0; $configurationDataSources = Environment::getInstance()->getConfigurationSection('Data Sources'); if (isset($configurationDataSources)) { foreach ($configurationDataSources as $namespace => $sourceDataSources) { foreach ($sourceDataSources as $datasourceName => $sourceDataSource) { $datasourceName = NameSpaceHelper::resolveNameSpace($namespace, $datasourceName); $datasource = new DataSourceMetaData(); $datasource->name = $datasourceName; $datasource->initializeFrom($sourceDataSource); // it is possible that configuration contains 'readonly' property. We need to honor it // ... and only when it is not set we mark the data source as read only if (!isset($datasource->readonly)) { $datasource->readonly = TRUE; } $environment_metamodel->registerDataSource($datasource); $datasourceCount++; } } } LogHelper::log_info(t('Processed @datasourceCount data sources', array('@datasourceCount' => $datasourceCount))); }
public static function prepareDataSource(EnvironmentMetaModel $environment_metamodel, $datamartNode) { $datasource = new DataSourceMetaData(); $datasource->name = self::prepareDataSourceName($datamartNode); $datasource->publicName = $datamartNode->title; $datasource->description = get_node_field_value($datamartNode, 'field_datamart_desc'); $datasource->parentName = get_node_field_value($datamartNode, 'field_datamart_parent_sysname'); $datasource->type = get_node_field_value($datamartNode, 'field_datamart_type'); $datasource->readonly = get_node_field_boolean_value($datamartNode, 'field_datamart_readonly'); $datasource->initializeFrom(get_node_field_object_value($datamartNode, 'field_datamart_options')); // datasource system properties $datasource->nid = $datamartNode->nid; // marking as public to prevent the property from being populated from parent data source (which can be private) $datasource->markAsPublic(); $environment_metamodel->registerDataSource($datasource); return $datasource; }
public function load(AbstractMetaModelFactory $factory, AbstractMetaModel $environment_metamodel, array $filters = NULL, $finalAttempt) { LogHelper::log_notice(t('Loading Environment Meta Model from settings.php ...')); $datasourceCount = 0; $configurationDataSources = Environment::getInstance()->getConfigurationSection('Data Sources'); if (isset($configurationDataSources)) { foreach ($configurationDataSources as $namespace => $sourceDataSources) { foreach ($sourceDataSources as $datasourceName => $sourceDataSource) { $datasourceName = NameSpaceHelper::resolveNameSpace($namespace, $datasourceName); $datasource = new DataSourceMetaData(); $datasource->name = $datasourceName; $datasource->system = TRUE; $datasource->readonly = TRUE; $datasource->initializeFrom($sourceDataSource); $environment_metamodel->registerDataSource($datasource); $datasourceCount++; } } } LogHelper::log_info(t('Processed @datasourceCount data sources', array('@datasourceCount' => $datasourceCount))); return self::LOAD_STATE__SUCCESSFUL; }