org.springframework.webflow.core.collection
Class LocalParameterMap

java.lang.Object
  extended by org.springframework.webflow.core.collection.LocalParameterMap
All Implemented Interfaces:
java.io.Serializable, org.springframework.binding.collection.MapAdaptable, ParameterMap
Direct Known Subclasses:
MockParameterMap

public class LocalParameterMap
extends java.lang.Object
implements ParameterMap, java.io.Serializable

An immutable parameter map storing String-keyed, String-valued parameters in a backing Map implementation. This base provides convenient operations for accessing parameters in a typed-manner.

Author:
Keith Donald
See Also:
Serialized Form

Constructor Summary
LocalParameterMap(java.util.Map parameters)
          Creates a new parameter map from the provided map.
LocalParameterMap(java.util.Map parameters, org.springframework.binding.convert.ConversionService conversionService)
          Creates a new parameter map from the provided map.
 
Method Summary
 AttributeMap asAttributeMap()
          Adapts this parameter map to an AttributeMap.
 java.util.Map asMap()
           
 boolean contains(java.lang.String parameterName)
          Does the parameter with the provided name exist in this map?
 boolean equals(java.lang.Object o)
           
 java.lang.String get(java.lang.String parameterName)
          Get a parameter value, returning null if no value is found.
 java.lang.Object get(java.lang.String parameterName, java.lang.Class targetType)
          Get a parameter value, converting it from String to the target type.
 java.lang.Object get(java.lang.String parameterName, java.lang.Class targetType, java.lang.Object defaultValue)
          Get a parameter value, converting it from String to the target type or returning the defaultValue if not found.
 java.lang.String get(java.lang.String parameterName, java.lang.String defaultValue)
          Get a parameter value, returning the defaultValue if no value is found.
 java.lang.String[] getArray(java.lang.String parameterName)
          Get a multi-valued parameter value, returning null if no value is found.
 java.lang.Object[] getArray(java.lang.String parameterName, java.lang.Class targetElementType)
          Get a multi-valued parameter value, converting each value to the target type or returning null if no value is found.
 java.lang.Boolean getBoolean(java.lang.String parameterName)
          Returns a boolean parameter value in the map, returning null if no value was found.
 java.lang.Boolean getBoolean(java.lang.String parameterName, java.lang.Boolean defaultValue)
          Returns a boolean parameter value in the map, returning the defaultValue if no value was found.
 java.lang.Integer getInteger(java.lang.String parameterName)
          Returns an integer parameter value in the map, returning null if no value was found.
 java.lang.Integer getInteger(java.lang.String parameterName, java.lang.Integer defaultValue)
          Returns an integer parameter value in the map, returning the defaultValue if no value was found.
 java.lang.Long getLong(java.lang.String parameterName)
          Returns a long parameter value in the map, returning null if no value was found.
 java.lang.Long getLong(java.lang.String parameterName, java.lang.Long defaultValue)
          Returns a long parameter value in the map, returning the defaultValue if no value was found.
protected  java.util.Map getMapInternal()
          Returns the wrapped, modifiable map implementation.
 org.springframework.web.multipart.MultipartFile getMultipartFile(java.lang.String parameterName)
          Get a multi-part file parameter value, returning null if no value is found.
 java.lang.Number getNumber(java.lang.String parameterName, java.lang.Class targetType)
          Returns a number parameter value in the map that is of the specified type, returning null if no value was found.
 java.lang.Number getNumber(java.lang.String parameterName, java.lang.Class targetType, java.lang.Number defaultValue)
          Returns a number parameter value in the map of the specified type, returning the defaultValue if no value was found.
 java.lang.String getRequired(java.lang.String parameterName)
          Get the value of a required parameter.
 java.lang.Object getRequired(java.lang.String parameterName, java.lang.Class targetType)
          Get the value of a required parameter and convert it to the target type.
 java.lang.String[] getRequiredArray(java.lang.String parameterName)
          Get a required multi-valued parameter value.
 java.lang.Object[] getRequiredArray(java.lang.String parameterName, java.lang.Class targetElementType)
          Get a required multi-valued parameter value, converting each value to the target type.
 java.lang.Boolean getRequiredBoolean(java.lang.String parameterName)
          Returns a boolean parameter value in the map, throwing an exception if the parameter is not present or could not be converted.
 java.lang.Integer getRequiredInteger(java.lang.String parameterName)
          Returns an integer parameter value in the map, throwing an exception if the parameter is not present or could not be converted.
 java.lang.Long getRequiredLong(java.lang.String parameterName)
          Returns a long parameter value in the map, throwing an exception if the parameter is not present or could not be converted.
 org.springframework.web.multipart.MultipartFile getRequiredMultipartFile(java.lang.String parameterName)
          Get the value of a required multipart file parameter.
 java.lang.Number getRequiredNumber(java.lang.String parameterName, java.lang.Class targetType)
          Returns a number parameter value in the map, throwing an exception if the parameter is not present or could not be converted.
 int hashCode()
           
