[teiid-commits] teiid SVN: r2841 - branches/7.1.x/cache-jbosscache/src/main/java/org/teiid/cache/jboss.
teiid-commits at lists.jboss.org
teiid-commits at lists.jboss.org
Mon Jan 17 07:58:20 EST 2011
Author: rareddy
Date: 2011-01-17 07:58:20 -0500 (Mon, 17 Jan 2011)
New Revision: 2841
Modified:
branches/7.1.x/cache-jbosscache/src/main/java/org/teiid/cache/jboss/ExpirationAwareCache.java
Log:
TEIID-1439: When the keys are read back back expiration cache, the "expiration" key should be transparent to the user so as to not to mistake this as the actual cache key. To have a separate key is side effect of using the JBC, and should be contained here in this class.
Modified: branches/7.1.x/cache-jbosscache/src/main/java/org/teiid/cache/jboss/ExpirationAwareCache.java
===================================================================
--- branches/7.1.x/cache-jbosscache/src/main/java/org/teiid/cache/jboss/ExpirationAwareCache.java 2011-01-13 01:40:52 UTC (rev 2840)
+++ branches/7.1.x/cache-jbosscache/src/main/java/org/teiid/cache/jboss/ExpirationAwareCache.java 2011-01-17 12:58:20 UTC (rev 2841)
@@ -21,6 +21,9 @@
*/
package org.teiid.cache.jboss;
+import java.util.HashSet;
+import java.util.Set;
+
import org.jboss.cache.Cache;
import org.jboss.cache.Fqn;
import org.jboss.cache.Node;
@@ -47,4 +50,20 @@
child.put(ExpirationAlgorithmConfig.EXPIRATION_KEY, future);
return (V)child.put(key, value);
}
+
+ @Override
+ public Set<K> keys() {
+ HashSet keys = new HashSet();
+ Node<K, V> node = getRootNode();
+ Set<Node<K, V>> children = node.getChildren();
+ for (Node<K, V> child:children) {
+ for (K key:child.getData().keySet()) {
+ if ((key instanceof String) && (key.equals(ExpirationAlgorithmConfig.EXPIRATION_KEY))) {
+ continue;
+ }
+ keys.add(key);
+ }
+ }
+ return keys;
+ }
}
More information about the teiid-commits
mailing list