org.springframework.webflow.core.collection
Interface AttributeMap

All Superinterfaces:
MapAdaptable
All Known Subinterfaces:
MutableAttributeMap, SharedAttributeMap
All Known Implementing Classes:
LocalAttributeMap, LocalSharedAttributeMap

public interface AttributeMap
extends MapAdaptable

An immutable interface for accessing attributes in a backing map with string keys.

Implementations can optionally support listeners that will be notified when they're bound in or unbound from the map.

Author:
Keith Donald

Method Summary
 boolean contains(String attributeName)
          Does the attribute with the provided name exist in this map?
 boolean contains(String attributeName, Class requiredType)
          Does the attribute with the provided name exist in this map and is its value of the specified required type?
 Object get(String attributeName)
          Get an attribute value out of this map, returning null if not found.
 Object get(String attributeName, Class requiredType)
          Get an attribute value, asserting the value is of the required type.
 Object get(String attributeName, Class requiredType, Object defaultValue)
          Get an attribute value, asserting the value is of the required type and returning the default value if not found.
 Object get(String attributeName, Object defaultValue)
          Get an attribute value, returning the default value if no value is found.
 Object[] getArray(String attributeName, Class requiredType)
          Returns an array attribute value in the map and makes sure it is of the required type.
 Boolean getBoolean(String attributeName)
          Returns a boolean attribute value in the map, returning null if no value was found.
 Boolean getBoolean(String attributeName, Boolean defaultValue)
          Returns a boolean attribute value in the map, returning the default value if no value was found.
 Collection getCollection(String attributeName)
          Returns a collection attribute value in the map.
 Collection getCollection(String attributeName, Class requiredType)
          Returns a collection attribute value in the map and make sure it is of the required type.
 Integer getInteger(String attributeName)
          Returns an integer attribute value in the map, returning null if no value was found.
 Integer getInteger(String attributeName, Integer defaultValue)
          Returns an integer attribute value in the map, returning the default value if no value was found.
 Long getLong(String attributeName)
          Returns a long attribute value in the map, returning null if no value was found.
 Long getLong(String attributeName, Long defaultValue)
          Returns a long attribute value in the map, returning the default value if no value was found.
 Number getNumber(String attributeName, Class requiredType)
          Returns a number attribute value in the map that is of the specified type, returning null if no value was found.
 Number getNumber(String attributeName, Class requiredType, Number defaultValue)
          Returns a number attribute value in the map of the specified type, returning the default value if no value was found.
 Object getRequired(String attributeName)
          Get the value of a required attribute, throwing an exception of no attribute is found.
 Object getRequired(String attributeName, Class requiredType)
          Get the value of a required attribute and make sure it is of the required type.
 Object[] getRequiredArray(String attributeName, Class requiredType)
          Returns an array attribute value in the map, throwing an exception if the attribute is not present or not an array of the required type.
 Boolean getRequiredBoolean(String attributeName)
          Returns a boolean attribute value in the map, throwing an exception if the attribute is not present and of the correct type.
 Collection getRequiredCollection(String attributeName)
          Returns a collection attribute value in the map, throwing an exception if the attribute is not present or not a collection.
 Collection getRequiredCollection(String attributeName, Class requiredType)
          Returns a collection attribute value in the map, throwing an exception if the attribute is not present or not a collection of the required type.
 Integer getRequiredInteger(String attributeName)
          Returns an integer attribute value in the map, throwing an exception if the attribute is not present and of the correct type.
 Long getRequiredLong(String attributeName)
          Returns a long attribute value in the map, throwing an exception if the attribute is not present and of the correct type.
 Number getRequiredNumber(String attributeName, Class requiredType)
          Returns a number attribute value in the map, throwing an exception if the attribute is not present and of the correct type.
 String getRequiredString(String attributeName)
          Returns a string attribute value in the map, throwing an exception if the attribute is not present and of the correct type.
 String getString(String attributeName)
          Returns a string attribute value in the map, returning null if no value was found.
 String getString(String attributeName, String defaultValue)
          Returns a string attribute value in the map, returning the default value if no value was found.
 boolean isEmpty()
          Is this attribute map empty with a size of 0?
 int size()
          Returns the size of this map.
 AttributeMap union(AttributeMap attributes)
          Returns a new attribute map containing the union of this map with the provided map.
 
Methods inherited from interface org.springframework.binding.collection.MapAdaptable
asMap
 

Method Detail

get

Object get(String attributeName)
Get an attribute value out of this map, returning null if not found.

Parameters:
attributeName - the attribute name
Returns:
the attribute value

size

int size()
Returns the size of this map.

Returns:
the number of entries in the map

isEmpty

boolean isEmpty()
Is this attribute map empty with a size of 0?

Returns:
true if empty, false if not

contains

boolean contains(String attributeName)
Does the attribute with the provided name exist in this map?

Parameters:
attributeName - the attribute name
Returns:
true if so, false otherwise

contains

boolean contains(String attributeName,
                 Class requiredType)
                 throws IllegalArgumentException
Does the attribute with the provided name exist in this map and is its value of the specified required type?

Parameters:
attributeName - the attribute name
requiredType - the required class of the attribute value
Returns:
true if so, false otherwise
Throws:
IllegalArgumentException - when the value is not of the required type

get

Object get(String attributeName,
           Object defaultValue)
Get an attribute value, returning the default value if no value is found.

Parameters:
attributeName - the name of the attribute
defaultValue - the default value
Returns:
the attribute value, falling back to the default if no such attribute exists

get

Object get(String attributeName,
           Class requiredType)
           throws IllegalArgumentException
Get an attribute value, asserting the value is of the required type.

Parameters:
attributeName - the name of the attribute
requiredType - the required type of the attribute value
Returns:
the attribute value, or null if not found
Throws:
IllegalArgumentException - when the value is not of the required type

get

Object get(String attributeName,
           Class requiredType,
           Object defaultValue)
           throws IllegalStateException
Get an attribute value, asserting the value is of the required type and returning the default value if not found.

Parameters:
attributeName - the name of the attribute
requiredType - the value required type
defaultValue - the default value
Returns:
the attribute value, or the default if not found
Throws:
IllegalArgumentException - when the value (if found) is not of the required type
IllegalStateException

getRequired

Object getRequired(String attributeName)
                   throws IllegalArgumentException
Get the value of a required attribute, throwing an exception of no attribute is found.

Parameters:
attributeName - the name of the attribute
Returns:
the attribute value
Throws:
IllegalArgumentException - when the attribute is not found

getRequired

Object getRequired(String attributeName,
                   Class requiredType)
                   throws IllegalArgumentException
Get the value of a required attribute and make sure it is of the required type.

Parameters:
attributeName - name of the attribute to get
requiredType - the required type of the attribute value
Returns:
the attribute value
Throws:
IllegalArgumentException - when the attribute is not found or not of the required type

getString

String getString(String attributeName)
                 throws IllegalArgumentException
Returns a string attribute value in the map, returning null if no value was found.

Parameters:
attributeName - the attribute name
Returns:
the string attribute value
Throws:
IllegalArgumentException - if the attribute is present but not a string

getString

String getString(String attributeName,
                 String defaultValue)
                 throws IllegalArgumentException
Returns a string attribute value in the map, returning the default value if no value was found.

Parameters:
attributeName - the attribute name
defaultValue - the default
Returns:
the string attribute value
Throws:
IllegalArgumentException - if the attribute is present but not a string

getRequiredString

String getRequiredString(String attributeName)
                         throws IllegalArgumentException
Returns a string attribute value in the map, throwing an exception if the attribute is not present and of the correct type.

Parameters:
attributeName - the attribute name
Returns:
the string attribute value
Throws:
IllegalArgumentException - if the attribute is not present or present but not a string

getCollection

Collection getCollection(String attributeName)
                         throws IllegalArgumentException
Returns a collection attribute value in the map.

Parameters:
attributeName - the attribute name
Returns:
the collection attribute value
Throws:
IllegalArgumentException - if the attribute is present but not a collection

getCollection

Collection getCollection(String attributeName,
                         Class requiredType)
                         throws IllegalArgumentException
Returns a collection attribute value in the map and make sure it is of the required type.

Parameters:
attributeName - the attribute name
requiredType - the required type of the attribute value
Returns:
the collection attribute value
Throws:
IllegalArgumentException - if the attribute is present but not a collection of the required type

getRequiredCollection

Collection getRequiredCollection(String attributeName)
                                 throws IllegalArgumentException
Returns a collection attribute value in the map, throwing an exception if the attribute is not present or not a collection.

Parameters:
attributeName - the attribute name
Returns:
the collection attribute value
Throws:
IllegalArgumentException - if the attribute is not present or is present but not a collection

getRequiredCollection

Collection getRequiredCollection(String attributeName,
                                 Class requiredType)
                                 throws IllegalArgumentException
Returns a collection attribute value in the map, throwing an exception if the attribute is not present or not a collection of the required type.

Parameters:
attributeName - the attribute name
requiredType - the required collection type
Returns:
the collection attribute value
Throws:
IllegalArgumentException - if the attribute is not present or is present but not a collection of the required type

getArray

Object[] getArray(String attributeName,
                  Class requiredType)
                  throws IllegalArgumentException
Returns an array attribute value in the map and makes sure it is of the required type.

Parameters:
attributeName - the attribute name
requiredType - the required type of the attribute value
Returns:
the array attribute value
Throws:
IllegalArgumentException - if the attribute is present but not an array of the required type

