You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@karaf.apache.org by jb...@apache.org on 2012/04/18 17:06:30 UTC
svn commit: r1327536 - in /karaf/cellar/branches/cellar-2.2.x:
hazelcast/src/main/java/org/apache/karaf/cellar/hazelcast/
hazelcast/src/main/resources/OSGI-INF/blueprint/
shell/src/main/java/org/apache/karaf/cellar/shell/group/
Author: jbonofre
Date: Wed Apr 18 15:06:30 2012
New Revision: 1327536
URL: http://svn.apache.org/viewvc?rev=1327536&view=rev
Log:
[KARAF-1236] Update the group members while destroying the group manager
Modified:
karaf/cellar/branches/cellar-2.2.x/hazelcast/src/main/java/org/apache/karaf/cellar/hazelcast/CellarMembershipListener.java
karaf/cellar/branches/cellar-2.2.x/hazelcast/src/main/java/org/apache/karaf/cellar/hazelcast/HazelcastGroupManager.java
karaf/cellar/branches/cellar-2.2.x/hazelcast/src/main/resources/OSGI-INF/blueprint/blueprint.xml
karaf/cellar/branches/cellar-2.2.x/shell/src/main/java/org/apache/karaf/cellar/shell/group/GroupSupport.java
Modified: karaf/cellar/branches/cellar-2.2.x/hazelcast/src/main/java/org/apache/karaf/cellar/hazelcast/CellarMembershipListener.java
URL: http://svn.apache.org/viewvc/karaf/cellar/branches/cellar-2.2.x/hazelcast/src/main/java/org/apache/karaf/cellar/hazelcast/CellarMembershipListener.java?rev=1327536&r1=1327535&r2=1327536&view=diff
==============================================================================
--- karaf/cellar/branches/cellar-2.2.x/hazelcast/src/main/java/org/apache/karaf/cellar/hazelcast/CellarMembershipListener.java (original)
+++ karaf/cellar/branches/cellar-2.2.x/hazelcast/src/main/java/org/apache/karaf/cellar/hazelcast/CellarMembershipListener.java Wed Apr 18 15:06:30 2012
@@ -67,7 +67,7 @@ public class CellarMembershipListener ex
}
public void memberRemoved(MembershipEvent membershipEvent) {
-
+ // nothing to do
}
public GroupManager getGroupManager() {
Modified: karaf/cellar/branches/cellar-2.2.x/hazelcast/src/main/java/org/apache/karaf/cellar/hazelcast/HazelcastGroupManager.java
URL: http://svn.apache.org/viewvc/karaf/cellar/branches/cellar-2.2.x/hazelcast/src/main/java/org/apache/karaf/cellar/hazelcast/HazelcastGroupManager.java?rev=1327536&r1=1327535&r2=1327536&view=diff
==============================================================================
--- karaf/cellar/branches/cellar-2.2.x/hazelcast/src/main/java/org/apache/karaf/cellar/hazelcast/HazelcastGroupManager.java (original)
+++ karaf/cellar/branches/cellar-2.2.x/hazelcast/src/main/java/org/apache/karaf/cellar/hazelcast/HazelcastGroupManager.java Wed Apr 18 15:06:30 2012
@@ -76,10 +76,10 @@ public class HazelcastGroupManager imple
private CombinedClassLoader combinedClassLoader;
public void init() {
- //Create a listener for group configuration.
+ // create a listener for group configuration.
IMap groupConfiguration = instance.getMap(GROUPS_CONFIG);
- groupConfiguration.addEntryListener(this,true);
- //Add group to configuration
+ groupConfiguration.addEntryListener(this, true);
+ // add group to configuration
try {
Configuration configuration = configurationAdmin.getConfiguration(Configurations.NODE);
if (configuration != null) {
@@ -102,7 +102,16 @@ public class HazelcastGroupManager imple
}
public void destroy() {
- for(Map.Entry<String,EventConsumer> consumerEntry:groupConsumer.entrySet()) {
+ // update the group
+ Node local = this.getNode();
+ Set<Group> groups = this.listGroups(local);
+ for (Group group : groups) {
+ String groupName = group.getName();
+ group.getNodes().remove(local);
+ listGroups().put(groupName, group);
+ }
+ // shutdown the group consumer/producers
+ for (Map.Entry<String,EventConsumer> consumerEntry : groupConsumer.entrySet()) {
EventConsumer consumer = consumerEntry.getValue();
consumer.stop();
}
Modified: karaf/cellar/branches/cellar-2.2.x/hazelcast/src/main/resources/OSGI-INF/blueprint/blueprint.xml
URL: http://svn.apache.org/viewvc/karaf/cellar/branches/cellar-2.2.x/hazelcast/src/main/resources/OSGI-INF/blueprint/blueprint.xml?rev=1327536&r1=1327535&r2=1327536&view=diff
==============================================================================
--- karaf/cellar/branches/cellar-2.2.x/hazelcast/src/main/resources/OSGI-INF/blueprint/blueprint.xml (original)
+++ karaf/cellar/branches/cellar-2.2.x/hazelcast/src/main/resources/OSGI-INF/blueprint/blueprint.xml Wed Apr 18 15:06:30 2012
@@ -73,7 +73,6 @@
<bean id="combinedClassLoader" class="org.apache.karaf.cellar.core.utils.CombinedClassLoader" init-method="init"
destroy-method="destroy"/>
-
<!-- Hazelcast Cluster and Node -->
<bean id="node" factory-ref="clusterManager" factory-method="getNode"/>
Modified: karaf/cellar/branches/cellar-2.2.x/shell/src/main/java/org/apache/karaf/cellar/shell/group/GroupSupport.java
URL: http://svn.apache.org/viewvc/karaf/cellar/branches/cellar-2.2.x/shell/src/main/java/org/apache/karaf/cellar/shell/group/GroupSupport.java?rev=1327536&r1=1327535&r2=1327536&view=diff
==============================================================================
--- karaf/cellar/branches/cellar-2.2.x/shell/src/main/java/org/apache/karaf/cellar/shell/group/GroupSupport.java (original)
+++ karaf/cellar/branches/cellar-2.2.x/shell/src/main/java/org/apache/karaf/cellar/shell/group/GroupSupport.java Wed Apr 18 15:06:30 2012
@@ -82,12 +82,12 @@ public abstract class GroupSupport exten
if (result != null && result.getGroups() != null) {
for (Group g : result.getGroups()) {
if (g.getNodes() != null && !g.getNodes().isEmpty()) {
- for (Node memeber : g.getNodes()) {
+ for (Node member : g.getNodes()) {
String name = g.getName();
String mark = " ";
- if (memeber.equals(clusterManager.getNode()))
+ if (member.equals(clusterManager.getNode()))
mark = "*";
- System.out.println(String.format(OUTPUT_FORMAT, mark, memeber.getId(), name));
+ System.out.println(String.format(OUTPUT_FORMAT, mark, member.getId(), name));
}
} else System.out.println(String.format(OUTPUT_FORMAT, "", "", g.getName()));
}