Revert "Revert "BUG-1425: Integrated new Binding to Normalized Node codec for write...
[controller.git] / opendaylight / md-sal / sal-binding-broker / src / main / java / org / opendaylight / controller / config / yang / md / sal / binding / impl / BindingAsyncDataBrokerImplModule.java
1 package org.opendaylight.controller.config.yang.md.sal.binding.impl;
2
3 import java.util.Collection;
4 import java.util.Collections;
5 import org.opendaylight.controller.md.sal.binding.impl.BindingToNormalizedNodeCodec;
6 import org.opendaylight.controller.md.sal.binding.impl.ForwardedBindingDataBroker;
7 import org.opendaylight.controller.md.sal.dom.api.DOMDataBroker;
8 import org.opendaylight.controller.sal.core.api.Broker;
9 import org.opendaylight.controller.sal.core.api.Broker.ProviderSession;
10 import org.opendaylight.controller.sal.core.api.Provider;
11 import org.opendaylight.controller.sal.core.api.model.SchemaService;
12
13 public class BindingAsyncDataBrokerImplModule extends
14         org.opendaylight.controller.config.yang.md.sal.binding.impl.AbstractBindingAsyncDataBrokerImplModule implements
15         Provider {
16
17     public BindingAsyncDataBrokerImplModule(final org.opendaylight.controller.config.api.ModuleIdentifier identifier,
18             final org.opendaylight.controller.config.api.DependencyResolver dependencyResolver) {
19         super(identifier, dependencyResolver);
20     }
21
22     public BindingAsyncDataBrokerImplModule(
23             final org.opendaylight.controller.config.api.ModuleIdentifier identifier,
24             final org.opendaylight.controller.config.api.DependencyResolver dependencyResolver,
25             final org.opendaylight.controller.config.yang.md.sal.binding.impl.BindingAsyncDataBrokerImplModule oldModule,
26             final java.lang.AutoCloseable oldInstance) {
27         super(identifier, dependencyResolver, oldModule, oldInstance);
28     }
29
30     @Override
31     public void customValidation() {
32         // add custom validation form module attributes here.
33     }
34
35     @Override
36     public java.lang.AutoCloseable createInstance() {
37         Broker domBroker = getDomAsyncBrokerDependency();
38         BindingToNormalizedNodeCodec mappingService = getBindingMappingServiceDependency();
39
40         // FIXME: Switch this to DOM Broker registration which would not require
41         // BundleContext when API are updated.
42         ProviderSession session = domBroker.registerProvider(this, null);
43         DOMDataBroker domDataBroker = session.getService(DOMDataBroker.class);
44         SchemaService schemaService = session.getService(SchemaService.class);
45         return new ForwardedBindingDataBroker(domDataBroker, mappingService, schemaService);
46     }
47
48
49
50
51
52     @Override
53     public Collection<ProviderFunctionality> getProviderFunctionality() {
54         return Collections.emptySet();
55     }
56
57     @Override
58     public void onSessionInitiated(final ProviderSession arg0) {
59         // intentional NOOP
60     }
61
62 }