public class CopyOnWriteValueMap extends Object implements IValueMap, Serializable
IValueMap that makes a copy when a caller tries to change an
immutable Map. That is, the Map may or may not be immutable, but if it
is, a copy is made.| Constructor and Description |
|---|
CopyOnWriteValueMap(IValueMap wrapped)
Constructor.
|
| Modifier and Type | Method and Description |
|---|---|
void |
clear() |
boolean |
containsKey(Object key) |
boolean |
containsValue(Object value) |
Set<Map.Entry<String,Object>> |
entrySet() |
boolean |
equals(Object o) |
Object |
get(Object key) |
Boolean |
getAsBoolean(String key)
Retrieves a
Boolean value by key. |
boolean |
getAsBoolean(String key,
boolean defaultValue)
Retrieves a
boolean value by key. |
Double |
getAsDouble(String key)
Retrieves a
Double value by key. |
double |
getAsDouble(String key,
double defaultValue)
Retrieves a
double value by key. |
Duration |
getAsDuration(String key)
Retrieves a
Duration value by key. |
Duration |
getAsDuration(String key,
Duration defaultValue)
Retrieves a
Duration value by key. |
<T extends Enum<T>> |
getAsEnum(String key,
Class<T> eClass)
Retrieves an
Enum value by key. |
<T extends Enum<T>> |
getAsEnum(String key,
Class<T> eClass,
T defaultValue)
Retrieves an
Enum value by key. |
<T extends Enum<T>> |
getAsEnum(String key,
T defaultValue)
Retrieves an
Enum value by key. |
Integer |
getAsInteger(String key)
Retrieves an
Integer value by key. |
int |
getAsInteger(String key,
int defaultValue)
Retrieves an
integer value by key. |
Long |
getAsLong(String key)
Retrieves a
Long value by key. |
long |
getAsLong(String key,
long defaultValue)
Retrieves a
long value by key. |
Time |
getAsTime(String key)
Retrieves a
Time value by key. |
Time |
getAsTime(String key,
Time defaultValue)
Retrieves a
Time value by key. |
boolean |
getBoolean(String key)
Retrieves a
boolean value by key. |
CharSequence |
getCharSequence(String key)
Retrieves a
CharSequence by key. |
double |
getDouble(String key)
Retrieves a
double value by key. |
double |
getDouble(String key,
double defaultValue)
Retrieves a
double value by key, using a default value if not found. |
Duration |
getDuration(String key)
Retrieves a
Duration by key. |
int |
getInt(String key)
Retrieves an
int value by key. |
int |
getInt(String key,
int defaultValue)
Retrieves an
int value by key, using a default value if not found. |
String |
getKey(String key)
Provided that the hash key is a
String and you need to access the value ignoring
the key's case (upper- or lowercase letters), then you may use this method to get the correct
writing. |
long |
getLong(String key)
Retrieves a
long value by key. |
long |
getLong(String key,
long defaultValue)
Retrieves a
long value by key, using a default value if not found. |
String |
getString(String key)
Retrieves a
String by key. |
String |
getString(String key,
String defaultValue)
Retrieves a
String by key, using a default value if not found. |
String[] |
getStringArray(String key)
Retrieves a
String array by key. |
StringValue |
getStringValue(String key)
Retrieves a
StringValue object by key. |
Time |
getTime(String key)
Retrieves a
Time object by key. |
int |
hashCode() |
boolean |
isEmpty() |
boolean |
isImmutable()
Returns whether or not this
IValueMap is immutable. |
Set<String> |
keySet() |
IValueMap |
makeImmutable()
Makes this
IValueMap immutable by changing the underlying map representation to
a Collections.unmodifiableMap. |
Object |
put(String key,
Object value) |
void |
putAll(Map<? extends String,?> map) |
Object |
remove(Object key) |
int |
size() |
String |
toString() |
Collection<Object> |
values() |
public CopyOnWriteValueMap(IValueMap wrapped)
wrapped - the wrapped IValueMappublic void clear()
clear in interface Map<String,Object>Map.clear()public boolean containsKey(Object key)
containsKey in interface Map<String,Object>Map.containsKey(Object)public boolean containsValue(Object value)
containsValue in interface Map<String,Object>Map.containsValue(Object)public Set<Map.Entry<String,Object>> entrySet()
entrySet in interface Map<String,Object>Map.entrySet()public boolean equals(Object o)
public int hashCode()
public Object get(Object key)
get in interface Map<String,Object>Map.get(Object)public boolean getBoolean(String key) throws StringValueConversionException
IValueMapboolean value by key.getBoolean in interface IValueMapkey - the keyStringValueConversionExceptionIValueMap.getBoolean(String)public CharSequence getCharSequence(String key)
IValueMapCharSequence by key.getCharSequence in interface IValueMapkey - the keyCharSequenceIValueMap.getCharSequence(String)public double getDouble(String key) throws StringValueConversionException
IValueMapdouble value by key.getDouble in interface IValueMapkey - the keyStringValueConversionExceptionIValueMap.getDouble(String)public double getDouble(String key, double defaultValue)
IValueMapdouble value by key, using a default value if not found.getDouble in interface IValueMapkey - the keydefaultValue - value to use if no value is in this IValueMapIValueMap.getDouble(String, double)public Duration getDuration(String key) throws StringValueConversionException
IValueMapDuration by key.getDuration in interface IValueMapkey - the keyDuration valueStringValueConversionExceptionIValueMap.getDuration(String)public int getInt(String key, int defaultValue)
IValueMapint value by key, using a default value if not found.getInt in interface IValueMapkey - the keydefaultValue - value to use if no value is in this IValueMapIValueMap.getInt(String, int)public int getInt(String key) throws StringValueConversionException
IValueMapint value by key.getInt in interface IValueMapkey - the keyStringValueConversionExceptionIValueMap.getInt(String)public String getKey(String key)
IValueMapString and you need to access the value ignoring
the key's case (upper- or lowercase letters), then you may use this method to get the correct
writing.getKey in interface IValueMapkey - the keyIValueMap.getKey(String)public long getLong(String key, long defaultValue)
IValueMaplong value by key, using a default value if not found.getLong in interface IValueMapkey - the keydefaultValue - value to use if no value in this IValueMapIValueMap.getLong(String, long)public long getLong(String key) throws StringValueConversionException
IValueMaplong value by key.getLong in interface IValueMapkey - the keyStringValueConversionExceptionIValueMap.getLong(String)public String getString(String key, String defaultValue)
IValueMapString by key, using a default value if not found.getString in interface IValueMapkey - the keydefaultValue - default value to return if value is nullStringIValueMap.getString(String, String)public String getString(String key)
IValueMapString by key.getString in interface IValueMapkey - the keyStringIValueMap.getString(String)public String[] getStringArray(String key)
IValueMapString array by key. If the value was a String[] it
will be returned directly. If it was a String it will be converted to a
String array of length one. If it was an array of another type, a
String array will be made and each element will be converted to a
String.getStringArray in interface IValueMapkey - the keyString array of that keyIValueMap.getStringArray(String)public StringValue getStringValue(String key)
IValueMapStringValue object by key.getStringValue in interface IValueMapkey - the keyStringValue objectIValueMap.getStringValue(String)public Time getTime(String key) throws StringValueConversionException
IValueMapTime object by key.getTime in interface IValueMapkey - the keyTime objectStringValueConversionExceptionIValueMap.getTime(String)public boolean isEmpty()
isEmpty in interface Map<String,Object>Map.isEmpty()public boolean isImmutable()
IValueMapIValueMap is immutable.isImmutable in interface IValueMapIValueMap is immutableIValueMap.isImmutable()public Set<String> keySet()
keySet in interface Map<String,Object>Map.keySet()public IValueMap makeImmutable()
IValueMapIValueMap immutable by changing the underlying map representation to
a Collections.unmodifiableMap. After calling this method, any attempt to modify
this IValueMap will result in a RuntimeException being thrown by
the Collections framework.makeImmutable in interface IValueMapIValueMapIValueMap.makeImmutable()public Object put(String key, Object value)
put in interface Map<String,Object>Map.put(Object, Object)public void putAll(Map<? extends String,?> map)
putAll in interface Map<String,Object>Map.putAll(Map)public Object remove(Object key)
remove in interface Map<String,Object>Map.remove(Object)public int size()
size in interface Map<String,Object>Map.size()public Collection<Object> values()
values in interface Map<String,Object>Map.values()public Boolean getAsBoolean(String key)
IValueMapBoolean value by key.getAsBoolean in interface IValueMapkey - the keyIValueMapIValueMap.getAsBoolean(String)public boolean getAsBoolean(String key, boolean defaultValue)
IValueMapboolean value by key.getAsBoolean in interface IValueMapkey - the keydefaultValue - the default to returnIValueMapIValueMap.getAsBoolean(String, boolean)public Integer getAsInteger(String key)
IValueMapInteger value by key.getAsInteger in interface IValueMapkey - the keyIValueMapIValueMap.getAsInteger(String)public int getAsInteger(String key, int defaultValue)
IValueMapinteger value by key.getAsInteger in interface IValueMapkey - the keydefaultValue - the default to returnIValueMapIValueMap.getAsInteger(String, int)public Long getAsLong(String key)
IValueMapLong value by key.getAsLong in interface IValueMapkey - the keyIValueMapIValueMap.getAsLong(String)public long getAsLong(String key, long defaultValue)
IValueMaplong value by key.getAsLong in interface IValueMapkey - the keydefaultValue - the default to returnIValueMapIValueMap.getAsLong(String, long)public Double getAsDouble(String key)
IValueMapDouble value by key.getAsDouble in interface IValueMapkey - the keyIValueMapIValueMap.getAsDouble(String)public double getAsDouble(String key, double defaultValue)
IValueMapdouble value by key.getAsDouble in interface IValueMapkey - the keydefaultValue - the default to returnIValueMapIValueMap.getAsDouble(String, double)public Duration getAsDuration(String key)
IValueMapDuration value by key.getAsDuration in interface IValueMapkey - the keyIValueMapIValueMap.getAsDuration(String)public Duration getAsDuration(String key, Duration defaultValue)
IValueMapDuration value by key.getAsDuration in interface IValueMapkey - the keydefaultValue - the default to returnIValueMapIValueMap.getAsDuration(String, Duration)public Time getAsTime(String key)
IValueMapTime value by key.getAsTime in interface IValueMapkey - the keyIValueMapIValueMap.getAsTime(String)public Time getAsTime(String key, Time defaultValue)
IValueMapTime value by key.getAsTime in interface IValueMapkey - the keydefaultValue - the default to returnIValueMapIValueMap.getAsTime(String, Time)public <T extends Enum<T>> T getAsEnum(String key, Class<T> eClass)
IValueMapEnum value by key.getAsEnum in interface IValueMapT - type of enumkey - the keyeClass - the enumeration classIValueMapIValueMap.getAsEnum(String, Class)public <T extends Enum<T>> T getAsEnum(String key, T defaultValue)
IValueMapEnum value by key.getAsEnum in interface IValueMapT - type of enumkey - the keydefaultValue - the default value from the Enumeration (cannot be null)IValueMapIValueMap.getAsEnum(java.lang.String, java.lang.Class<T>)public <T extends Enum<T>> T getAsEnum(String key, Class<T> eClass, T defaultValue)
IValueMapEnum value by key.getAsEnum in interface IValueMapT - type of enumkey - the keyeClass - the enumeration classdefaultValue - the default value from the Enumeration (may be null)IValueMapIValueMap.getAsEnum(String, Class, Enum)Copyright © 2006–2014 Apache Software Foundation. All rights reserved.