+++ /dev/null
-/*
- * Copyright (c) 2014 Cisco Systems, Inc. and others. All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * 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;
-
-import java.util.concurrent.ExecutorService;
-
-import org.opendaylight.controller.sal.binding.codegen.impl.SingletonHolder;
-import org.opendaylight.controller.sal.binding.impl.RootDataBrokerImpl;
-import org.opendaylight.controller.sal.binding.impl.connect.dom.BindingDomConnectorDeployer;
-import org.opendaylight.controller.sal.binding.impl.connect.dom.BindingIndependentConnector;
-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;
-
-/**
-*
-*/
-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;
- }
-
-}