KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > apache > ojb > broker > util > configuration > Configuration


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

17
18 import org.apache.ojb.broker.util.logging.Logger;
19
20 /**
21  * The <code>Configuration</code> interface defines lookup-methods to lookup
22  * typed configuration-values.
23  * For example <code>boolean getBoolean(String key, boolean defaultValue)</code>
24  * looks up a boolean value associated with <code>key</code>.
25  * If no value is found for <code>key</code> the boolean <code>defaultValue</code>
26  * is returned.
27  * @author Thomas Mahler
28  * @version $Id: Configuration.java,v 1.5.2.1 2005/12/21 22:28:15 tomdz Exp $
29  */

30 public interface Configuration
31 {
32
33     /**
34      * this method allows to set a logger that tracks configuration events.
35      * @param loggerInstance the logger to set
36      */

37     public void setLogger(Logger loggerInstance);
38
39     /**
40      * Returns the boolean value for the specified key. If no value for this key
41      * is found in the configuration or the value is not an legal boolean
42      * <code>defaultValue</code> is returned.
43      *
44      * @param key the key
45      * @param defaultValue the default Value
46      * @return the value for the key, or <code>defaultValue</code>
47      */

48     public boolean getBoolean(String JavaDoc key, boolean defaultValue);
49
50     /**
51      * Returns the class specified by the value for the specified key. If no
52      * value for this key is found in the configuration, no class of this name
53      * can be found or the specified class is not assignable
54      * <code>assignable</code> <code>defaultValue</code> is returned.
55      *
56      * @param key the key
57      * @param defaultValue the default Value
58      * @param assignable a classe and/or interface the specified class must
59      * extend/implement.
60      * @return the value for the key, or <code>defaultValue</code>
61      */

62     public Class JavaDoc getClass(String JavaDoc key, Class JavaDoc defaultValue, Class JavaDoc assignable);
63
64     /**
65      * Returns the class specified by the value for the specified key. If no
66      * value for this key is found in the configuration, no class of this name
67      * can be found or the specified class is not assignable to each
68      * class/interface in <code>assignables</code> <code>defaultValue</code> is
69      * returned.
70      *
71      * @param key the key
72      * @param defaultValue the default Value
73      * @param assignables classes and/or interfaces the specified class must
74      * extend/implement.
75      * @return the value for the key, or <code>defaultValue</code>
76      */

77     public Class JavaDoc getClass(String JavaDoc key, Class JavaDoc defaultValue, Class JavaDoc[] assignables);
78
79     /**
80      * Returns the class specified by the value for the specified key. If no
81      * value for this key is found in the configuration or no class of this name
82      * can be found <code>defaultValue</code> is returned.
83      *
84      * @param key the key
85      * @param defaultValue the default Value
86      * @return the value for the key, or <code>defaultValue</code>
87      */

88     public Class JavaDoc getClass(String JavaDoc key, Class JavaDoc defaultValue);
89
90     /**
91      * Returns the integer value for the specified key. If no value for this key
92      * is found in the configuration or the value is not an legal integer
93      * <code>defaultValue</code> is returned.
94      *
95      * @param key the key
96      * @param defaultValue the default Value
97      * @return the value for the key, or <code>defaultValue</code>
98      */

99     public int getInteger(String JavaDoc key, int defaultValue);
100
101     /**
102      * Returns the string value for the specified key. If no value for this key
103      * is found in the configuration <code>defaultValue</code> is returned.
104      *
105      * @param key the key
106      * @param defaultValue the default value
107      * @return the value for the key, or <code>defaultValue</code>
108      */

109     public String JavaDoc getString(String JavaDoc key, String JavaDoc defaultValue);
110
111     /**
112      * Gets an array of Strings from the value of the specified key, seperated
113      * by any key from <code>seperators</code>. If no value for this key
114      * is found the array contained in <code>defaultValue</code> is returned.
115      *
116      * @param key the key
117      * @param defaultValue the default Value
118      * @param seperators the seprators to be used
119      * @return the strings for the key, or the strings contained in
120      * <code>defaultValue</code>
121      */

122     public String JavaDoc[] getStrings(String JavaDoc key, String JavaDoc defaultValue, String JavaDoc seperators);
123
124     /**
125      * Gets an array of Strings from the value of the specified key, seperated
126      * by ";". If no value for this key
127      * is found the array contained in <code>defaultValue</code> is returned.
128      *
129      * @param key the key
130      * @param defaultValue the default Value
131      * @return the strings for the key, or the strings contained in
132      * <code>defaultValue</code>
133      */

134     public String JavaDoc[] getStrings(String JavaDoc key, String JavaDoc defaultValue);
135 }
136
Popular Tags