X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-binding-broker%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fconfig%2Fyang%2Fmd%2Fsal%2Fbinding%2Fimpl%2FDataBrokerImplModule.java;h=4a4e8000781381f906888369a8db0ac6b683e525;hp=7357926b9e6226a612bd0fc453dc28b737cff5b8;hb=c46e223995956f1f759c551163c212947c1e2fb7;hpb=12fa7a97a6a83f2f0ca3cf6bd57e97a2d672f2e7 diff --git a/opendaylight/md-sal/sal-binding-broker/src/main/java/org/opendaylight/controller/config/yang/md/sal/binding/impl/DataBrokerImplModule.java b/opendaylight/md-sal/sal-binding-broker/src/main/java/org/opendaylight/controller/config/yang/md/sal/binding/impl/DataBrokerImplModule.java index 7357926b9e..4a4e800078 100644 --- a/opendaylight/md-sal/sal-binding-broker/src/main/java/org/opendaylight/controller/config/yang/md/sal/binding/impl/DataBrokerImplModule.java +++ b/opendaylight/md-sal/sal-binding-broker/src/main/java/org/opendaylight/controller/config/yang/md/sal/binding/impl/DataBrokerImplModule.java @@ -5,8 +5,8 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.controller.config.yang.md.sal.binding.impl; - +package org.opendaylight.controller.config.yang.md.sal.binding.impl; + import java.util.concurrent.ExecutorService; import org.opendaylight.controller.sal.binding.codegen.impl.SingletonHolder; @@ -16,85 +16,64 @@ import org.opendaylight.controller.sal.binding.impl.connect.dom.BindingIndepende import org.opendaylight.controller.sal.binding.impl.forward.DomForwardedDataBrokerImpl; import org.opendaylight.controller.sal.core.api.Broker.ProviderSession; import org.opendaylight.yangtools.yang.data.impl.codec.BindingIndependentMappingService; -import org.osgi.framework.BundleContext; -import org.osgi.framework.ServiceReference; - -/** -* -*/ -public final class DataBrokerImplModule extends - org.opendaylight.controller.config.yang.md.sal.binding.impl.AbstractDataBrokerImplModule { - - private BundleContext bundleContext; - - public DataBrokerImplModule(org.opendaylight.controller.config.api.ModuleIdentifier identifier, - org.opendaylight.controller.config.api.DependencyResolver dependencyResolver) { - super(identifier, dependencyResolver); - } - - public DataBrokerImplModule(org.opendaylight.controller.config.api.ModuleIdentifier identifier, - org.opendaylight.controller.config.api.DependencyResolver dependencyResolver, - DataBrokerImplModule oldModule, java.lang.AutoCloseable oldInstance) { - super(identifier, dependencyResolver, oldModule, oldInstance); - } - - @Override - public void validate() { - super.validate(); - } - - @Override - public java.lang.AutoCloseable createInstance() { - RootDataBrokerImpl dataBindingBroker; - - - ExecutorService listeningExecutor = SingletonHolder.getDefaultCommitExecutor(); - BindingIndependentMappingService potentialMapping = resolveMappingServiceDependency(); - if (getDomBrokerDependency() != null && potentialMapping != null) { - - dataBindingBroker = createDomConnectedBroker(listeningExecutor,potentialMapping); - } else { - dataBindingBroker = createStandAloneBroker(listeningExecutor); - } - dataBindingBroker.registerRuntimeBean(getRootRuntimeBeanRegistratorWrapper()); - dataBindingBroker.setNotificationExecutor(SingletonHolder.getDefaultChangeEventExecutor()); - return dataBindingBroker; - } - private BindingIndependentMappingService resolveMappingServiceDependency() { - if(getMappingService() != null) { - return getMappingServiceDependency(); - } - - ServiceReference potentialMappingService = bundleContext.getServiceReference(BindingIndependentMappingService.class); - if(potentialMappingService != null) { - return bundleContext.getService(potentialMappingService); - } - return null; - } - - private RootDataBrokerImpl createStandAloneBroker(ExecutorService listeningExecutor) { - RootDataBrokerImpl broker = new RootDataBrokerImpl(); - broker.setExecutor(listeningExecutor); - return broker; - } - - private RootDataBrokerImpl createDomConnectedBroker(ExecutorService listeningExecutor, BindingIndependentMappingService mappingService) { - DomForwardedDataBrokerImpl forwardedBroker = new DomForwardedDataBrokerImpl(); - forwardedBroker.setExecutor(listeningExecutor); - BindingIndependentConnector connector = BindingDomConnectorDeployer.createConnector(mappingService); - getDomBrokerDependency().registerProvider(forwardedBroker, getBundleContext()); - ProviderSession domContext = forwardedBroker.getDomProviderContext(); - forwardedBroker.setConnector(connector); - forwardedBroker.setDomProviderContext(domContext); - forwardedBroker.startForwarding(); - return forwardedBroker; - } - - public BundleContext getBundleContext() { - return bundleContext; - } - - public void setBundleContext(BundleContext bundleContext2) { - this.bundleContext = bundleContext2; - } -} + +/** +* +*/ +public final class DataBrokerImplModule extends + org.opendaylight.controller.config.yang.md.sal.binding.impl.AbstractDataBrokerImplModule { + + public DataBrokerImplModule(final org.opendaylight.controller.config.api.ModuleIdentifier identifier, + final org.opendaylight.controller.config.api.DependencyResolver dependencyResolver) { + super(identifier, dependencyResolver); + } + + public DataBrokerImplModule(final org.opendaylight.controller.config.api.ModuleIdentifier identifier, + final org.opendaylight.controller.config.api.DependencyResolver dependencyResolver, + final DataBrokerImplModule oldModule, final java.lang.AutoCloseable oldInstance) { + super(identifier, dependencyResolver, oldModule, oldInstance); + } + + @Override + public void validate() { + super.validate(); + } + + @Override + public java.lang.AutoCloseable createInstance() { + RootDataBrokerImpl dataBindingBroker; + + + ExecutorService listeningExecutor = SingletonHolder.getDefaultCommitExecutor(); + BindingIndependentMappingService potentialMapping = getMappingServiceDependency(); + if (getDomBrokerDependency() != null && potentialMapping != null) { + + dataBindingBroker = createDomConnectedBroker(listeningExecutor,potentialMapping); + } else { + dataBindingBroker = createStandAloneBroker(listeningExecutor); + } + dataBindingBroker.registerRuntimeBean(getRootRuntimeBeanRegistratorWrapper()); + dataBindingBroker.setNotificationExecutor(SingletonHolder.getDefaultChangeEventExecutor()); + return dataBindingBroker; + } + + + private RootDataBrokerImpl createStandAloneBroker(final ExecutorService listeningExecutor) { + RootDataBrokerImpl broker = new RootDataBrokerImpl(); + broker.setExecutor(listeningExecutor); + return broker; + } + + private RootDataBrokerImpl createDomConnectedBroker(final ExecutorService listeningExecutor, final BindingIndependentMappingService mappingService) { + DomForwardedDataBrokerImpl forwardedBroker = new DomForwardedDataBrokerImpl(); + forwardedBroker.setExecutor(listeningExecutor); + BindingIndependentConnector connector = BindingDomConnectorDeployer.createConnector(mappingService); + getDomBrokerDependency().registerProvider(forwardedBroker, null); + ProviderSession domContext = forwardedBroker.getDomProviderContext(); + forwardedBroker.setConnector(connector); + forwardedBroker.setDomProviderContext(domContext); + forwardedBroker.startForwarding(); + return forwardedBroker; + } + +}