org.apache.myfaces.trinidadinternal.util
Class SubKeyMap
java.lang.Object
java.util.AbstractMap<java.lang.String,java.lang.Object>
org.apache.myfaces.trinidadinternal.util.SubKeyMap
- All Implemented Interfaces:
- java.util.Map<java.lang.String,java.lang.Object>
public final class SubKeyMap
- extends java.util.AbstractMap<java.lang.String,java.lang.Object>
Map that wraps another to provide an isolated namespace using
a prefix. This is especially handy for storing properties on
the session in a structured manner without putting them into
a true "Map" - because storing in a Map breaks session failover.
(Session failover won't trigger on mutations of contained objects.)
Note that there is a potential design flaw; if you create a SubKeyMap
for "mypackage.foo" and for "mypackage.foo.bar", all the keys in the
latter will actually show up in the former (prefixed by ".bar"). This
"flaw" is actually relied on by PageFlowScopeMap (since it provides
a handy way to clear out all descendents), so don't "fix" it!
Constructor Summary |
SubKeyMap(java.util.Map<java.lang.String,java.lang.Object> base,
java.lang.String prefix)
|
Method Summary |
boolean |
containsKey(java.lang.Object key)
|
java.util.Set<java.util.Map.Entry<java.lang.String,java.lang.Object>> |
entrySet()
|
java.lang.Object |
get(java.lang.Object key)
|
boolean |
isEmpty()
|
java.lang.Object |
put(java.lang.String key,
java.lang.Object value)
|
java.lang.Object |
remove(java.lang.Object key)
|
Methods inherited from class java.util.AbstractMap |
clear, clone, containsValue, equals, hashCode, keySet, putAll, size, toString, values |
Methods inherited from class java.lang.Object |
finalize, getClass, notify, notifyAll, wait, wait, wait |
SubKeyMap
public SubKeyMap(java.util.Map<java.lang.String,java.lang.Object> base,
java.lang.String prefix)
isEmpty
public boolean isEmpty()
- Specified by:
isEmpty
in interface java.util.Map<java.lang.String,java.lang.Object>
- Overrides:
isEmpty
in class java.util.AbstractMap<java.lang.String,java.lang.Object>
get
public java.lang.Object get(java.lang.Object key)
- Specified by:
get
in interface java.util.Map<java.lang.String,java.lang.Object>
- Overrides:
get
in class java.util.AbstractMap<java.lang.String,java.lang.Object>
put
public java.lang.Object put(java.lang.String key,
java.lang.Object value)
- Specified by:
put
in interface java.util.Map<java.lang.String,java.lang.Object>
- Overrides:
put
in class java.util.AbstractMap<java.lang.String,java.lang.Object>
remove
public java.lang.Object remove(java.lang.Object key)
- Specified by:
remove
in interface java.util.Map<java.lang.String,java.lang.Object>
- Overrides:
remove
in class java.util.AbstractMap<java.lang.String,java.lang.Object>
containsKey
public boolean containsKey(java.lang.Object key)
- Specified by:
containsKey
in interface java.util.Map<java.lang.String,java.lang.Object>
- Overrides:
containsKey
in class java.util.AbstractMap<java.lang.String,java.lang.Object>
entrySet
public java.util.Set<java.util.Map.Entry<java.lang.String,java.lang.Object>> entrySet()
- Specified by:
entrySet
in interface java.util.Map<java.lang.String,java.lang.Object>
- Specified by:
entrySet
in class java.util.AbstractMap<java.lang.String,java.lang.Object>
Copyright © 2001-2007 Apache Software Foundation. All Rights Reserved.