4 * Generated from: yang module name: opendaylight-sal-binding-broker-impl yang module local name: binding-data-broker
\r
5 * Generated by: org.opendaylight.controller.config.yangjmxgenerator.plugin.JMXGenerator
\r
6 * Generated at: Wed Nov 20 17:33:01 CET 2013
\r
8 * Do not modify this file unless it is present under src/main directory
\r
10 package org.opendaylight.controller.config.yang.md.sal.binding.impl;
\r
12 import java.util.concurrent.ExecutorService;
\r
13 import java.util.concurrent.Executors;
\r
14 import java.util.concurrent.ScheduledExecutorService;
\r
16 import org.opendaylight.controller.config.yang.md.sal.binding.statistics.DataBrokerRuntimeMXBeanImpl;
\r
17 import org.opendaylight.controller.md.sal.common.impl.routing.AbstractDataReadRouter;
\r
18 import org.opendaylight.controller.sal.binding.impl.DataBrokerImpl;
\r
19 import org.opendaylight.controller.sal.binding.impl.connect.dom.BindingIndependentDataServiceConnector;
\r
20 import org.opendaylight.controller.sal.binding.impl.connect.dom.BindingIndependentMappingService;
\r
21 import org.opendaylight.controller.sal.core.api.Broker;
\r
22 import org.opendaylight.controller.sal.core.api.data.DataProviderService;
\r
23 import org.opendaylight.yangtools.yang.binding.DataObject;
\r
24 import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
\r
25 import org.osgi.framework.BundleContext;
\r
27 import com.google.common.util.concurrent.MoreExecutors;
\r
32 public final class DataBrokerImplModule extends
\r
33 org.opendaylight.controller.config.yang.md.sal.binding.impl.AbstractDataBrokerImplModule {
\r
35 private BundleContext bundleContext;
\r
37 public DataBrokerImplModule(org.opendaylight.controller.config.api.ModuleIdentifier identifier,
\r
38 org.opendaylight.controller.config.api.DependencyResolver dependencyResolver) {
\r
39 super(identifier, dependencyResolver);
\r
42 public DataBrokerImplModule(org.opendaylight.controller.config.api.ModuleIdentifier identifier,
\r
43 org.opendaylight.controller.config.api.DependencyResolver dependencyResolver,
\r
44 DataBrokerImplModule oldModule, java.lang.AutoCloseable oldInstance) {
\r
45 super(identifier, dependencyResolver, oldModule, oldInstance);
\r
49 public void validate() {
\r
54 public java.lang.AutoCloseable createInstance() {
\r
55 DataBrokerRuntimeMXBeanImpl dataBindingBroker = new DataBrokerRuntimeMXBeanImpl();
\r
57 // FIXME: obtain via dependency management
\r
58 ExecutorService executor = Executors.newCachedThreadPool();
\r
59 ExecutorService listeningExecutor = MoreExecutors.listeningDecorator(executor);
\r
60 dataBindingBroker.setExecutor(listeningExecutor);
\r
62 Broker domBroker = getDomBrokerDependency();
\r
63 BindingIndependentMappingService mappingService = getMappingServiceDependency();
\r
65 if (domBroker != null && mappingService != null) {
\r
66 BindingIndependentDataServiceConnector runtimeMapping = new BindingIndependentDataServiceConnector();
\r
67 runtimeMapping.setMappingService(mappingService);
\r
68 runtimeMapping.setBaDataService(dataBindingBroker);
\r
69 domBroker.registerProvider(runtimeMapping, getBundleContext());
\r
71 getRootRuntimeBeanRegistratorWrapper().register(dataBindingBroker);
\r
72 return dataBindingBroker;
\r
75 public BundleContext getBundleContext() {
\r
76 return bundleContext;
\r
79 public void setBundleContext(BundleContext bundleContext2) {
\r
80 this.bundleContext = bundleContext2;
\r