3d0e4deb6544f63c9b1eb4495320672e7c161797
[controller.git] / opendaylight / md-sal / sal-binding-broker / src / main / java / org / opendaylight / controller / sal / binding / impl / forward / DomForwardedDataBrokerImpl.java
1 /*
2  * Copyright (c) 2014 Cisco Systems, Inc. and others.  All rights reserved.
3  *
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
7  */
8 package org.opendaylight.controller.sal.binding.impl.forward;
9
10 import java.util.Collection;
11 import java.util.Collections;
12
13 import org.opendaylight.controller.sal.binding.impl.RootDataBrokerImpl;
14 import org.opendaylight.controller.sal.binding.impl.connect.dom.BindingDomConnectorDeployer;
15 import org.opendaylight.controller.sal.binding.impl.connect.dom.BindingIndependentConnector;
16 import org.opendaylight.controller.sal.core.api.Provider;
17 import org.opendaylight.controller.sal.core.api.Broker.ProviderSession;
18
19 public class DomForwardedDataBrokerImpl extends RootDataBrokerImpl implements Provider, DomForwardedBroker {
20
21     private BindingIndependentConnector connector;
22     private ProviderSession domProviderContext;
23
24     public void setConnector(BindingIndependentConnector connector) {
25         this.connector = connector;
26     }
27
28     @Override
29     public void onSessionInitiated(ProviderSession session) {
30         this.setDomProviderContext(session);
31     }
32
33     @Override
34     public Collection<ProviderFunctionality> getProviderFunctionality() {
35         return Collections.emptySet();
36     }
37
38     @Override
39     public BindingIndependentConnector getConnector() {
40         return connector;
41     }
42
43     @Override
44     public ProviderSession getDomProviderContext() {
45         return domProviderContext;
46     }
47
48     public void setDomProviderContext(ProviderSession domProviderContext) {
49         this.domProviderContext = domProviderContext;
50     }
51
52     @Override
53     public void startForwarding() {
54         BindingDomConnectorDeployer.startDataForwarding(getConnector(), this, getDomProviderContext());
55     }
56 }