4 * Generated from: yang module name: toaster-provider-impl yang module local name: toaster-provider-impl
5 * Generated by: org.opendaylight.controller.config.yangjmxgenerator.plugin.JMXGenerator
6 * Generated at: Wed Feb 05 11:05:32 CET 2014
8 * Do not modify this file unless it is present under src/main directory
10 package org.opendaylight.controller.config.yang.config.toaster_provider.impl;
12 import org.opendaylight.controller.sal.binding.api.BindingAwareBroker;
13 import org.opendaylight.controller.sample.toaster.provider.OpendaylightToaster;
14 import org.opendaylight.yang.gen.v1.http.netconfcentral.org.ns.toaster.rev091120.Toaster;
15 import org.opendaylight.yang.gen.v1.http.netconfcentral.org.ns.toaster.rev091120.ToasterData;
16 import org.opendaylight.yang.gen.v1.http.netconfcentral.org.ns.toaster.rev091120.ToasterService;
21 public final class ToasterProviderModule extends org.opendaylight.controller.config.yang.config.toaster_provider.impl.AbstractToasterProviderModule
24 public ToasterProviderModule(org.opendaylight.controller.config.api.ModuleIdentifier identifier, org.opendaylight.controller.config.api.DependencyResolver dependencyResolver) {
25 super(identifier, dependencyResolver);
28 public ToasterProviderModule(org.opendaylight.controller.config.api.ModuleIdentifier identifier, org.opendaylight.controller.config.api.DependencyResolver dependencyResolver,
29 ToasterProviderModule oldModule, java.lang.AutoCloseable oldInstance) {
31 super(identifier, dependencyResolver, oldModule, oldInstance);
35 protected void customValidation() {
36 // No need to validate dependencies, since all dependencies have mandatory true flag in yang
37 // config-subsystem will perform the validation for dependencies
41 public java.lang.AutoCloseable createInstance() {
42 final OpendaylightToaster opendaylightToaster = new OpendaylightToaster();
45 opendaylightToaster.setNotificationProvider(getNotificationServiceDependency());
46 final BindingAwareBroker.RpcRegistration<ToasterService> rpcRegistration = getRpcRegistryDependency()
47 .addRpcImplementation(ToasterService.class, opendaylightToaster);
49 // Register runtimeBean for toaster statistics via JMX
50 final ToasterProviderRuntimeRegistration runtimeReg = getRootRuntimeBeanRegistratorWrapper().register(
53 // Wrap toaster as AutoCloseable and close registrations to md-sal at
55 final class AutoCloseableToaster implements AutoCloseable, ToasterData {
58 public void close() throws Exception {
59 rpcRegistration.close();
64 public Toaster getToaster() {
65 return opendaylightToaster.getToaster();
69 return new AutoCloseableToaster();