donaldp 2002/11/09 18:59:37
Modified: fortress/src/java/org/apache/excalibur/fortress/util
OverridableContext.java
Log:
Use hide rather than relying on a dummy null object
Revision Changes Path
1.11 +9 -33
jakarta-avalon-excalibur/fortress/src/java/org/apache/excalibur/fortress/util/OverridableContext.java
Index: OverridableContext.java
===================================================================
RCS file:
/home/cvs/jakarta-avalon-excalibur/fortress/src/java/org/apache/excalibur/fortress/util/OverridableContext.java,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -r1.10 -r1.11
--- OverridableContext.java 13 Aug 2002 07:57:27 -0000 1.10
+++ OverridableContext.java 10 Nov 2002 02:59:37 -0000 1.11
@@ -61,15 +61,9 @@
* @version CVS $Revision$ $Date$
* @since 4.1
*/
-public final class OverridableContext extends DefaultContext
+public final class OverridableContext
+ extends DefaultContext
{
- private final Null m_null = new Null();
-
- public OverridableContext()
- {
- super();
- }
-
public OverridableContext( Context parent )
{
super( parent );
@@ -78,36 +72,18 @@
public Object get( Object key )
throws ContextException
{
- Object value = super.get( key );
-
- if( m_null.equals( value ) )
- {
- throw new ContextException( "Could not return value for " + key );
- }
-
- return value;
+ return super.get( key );
}
- public void put( Object key, Object value )
+ public void put( final Object key, final Object value )
{
- super.put( key, ( value == null ) ? new Null() : value );
- }
-
- private static final class Null
- {
- public boolean equals( Object other )
+ if( null == value )
{
- return other instanceof Null;
+ hide( key );
}
-
- public int hashcode()
- {
- return 0;
- }
-
- public String toString()
+ else
{
- return "null";
+ super.put( key, value );
}
}
}
--
To unsubscribe, e-mail: <mailto:avalon-cvs-unsubscribe@;jakarta.apache.org>
For additional commands, e-mail: <mailto:avalon-cvs-help@;jakarta.apache.org>