[jboss-cvs] JBossAS SVN: r107266 - projects/cluster/ha-server-cache-ispn/trunk/src/main/java/org/jboss/ha/framework/server.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Mon Aug 2 11:49:54 EDT 2010
Author: pferraro
Date: 2010-08-02 11:49:54 -0400 (Mon, 02 Aug 2010)
New Revision: 107266
Modified:
projects/cluster/ha-server-cache-ispn/trunk/src/main/java/org/jboss/ha/framework/server/DistributedStateImpl.java
Log:
Fix most compiler warnings. Simplify listener logic, since we only have 1 type of listener now.
Modified: projects/cluster/ha-server-cache-ispn/trunk/src/main/java/org/jboss/ha/framework/server/DistributedStateImpl.java
===================================================================
--- projects/cluster/ha-server-cache-ispn/trunk/src/main/java/org/jboss/ha/framework/server/DistributedStateImpl.java 2010-08-02 15:44:16 UTC (rev 107265)
+++ projects/cluster/ha-server-cache-ispn/trunk/src/main/java/org/jboss/ha/framework/server/DistributedStateImpl.java 2010-08-02 15:49:54 UTC (rev 107266)
@@ -24,7 +24,6 @@
import java.io.Serializable;
import java.util.ArrayList;
import java.util.Collection;
-import java.util.Iterator;
import java.util.LinkedList;
import java.util.List;
import java.util.Set;
@@ -43,7 +42,6 @@
import org.infinispan.notifications.Listener;
import org.infinispan.util.SimpleImmutableEntry;
import org.jboss.ha.framework.server.spi.ManagedDistributedState;
-import org.jboss.logging.Logger;
/**
* This class manages distributed state across the cluster.
@@ -68,40 +66,43 @@
public class DistributedStateImpl
implements ManagedDistributedState
{
- private static final Logger LOG = Logger.getLogger(DistributedStateImpl.class);
- private final ConcurrentHashMap<String, List<Object>> keyListeners = new ConcurrentHashMap<String, List<Object>>();
+ private final ConcurrentHashMap<String, List<DSListener>> keyListeners = new ConcurrentHashMap<String, List<DSListener>>();
private volatile Cache<Serializable, Serializable> cache;
private volatile boolean replAsync;
private volatile InfinispanHAPartitionCacheHandler<Serializable, Serializable> cacheHandler;
- public InfinispanHAPartitionCacheHandler getCacheHandler()
+ public InfinispanHAPartitionCacheHandler<Serializable, Serializable> getCacheHandler()
{
return cacheHandler;
}
- public void setCacheHandler(InfinispanHAPartitionCacheHandler cacheHandler)
+ public void setCacheHandler(InfinispanHAPartitionCacheHandler<Serializable, Serializable> cacheHandler)
{
this.cacheHandler = cacheHandler;
}
// Public --------------------------------------------------------
+ @Override
public void createService() throws Exception
{
}
+ @Override
public void startService() throws Exception
{
this.internalSetClusteredCache(cacheHandler.getCache());
this.cache.addListener(this);
}
+ @Override
public void stopService() throws Exception
{
this.cache.removeListener(this);
}
+ @Override
public void destroyService() throws Exception
{
}
@@ -208,18 +209,18 @@
// this.cache.put(this.buildFqn(category), key, value, Flag.FORCE_SYNCHRONOUS);
// }
//}
- cache.startBatch();
+ this.cache.startBatch();
boolean commit = false;
try
{
- cache.put(buildValueCollectionKey(category, key), value);
- AtomicMap m = getKeysPerCategoryCollection(category);
+ this.cache.put(buildValueCollectionKey(category, key), value);
+ AtomicMap<Serializable, Void> m = getKeysPerCategoryCollection(category);
m.put(key, null);
- // cache.put(category, m); // TODO: need this?
commit = true;
}
- finally {
- cache.endBatch(commit);
+ finally
+ {
+ this.cache.endBatch(commit);
}
}
@@ -265,12 +266,12 @@
try
{
cache.remove(buildValueCollectionKey(category, key));
- AtomicMap m = getKeysPerCategoryCollection(category);
+ AtomicMap<Serializable, Void> m = getKeysPerCategoryCollection(category);
m.remove(key);
- // cache.put(category, m); // TODO: need this?
commit = true;
}
- finally {
+ finally
+ {
cache.endBatch(commit);
}
@@ -302,21 +303,18 @@
{
try
{
- Set keys = cache.keySet();
- if (keys != null && keys.size() > 0)
+ Set<Serializable> keys = this.cache.keySet();
+ if (keys.isEmpty()) return null;
+
+ List<String> categories = new LinkedList<String>();
+ for (Serializable key: keys)
{
- Collection<String> categories = new LinkedList<String>();
- for(Iterator iter = keys.iterator(); iter.hasNext();)
+ if (key instanceof String) // only the keys that are Strings, are categories
{
- Object next = iter.next();
- if (next instanceof String) // only the keys that are Strings, are categories
- {
- categories.add((String)next);
- }
+ categories.add((String) key);
}
- return categories;
}
- return null;
+ return categories;
}
catch (CacheException ce)
{
@@ -335,7 +333,7 @@
{
try
{
- AtomicMap m = getKeysPerCategoryCollection(category);
+ AtomicMap<Serializable, Void> m = getKeysPerCategoryCollection(category);
return m.keySet(); // the keyset are the DS keys
}
catch (CacheException ce)
@@ -356,17 +354,15 @@
try
{
Collection<Serializable> keys = getAllKeys(category);
- if(keys != null)
+
+ if (keys == null) return null;
+
+ List<Serializable> values = new ArrayList<Serializable>();
+ for (Serializable key: keys)
{
- List<Serializable> values = new ArrayList();
- for (Serializable key: keys)
- {
- values.add(cache.get(buildValueCollectionKey(category, key)));
- }
- return values;
+ values.add(cache.get(buildValueCollectionKey(category, key)));
}
- else
- return null;
+ return values;
}
catch (CacheException ce)
{
@@ -375,52 +371,25 @@
}
@Override
- public void registerDSListenerEx(String category, DSListenerEx subscriber)
+ public void registerDSListenerEx(String category, @SuppressWarnings("deprecation") DSListenerEx subscriber)
{
- this.registerListener(category, subscriber);
+ this.registerDSListener(category, subscriber);
}
@Override
- public void unregisterDSListenerEx(String category, DSListenerEx subscriber)
+ public void unregisterDSListenerEx(String category, @SuppressWarnings("deprecation") DSListenerEx subscriber)
{
- this.unregisterListener(category, subscriber);
+ this.unregisterDSListener(category, subscriber);
}
@Override
public void registerDSListener(String category, DSListener subscriber)
{
- this.registerListener(category, subscriber);
- }
-
- @Override
- public void unregisterDSListener(String category, DSListener subscriber)
- {
- this.unregisterListener(category, subscriber);
- }
-
- // ChannelSource -------------------------------------------------
-
-// public Channel getChannel()
-// {
-// Channel result = null;
-// if (cache != null)
-// {
-// result = cache.getConfiguration().getRuntimeConfig().getChannel();
-// }
-// return result;
-// }
-
- // Package protected ---------------------------------------------
-
- // Protected -----------------------------------------------------
-
- protected void registerListener(String category, Object subscriber)
- {
- List<Object> listeners = this.keyListeners.get(category);
+ List<DSListener> listeners = this.keyListeners.get(category);
if (listeners == null)
{
- listeners = new CopyOnWriteArrayList<Object>();
- List<Object> other = this.keyListeners.putIfAbsent(category, listeners);
+ listeners = new CopyOnWriteArrayList<DSListener>();
+ List<DSListener> other = this.keyListeners.putIfAbsent(category, listeners);
if (other != null )
{
listeners = other; // use the listeners added by other thread
@@ -429,9 +398,10 @@
listeners.add(subscriber);
}
- protected void unregisterListener(String category, Object subscriber)
+ @Override
+ public void unregisterDSListener(String category, DSListener subscriber)
{
- List<Object> listeners = this.keyListeners.get(category);
+ List<DSListener> listeners = this.keyListeners.get(category);
if (listeners != null)
{
listeners.remove(subscriber);
@@ -442,46 +412,40 @@
}
}
+ // ChannelSource -------------------------------------------------
+
+// public Channel getChannel()
+// {
+// Channel result = null;
+// if (cache != null)
+// {
+// result = cache.getConfiguration().getRuntimeConfig().getChannel();
+// }
+// return result;
+// }
+
+ // Package protected ---------------------------------------------
+
protected void notifyKeyListeners(String category, Serializable key, Serializable value, boolean locallyModified)
{
- List<Object> listeners = this.keyListeners.get(category);
+ List<DSListener> listeners = this.keyListeners.get(category);
if (listeners == null) return;
- String strKey = key.toString();
- for (Object listener: listeners)
+ for (DSListener listener: listeners)
{
- if (listener instanceof DSListener)
- {
- DSListener dslistener = (DSListener) listener;
- dslistener.valueHasChanged(category, strKey, value, locallyModified);
- }
- else
- {
- DSListenerEx dslistener = (DSListenerEx) listener;
- dslistener.valueHasChanged(category, key, value, locallyModified);
- }
+ listener.valueHasChanged(category, key, value, locallyModified);
}
}
protected void notifyKeyListenersOfRemove(String category, Serializable key, Serializable oldContent,
boolean locallyModified)
{
- List<Object> listeners = this.keyListeners.get(category);
+ List<DSListener> listeners = this.keyListeners.get(category);
if (listeners == null) return;
- String strKey = key.toString();
- for (Object listener: listeners)
+ for (DSListener listener: listeners)
{
- if (listener instanceof DSListener)
- {
- DSListener dslistener = (DSListener) listener;
- dslistener.keyHasBeenRemoved(category, strKey, oldContent, locallyModified);
- }
- else
- {
- DSListenerEx dslistener = (DSListenerEx) listener;
- dslistener.keyHasBeenRemoved(category, key, oldContent, locallyModified);
- }
+ listener.keyHasBeenRemoved(category, key, oldContent, locallyModified);
}
}
@@ -502,13 +466,12 @@
if (event.isPre()) return;
Object key = event.getKey();
- Object value = event.getValue();
- if(key instanceof SimpleImmutableEntry)
+
+ if (key instanceof SimpleImmutableEntry)
{
- SimpleImmutableEntry e = (SimpleImmutableEntry)key;
- key = e.getValue();
- String category = (String)e.getKey();
- notifyKeyListeners(category, (Serializable)key, (Serializable)value, event.isOriginLocal());
+ @SuppressWarnings("unchecked")
+ SimpleImmutableEntry<String, Serializable> entry = (SimpleImmutableEntry<String, Serializable>) key;
+ notifyKeyListeners(entry.getKey(), entry.getValue(), (Serializable) event.getValue(), event.isOriginLocal());
}
}
@@ -518,13 +481,12 @@
if (event.isPre()) return;
Object key = event.getKey();
- Object value = event.getValue();
- if(key instanceof SimpleImmutableEntry)
+
+ if (key instanceof SimpleImmutableEntry)
{
- SimpleImmutableEntry e = (SimpleImmutableEntry)key;
- key = e.getValue();
- String category = (String)e.getKey();
- notifyKeyListenersOfRemove(category, (Serializable)key, (Serializable)value, event.isOriginLocal());
+ @SuppressWarnings("unchecked")
+ SimpleImmutableEntry<String, Serializable> entry = (SimpleImmutableEntry<String, Serializable>) key;
+ notifyKeyListenersOfRemove(entry.getKey(), entry.getValue(), (Serializable) event.getValue(), event.isOriginLocal());
}
}
@@ -553,15 +515,13 @@
}
}
- private SimpleImmutableEntry<String, Serializable>
- buildValueCollectionKey(String category, Serializable dskey)
+ private SimpleImmutableEntry<String, Serializable> buildValueCollectionKey(String category, Serializable dskey)
{
- return new SimpleImmutableEntry(category, dskey);
+ return new SimpleImmutableEntry<String, Serializable>(category, dskey);
}
- private AtomicMap getKeysPerCategoryCollection(String category)
+ private AtomicMap<Serializable, Void> getKeysPerCategoryCollection(String category)
{
- return AtomicMapLookup.getAtomicMap(cache, category, true);
-
+ return AtomicMapLookup.getAtomicMap(this.cache, category, true);
}
}
More information about the jboss-cvs-commits
mailing list