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