Class DefaultContext
java.lang.Object
org.apache.avalon.framework.context.DefaultContext
- All Implemented Interfaces:
Serializable
,org.apache.avalon.framework.context.Context
public class DefaultContext
extends Object
implements org.apache.avalon.framework.context.Context, Serializable
Default implementation of Context.
This implementation is a static hierarchial store.
- Version:
- $Id: DefaultContext.java 35590 2004-08-02 09:48:59 -0500 (Mon, 02 Aug 2004) niclas $
- Author:
- Avalon Development Team
- See Also:
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final DefaultContext.Hidden
private final Map
private final org.apache.avalon.framework.context.Context
private boolean
-
Constructor Summary
ConstructorsConstructorDescriptionCreate a Context with no parent.DefaultContext
(Map contextData) Create a Context with specified data.DefaultContext
(Map contextData, org.apache.avalon.framework.context.Context parent) Create a Context with specified data and parent.DefaultContext
(org.apache.avalon.framework.context.Context parent) Create a Context with specified parent. -
Method Summary
Modifier and TypeMethodDescriptionprotected final void
Utility method to check if context is writeable and if not throw exception.boolean
Check for equality between two DefaultContext objects.Retrieve an item from the Context.protected final Map
Utility method to retrieve context data.protected final org.apache.avalon.framework.context.Context
Get parent context if any.int
hashCode()
void
Hides the item in the context.void
Make the context read-only.void
Helper method fo adding items to Context.
-
Field Details
-
HIDDEN_MAKER
-
m_contextData
-
m_parent
private final org.apache.avalon.framework.context.Context m_parent -
m_readOnly
private boolean m_readOnly
-
-
Constructor Details
-
DefaultContext
Create a Context with specified data and parent.- Parameters:
contextData
- the context dataparent
- the parent Context (may be null)
-
DefaultContext
Create a Context with specified data.- Parameters:
contextData
- the context data
-
DefaultContext
public DefaultContext(org.apache.avalon.framework.context.Context parent) Create a Context with specified parent.- Parameters:
parent
- the parent Context (may be null)
-
DefaultContext
public DefaultContext()Create a Context with no parent.
-
-
Method Details
-
get
Retrieve an item from the Context.- Specified by:
get
in interfaceorg.apache.avalon.framework.context.Context
- Parameters:
key
- the key of item- Returns:
- the item stored in context
- Throws:
org.apache.avalon.framework.context.ContextException
- if item not present
-
put
Helper method fo adding items to Context.- Parameters:
key
- the items keyvalue
- the item- Throws:
IllegalStateException
- if context is read only
-
hide
Hides the item in the context. After remove(key) has been called, a get(key) will always fail, even if the parent context has such a mapping.- Parameters:
key
- the items key- Throws:
IllegalStateException
- if context is read only
-
getContextData
Utility method to retrieve context data.- Returns:
- the context data
-
getParent
protected final org.apache.avalon.framework.context.Context getParent()Get parent context if any.- Returns:
- the parent Context (may be null)
-
makeReadOnly
public void makeReadOnly()Make the context read-only. Any attempt to write to the context via put() will result in an IllegalStateException. -
checkWriteable
Utility method to check if context is writeable and if not throw exception.- Throws:
IllegalStateException
- if context is read only
-
equals
Check for equality between two DefaultContext objects.Equality is said to be true if, and only if, the following criteria are met;
- They are both of the same class.
- They both have the same parent.
- The content of the context map are identical, i.e HashMap.equals()
- The have the same readOnly state.
-
hashCode
public int hashCode()
-