|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--java.util.Dictionary | +--java.util.Hashtable | +--org.apache.commons.collections.ExtendedProperties
This class extends normal Java properties by adding the possibility to use the same key many times concatenating the value strings instead of overwriting them.
The Extended Properties syntax is explained here:
key = value
Here is an example of a valid extended properties file:
# lines starting with # are comments # This is the simplest property key = value # A long property may be separated on multiple lines longvalue = aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa \ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa # This is a property with many tokens tokens_on_a_line = first token, second token # This sequence generates exactly the same result tokens_on_multiple_lines = first token tokens_on_multiple_lines = second token # commas may be escaped in tokens commas.excaped = Hi\, what'up?
NOTE: this class has not been written for performance nor low memory usage. In fact, it's way slower than it could be and generates too much memory garbage. But since performance is not an issue during intialization (and there is not much time to improve it), I wrote it this way. If you don't like it, go ahead and tune it up!
Constructor Summary | |
ExtendedProperties()
Creates an empty extended properties object. |
|
ExtendedProperties(java.lang.String file)
Creates and loads the extended properties from the specified file. |
|
ExtendedProperties(java.lang.String file,
java.lang.String defaultFile)
Creates and loads the extended properties from the specified file. |
Method Summary | |
void |
addProperty(java.lang.String key,
java.lang.Object token)
Add a property to the configuration. |
void |
clearProperty(java.lang.String key)
Clear a property in the configuration. |
void |
combine(ExtendedProperties c)
Combines an existing Hashtable with this Hashtable. |
static ExtendedProperties |
convertProperties(java.util.Properties p)
Convert a standard properties class into a configuration class. |
void |
display()
Display the configuration for debugging purposes. |
boolean |
getBoolean(java.lang.String key)
Get a boolean associated with the given configuration key. |
boolean |
getBoolean(java.lang.String key,
boolean defaultValue)
Get a boolean associated with the given configuration key. |
java.lang.Boolean |
getBoolean(java.lang.String key,
java.lang.Boolean defaultValue)
Get a boolean associated with the given configuration key. |
byte |
getByte(java.lang.String key)
Get a byte associated with the given configuration key. |
byte |
getByte(java.lang.String key,
byte defaultValue)
Get a byte associated with the given configuration key. |
java.lang.Byte |
getByte(java.lang.String key,
java.lang.Byte defaultValue)
Get a byte associated with the given configuration key. |
double |
getDouble(java.lang.String key)
Get a double associated with the given configuration key. |
double |
getDouble(java.lang.String key,
double defaultValue)
Get a double associated with the given configuration key. |
java.lang.Double |
getDouble(java.lang.String key,
java.lang.Double defaultValue)
Get a double associated with the given configuration key. |
float |
getFloat(java.lang.String key)
Get a float associated with the given configuration key. |
float |
getFloat(java.lang.String key,
float defaultValue)
Get a float associated with the given configuration key. |
java.lang.Float |
getFloat(java.lang.String key,
java.lang.Float defaultValue)
Get a float associated with the given configuration key. |
java.lang.String |
getInclude()
Gets the property value for including other properties files. |
int |
getInt(java.lang.String name)
The purpose of this method is to get the configuration resource with the given name as an integer. |
int |
getInt(java.lang.String name,
int def)
The purpose of this method is to get the configuration resource with the given name as an integer, or a default value. |
int |
getInteger(java.lang.String key)
Get a int associated with the given configuration key. |
int |
getInteger(java.lang.String key,
int defaultValue)
Get a int associated with the given configuration key. |
java.lang.Integer |
getInteger(java.lang.String key,
java.lang.Integer defaultValue)
Get a int associated with the given configuration key. |
java.util.Iterator |
getKeys()
Get the list of the keys contained in the configuration repository. |
java.util.Iterator |
getKeys(java.lang.String prefix)
Get the list of the keys contained in the configuration repository that match the specified prefix. |
long |
getLong(java.lang.String key)
Get a long associated with the given configuration key. |
long |
getLong(java.lang.String key,
long defaultValue)
Get a long associated with the given configuration key. |
java.lang.Long |
getLong(java.lang.String key,
java.lang.Long defaultValue)
Get a long associated with the given configuration key. |
java.util.Properties |
getProperties(java.lang.String key)
Get a list of properties associated with the given configuration key. |
java.util.Properties |
getProperties(java.lang.String key,
java.util.Properties defaults)
Get a list of properties associated with the given configuration key. |
java.lang.Object |
getProperty(java.lang.String key)
Gets a property from the configuration. |
short |
getShort(java.lang.String key)
Get a short associated with the given configuration key. |
short |
getShort(java.lang.String key,
short defaultValue)
Get a short associated with the given configuration key. |
java.lang.Short |
getShort(java.lang.String key,
java.lang.Short defaultValue)
Get a short associated with the given configuration key. |
java.lang.String |
getString(java.lang.String key)
Get a string associated with the given configuration key. |
java.lang.String |
getString(java.lang.String key,
java.lang.String defaultValue)
Get a string associated with the given configuration key. |
java.lang.String[] |
getStringArray(java.lang.String key)
Get an array of strings associated with the given configuration key. |
java.util.Vector |
getVector(java.lang.String key)
Get a Vector of strings associated with the given configuration key. |
java.util.Vector |
getVector(java.lang.String key,
java.util.Vector defaultValue)
Get a Vector of strings associated with the given configuration key. |
boolean |
isInitialized()
Indicate to client code whether property resources have been initialized or not. |
void |
load(java.io.InputStream input)
Load the properties from the given input stream. |
void |
load(java.io.InputStream input,
java.lang.String enc)
Load the properties from the given input stream and using the specified encoding. |
void |
save(java.io.OutputStream output,
java.lang.String Header)
Save the properties to the given outputstream. |
void |
setInclude(java.lang.String inc)
Sets the property value for including other properties files. |
void |
setProperty(java.lang.String key,
java.lang.Object value)
Set a property, this will replace any previously set values. |
ExtendedProperties |
subset(java.lang.String prefix)
Create an ExtendedProperties object that is a subset of this one. |
java.lang.String |
testBoolean(java.lang.String value)
Test whether the string represent by value maps to a boolean value or not. |
Methods inherited from class java.util.Hashtable |
clear, clone, contains, containsKey, containsValue, elements, entrySet, equals, get, hashCode, isEmpty, keys, keySet, put, putAll, remove, size, toString, values |
Methods inherited from class java.lang.Object |
getClass, notify, notifyAll, wait, wait, wait |
Constructor Detail |
public ExtendedProperties()
public ExtendedProperties(java.lang.String file) throws java.io.IOException
file
- A String.
IOException.
java.io.IOException
public ExtendedProperties(java.lang.String file, java.lang.String defaultFile) throws java.io.IOException
file
- A String.
IOException.
java.io.IOException
Method Detail |
public boolean isInitialized()
public java.lang.String getInclude()
public void setInclude(java.lang.String inc)
inc
- A String.public void load(java.io.InputStream input) throws java.io.IOException
input
- An InputStream.
IOException.
java.io.IOException
public void load(java.io.InputStream input, java.lang.String enc) throws java.io.IOException
input
- An InputStream.enc
- An encoding.
IOException.
java.io.IOException
public java.lang.Object getProperty(java.lang.String key)
key
- property to retrieve
public void addProperty(java.lang.String key, java.lang.Object token)
public void setProperty(java.lang.String key, java.lang.Object value)
public void save(java.io.OutputStream output, java.lang.String Header) throws java.io.IOException
output
- An OutputStream.
IOException.
java.io.IOException
public void combine(ExtendedProperties c)
public void clearProperty(java.lang.String key)
public java.util.Iterator getKeys()
public java.util.Iterator getKeys(java.lang.String prefix)
prefix
- The prefix to test against.
public ExtendedProperties subset(java.lang.String prefix)
public void display()
public java.lang.String getString(java.lang.String key)
key
- The configuration key.
java.lang.ClassCastException
- is thrown if the key maps to an
object that is not a String.public java.lang.String getString(java.lang.String key, java.lang.String defaultValue)
key
- The configuration key.defaultValue
- The default value.
java.lang.ClassCastException
- is thrown if the key maps to an
object that is not a String.public java.util.Properties getProperties(java.lang.String key)
key
- The configuration key.
java.lang.ClassCastException
- is thrown if the key maps to an
object that is not a String/Vector.
java.lang.IllegalArgumentException
- if one of the tokens is
malformed (does not contain an equals sign).public java.util.Properties getProperties(java.lang.String key, java.util.Properties defaults)
key
- The configuration key.
java.lang.ClassCastException
- is thrown if the key maps to an
object that is not a String/Vector.
java.lang.IllegalArgumentException
- if one of the tokens is
malformed (does not contain an equals sign).public java.lang.String[] getStringArray(java.lang.String key)
key
- The configuration key.
java.lang.ClassCastException
- is thrown if the key maps to an
object that is not a String/Vector.public java.util.Vector getVector(java.lang.String key)
key
- The configuration key.
java.lang.ClassCastException
- is thrown if the key maps to an
object that is not a Vector.public java.util.Vector getVector(java.lang.String key, java.util.Vector defaultValue)
key
- The configuration key.defaultValue
- The default value.
java.lang.ClassCastException
- is thrown if the key maps to an
object that is not a Vector.public boolean getBoolean(java.lang.String key)
key
- The configuration key.
java.util.NoSuchElementException
- is thrown if the key doesn't
map to an existing object.
java.lang.ClassCastException
- is thrown if the key maps to an
object that is not a Boolean.public boolean getBoolean(java.lang.String key, boolean defaultValue)
key
- The configuration key.defaultValue
- The default value.
java.lang.ClassCastException
- is thrown if the key maps to an
object that is not a Boolean.public java.lang.Boolean getBoolean(java.lang.String key, java.lang.Boolean defaultValue)
key
- The configuration key.defaultValue
- The default value.
java.lang.ClassCastException
- is thrown if the key maps to an
object that is not a Boolean.public java.lang.String testBoolean(java.lang.String value)
true
, on
,
and yes
for a true
boolean value, and
false
, off
, and no
for
false
boolean values. Case of value to test for
boolean status is ignored.
true
or false
if the supplied
text maps to a boolean value, or null
otherwise.public byte getByte(java.lang.String key)
key
- The configuration key.
java.util.NoSuchElementException
- is thrown if the key doesn't
map to an existing object.
java.lang.ClassCastException
- is thrown if the key maps to an
object that is not a Byte.
java.lang.NumberFormatException
- is thrown if the value mapped
by the key has not a valid number format.public byte getByte(java.lang.String key, byte defaultValue)
key
- The configuration key.defaultValue
- The default value.
java.lang.ClassCastException
- is thrown if the key maps to an
object that is not a Byte.
java.lang.NumberFormatException
- is thrown if the value mapped
by the key has not a valid number format.public java.lang.Byte getByte(java.lang.String key, java.lang.Byte defaultValue)
key
- The configuration key.defaultValue
- The default value.
java.lang.ClassCastException
- is thrown if the key maps to an
object that is not a Byte.
java.lang.NumberFormatException
- is thrown if the value mapped
by the key has not a valid number format.public short getShort(java.lang.String key)
key
- The configuration key.
java.util.NoSuchElementException
- is thrown if the key doesn't
map to an existing object.
java.lang.ClassCastException
- is thrown if the key maps to an
object that is not a Short.
java.lang.NumberFormatException
- is thrown if the value mapped
by the key has not a valid number format.public short getShort(java.lang.String key, short defaultValue)
key
- The configuration key.defaultValue
- The default value.
java.lang.ClassCastException
- is thrown if the key maps to an
object that is not a Short.
java.lang.NumberFormatException
- is thrown if the value mapped
by the key has not a valid number format.public java.lang.Short getShort(java.lang.String key, java.lang.Short defaultValue)
key
- The configuration key.defaultValue
- The default value.
java.lang.ClassCastException
- is thrown if the key maps to an
object that is not a Short.
java.lang.NumberFormatException
- is thrown if the value mapped
by the key has not a valid number format.public int getInt(java.lang.String name)
name
- The resource name.
public int getInt(java.lang.String name, int def)
name
- The resource namedef
- The default value of the resource.
public int getInteger(java.lang.String key)
key
- The configuration key.
java.util.NoSuchElementException
- is thrown if the key doesn't
map to an existing object.
java.lang.ClassCastException
- is thrown if the key maps to an
object that is not a Integer.
java.lang.NumberFormatException
- is thrown if the value mapped
by the key has not a valid number format.public int getInteger(java.lang.String key, int defaultValue)
key
- The configuration key.defaultValue
- The default value.
java.lang.ClassCastException
- is thrown if the key maps to an
object that is not a Integer.
java.lang.NumberFormatException
- is thrown if the value mapped
by the key has not a valid number format.public java.lang.Integer getInteger(java.lang.String key, java.lang.Integer defaultValue)
key
- The configuration key.defaultValue
- The default value.
java.lang.ClassCastException
- is thrown if the key maps to an
object that is not a Integer.
java.lang.NumberFormatException
- is thrown if the value mapped
by the key has not a valid number format.public long getLong(java.lang.String key)
key
- The configuration key.
java.util.NoSuchElementException
- is thrown if the key doesn't
map to an existing object.
java.lang.ClassCastException
- is thrown if the key maps to an
object that is not a Long.
java.lang.NumberFormatException
- is thrown if the value mapped
by the key has not a valid number format.public long getLong(java.lang.String key, long defaultValue)
key
- The configuration key.defaultValue
- The default value.
java.lang.ClassCastException
- is thrown if the key maps to an
object that is not a Long.
java.lang.NumberFormatException
- is thrown if the value mapped
by the key has not a valid number format.public java.lang.Long getLong(java.lang.String key, java.lang.Long defaultValue)
key
- The configuration key.defaultValue
- The default value.
java.lang.ClassCastException
- is thrown if the key maps to an
object that is not a Long.
java.lang.NumberFormatException
- is thrown if the value mapped
by the key has not a valid number format.public float getFloat(java.lang.String key)
key
- The configuration key.
java.util.NoSuchElementException
- is thrown if the key doesn't
map to an existing object.
java.lang.ClassCastException
- is thrown if the key maps to an
object that is not a Float.
java.lang.NumberFormatException
- is thrown if the value mapped
by the key has not a valid number format.public float getFloat(java.lang.String key, float defaultValue)
key
- The configuration key.defaultValue
- The default value.
java.lang.ClassCastException
- is thrown if the key maps to an
object that is not a Float.
java.lang.NumberFormatException
- is thrown if the value mapped
by the key has not a valid number format.public java.lang.Float getFloat(java.lang.String key, java.lang.Float defaultValue)
key
- The configuration key.defaultValue
- The default value.
java.lang.ClassCastException
- is thrown if the key maps to an
object that is not a Float.
java.lang.NumberFormatException
- is thrown if the value mapped
by the key has not a valid number format.public double getDouble(java.lang.String key)
key
- The configuration key.
java.util.NoSuchElementException
- is thrown if the key doesn't
map to an existing object.
java.lang.ClassCastException
- is thrown if the key maps to an
object that is not a Double.
java.lang.NumberFormatException
- is thrown if the value mapped
by the key has not a valid number format.public double getDouble(java.lang.String key, double defaultValue)
key
- The configuration key.defaultValue
- The default value.
java.lang.ClassCastException
- is thrown if the key maps to an
object that is not a Double.
java.lang.NumberFormatException
- is thrown if the value mapped
by the key has not a valid number format.public java.lang.Double getDouble(java.lang.String key, java.lang.Double defaultValue)
key
- The configuration key.defaultValue
- The default value.
java.lang.ClassCastException
- is thrown if the key maps to an
object that is not a Double.
java.lang.NumberFormatException
- is thrown if the value mapped
by the key has not a valid number format.public static ExtendedProperties convertProperties(java.util.Properties p)
p
- properties object to convert into
a ExtendedProperties object.
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |