com.springsource.util.common
Class CaseInsensitiveMap<V>

java.lang.Object
  extended by java.util.AbstractMap<java.lang.String,V>
      extended by com.springsource.util.common.CaseInsensitiveMap<V>
Type Parameters:
V - range type parameter
All Implemented Interfaces:
java.util.Map<java.lang.String,V>

public class CaseInsensitiveMap<V>
extends java.util.AbstractMap<java.lang.String,V>

CaseInsensitiveMap is a Map from String keys to values which is case-insensitive and case-preserving with respect to the keys in the map.

Concurrent Semantics
This class is not necessarily thread safe.

Since:
jersey
Author:
Glyn Normington

Nested Class Summary
(package private) static class CaseInsensitiveMap.CaseInsensitiveKey
           
private static class CaseInsensitiveMap.EntrySet<V>
           
private static class CaseInsensitiveMap.KeySet
           
 
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>
 
Field Summary
private  java.util.Map<CaseInsensitiveMap.CaseInsensitiveKey,V> map
           
 
Constructor Summary
CaseInsensitiveMap()
           
 
Method Summary
 void clear()
          
 boolean containsKey(java.lang.Object key)
          
 boolean containsValue(java.lang.Object value)
          
 java.util.Set<java.util.Map.Entry<java.lang.String,V>> entrySet()
          
 V get(java.lang.Object key)
          
 java.util.Set<java.lang.String> keySet()
          
 V put(java.lang.String key, V value)
          
 V remove(java.lang.Object key)
          
 int size()
          
 java.util.Collection<V> values()
          
 
Methods inherited from class java.util.AbstractMap
clone, equals, hashCode, isEmpty, putAll, toString
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

map

private final java.util.Map<CaseInsensitiveMap.CaseInsensitiveKey,V> map
Constructor Detail

CaseInsensitiveMap

public CaseInsensitiveMap()
Method Detail

clear

public void clear()

Specified by:
clear in interface java.util.Map<java.lang.String,V>
Overrides:
clear in class java.util.AbstractMap<java.lang.String,V>

containsKey

public boolean containsKey(java.lang.Object key)

Specified by:
containsKey in interface java.util.Map<java.lang.String,V>
Overrides:
containsKey in class java.util.AbstractMap<java.lang.String,V>

containsValue

public boolean containsValue(java.lang.Object value)

Specified by:
containsValue in interface java.util.Map<java.lang.String,V>
Overrides:
containsValue in class java.util.AbstractMap<java.lang.String,V>

entrySet

public java.util.Set<java.util.Map.Entry<java.lang.String,V>> entrySet()

Specified by:
entrySet in interface java.util.Map<java.lang.String,V>
Specified by:
entrySet in class java.util.AbstractMap<java.lang.String,V>

get

public V get(java.lang.Object key)

Specified by:
get in interface java.util.Map<java.lang.String,V>
Overrides:
get in class java.util.AbstractMap<java.lang.String,V>

keySet

public java.util.Set<java.lang.String> keySet()

Specified by:
keySet in interface java.util.Map<java.lang.String,V>
Overrides:
keySet in class java.util.AbstractMap<java.lang.String,V>

put

public V put(java.lang.String key,
             V value)

Specified by:
put in interface java.util.Map<java.lang.String,V>
Overrides:
put in class java.util.AbstractMap<java.lang.String,V>

remove

public V remove(java.lang.Object key)

Specified by:
remove in interface java.util.Map<java.lang.String,V>
Overrides:
remove in class java.util.AbstractMap<java.lang.String,V>

size

public int size()

Specified by:
size in interface java.util.Map<java.lang.String,V>
Overrides:
size in class java.util.AbstractMap<java.lang.String,V>

values

public java.util.Collection<V> values()

Specified by:
values in interface java.util.Map<java.lang.String,V>
Overrides:
values in class java.util.AbstractMap<java.lang.String,V>