8b6f589c453b2d75ea1ebc8d12600db2b816412e
[hc2vpp.git] /
1 package org.opendaylight.yang.gen.v1.urn.honeycomb.params.xml.ns.yang.vpp.data.init.rev160407;
2
3 import io.fd.honeycomb.v3po.data.ModifiableDataTree;
4 import io.fd.honeycomb.v3po.translate.read.ReaderRegistry;
5 import io.fd.honeycomb.v3po.vpp.data.init.DataTreeInitializer;
6 import io.fd.honeycomb.v3po.vpp.data.init.InitializerRegistry;
7 import io.fd.honeycomb.v3po.vpp.data.init.InitializerRegistryImpl;
8 import io.fd.honeycomb.v3po.vpp.data.init.VppInitializer;
9 import java.util.Collections;
10 import org.opendaylight.yangtools.binding.data.codec.api.BindingNormalizedNodeSerializer;
11 import org.slf4j.Logger;
12 import org.slf4j.LoggerFactory;
13
14 public class VppConfigurationInitializerModule extends
15         org.opendaylight.yang.gen.v1.urn.honeycomb.params.xml.ns.yang.vpp.data.init.rev160407.AbstractVppConfigurationInitializerModule {
16
17     private static final Logger LOG = LoggerFactory.getLogger(VppConfigurationInitializerModule.class);
18
19     public VppConfigurationInitializerModule(org.opendaylight.controller.config.api.ModuleIdentifier identifier,
20                                              org.opendaylight.controller.config.api.DependencyResolver dependencyResolver) {
21         super(identifier, dependencyResolver);
22     }
23
24     public VppConfigurationInitializerModule(org.opendaylight.controller.config.api.ModuleIdentifier identifier,
25                                              org.opendaylight.controller.config.api.DependencyResolver dependencyResolver,
26                                              org.opendaylight.yang.gen.v1.urn.honeycomb.params.xml.ns.yang.vpp.data.init.rev160407.VppConfigurationInitializerModule oldModule,
27                                              java.lang.AutoCloseable oldInstance) {
28         super(identifier, dependencyResolver, oldModule, oldInstance);
29     }
30
31     @Override
32     public void customValidation() {
33         // add custom validation form module attributes here.
34     }
35
36     @Override
37     public java.lang.AutoCloseable createInstance() {
38         LOG.info("VppConfigurationInitializerModule.createInstance()");
39         final ReaderRegistry readerRegistry = getReaderRegistryDependency();
40         final ModifiableDataTree configDataTree = getConfigDataTreeDependency();
41         final BindingNormalizedNodeSerializer serializer = getSerializerDependency();
42
43         // TODO make configurable
44         final VppInitializer vppInitializer =
45                 new VppInitializer(readerRegistry, configDataTree, serializer);
46
47         final InitializerRegistry initializer =
48                 new InitializerRegistryImpl(Collections.<DataTreeInitializer>singletonList(vppInitializer));
49
50         try {
51             initializer.initialize();
52         } catch (Exception e) {
53             LOG.warn("Failed to initialize config", e);
54         }
55
56         return initializer;
57     }
58
59 }