KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > apache > avalon > fortress > util > OverridableContext


1 /*
2  * Copyright 2003-2004 The Apache Software Foundation
3  * Licensed under the Apache License, Version 2.0 (the "License");
4  * you may not use this file except in compliance with the License.
5  * You may obtain a copy of the License at
6  *
7  * http://www.apache.org/licenses/LICENSE-2.0
8  *
9  * Unless required by applicable law or agreed to in writing, software
10  * distributed under the License is distributed on an "AS IS" BASIS,
11  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
12  * implied.
13  *
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  */

17
18 package org.apache.avalon.fortress.util;
19
20 import org.apache.avalon.framework.context.Context;
21 import org.apache.avalon.framework.context.DefaultContext;
22
23 /**
24  * The OverridableContext allows you to "null" out entries, even if they are
25  * in a parent context.
26  *
27  * @author <a HREF="mailto:dev@avalon.apache.org">Avalon Development Team</a>
28  * @version CVS $Revision: 1.9 $ $Date: 2004/02/28 15:16:26 $
29  */

30 public final class OverridableContext
31     extends DefaultContext
32 {
33     /**
34      * Creation of a new overridable context.
35      * @param parent the parent context
36      */

37     public OverridableContext( final Context parent )
38     {
39         super( parent );
40     }
41
42     /**
43      * Add a context entry to the context.
44      * @param key the context key
45      * @param value the context value
46      */

47     public void put( final Object JavaDoc key, final Object JavaDoc value )
48     {
49         if ( null == value )
50         {
51             hide( key );
52         }
53         else
54         {
55             super.put( key, value );
56         }
57     }
58 }
59
Popular Tags