getRequiredArray

Object[] getRequiredArray(String attributeName,
                          Class requiredType)
                          throws IllegalArgumentException
Returns an array attribute value in the map, throwing an exception if the attribute is not present or not an array of the required type.

Parameters:
attributeName - the attribute name
requiredType - the required array type
Returns:
the collection attribute value
Throws:
IllegalArgumentException - if the attribute is not present or is present but not a array of the required type

getNumber

Number getNumber(String attributeName,
                 Class requiredType)
                 throws IllegalArgumentException
Returns a number attribute value in the map that is of the specified type, returning null if no value was found.

Parameters:
attributeName - the attribute name
requiredType - the required number type
Returns:
the number attribute value
Throws:
IllegalArgumentException - if the attribute is present but not a number of the required type

getNumber

Number getNumber(String attributeName,
                 Class requiredType,
                 Number defaultValue)
                 throws IllegalArgumentException
Returns a number attribute value in the map of the specified type, returning the default value if no value was found.

Parameters:
attributeName - the attribute name
defaultValue - the default
Returns:
the number attribute value
Throws:
IllegalArgumentException - if the attribute is present but not a number of the required type

getRequiredNumber

Number getRequiredNumber(String attributeName,
                         Class requiredType)
                         throws IllegalArgumentException
Returns a number attribute value in the map, throwing an exception if the attribute is not present and of the correct type.

Parameters:
attributeName - the attribute name
Returns:
the number attribute value
Throws:
IllegalArgumentException - if the attribute is not present or present but not a number of the required type

getInteger

Integer getInteger(String attributeName)
                   throws IllegalArgumentException
Returns an integer attribute value in the map, returning null if no value was found.

Parameters:
attributeName - the attribute name
Returns:
the integer attribute value
Throws:
IllegalArgumentException - if the attribute is present but not an integer

getInteger

Integer getInteger(String attributeName,
                   Integer defaultValue)
                   throws IllegalArgumentException
Returns an integer attribute value in the map, returning the default value if no value was found.

Parameters:
attributeName - the attribute name
defaultValue - the default
Returns:
the integer attribute value
Throws:
IllegalArgumentException - if the attribute is present but not an integer

getRequiredInteger

Integer getRequiredInteger(String attributeName)
                           throws IllegalArgumentException
Returns an integer attribute value in the map, throwing an exception if the attribute is not present and of the correct type.

Parameters:
attributeName - the attribute name
Returns:
the integer attribute value
Throws:
IllegalArgumentException - if the attribute is not present or present but not an integer

getLong

Long getLong(String attributeName)
             throws IllegalArgumentException
Returns a long attribute value in the map, returning null if no value was found.

Parameters:
attributeName - the attribute name
Returns:
the long attribute value
Throws:
IllegalArgumentException - if the attribute is present but not a long

getLong

Long getLong(String attributeName,
             Long defaultValue)
             throws IllegalArgumentException
Returns a long attribute value in the map, returning the default value if no value was found.

Parameters:
attributeName - the attribute name
defaultValue - the default
Returns:
the long attribute value
Throws:
IllegalArgumentException - if the attribute is present but not a long

getRequiredLong

Long getRequiredLong(String attributeName)
                     throws IllegalArgumentException
Returns a long attribute value in the map, throwing an exception if the attribute is not present and of the correct type.

Parameters:
attributeName - the attribute name
Returns:
the long attribute value
Throws:
IllegalArgumentException - if the attribute is not present or present but not a long

getBoolean

Boolean getBoolean(String attributeName)
                   throws IllegalArgumentException
Returns a boolean attribute value in the map, returning null if no value was found.

Parameters:
attributeName - the attribute name
Returns:
the long attribute value
Throws:
IllegalArgumentException - if the attribute is present but not a boolean

getBoolean

Boolean getBoolean(String attributeName,
                   Boolean defaultValue)
                   throws IllegalArgumentException
Returns a boolean attribute value in the map, returning the default value if no value was found.

Parameters:
attributeName - the attribute name
defaultValue - the default
Returns:
the boolean attribute value
Throws:
IllegalArgumentException - if the attribute is present but not a boolean

getRequiredBoolean

Boolean getRequiredBoolean(String attributeName)
                           throws IllegalArgumentException
Returns a boolean attribute value in the map, throwing an exception if the attribute is not present and of the correct type.

Parameters:
attributeName - the attribute name
Returns:
the boolean attribute value
Throws:
IllegalArgumentException - if the attribute is not present or present but is not a boolean

union

AttributeMap union(AttributeMap attributes)
Returns a new attribute map containing the union of this map with the provided map.

Parameters:
attributes - the map to combine with this map
Returns:
a new, combined map