protected  void initParameters(java.util.Map parameters)
          Initializes this parameter map.
 boolean isEmpty()
          Is this parameter map empty, with a size of 0?
 int size()
          Returns the number of parameters in this map.
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

LocalParameterMap

public LocalParameterMap(java.util.Map parameters)
Creates a new parameter map from the provided map.

It is expected that the contents of the backing map adhere to the parameter map contract; that is, map entries have string keys, string values, and remain unmodifiable.

Parameters:
parameters - the contents of this parameter map

LocalParameterMap

public LocalParameterMap(java.util.Map parameters,
                         org.springframework.binding.convert.ConversionService conversionService)
Creates a new parameter map from the provided map.

It is expected that the contents of the backing map adhere to the parameter map contract; that is, map entries have string keys, string values, and remain unmodifiable.

Parameters:
parameters - the contents of this parameter map
conversionService - a helper for performing type conversion of map entry values
Method Detail

equals

public boolean equals(java.lang.Object o)
Overrides:
equals in class java.lang.Object

hashCode

public int hashCode()
Overrides:
hashCode in class java.lang.Object

asMap

public java.util.Map asMap()
Specified by:
asMap in interface org.springframework.binding.collection.MapAdaptable

isEmpty

public boolean isEmpty()
Description copied from interface: ParameterMap
Is this parameter map empty, with a size of 0?

Specified by:
isEmpty in interface ParameterMap
Returns:
true if empty, false if not

size

public int size()
Description copied from interface: ParameterMap
Returns the number of parameters in this map.

Specified by:
size in interface ParameterMap
Returns:
the parameter count

contains

public boolean contains(java.lang.String parameterName)
Description copied from interface: ParameterMap
Does the parameter with the provided name exist in this map?

Specified by:
contains in interface ParameterMap
Parameters:
parameterName - the parameter name
Returns:
true if so, false otherwise

get

public java.lang.String get(java.lang.String parameterName)
Description copied from interface: ParameterMap
Get a parameter value, returning null if no value is found.

Specified by:
get in interface ParameterMap
Parameters:
parameterName - the parameter name
Returns:
the parameter value

get

public java.lang.String get(java.lang.String parameterName,
                            java.lang.String defaultValue)
Description copied from interface: ParameterMap
Get a parameter value, returning the defaultValue if no value is found.

Specified by:
get in interface ParameterMap
Parameters:
parameterName - the parameter name
defaultValue - the default
Returns:
the parameter value

getArray

public java.lang.String[] getArray(java.lang.String parameterName)
Description copied from interface: ParameterMap
Get a multi-valued parameter value, returning null if no value is found. If the parameter is single valued an array with a single element is returned.

Specified by:
getArray in interface ParameterMap
Parameters:
parameterName - the parameter name
Returns:
the parameter value array

getArray

public java.lang.Object[] getArray(java.lang.String parameterName,
                                   java.lang.Class targetElementType)
                            throws org.springframework.binding.convert.ConversionException
Description copied from interface: ParameterMap
Get a multi-valued parameter value, converting each value to the target type or returning null if no value is found.

Specified by:
getArray in interface ParameterMap
Parameters:
parameterName - the parameter name
targetElementType - the target type of the array's elements
Returns:
the converterd parameter value array
Throws:
org.springframework.binding.convert.ConversionException - when the value could not be converted

get

public java.lang.Object get(java.lang.String parameterName,
                            java.lang.Class targetType)
                     throws org.springframework.binding.convert.ConversionException
Description copied from interface: ParameterMap
Get a parameter value, converting it from String to the target type.

Specified by:
get in interface ParameterMap
Parameters:
parameterName - the name of the parameter
targetType - the target type of the parameter value
Returns:
the converted parameter value, or null if not found
Throws:
org.springframework.binding.convert.ConversionException - when the value could not be converted

get

public java.lang.Object get(java.lang.String parameterName,
                            java.lang.Class targetType,
                            java.lang.Object defaultValue)
                     throws org.springframework.binding.convert.ConversionException
Description copied from interface: ParameterMap
Get a parameter value, converting it from String to the target type or returning the defaultValue if not found.

Specified by:
get in interface ParameterMap
Parameters:
parameterName - name of the parameter to get
targetType - the target type of the parameter value
defaultValue - the default value
Returns:
the converted parameter value, or the default if not found
Throws:
org.springframework.binding.convert.ConversionException - when a value could not be converted

getRequired

public java.lang.String getRequired(java.lang.String parameterName)
                             throws java.lang.IllegalArgumentException
Description copied from interface: ParameterMap
Get the value of a required parameter.

Specified by:
getRequired in interface ParameterMap
Parameters:
parameterName - the name of the parameter
Returns:
the parameter value
Throws:
java.lang.IllegalArgumentException - when the parameter is not found

getRequiredArray

public java.lang.String[] getRequiredArray(java.lang.String parameterName)
                                    throws java.lang.IllegalArgumentException
Description copied from interface: ParameterMap
Get a required multi-valued parameter value.

Specified by:
getRequiredArray in interface ParameterMap
Parameters:
parameterName - the name of the parameter
Returns:
the parameter value
Throws:
java.lang.IllegalArgumentException - when the parameter is not found

getRequiredArray

public java.lang.Object[] getRequiredArray(java.lang.String parameterName,
                                           java.lang.Class targetElementType)
                                    throws java.lang.IllegalArgumentException,
                                           org.springframework.binding.convert.ConversionException
Description copied from interface: ParameterMap
Get a required multi-valued parameter value, converting each value to the target type.

Specified by:
getRequiredArray in interface ParameterMap
Parameters:
parameterName - the name of the parameter
Returns:
the parameter value
Throws:
java.lang.IllegalArgumentException - when the parameter is not found
org.springframework.binding.convert.ConversionException - when a value could not be converted

getRequired

public java.lang.Object getRequired(java.lang.String parameterName,
                                    java.lang.Class targetType)
                             throws java.lang.IllegalArgumentException,
                                    org.springframework.binding.convert.ConversionException
Description copied from interface: ParameterMap
Get the value of a required parameter and convert it to the target type.

Specified by:
getRequired in interface ParameterMap
Parameters:
parameterName - the name of the parameter
targetType - the target type of the parameter value
Returns:
the converted parameter value
Throws:
java.lang.IllegalArgumentException - when the parameter is not found
org.springframework.binding.convert.ConversionException - when the value could not be converted

getNumber

public java.lang.Number getNumber(java.lang.String parameterName,
                                  java.lang.Class targetType)
                           throws org.springframework.binding.convert.ConversionException
Description copied from interface: ParameterMap
Returns a number parameter value in the map that is of the specified type, returning null if no value was found.

Specified by:
getNumber in interface ParameterMap
Parameters:
parameterName - the parameter name
targetType - the target number type
Returns:
the number parameter value
Throws:
org.springframework.binding.convert.ConversionException - when the value could not be converted

getNumber

public java.lang.Number getNumber(java.lang.String parameterName,
                                  java.lang.Class targetType,
                                  java.lang.Number defaultValue)
                           throws org.springframework.binding.convert.ConversionException
Description copied from interface: ParameterMap
Returns a number parameter value in the map of the specified type, returning the defaultValue if no value was found.

Specified by:
getNumber in interface ParameterMap
Parameters:
parameterName - the parameter name
defaultValue - the default
Returns:
the number parameter value
Throws:
org.springframework.binding.convert.ConversionException - when the value could not be converted

getRequiredNumber

public java.lang.Number getRequiredNumber(java.lang.String parameterName,
                                          java.lang.Class targetType)
                                   throws java.lang.IllegalArgumentException,
                                          org.springframework.binding.convert.ConversionException
Description copied from interface: ParameterMap
Returns a number parameter value in the map, throwing an exception if the parameter is not present or could not be converted.

Specified by:
getRequiredNumber in interface ParameterMap
Parameters:
parameterName - the parameter name
Returns:
the number parameter value
Throws:
java.lang.IllegalArgumentException - if the parameter is not present
org.springframework.binding.convert.ConversionException - when the value could not be converted

getInteger

public java.lang.Integer getInteger(java.lang.String parameterName)
                             throws org.springframework.binding.convert.ConversionException
Description copied from interface: ParameterMap
Returns an integer parameter value in the map, returning null if no value was found.

Specified by:
getInteger in interface ParameterMap
Parameters:
parameterName - the parameter name
Returns:
the integer parameter value
Throws:
org.springframework.binding.convert.ConversionException - when the value could not be converted

getInteger

public java.lang.Integer getInteger(java.lang.String parameterName,
                                    java.lang.Integer defaultValue)
                             throws org.springframework.binding.convert.ConversionException
Description copied from interface: ParameterMap
Returns an integer parameter value in the map, returning the defaultValue if no value was found.

Specified by:
getInteger in interface ParameterMap
Parameters:
parameterName - the parameter name
defaultValue - the default
Returns:
the integer parameter value
Throws:
org.springframework.binding.convert.ConversionException - when the value could not be converted

getRequiredInteger

public java.lang.Integer getRequiredInteger(java.lang.String parameterName)
                                     throws java.lang.IllegalArgumentException,
                                            org.springframework.binding.convert.ConversionException
Description copied from interface: ParameterMap
Returns an integer parameter value in the map, throwing an exception if the parameter is not present or could not be converted.

Specified by:
getRequiredInteger in interface ParameterMap
Parameters:
parameterName - the parameter name
Returns:
the integer parameter value
Throws:
java.lang.IllegalArgumentException - if the parameter is not present
org.springframework.binding.convert.ConversionException - when the value could not be converted

getLong

public java.lang.Long getLong(java.lang.String parameterName)
                       throws org.springframework.binding.convert.ConversionException
Description copied from interface: ParameterMap
Returns a long parameter value in the map, returning null if no value was found.

Specified by:
getLong in interface ParameterMap
Parameters:
parameterName - the parameter name
Returns:
the long parameter value
Throws:
org.springframework.binding.convert.ConversionException - when the value could not be converted

getLong

public java.lang.Long getLong(java.lang.String parameterName,
                              java.lang.Long defaultValue)
                       throws org.springframework.binding.convert.ConversionException
Description copied from interface: ParameterMap
Returns a long parameter value in the map, returning the defaultValue if no value was found.

Specified by:
getLong in interface ParameterMap
Parameters:
parameterName - the parameter name
defaultValue - the default
Returns:
the long parameter value
Throws:
org.springframework.binding.convert.ConversionException - when the value could not be converted

getRequiredLong

public java.lang.Long getRequiredLong(java.lang.String parameterName)
                               throws java.lang.IllegalArgumentException,
                                      org.springframework.binding.convert.ConversionException
Description copied from interface: ParameterMap
Returns a long parameter value in the map, throwing an exception if the parameter is not present or could not be converted.

Specified by:
getRequiredLong in interface ParameterMap
Parameters:
parameterName - the parameter name
Returns:
the long parameter value
Throws:
java.lang.IllegalArgumentException - if the parameter is not present
org.springframework.binding.convert.ConversionException - when the value could not be converted

getBoolean

public java.lang.Boolean getBoolean(java.lang.String parameterName)
                             throws org.springframework.binding.convert.ConversionException
Description copied from interface: ParameterMap
Returns a boolean parameter value in the map, returning null if no value was found.

Specified by:
getBoolean in interface ParameterMap
Parameters:
parameterName - the parameter name
Returns:
the long parameter value
Throws:
org.springframework.binding.convert.ConversionException - when the value could not be converted

getBoolean

public java.lang.Boolean getBoolean(java.lang.String parameterName,
                                    java.lang.Boolean defaultValue)
                             throws org.springframework.binding.convert.ConversionException
Description copied from interface: ParameterMap
Returns a boolean parameter value in the map, returning the defaultValue if no value was found.

Specified by:
getBoolean in interface ParameterMap
Parameters:
parameterName - the parameter name
defaultValue - the default
Returns:
the boolean parameter value
Throws:
org.springframework.binding.convert.ConversionException - when the value could not be converted

getRequiredBoolean

public java.lang.Boolean getRequiredBoolean(java.lang.String parameterName)
                                     throws java.lang.IllegalArgumentException,
                                            org.springframework.binding.convert.ConversionException
Description copied from interface: ParameterMap
Returns a boolean parameter value in the map, throwing an exception if the parameter is not present or could not be converted.

Specified by:
getRequiredBoolean in interface ParameterMap
Parameters:
parameterName - the parameter name
Returns:
the boolean parameter value
Throws:
java.lang.IllegalArgumentException - if the parameter is not present
org.springframework.binding.convert.ConversionException - when the value could not be converted

getMultipartFile

public org.springframework.web.multipart.MultipartFile getMultipartFile(java.lang.String parameterName)
Description copied from interface: ParameterMap
Get a multi-part file parameter value, returning null if no value is found.

Specified by:
getMultipartFile in interface ParameterMap
Parameters:
parameterName - the parameter name
Returns:
the multipart file

getRequiredMultipartFile

public org.springframework.web.multipart.MultipartFile getRequiredMultipartFile(java.lang.String parameterName)
                                                                         throws java.lang.IllegalArgumentException
Description copied from interface: ParameterMap
Get the value of a required multipart file parameter.

Specified by:
getRequiredMultipartFile in interface ParameterMap
Parameters:
parameterName - the name of the parameter
Returns:
the parameter value
Throws:
java.lang.IllegalArgumentException - when the parameter is not found

asAttributeMap

public AttributeMap asAttributeMap()
Description copied from interface: ParameterMap
Adapts this parameter map to an AttributeMap.

Specified by:
asAttributeMap in interface ParameterMap
Returns:
the underlying map as a unmodifiable attribute map

initParameters

protected void initParameters(java.util.Map parameters)
Initializes this parameter map.

Parameters:
parameters - the parameters

getMapInternal

protected java.util.Map getMapInternal()
Returns the wrapped, modifiable map implementation.


toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object


Copyright © 2009 Spring Framework. All Rights Reserved.