org.knowceans.map
Class PatternTreeMultiMap<X,Y>
java.lang.Object
java.util.AbstractMap<K,V>
java.util.TreeMap<X,java.util.Set<Y>>
org.knowceans.map.TreeMultiMap<X,Y>
org.knowceans.map.PatternTreeMultiMap<X,Y>
- All Implemented Interfaces:
- java.io.Serializable, java.lang.Cloneable, java.util.Map<X,java.util.Set<Y>>, java.util.NavigableMap<X,java.util.Set<Y>>, java.util.SortedMap<X,java.util.Set<Y>>, IMultiMap<X,Y>, IPatternMap<X,java.util.Set<Y>>
public class PatternTreeMultiMap<X,Y>
- extends TreeMultiMap<X,Y>
- implements IPatternMap<X,java.util.Set<Y>>
Implementation of the IMultiMap interface backed by a TreeMap. Maps a key to
a Set of values and orders by the key's Comparator.
In relational terms, this class implements a m:n relation, but without
reverse lookup.
This multimap supports wildcard and pattern search, however based on full
iteration of the mapEntries. (TODO: put in better algorithm for wildcard
expansion).
- Author:
- heinrich
- See Also:
- Serialized Form
Nested classes/interfaces inherited from class java.util.AbstractMap |
java.util.AbstractMap.SimpleEntry<K,V>, java.util.AbstractMap.SimpleImmutableEntry<K,V> |
Nested classes/interfaces inherited from interface java.util.Map |
java.util.Map.Entry<K,V> |
Methods inherited from class java.util.TreeMap |
ceilingEntry, ceilingKey, clear, clone, comparator, containsKey, containsValue, descendingKeySet, descendingMap, entrySet, firstEntry, firstKey, floorEntry, floorKey, get, headMap, headMap, higherEntry, higherKey, keySet, lastEntry, lastKey, lowerEntry, lowerKey, navigableKeySet, pollFirstEntry, pollLastEntry, putAll, remove, size, subMap, subMap, tailMap, tailMap, values |
Methods inherited from class java.util.AbstractMap |
equals, hashCode, isEmpty, toString |
Methods inherited from class java.lang.Object |
getClass, notify, notifyAll, wait, wait, wait |
Methods inherited from interface java.util.Map |
clear, containsKey, containsValue, entrySet, equals, get, hashCode, isEmpty, keySet, putAll, remove, size, values |
PatternTreeMultiMap
public PatternTreeMultiMap()
PatternTreeMultiMap
public PatternTreeMultiMap(java.util.Comparator<? super X> c)
PatternTreeMultiMap
public PatternTreeMultiMap(java.util.Map m)
main
public static void main(java.lang.String[] args)
getPattern
public java.util.Hashtable<X,java.util.Set<Y>> getPattern(java.lang.String pattern)
- get all entries that match a specific pattern. This implementation uses
complete iteration over all entries and returns a Hashtable
- Specified by:
getPattern
in interface IPatternMap<X,java.util.Set<Y>>
- Parameters:
pattern
-
- Returns:
getWildcard
public java.util.Hashtable<X,java.util.Set<Y>> getWildcard(java.lang.String wildcard)
- return all entries that match a specific wildcard.
- Specified by:
getWildcard
in interface IPatternMap<X,java.util.Set<Y>>
- Returns:
isPatternCaseInsensitive
public boolean isPatternCaseInsensitive()
- Returns:
isPatternMustMatch
public boolean isPatternMustMatch()
- Returns:
setPatternCaseInsensitive
public void setPatternCaseInsensitive(boolean b)
- Parameters:
b
-
setPatternMustMatch
public void setPatternMustMatch(boolean b)
- Parameters:
b
-