org.apache.avalon.framework.context
Class DefaultContext

java.lang.Object
  extended byorg.apache.avalon.framework.context.DefaultContext
All Implemented Interfaces:
Context, java.io.Serializable
Direct Known Subclasses:
OverridableContext

public class DefaultContext
extends java.lang.Object
implements Context, java.io.Serializable

Default implementation of Context. This implementation is a static hierarchial store.

Version:
$Id: DefaultContext.java 35590 2004-08-02 14:48:59Z niclas $
Author:
Avalon Development Team
See Also:
Serialized Form

Constructor Summary
DefaultContext()
          Create a Context with no parent.
DefaultContext(Context parent)
          Create a Context with specified parent.
DefaultContext(java.util.Map contextData)
          Create a Context with specified data.
DefaultContext(java.util.Map contextData, Context parent)
          Create a Context with specified data and parent.
 
Method Summary
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  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.
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DefaultContext

public DefaultContext(java.util.Map contextData,
                      Context parent)
Create a Context with specified data and parent.

Parameters:
contextData - the context data
parent - 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(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 ContextException
Retrieve an item from the Context.

Specified by:
get in interface Context
Parameters:
key - the key of item
Returns:
the item stored in context
Throws:
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 key
value - 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 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;

Since:
4.5

hashCode

public int hashCode()


Copyright © 1997-2005 The Apache Software Foundation. All Rights Reserved.