|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjava.util.AbstractMap<K,V>
java.util.HashMap<K,V>
java.util.LinkedHashMap<String,Object>
org.apache.wicket.util.value.ValueMap
public class ValueMap
A IValueMap
implementation that holds values, parses String
s, and
exposes a variety of convenience methods.
In addition to a no-arg constructor and a copy constructor that takes a Map
argument, ValueMap
s can be constructed using a parsing constructor.
ValueMap(String)
will parse values from the string in comma separated key/value
assignment pairs. For example, new ValueMap("a=9,b=foo")
.
Values can be retrieved from the ValueMap
in the usual way or with methods that do
handy conversions to various types, including String
, StringValue
,
int
, long
, double
, Time
and
Duration
.
The makeImmutable
method will make the underlying Map
immutable.
Further attempts to change the Map
will result in a RuntimeException
.
The toString
method converts a ValueMap
object to a readable key/value
string for diagnostics.
Nested Class Summary |
---|
Nested classes/interfaces inherited from class java.util.AbstractMap |
---|
AbstractMap.SimpleEntry<K,V>, AbstractMap.SimpleImmutableEntry<K,V> |
Nested classes/interfaces inherited from interface java.util.Map |
---|
Map.Entry<K,V> |
Field Summary | |
---|---|
static ValueMap |
EMPTY_MAP
an empty ValueMap . |
Constructor Summary | |
---|---|
ValueMap()
Constructs empty ValueMap . |
|
ValueMap(Map<? extends String,? extends Object> map)
Copy constructor. |
|
ValueMap(String keyValuePairs)
Constructor. |
|
ValueMap(String keyValuePairs,
String delimiter)
Constructor. |
|
ValueMap(String keyValuePairs,
String delimiter,
MetaPattern valuePattern)
Constructor. |
Method Summary | ||
---|---|---|
Object |
add(String key,
String value)
Adds the value to this ValueMap with the given key. |
|
void |
clear()
|
|
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. |
|
|
getAsEnum(String key,
Class<T> eClass)
Retrieves an Enum value by key. |
|
|
getAsEnum(String key,
Class<T> eClass,
T defaultValue)
Retrieves an Enum value by key. |
|
|
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. |
|
boolean |
isImmutable()
Returns whether or not this IValueMap is immutable. |
|
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,? extends Object> map)
|
|
Object |
remove(Object key)
|
|
String |
toString()
Generates a String representation of this object. |
Methods inherited from class java.util.LinkedHashMap |
---|
containsValue, get, removeEldestEntry |
Methods inherited from class java.util.HashMap |
---|
clone, containsKey, entrySet, isEmpty, keySet, size, values |
Methods inherited from class java.util.AbstractMap |
---|
equals, hashCode |
Methods inherited from class java.lang.Object |
---|
finalize, getClass, notify, notifyAll, wait, wait, wait |
Methods inherited from interface java.util.Map |
---|
containsKey, containsValue, entrySet, equals, get, hashCode, isEmpty, keySet, size, values |
Field Detail |
---|
public static final ValueMap EMPTY_MAP
ValueMap
.
Constructor Detail |
---|
public ValueMap()
ValueMap
.
public ValueMap(Map<? extends String,? extends Object> map)
map
- the ValueMap
to copypublic ValueMap(String keyValuePairs)
NOTE: Please use RequestUtils.decodeParameters()
if you wish to properly decode
a request URL.
keyValuePairs
- list of key/value pairs separated by commas. For example, "
param1=foo,param2=bar
"public ValueMap(String keyValuePairs, String delimiter)
NOTE: Please use RequestUtils.decodeParameters()
if you wish to properly decode
a request URL.
keyValuePairs
- list of key/value pairs separated by a given delimiter. For example, "
param1=foo,param2=bar
" where delimiter is ",
".delimiter
- delimiter String
used to separate key/value pairspublic ValueMap(String keyValuePairs, String delimiter, MetaPattern valuePattern)
keyValuePairs
- list of key/value pairs separated by a given delimiter. For example, "
param1=foo,param2=bar
" where delimiter is ",
".delimiter
- delimiter string used to separate key/value pairsvaluePattern
- pattern for value. To pass a simple regular expression, pass "
new MetaPattern(regexp)
".Method Detail |
---|
public final void clear()
clear
in interface Map<String,Object>
clear
in class LinkedHashMap<String,Object>
Map.clear()
public final boolean getBoolean(String key) throws StringValueConversionException
IValueMap
boolean
value by key.
getBoolean
in interface IValueMap
key
- the key
StringValueConversionException
IValueMap.getBoolean(String)
public final double getDouble(String key) throws StringValueConversionException
IValueMap
double
value by key.
getDouble
in interface IValueMap
key
- the key
StringValueConversionException
IValueMap.getDouble(String)
public final double getDouble(String key, double defaultValue) throws StringValueConversionException
IValueMap
double
value by key, using a default value if not found.
getDouble
in interface IValueMap
key
- the keydefaultValue
- value to use if no value is in this IValueMap
StringValueConversionException
IValueMap.getDouble(String, double)
public final Duration getDuration(String key) throws StringValueConversionException
IValueMap
Duration
by key.
getDuration
in interface IValueMap
key
- the key
Duration
value
StringValueConversionException
IValueMap.getDuration(String)
public final int getInt(String key) throws StringValueConversionException
IValueMap
int
value by key.
getInt
in interface IValueMap
key
- the key
StringValueConversionException
IValueMap.getInt(String)
public final int getInt(String key, int defaultValue) throws StringValueConversionException
IValueMap
int
value by key, using a default value if not found.
getInt
in interface IValueMap
key
- the keydefaultValue
- value to use if no value is in this IValueMap
StringValueConversionException
IValueMap.getInt(String, int)
public final long getLong(String key) throws StringValueConversionException
IValueMap
long
value by key.
getLong
in interface IValueMap
key
- the key
StringValueConversionException
IValueMap.getLong(String)
public final long getLong(String key, long defaultValue) throws StringValueConversionException
IValueMap
long
value by key, using a default value if not found.
getLong
in interface IValueMap
key
- the keydefaultValue
- value to use if no value in this IValueMap
StringValueConversionException
IValueMap.getLong(String, long)
public final String getString(String key, String defaultValue)
IValueMap
String
by key, using a default value if not found.
getString
in interface IValueMap
key
- the keydefaultValue
- default value to return if value is null
String
IValueMap.getString(String, String)
public final String getString(String key)
IValueMap
String
by key.
getString
in interface IValueMap
key
- the key
String
IValueMap.getString(String)
public final CharSequence getCharSequence(String key)
IValueMap
CharSequence
by key.
getCharSequence
in interface IValueMap
key
- the key
CharSequence
IValueMap.getCharSequence(String)
public String[] getStringArray(String key)
IValueMap
String
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 IValueMap
key
- the key
String
array of that keyIValueMap.getStringArray(String)
public StringValue getStringValue(String key)
IValueMap
StringValue
object by key.
getStringValue
in interface IValueMap
key
- the key
StringValue
objectIValueMap.getStringValue(String)
public final Time getTime(String key) throws StringValueConversionException
IValueMap
Time
object by key.
getTime
in interface IValueMap
key
- the key
Time
object
StringValueConversionException
IValueMap.getTime(String)
public final boolean isImmutable()
IValueMap
IValueMap
is immutable.
isImmutable
in interface IValueMap
IValueMap
is immutableIValueMap.isImmutable()
public final IValueMap makeImmutable()
IValueMap
IValueMap
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 IValueMap
IValueMap
IValueMap.makeImmutable()
public Object put(String key, Object value)
put
in interface Map<String,Object>
put
in class HashMap<String,Object>
Map.put(Object, Object)
public final Object add(String key, String value)
ValueMap
with the given key. If the key already is in the
ValueMap
it will combine the values into a String
array, else it
will just store the value itself.
key
- the key to store the value undervalue
- the value that must be added/merged to the ValueMap
String
array with
the combined valuespublic void putAll(Map<? extends String,? extends Object> map)
putAll
in interface Map<String,Object>
putAll
in class HashMap<String,Object>
Map.putAll(java.util.Map)
public Object remove(Object key)
remove
in interface Map<String,Object>
remove
in class HashMap<String,Object>
Map.remove(java.lang.Object)
public String getKey(String key)
IValueMap
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.
getKey
in interface IValueMap
key
- the key
IValueMap.getKey(String)
public String toString()
String
representation of this object.
toString
in class AbstractMap<String,Object>
String
representation of this ValueMap
consistent with the
tag-attribute style of markup elements. For example: a="x" b="y" c="z"
.public Boolean getAsBoolean(String key)
IValueMap
Boolean
value by key.
getAsBoolean
in interface IValueMap
key
- the key
IValueMap
IValueMap.getAsBoolean(String)
public boolean getAsBoolean(String key, boolean defaultValue)
IValueMap
boolean
value by key.
getAsBoolean
in interface IValueMap
key
- the keydefaultValue
- the default to return
IValueMap
IValueMap.getAsBoolean(String, boolean)
public Integer getAsInteger(String key)
IValueMap
Integer
value by key.
getAsInteger
in interface IValueMap
key
- the key
IValueMap
IValueMap.getAsInteger(String)
public int getAsInteger(String key, int defaultValue)
IValueMap
integer
value by key.
getAsInteger
in interface IValueMap
key
- the keydefaultValue
- the default to return
IValueMap
IValueMap.getAsInteger(String, int)
public Long getAsLong(String key)
IValueMap
Long
value by key.
getAsLong
in interface IValueMap
key
- the key
IValueMap
IValueMap.getAsLong(String)
public long getAsLong(String key, long defaultValue)
IValueMap
long
value by key.
getAsLong
in interface IValueMap
key
- the keydefaultValue
- the default to return
IValueMap
IValueMap.getAsLong(String, long)
public Double getAsDouble(String key)
IValueMap
Double
value by key.
getAsDouble
in interface IValueMap
key
- the key
IValueMap
IValueMap.getAsDouble(String)
public double getAsDouble(String key, double defaultValue)
IValueMap
double
value by key.
getAsDouble
in interface IValueMap
key
- the keydefaultValue
- the default to return
IValueMap
IValueMap.getAsDouble(String, double)
public Duration getAsDuration(String key)
IValueMap
Duration
value by key.
getAsDuration
in interface IValueMap
key
- the key
IValueMap
IValueMap.getAsDuration(String)
public Duration getAsDuration(String key, Duration defaultValue)
IValueMap
Duration
value by key.
getAsDuration
in interface IValueMap
key
- the keydefaultValue
- the default to return
IValueMap
IValueMap.getAsDuration(String, Duration)
public Time getAsTime(String key)
IValueMap
Time
value by key.
getAsTime
in interface IValueMap
key
- the key
IValueMap
IValueMap.getAsTime(String)
public Time getAsTime(String key, Time defaultValue)
IValueMap
Time
value by key.
getAsTime
in interface IValueMap
key
- the keydefaultValue
- the default to return
IValueMap
IValueMap.getAsTime(String, Time)
public <T extends Enum<T>> T getAsEnum(String key, Class<T> eClass)
IValueMap
Enum
value by key.
getAsEnum
in interface IValueMap
T
- type of enumkey
- the keyeClass
- the enumeration class
IValueMap
IValueMap.getAsEnum(java.lang.String, java.lang.Class)
public <T extends Enum<T>> T getAsEnum(String key, T defaultValue)
IValueMap
Enum
value by key.
getAsEnum
in interface IValueMap
T
- type of enumkey
- the keydefaultValue
- the default value from the Enumeration (cannot be null)
IValueMap
IValueMap.getAsEnum(java.lang.String, java.lang.Enum)
public <T extends Enum<T>> T getAsEnum(String key, Class<T> eClass, T defaultValue)
IValueMap
Enum
value by key.
getAsEnum
in interface IValueMap
T
- type of enumkey
- the keyeClass
- the enumeration classdefaultValue
- the default value from the Enumeration (may be null)
IValueMap
IValueMap.getAsEnum(java.lang.String, java.lang.Class,
java.lang.Enum)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |