Package org.codehaus.plexus.context
Class DefaultContext
- java.lang.Object
-
- org.codehaus.plexus.context.DefaultContext
-
- All Implemented Interfaces:
Context
public class DefaultContext extends Object implements Context
Default implementation of Context. This implementation is a static hierarchial store. It has the normalget()
andput
methods. Thehide
method will hide a property. When a property has been hidden the containerContext will not search in the parent containerContext for the value.- Author:
- Avalon Development Team
-
-
Constructor Summary
Constructors Constructor Description DefaultContext()
Create an empty Context.DefaultContext(Map<Object,Object> contextData)
Create a Context with specified data.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
checkWriteable()
Utility method to check if containerContext is writeable and if not throw exception.boolean
contains(Object key)
Returns true if this context contains a value for the specified key.Object
get(Object key)
Returns the value of the key.Map<Object,Object>
getContextData()
Utility method to retrieve containerContext datavoid
hide(Object key)
Hides the item in the containerContext.void
makeReadOnly()
Make the containerContext read-only.void
put(Object key, Object value)
Adds the item to the containerContext.String
toString()
-
-
-
Constructor Detail
-
DefaultContext
public DefaultContext()
Create an empty Context.
-
DefaultContext
public DefaultContext(Map<Object,Object> contextData)
Create a Context with specified data. The specified data is copied into the context so any subsequent updates to supplied map are not reflected in this context. Additionally, changes to this context are not reflected in the specified map.- Parameters:
contextData
- the containerContext data
-
-
Method Detail
-
contains
public boolean contains(Object key)
Description copied from interface:Context
Returns true if this context contains a value for the specified key.
-
get
public Object get(Object key) throws ContextException
Description copied from interface:Context
Returns the value of the key. If the key can't be found it will throw a exception.- Specified by:
get
in interfaceContext
- Parameters:
key
- the key of the value to look up.- Returns:
- returns the value associated with the key
- Throws:
ContextException
- if the key doesn't exist
-
put
public void put(Object key, Object value) throws IllegalStateException
Description copied from interface:Context
Adds the item to the containerContext.- Specified by:
put
in interfaceContext
- Parameters:
key
- the key of the itemvalue
- the item- Throws:
IllegalStateException
- if this context is read-only
-
hide
public void hide(Object key) throws IllegalStateException
Description copied from interface:Context
Hides the item in the containerContext. After remove(key) has been called, a get(key) will always fail, even if the parent containerContext has such a mapping.- Specified by:
hide
in interfaceContext
- Parameters:
key
- the items key- Throws:
IllegalStateException
- if this context is read-only
-
getContextData
public Map<Object,Object> getContextData()
Utility method to retrieve containerContext data- Specified by:
getContextData
in interfaceContext
- Returns:
- the containerContext data
-
makeReadOnly
public void makeReadOnly()
Make the containerContext read-only. Any attempt to write to the containerContext via put() will result in an IllegalStateException.- Specified by:
makeReadOnly
in interfaceContext
-
checkWriteable
protected void checkWriteable() throws IllegalStateException
Utility method to check if containerContext is writeable and if not throw exception.- Throws:
IllegalStateException
- if containerContext is read only
-
-