Class DefaultContext
- java.lang.Object
-
- org.apache.avalon.framework.context.DefaultContext
-
- All Implemented Interfaces:
java.io.Serializable
,org.apache.avalon.framework.context.Context
public class DefaultContext extends java.lang.Object implements org.apache.avalon.framework.context.Context, java.io.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:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static class
DefaultContext.Hidden
-
Field Summary
Fields Modifier and Type Field Description private static DefaultContext.Hidden
HIDDEN_MAKER
private java.util.Map
m_contextData
private org.apache.avalon.framework.context.Context
m_parent
private boolean
m_readOnly
-
Constructor Summary
Constructors Constructor Description DefaultContext()
Create a Context with no parent.DefaultContext(java.util.Map contextData)
Create a Context with specified data.DefaultContext(java.util.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
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
checkWriteable()
Utility method to check if context is writeable and if not throw exception.boolean
equals(java.lang.Object o)
Check for equality between two DefaultContext objects.java.lang.Object
get(java.lang.Object key)
Retrieve an item from the Context.protected java.util.Map
getContextData()
Utility method to retrieve context data.protected org.apache.avalon.framework.context.Context
getParent()
Get parent context if any.int
hashCode()
void
hide(java.lang.Object key)
Hides the item in the context.void
makeReadOnly()
Make the context read-only.void
put(java.lang.Object key, java.lang.Object value)
Helper method fo adding items to Context.
-
-
-
Field Detail
-
HIDDEN_MAKER
private static final DefaultContext.Hidden HIDDEN_MAKER
-
m_contextData
private final java.util.Map m_contextData
-
m_parent
private final org.apache.avalon.framework.context.Context m_parent
-
m_readOnly
private boolean m_readOnly
-
-
Constructor Detail
-
DefaultContext
public DefaultContext(java.util.Map contextData, org.apache.avalon.framework.context.Context parent)
Create a Context with specified data and parent.- Parameters:
contextData
- the context dataparent
- the parent Context (may be null)
-
DefaultContext
public DefaultContext(java.util.Map contextData)
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 Detail
-
get
public java.lang.Object get(java.lang.Object key) throws org.apache.avalon.framework.context.ContextException
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
public void put(java.lang.Object key, java.lang.Object value) throws java.lang.IllegalStateException
Helper method fo adding items to Context.- Parameters:
key
- the items keyvalue
- the item- Throws:
java.lang.IllegalStateException
- if context is read only
-
hide
public void hide(java.lang.Object key) throws java.lang.IllegalStateException
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:
java.lang.IllegalStateException
- if context is read only
-
getContextData
protected final java.util.Map 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
protected final void checkWriteable() throws java.lang.IllegalStateException
Utility method to check if context is writeable and if not throw exception.- Throws:
java.lang.IllegalStateException
- if context is read only
-
equals
public boolean equals(java.lang.Object o)
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.
- Overrides:
equals
in classjava.lang.Object
- Since:
- 4.5
-
hashCode
public int hashCode()
- Overrides:
hashCode
in classjava.lang.Object
-
-