|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
The main Configuration interface.
This interface allows accessing and manipulating a configuration object.
The major part of the methods defined in this interface deals with accessing
properties of various data types. There is a generic getProperty()
method, which returns the value of the queried property in its raw data
type. Other getter methods try to convert this raw data type into a specific
data type. If this fails, a ConversionException
will be thrown.
For most of the property getter methods an overloaded version exists that
allows to specify a default value, which will be returned if the queried
property cannot be found in the configuration. The behavior of the methods
that do not take a default value in case of a missing property is not defined
by this interface and depends on a concrete implementation. E.g. the
class, which is the base class
of most configuration implementations provided by this package, per default
returns null if a property is not found, but provides the
AbstractConfiguration
method, with which it can be configured to throw a setThrowExceptionOnMissing()
NoSuchElementException
exception in that case. (Note that getter methods for primitive types in
AbstractConfiguration
always throw an exception for missing
properties because there is no way of overloading the return value.)
With the addProperty()
and setProperty()
methods
new properties can be added to a configuration or the values of properties
can be changed. With clearProperty()
a property can be removed.
Other methods allow to iterate over the contained properties or to create
a subset configuration.
Method Summary | |
void |
addProperty(String key,
Object value)
Add a property to the configuration. |
void |
clear()
Remove all properties from the configuration. |
void |
clearProperty(String key)
Remove a property from the configuration. |
boolean |
containsKey(String key)
Check if the configuration contains the specified key. |
BigDecimal |
getBigDecimal(String key)
Get a BigDecimal associated with the given configuration key. |
BigDecimal |
getBigDecimal(String key,
BigDecimal defaultValue)
Get a BigDecimal associated with the given configuration key.
|
BigInteger |
getBigInteger(String key)
Get a BigInteger associated with the given configuration key. |
BigInteger |
getBigInteger(String key,
BigInteger defaultValue)
Get a BigInteger associated with the given configuration key.
|
boolean |
getBoolean(String key)
Get a boolean associated with the given configuration key. |
boolean |
getBoolean(String key,
boolean defaultValue)
Get a boolean associated with the given configuration key. |
Boolean |
getBoolean(String key,
Boolean defaultValue)
Get a Boolean associated with the given configuration key. |
byte |
getByte(String key)
Get a byte associated with the given configuration key. |
byte |
getByte(String key,
byte defaultValue)
Get a byte associated with the given configuration key. |
Byte |
getByte(String key,
Byte defaultValue)
Get a Byte associated with the given configuration key. |
double |
getDouble(String key)
Get a double associated with the given configuration key. |
double |
getDouble(String key,
double defaultValue)
Get a double associated with the given configuration key. |
Double |
getDouble(String key,
Double defaultValue)
Get a Double associated with the given configuration key. |
float |
getFloat(String key)
Get a float associated with the given configuration key. |
float |
getFloat(String key,
float defaultValue)
Get a float associated with the given configuration key. |
Float |
getFloat(String key,
Float defaultValue)
Get a Float associated with the given configuration key.
|
int |
getInt(String key)
Get a int associated with the given configuration key. |
int |
getInt(String key,
int defaultValue)
Get a int associated with the given configuration key. |
Integer |
getInteger(String key,
Integer defaultValue)
Get an Integer associated with the given configuration key.
|
Iterator |
getKeys()
Get the list of the keys contained in the configuration. |
Iterator |
getKeys(String prefix)
Get the list of the keys contained in the configuration that match the specified prefix. |
List |
getList(String key)
Get a List of strings associated with the given configuration key. |
List |
getList(String key,
List defaultValue)
Get a List of strings associated with the given configuration key. |
long |
getLong(String key)
Get a long associated with the given configuration key. |
long |
getLong(String key,
long defaultValue)
Get a long associated with the given configuration key. |
Long |
getLong(String key,
Long defaultValue)
Get a Long associated with the given configuration key.
|
Properties |
getProperties(String key)
Get a list of properties associated with the given configuration key. |
Object |
getProperty(String key)
Gets a property from the configuration. |
short |
getShort(String key)
Get a short associated with the given configuration key. |
short |
getShort(String key,
short defaultValue)
Get a short associated with the given configuration key. |
Short |
getShort(String key,
Short defaultValue)
Get a Short associated with the given configuration key.
|
String |
getString(String key)
Get a string associated with the given configuration key. |
String |
getString(String key,
String defaultValue)
Get a string associated with the given configuration key. |
String[] |
getStringArray(String key)
Get an array of strings associated with the given configuration key. |
boolean |
isEmpty()
Check if the configuration is empty. |
void |
setProperty(String key,
Object value)
Set a property, this will replace any previously set values. |
Configuration |
subset(String prefix)
Return a decorator Configuration containing every key from the current Configuration that starts with the specified prefix. |
Method Detail |
public Configuration subset(String prefix)
prefix.number = 1 prefix.string = Apache prefixed.foo = bar prefix = Jakartathe Configuration returned by
subset("prefix")
will contain
the properties:
number = 1 string = Apache = Jakarta(The key for the value "Jakarta" is an empty string)
Since the subset is a decorator and not a modified copy of the initial Configuration, any change made to the subset is available to the Configuration, and reciprocally.
prefix
- The prefix used to select the properties.SubsetConfiguration
public boolean isEmpty()
true
if the configuration contains no property,
false
otherwise.public boolean containsKey(String key)
key
- the key whose presence in this configuration is to be testedtrue
if the configuration contains a value for this
key, false
otherwisepublic void addProperty(String key, Object value)
resource.loader = fileis already present in the configuration and you call
addProperty("resource.loader", "classpath")Then you will end up with a List like the following:
["file", "classpath"]
key
- The key to add the property to.value
- The value to add.public void setProperty(String key, Object value)
key
- The key of the property to changevalue
- The new valuepublic void clearProperty(String key)
key
- the key to remove along with corresponding value.public void clear()
public Object getProperty(String key)
key
- property to retrievepublic Iterator getKeys(String prefix)
prefix
- The prefix to test against.getKeys()
public Iterator getKeys()
remove()
method is specific to
a concrete implementation. It may remove the corresponding
property from the configuration, but this is not guaranteed. In any case
it is no replacement for calling
clearProperty(String)
for this property. So it is
highly recommended to avoid using the iterator's remove()
method.public Properties getProperties(String key)
key=value
. These
strings are splitted at the equals sign, and the key parts will become
keys of the returned Properties
object, the value parts
become values.key
- The configuration key.ConversionException
- is thrown if the key maps to an
object that is not a String/List.IllegalArgumentException
- if one of the tokens is
malformed (does not contain an equals sign).public boolean getBoolean(String key)
key
- The configuration key.ConversionException
- is thrown if the key maps to an
object that is not a Boolean.public boolean getBoolean(String key, boolean defaultValue)
key
- The configuration key.defaultValue
- The default value.ConversionException
- is thrown if the key maps to an
object that is not a Boolean.public Boolean getBoolean(String key, Boolean defaultValue)
Boolean
associated with the given configuration key.key
- The configuration key.defaultValue
- The default value.ConversionException
- is thrown if the key maps to an
object that is not a Boolean.public byte getByte(String key)
key
- The configuration key.ConversionException
- is thrown if the key maps to an
object that is not a Byte.public byte getByte(String key, byte defaultValue)
key
- The configuration key.defaultValue
- The default value.ConversionException
- is thrown if the key maps to an
object that is not a Byte.public Byte getByte(String key, Byte defaultValue)
Byte
associated with the given configuration key.key
- The configuration key.defaultValue
- The default value.ConversionException
- is thrown if the key maps to an object that
is not a Byte.public double getDouble(String key)
key
- The configuration key.ConversionException
- is thrown if the key maps to an
object that is not a Double.public double getDouble(String key, double defaultValue)
key
- The configuration key.defaultValue
- The default value.ConversionException
- is thrown if the key maps to an
object that is not a Double.public Double getDouble(String key, Double defaultValue)
Double
associated with the given configuration key.key
- The configuration key.defaultValue
- The default value.ConversionException
- is thrown if the key maps to an
object that is not a Double.public float getFloat(String key)
key
- The configuration key.ConversionException
- is thrown if the key maps to an
object that is not a Float.public float getFloat(String key, float defaultValue)
key
- The configuration key.defaultValue
- The default value.ConversionException
- is thrown if the key maps to an
object that is not a Float.public Float getFloat(String key, Float defaultValue)
Float
associated with the given configuration key.
If the key doesn't map to an existing object, the default value
is returned.key
- The configuration key.defaultValue
- The default value.ConversionException
- is thrown if the key maps to an
object that is not a Float.public int getInt(String key)
key
- The configuration key.ConversionException
- is thrown if the key maps to an
object that is not a Integer.public int getInt(String key, int defaultValue)
key
- The configuration key.defaultValue
- The default value.ConversionException
- is thrown if the key maps to an
object that is not a Integer.public Integer getInteger(String key, Integer defaultValue)
Integer
associated with the given configuration key.
If the key doesn't map to an existing object, the default value
is returned.key
- The configuration key.defaultValue
- The default value.ConversionException
- is thrown if the key maps to an object that
is not a Integer.public long getLong(String key)
key
- The configuration key.ConversionException
- is thrown if the key maps to an
object that is not a Long.public long getLong(String key, long defaultValue)
key
- The configuration key.defaultValue
- The default value.ConversionException
- is thrown if the key maps to an
object that is not a Long.public Long getLong(String key, Long defaultValue)
Long
associated with the given configuration key.
If the key doesn't map to an existing object, the default value
is returned.key
- The configuration key.defaultValue
- The default value.ConversionException
- is thrown if the key maps to an
object that is not a Long.public short getShort(String key)
key
- The configuration key.ConversionException
- is thrown if the key maps to an
object that is not a Short.public short getShort(String key, short defaultValue)
key
- The configuration key.defaultValue
- The default value.ConversionException
- is thrown if the key maps to an
object that is not a Short.public Short getShort(String key, Short defaultValue)
Short
associated with the given configuration key.
If the key doesn't map to an existing object, the default value
is returned.key
- The configuration key.defaultValue
- The default value.ConversionException
- is thrown if the key maps to an
object that is not a Short.public BigDecimal getBigDecimal(String key)
BigDecimal
associated with the given configuration key.key
- The configuration key.public BigDecimal getBigDecimal(String key, BigDecimal defaultValue)
BigDecimal
associated with the given configuration key.
If the key doesn't map to an existing object, the default value
is returned.key
- The configuration key.defaultValue
- The default value.public BigInteger getBigInteger(String key)
BigInteger
associated with the given configuration key.key
- The configuration key.public BigInteger getBigInteger(String key, BigInteger defaultValue)
BigInteger
associated with the given configuration key.
If the key doesn't map to an existing object, the default value
is returned.key
- The configuration key.defaultValue
- The default value.public String getString(String key)
key
- The configuration key.ConversionException
- is thrown if the key maps to an object that
is not a String.public String getString(String key, String defaultValue)
key
- The configuration key.defaultValue
- The default value.ConversionException
- is thrown if the key maps to an object that
is not a String.public String[] getStringArray(String key)
key
- The configuration key.ConversionException
- is thrown if the key maps to an
object that is not a String/List of Strings.public List getList(String key)
key
- The configuration key.ConversionException
- is thrown if the key maps to an
object that is not a List.public List getList(String key, List defaultValue)
key
- The configuration key.defaultValue
- The default value.ConversionException
- is thrown if the key maps to an
object that is not a List.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |