Bug 8342: Add info logging to ConfigManagerActivator
[controller.git] / opendaylight / config / config-manager / src / main / java / org / opendaylight / controller / config / manager / impl / osgi / ConfigManagerActivator.java
index a5d77eabe014bc60ca5ecf162f41ac7e8ea4dbe2..eba7ad1a05314b572081fdd41c98b541f11f220c 100644 (file)
@@ -51,6 +51,7 @@ public class ConfigManagerActivator implements BundleActivator, SynchronousBundl
 
     @Override
     public void start(final BundleContext context) {
+        LOG.info("Config manager starting...");
         try {
             // the inner strategy is backed by thread context cl?
             final ModuleInfoBackedContext moduleInfoBackedContext = ModuleInfoBackedContext.create();
@@ -58,15 +59,16 @@ public class ConfigManagerActivator implements BundleActivator, SynchronousBundl
             final BindingContextProvider bindingContextProvider = new BindingContextProvider();
 
             final RefreshingSCPModuleInfoRegistry moduleInfoRegistryWrapper = new RefreshingSCPModuleInfoRegistry(
-                    moduleInfoBackedContext, moduleInfoBackedContext, moduleInfoBackedContext, moduleInfoBackedContext, bindingContextProvider, context);
+                    moduleInfoBackedContext, moduleInfoBackedContext, moduleInfoBackedContext, moduleInfoBackedContext,
+                    bindingContextProvider, context);
 
-            final ModuleInfoBundleTracker moduleInfoBundleTracker = new ModuleInfoBundleTracker(context, moduleInfoRegistryWrapper);
+            final ModuleInfoBundleTracker moduleInfoBundleTracker = new ModuleInfoBundleTracker(moduleInfoRegistryWrapper);
 
             // start config registry
-            final BundleContextBackedModuleFactoriesResolver bundleContextBackedModuleFactoriesResolver = new BundleContextBackedModuleFactoriesResolver(
-                    context);
-            this.configRegistry = new ConfigRegistryImpl(bundleContextBackedModuleFactoriesResolver, this.configMBeanServer,
-                    bindingContextProvider);
+            final BundleContextBackedModuleFactoriesResolver bundleContextBackedModuleFactoriesResolver =
+                    new BundleContextBackedModuleFactoriesResolver(context);
+            this.configRegistry = new ConfigRegistryImpl(bundleContextBackedModuleFactoriesResolver,
+                this.configMBeanServer, bindingContextProvider);
 
             // track bundles containing factories
             final BlankTransactionServiceTracker blankTransactionServiceTracker = new BlankTransactionServiceTracker(
@@ -89,11 +91,14 @@ public class ConfigManagerActivator implements BundleActivator, SynchronousBundl
                     new JMXNotifierConfigRegistry(this.configRegistry, this.configMBeanServer);
 
             // register config registry to OSGi
-            final AutoCloseable clsReg = OsgiRegistrationUtil.registerService(context, moduleInfoBackedContext, ClassLoadingStrategy.class);
-            final AutoCloseable configRegReg = OsgiRegistrationUtil.registerService(context, notifyingConfigRegistry, ConfigRegistry.class);
+            final AutoCloseable clsReg = OsgiRegistrationUtil.registerService(context, moduleInfoBackedContext,
+                ClassLoadingStrategy.class);
+            final AutoCloseable configRegReg = OsgiRegistrationUtil.registerService(context, notifyingConfigRegistry,
+                ConfigRegistry.class);
 
             // register config registry to jmx
-            final ConfigRegistryJMXRegistrator configRegistryJMXRegistrator = new ConfigRegistryJMXRegistrator(this.configMBeanServer);
+            final ConfigRegistryJMXRegistrator configRegistryJMXRegistrator =
+                    new ConfigRegistryJMXRegistrator(this.configMBeanServer);
             try {
                 configRegistryJMXRegistrator.registerToJMXNoNotifications(this.configRegistry);
             } catch (final InstanceAlreadyExistsException e) {
@@ -102,7 +107,8 @@ public class ConfigManagerActivator implements BundleActivator, SynchronousBundl
             }
 
             // register config registry to jmx
-            final ConfigRegistryJMXRegistrator configRegistryJMXRegistratorWithNotifications = new ConfigRegistryJMXRegistrator(this.configMBeanServer);
+            final ConfigRegistryJMXRegistrator configRegistryJMXRegistratorWithNotifications =
+                    new ConfigRegistryJMXRegistrator(this.configMBeanServer);
             try {
                 configRegistryJMXRegistrator.registerToJMX(notifyingConfigRegistry);
             } catch (final InstanceAlreadyExistsException e) {
@@ -112,31 +118,36 @@ public class ConfigManagerActivator implements BundleActivator, SynchronousBundl
             }
 
             // TODO wire directly via moduleInfoBundleTracker
-            final ServiceTracker<ModuleFactory, Object> serviceTracker = new ServiceTracker<>(context, ModuleFactory.class,
-                    blankTransactionServiceTracker);
+            final ServiceTracker<ModuleFactory, Object> serviceTracker = new ServiceTracker<>(context,
+                    ModuleFactory.class, blankTransactionServiceTracker);
             serviceTracker.open();
 
-            final AutoCloseable configMgrReg = OsgiRegistrationUtil.registerService(context, this, ConfigSystemService.class);
+            final AutoCloseable configMgrReg = OsgiRegistrationUtil.registerService(context, this,
+                ConfigSystemService.class);
 
             final List<AutoCloseable> list = Arrays.asList(bindingContextProvider, clsReg,
                     OsgiRegistrationUtil.wrap(moduleFactoryBundleTracker), moduleInfoBundleTracker,
                     configRegReg, configRegistryJMXRegistrator, configRegistryJMXRegistratorWithNotifications,
-                    OsgiRegistrationUtil.wrap(serviceTracker), moduleInfoRegistryWrapper, notifyingConfigRegistry, configMgrReg);
+                    OsgiRegistrationUtil.wrap(serviceTracker), moduleInfoRegistryWrapper, notifyingConfigRegistry,
+                    configMgrReg);
             this.autoCloseable = OsgiRegistrationUtil.aggregate(list);
 
             context.addBundleListener(this);
         } catch(final Exception e) {
-            LOG.warn("Error starting config manager", e);
+            LOG.error("Error starting config manager", e);
         } catch(final Error e) {
             // Log JVM Error and re-throw. The OSGi container may silently fail the bundle and not always log
             // the exception. This has been seen on initial feature install.
             LOG.error("Error starting config manager", e);
             throw e;
         }
+
+        LOG.info("Config manager start complete");
     }
 
     @Override
     public void stop(final BundleContext context) throws Exception {
+        LOG.info("Config manager stopping");
         context.removeBundleListener(this);
         this.autoCloseable.close();
     }