use of org.opendaylight.controller.config.facade.xml.osgi.YangStoreContext in project controller by opendaylight.
the class ConfigSubsystemFacade method getConfigMapping.
public Config getConfigMapping() {
final YangStoreContext snapshot = yangStoreService.getCurrentSnapshot();
Map<String, Map<String, ModuleConfig>> factories = transformMbeToModuleConfigs(snapshot.getModuleMXBeanEntryMap());
Map<String, Map<Optional<Revision>, IdentityMapping>> identitiesMap = transformIdentities(snapshot.getModules());
return new Config(factories, identitiesMap, snapshot.getEnumResolver());
}
use of org.opendaylight.controller.config.facade.xml.osgi.YangStoreContext in project controller by opendaylight.
the class ConfigSubsystemFacade method get.
public Element get(final Document document) throws DocumentedException {
final ObjectName testTransaction = transactionProvider.getOrCreateReadTransaction();
final ConfigTransactionClient txClient = configRegistryClient.getConfigTransactionClient(testTransaction);
try {
// Runtime beans are not parts of transactions and have to be queried against
// the central registry
final Set<ObjectName> runtimeBeans = configRegistryClient.lookupRuntimeBeans();
final Set<ObjectName> configBeans = Datastore.getInstanceQueryStrategy(Datastore.running, transactionProvider).queryInstances(configRegistryClient);
final Map<String, Map<String, ModuleRuntime>> moduleRuntimes = createModuleRuntimes(configRegistryClient, yangStoreService.getModuleMXBeanEntryMap());
final YangStoreContext yangStoreSnapshot = yangStoreService.getCurrentSnapshot();
final Map<String, Map<String, ModuleConfig>> moduleConfigs = transformMbeToModuleConfigs(txClient, yangStoreSnapshot.getModuleMXBeanEntryMap());
final org.opendaylight.controller.config.facade.xml.runtime.Runtime runtime = new Runtime(moduleRuntimes, moduleConfigs);
return runtime.toXml(runtimeBeans, configBeans, document, yangStoreSnapshot.getEnumResolver());
} finally {
transactionProvider.closeReadTransaction();
}
}
Aggregations