2 * Copyright (c) 2014 Cisco Systems, Inc. and others. All rights reserved.
4 * This program and the accompanying materials are made available under the
5 * terms of the Eclipse Public License v1.0 which accompanies this distribution,
6 * and is available at http://www.eclipse.org/legal/epl-v10.html
11 * Generated from: yang module name: opendaylight-sal-binding-broker-impl yang module local name: binding-broker-impl
12 * Generated by: org.opendaylight.controller.config.yangjmxgenerator.plugin.JMXGenerator
13 * Generated at: Wed Nov 20 17:33:01 CET 2013
15 * Do not modify this file unless it is present under src/main directory
17 package org.opendaylight.controller.config.yang.md.sal.binding.impl;
19 import org.opendaylight.controller.sal.binding.codegen.impl.SingletonHolder;
20 import org.opendaylight.controller.sal.binding.impl.RootBindingAwareBroker;
21 import org.opendaylight.controller.sal.binding.impl.RpcProviderRegistryImpl;
22 import org.opendaylight.controller.sal.binding.impl.forward.DomForwardedBindingBrokerImpl;
23 import org.opendaylight.controller.sal.binding.impl.forward.DomForwardingUtils;
28 public final class BindingBrokerImplModule extends
29 org.opendaylight.controller.config.yang.md.sal.binding.impl.AbstractBindingBrokerImplModule {
31 public BindingBrokerImplModule(final org.opendaylight.controller.config.api.ModuleIdentifier identifier,
32 final org.opendaylight.controller.config.api.DependencyResolver dependencyResolver) {
33 super(identifier, dependencyResolver);
36 public BindingBrokerImplModule(final org.opendaylight.controller.config.api.ModuleIdentifier identifier,
37 final org.opendaylight.controller.config.api.DependencyResolver dependencyResolver,
38 final BindingBrokerImplModule oldModule, final java.lang.AutoCloseable oldInstance) {
39 super(identifier, dependencyResolver, oldModule, oldInstance);
43 public void validate() {
48 public java.lang.AutoCloseable createInstance() {
50 RootBindingAwareBroker broker;
51 if (DomForwardingUtils.isDomForwardedBroker(getDataBrokerDependency())) {
52 broker = createForwardedBroker();
54 broker = createStandaloneBroker();
60 private RootBindingAwareBroker createStandaloneBroker() {
61 RootBindingAwareBroker broker = new RootBindingAwareBroker(getIdentifier().getInstanceName());
63 broker.setLegacyDataBroker(getDataBrokerDependency());
64 broker.setNotificationBroker(getNotificationServiceDependency());
65 broker.setRpcBroker(new RpcProviderRegistryImpl(broker.getIdentifier()));
66 broker.setDataBroker(getRootDataBrokerDependency());
70 private RootBindingAwareBroker createForwardedBroker() {
71 DomForwardedBindingBrokerImpl broker = new DomForwardedBindingBrokerImpl(getIdentifier().getInstanceName());
73 broker.setLegacyDataBroker(getDataBrokerDependency());
74 broker.setNotificationBroker(getNotificationServiceDependency());
75 broker.setRpcBroker(new RpcProviderRegistryImpl(broker.getIdentifier()));
77 broker.getMountManager().setDataCommitExecutor(SingletonHolder.getDefaultCommitExecutor());
78 broker.getMountManager().setNotificationExecutor(SingletonHolder.getDefaultNotificationExecutor());
80 broker.setDataBroker(getRootDataBrokerDependency());
81 DomForwardingUtils.reuseForwardingFrom(broker, broker.getDataBroker());
82 broker.startForwarding();