Repository: karaf-cellar Updated Branches: refs/heads/master 838b9f394 -> 473b65887
[KARAF-4683] Change Cellar Hazelcast server start order Project: http://git-wip-us.apache.org/repos/asf/karaf-cellar/repo Commit: http://git-wip-us.apache.org/repos/asf/karaf-cellar/commit/473b6588 Tree: http://git-wip-us.apache.org/repos/asf/karaf-cellar/tree/473b6588 Diff: http://git-wip-us.apache.org/repos/asf/karaf-cellar/diff/473b6588 Branch: refs/heads/master Commit: 473b658873ea98f2829f62c988e64f4392312c21 Parents: 838b9f3 Author: Jean-Baptiste Onofré <[email protected]> Authored: Wed Sep 7 13:50:00 2016 +0200 Committer: Jean-Baptiste Onofré <[email protected]> Committed: Wed Sep 7 13:50:00 2016 +0200 ---------------------------------------------------------------------- .../hazelcast/internal/osgi/Activator.java | 68 ++++++++++---------- 1 file changed, 34 insertions(+), 34 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/karaf-cellar/blob/473b6588/hazelcast/src/main/java/org/apache/karaf/cellar/hazelcast/internal/osgi/Activator.java ---------------------------------------------------------------------- diff --git a/hazelcast/src/main/java/org/apache/karaf/cellar/hazelcast/internal/osgi/Activator.java b/hazelcast/src/main/java/org/apache/karaf/cellar/hazelcast/internal/osgi/Activator.java index d8b8e17..2ea943d 100644 --- a/hazelcast/src/main/java/org/apache/karaf/cellar/hazelcast/internal/osgi/Activator.java +++ b/hazelcast/src/main/java/org/apache/karaf/cellar/hazelcast/internal/osgi/Activator.java @@ -137,27 +137,11 @@ public class Activator extends BaseActivator implements ManagedService { }); discoveryServiceTracker.open(); - LOGGER.debug("CELLAR HAZELCAST: start the synchronizer service tracker"); - synchronizerServiceTracker = new ServiceTracker<Synchronizer, Synchronizer>(bundleContext, Synchronizer.class, new ServiceTrackerCustomizer<Synchronizer, Synchronizer>() { - @Override - public Synchronizer addingService(ServiceReference<Synchronizer> serviceReference) { - Synchronizer service = bundleContext.getService(serviceReference); - synchronizers.add(service); - return service; - } - - @Override - public void modifiedService(ServiceReference<Synchronizer> serviceReference, Synchronizer synchronizer) { - // nothing to do - } - - @Override - public void removedService(ServiceReference<Synchronizer> serviceReference, Synchronizer synchronizer) { - synchronizers.remove(synchronizer); - bundleContext.ungetService(serviceReference); - } - }); - synchronizerServiceTracker.open(); + LOGGER.debug("CELLAR HAZELCAST: init Cellar extender"); + extender = new CellarExtender(); + extender.setCombinedClassLoader(combinedClassLoader); + extender.setBundleContext(bundleContext); + extender.init(); LOGGER.debug("CELLAR HAZELCAST: init dispatcher"); EventHandlerRegistryDispatcher dispatcher = new EventHandlerRegistryDispatcher(); @@ -220,12 +204,6 @@ public class Activator extends BaseActivator implements ManagedService { membershipListener.setSynchronizers(synchronizers); membershipListener.setGroupManager(groupManager); - LOGGER.debug("CELLAR HAZELCAST: init Cellar extender"); - extender = new CellarExtender(); - extender.setCombinedClassLoader(combinedClassLoader); - extender.setBundleContext(bundleContext); - extender.init(); - Node node = clusterManager.getNode(); LOGGER.debug("CELLAR HAZELCAST: init topic consumer"); @@ -301,6 +279,28 @@ public class Activator extends BaseActivator implements ManagedService { manageGroupResultHandler.setCommandStore(commandStore); register(EventHandler.class, manageGroupResultHandler); + LOGGER.debug("CELLAR HAZELCAST: start the synchronizer service tracker"); + synchronizerServiceTracker = new ServiceTracker<Synchronizer, Synchronizer>(bundleContext, Synchronizer.class, new ServiceTrackerCustomizer<Synchronizer, Synchronizer>() { + @Override + public Synchronizer addingService(ServiceReference<Synchronizer> serviceReference) { + Synchronizer service = bundleContext.getService(serviceReference); + synchronizers.add(service); + return service; + } + + @Override + public void modifiedService(ServiceReference<Synchronizer> serviceReference, Synchronizer synchronizer) { + // nothing to do + } + + @Override + public void removedService(ServiceReference<Synchronizer> serviceReference, Synchronizer synchronizer) { + synchronizers.remove(synchronizer); + bundleContext.ungetService(serviceReference); + } + }); + synchronizerServiceTracker.open(); + LOGGER.debug("CELLAR HAZELCAST: register Cellar Core MBean"); CellarMBeanImpl cellarMBean = new CellarMBeanImpl(); cellarMBean.setBundleContext(bundleContext); @@ -345,6 +345,10 @@ public class Activator extends BaseActivator implements ManagedService { coreMBeanRegistration.unregister(); coreMBeanRegistration = null; } + if (synchronizerServiceTracker != null) { + synchronizerServiceTracker.close(); + synchronizerServiceTracker = null; + } if (groupManager != null) { try { groupManager.destroy(); @@ -365,10 +369,6 @@ public class Activator extends BaseActivator implements ManagedService { discoveryTask.destroy(); discoveryTask = null; } - if (extender != null) { - extender.destroy(); - extender = null; - } if (producer != null) { producer.destroy(); producer = null; @@ -377,9 +377,9 @@ public class Activator extends BaseActivator implements ManagedService { consumer.destroy(); consumer = null; } - if (synchronizerServiceTracker != null) { - synchronizerServiceTracker.close(); - synchronizerServiceTracker = null; + if (extender != null) { + extender.destroy(); + extender = null; } if (discoveryServiceTracker != null) { discoveryServiceTracker.close();
