Package org.apache.commons.chain.impl
Class ContextBase
Convenience base class for 
Context implementations.
 In addition to the minimal functionality required by the Context
 interface, this class implements the recommended support for
 Attribute-Property Transparency. This is implemented by
 analyzing the available JavaBeans properties of this class (or its
 subclass), exposes them as key-value pairs in the Map,
 with the key being the name of the property itself.
IMPLEMENTATION NOTE - Because empty is a
 read-only property defined by the Map interface, it may not
 be utilized as an attribute key or property name.
- Version:
 - $Revision$ $Date$
 - Author:
 - Craig R. McClanahan
 - See Also:
 
- 
Nested Class Summary
Nested classes/interfaces inherited from class java.util.AbstractMap
AbstractMap.SimpleEntry<K,V>, AbstractMap.SimpleImmutableEntry<K, V>  - 
Constructor Summary
ConstructorsConstructorDescriptionDefault, no argument constructor.ContextBase(Map<String, Object> map) Initialize the contents of thisContextby copying the values from the specifiedMap. - 
Method Summary
Modifier and TypeMethodDescriptionvoidclear()Override the defaultMapbehavior to clear all keys and values except those corresponding to JavaBeans properties.booleancontainsValue(Object value) Override the defaultMapbehavior to returntrueif the specified value is present in either the underlyingMapor one of the local property values.entrySet()Override the defaultMapbehavior to return aSetthat meets the specified default behavior except for attempts to remove the key for a property of theContextimplementation class, which will throwUnsupportedOperationException.Override the defaultMapbehavior to return the value of a local property if the specified key matches a local property name.booleanisEmpty()Override the defaultMapbehavior to returntrueif the underlyingMaponly contains key-value pairs for local properties (if any).keySet()Override the defaultMapbehavior to return aSetthat meets the specified default behavior except for attempts to remove the key for a property of theContextimplementation class, which will throwUnsupportedOperationException.Override the defaultMapbehavior to set the value of a local property if the specified key matches a local property name.voidOverride the defaultMapbehavior to call theput()method individually for each key-value pair in the specifiedMap.Override the defaultMapbehavior to throwUnsupportedOperationExceptionon any attempt to remove a key that is the name of a local property.values()Override the defaultMapbehavior to return aCollectionthat meets the specified default behavior except for attempts to remove the key for a property of theContextimplementation class, which will throwUnsupportedOperationException.Methods inherited from class java.util.HashMap
clone, compute, computeIfAbsent, computeIfPresent, containsKey, forEach, getOrDefault, merge, putIfAbsent, remove, replace, replace, replaceAll, sizeMethods inherited from class java.util.AbstractMap
equals, hashCode, toStringMethods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface java.util.Map
compute, computeIfAbsent, computeIfPresent, containsKey, equals, forEach, getOrDefault, hashCode, merge, putIfAbsent, remove, replace, replace, replaceAll, size 
- 
Constructor Details
- 
ContextBase
public ContextBase()Default, no argument constructor. - 
ContextBase
Initialize the contents of thisContextby copying the values from the specifiedMap. Any keys inmapthat correspond to local properties will cause the setter method for that property to be called.- Parameters:
 map- Map whose key-value pairs are added- Throws:
 IllegalArgumentException- if an exception is thrown writing a local property value.UnsupportedOperationException- if a local property does not have a write method.
 
 - 
 - 
Method Details
- 
clear
Override the defaultMapbehavior to clear all keys and values except those corresponding to JavaBeans properties. - 
containsValue
Override the defaultMapbehavior to returntrueif the specified value is present in either the underlyingMapor one of the local property values.- Specified by:
 containsValuein interfaceMap<String,Object> - Overrides:
 containsValuein classHashMap<String,Object> - Parameters:
 value- the value look for in the context.- Returns:
 trueif found in this context otherwisefalse.- Throws:
 IllegalArgumentException- if a property getter throws an exception
 - 
entrySet
Override the defaultMapbehavior to return aSetthat meets the specified default behavior except for attempts to remove the key for a property of theContextimplementation class, which will throwUnsupportedOperationException. - 
get
Override the defaultMapbehavior to return the value of a local property if the specified key matches a local property name.IMPLEMENTATION NOTE - If the specified
keyidentifies a write-only property,nullwill arbitrarily be returned, in order to avoid difficulties implementing the contracts of theMapinterface.- Specified by:
 getin interfaceMap<String,Object> - Overrides:
 getin classHashMap<String,Object> - Parameters:
 key- Key of the value to be returned- Returns:
 - The value for the specified key.
 - Throws:
 IllegalArgumentException- if an exception is thrown reading this local property value.UnsupportedOperationException- if this local property does not have a read method.
 - 
isEmpty
Override the defaultMapbehavior to returntrueif the underlyingMaponly contains key-value pairs for local properties (if any). - 
keySet
Override the defaultMapbehavior to return aSetthat meets the specified default behavior except for attempts to remove the key for a property of theContextimplementation class, which will throwUnsupportedOperationException. - 
put
Override the defaultMapbehavior to set the value of a local property if the specified key matches a local property name.- Specified by:
 putin interfaceMap<String,Object> - Overrides:
 putin classHashMap<String,Object> - Parameters:
 key- Key of the value to be stored or replacedvalue- New value to be stored- Returns:
 - The value added to the Context.
 - Throws:
 IllegalArgumentException- if an exception is thrown reading or writing this local property value.UnsupportedOperationException- if this local property does not have both a read method and a write method
 - 
putAll
Override the defaultMapbehavior to call theput()method individually for each key-value pair in the specifiedMap.- Specified by:
 putAllin interfaceMap<String,Object> - Overrides:
 putAllin classHashMap<String,Object> - Parameters:
 map-Mapcontaining key-value pairs to store (or replace)- Throws:
 IllegalArgumentException- if an exception is thrown reading or writing a local property value.UnsupportedOperationException- if a local property does not have both a read method and a write method
 - 
remove
Override the defaultMapbehavior to throwUnsupportedOperationExceptionon any attempt to remove a key that is the name of a local property. - 
values
Override the defaultMapbehavior to return aCollectionthat meets the specified default behavior except for attempts to remove the key for a property of theContextimplementation class, which will throwUnsupportedOperationException. 
 -