jcckit.util
Class ConfigParameters

java.lang.Object
  extended byjcckit.util.ConfigParameters

public class ConfigParameters
extends java.lang.Object

Read-only class for hierarchically organized key-value pairs. The key is always a string. The following value types are supported:

In accordance with the Strategy design pattern the retrieval of a key-value pair is delegated to an instance of ConfigData.

Author:
Franz-Josef Elmer

Constructor Summary
ConfigParameters(ConfigData configData)
          Creates an instance from the specified ConfigData object.
 
Method Summary
 java.lang.String get(java.lang.String key)
          Returns the string value associated with the specified key.
 java.lang.String get(java.lang.String key, java.lang.String defaultValue)
          Returns the string value associated with the specified key or defaultValue if undefined.
 boolean getBoolean(java.lang.String key)
          Returns the boolean associated with the specified key.
 boolean getBoolean(java.lang.String key, boolean defaultValue)
          Returns the boolean associated with the specified key.
 java.awt.Color getColor(java.lang.String key)
          Returns the color associated with the specified key.
 java.awt.Color getColor(java.lang.String key, java.awt.Color defaultValue)
          Returns the color associated with the specified key or the specified default value if no key-value pair exists for the specified key.
 double getDouble(java.lang.String key)
          Returns the double associated with the specified key.
 double getDouble(java.lang.String key, double defaultValue)
          Returns the double associated with the specified key or defaultValue if no key-value pair exists for the specified key.
 double[] getDoubleArray(java.lang.String key)
          Returns the array of doubles associated with the specified key.
 double[] getDoubleArray(java.lang.String key, double[] defaultValue)
          Returns the array of doubles associated with the specified key or defaultValue if no key-value pair exists for the specified key.
 java.lang.String getFullKey(java.lang.String key)
          Returns the full key.
 int getInt(java.lang.String key)
          Returns the integer associated with the specified key.
 int getInt(java.lang.String key, int defaultValue)
          Returns the integer associated with the specified key or defaultValue if no key-value pair exists for the specified key.
 ConfigParameters getNode(java.lang.String key)
          Returns the child node associated with the specified key.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ConfigParameters

public ConfigParameters(ConfigData configData)
Creates an instance from the specified ConfigData object.

Method Detail

getFullKey

public java.lang.String getFullKey(java.lang.String key)
Returns the full key.

Returns:
the path concatenated with key.
See Also:
ConfigData.getFullKey(java.lang.String)

get

public java.lang.String get(java.lang.String key)
Returns the string value associated with the specified key.

Parameters:
key - The (relative) key. null is not allowed.
Returns:
the corresponding value. Will always be not null.
Throws:
java.lang.IllegalArgumentException - if no value exists for key. The exception message is the full key.

get

public java.lang.String get(java.lang.String key,
                            java.lang.String defaultValue)
Returns the string value associated with the specified key or defaultValue if undefined.

Parameters:
key - The (relative) key. null is not allowed.
defaultValue - The default value. Can be null.
Returns:
the corresponding value or defaultValue.

getBoolean

public boolean getBoolean(java.lang.String key)
Returns the boolean associated with the specified key.

Parameters:
key - The (relative) key. null is not allowed.
Returns:
true if the value is "true" otherwise false.
Throws:
java.lang.IllegalArgumentException - if no value exists for key. The exception message is the full key.
java.lang.NumberFormatException - if the value is neither "true" nor "false".

getBoolean

public boolean getBoolean(java.lang.String key,
                          boolean defaultValue)
Returns the boolean associated with the specified key.

Parameters:
key - The (relative) key. null is not allowed.
defaultValue - The default value. Can be null.
Returns:
true if the value is "true" otherwise false.
Throws:
java.lang.NumberFormatException - if the value is neither "true" nor "false".

getInt

public int getInt(java.lang.String key)
Returns the integer associated with the specified key. The value can be either

Parameters:
key - The (relative) key. null is not allowed.
Returns:
the integer value.
Throws:
java.lang.IllegalArgumentException - if no value exists for key. The exception message is the full key.
java.lang.NumberFormatException - if the value is not a number. The exception message contains the full key and the invalid value.

getInt

public int getInt(java.lang.String key,
                  int defaultValue)
Returns the integer associated with the specified key or defaultValue if no key-value pair exists for the specified key. The value can be either

Parameters:
key - The (relative) key. null is not allowed.
defaultValue - The default value. Can be null.
Returns:
the integer value.
Throws:
java.lang.NumberFormatException - if the value exists but is not a number. The exception message contains the full key and the invalid value.

getDouble

public double getDouble(java.lang.String key)
Returns the double associated with the specified key.

Parameters:
key - The (relative) key. null is not allowed.
Returns:
the double value.
Throws:
java.lang.IllegalArgumentException - if no value exists for key. The exception message is the full key.
java.lang.NumberFormatException - if the value is not a valid number. The exception message contains the full key and the invalid value.

getDouble

public double getDouble(java.lang.String key,
                        double defaultValue)
Returns the double associated with the specified key or defaultValue if no key-value pair exists for the specified key.

Parameters:
key - The (relative) key. null is not allowed.
defaultValue - The default value. Can be null.
Returns:
the double value.
Throws:
java.lang.NumberFormatException - if the value exists but is not a valid number. The exception message contains the full key and the invalid value.

getDoubleArray

public double[] getDoubleArray(java.lang.String key)
Returns the array of doubles associated with the specified key. The numbers are separated by whitespaces.

Parameters:
key - The (relative) key. null is not allowed.
Returns:
the array of double values.
Throws:
java.lang.IllegalArgumentException - if no value exists for key. The exception message is the full key.
java.lang.NumberFormatException - if the value exists but is not a sequence of number. The exception message contains the full key and the invalid value.

getDoubleArray

public double[] getDoubleArray(java.lang.String key,
                               double[] defaultValue)
Returns the array of doubles associated with the specified key or defaultValue if no key-value pair exists for the specified key. The numbers are separated by whitespaces.

Parameters:
key - The (relative) key. null is not allowed.
defaultValue - The default value. Can be null.
Returns:
the array of double values.
Throws:
java.lang.NumberFormatException - if the value exists but is not a sequence of number. The exception message contains the full key and the invalid value.

getColor

public java.awt.Color getColor(java.lang.String key)
Returns the color associated with the specified key. The color is coded as

Parameters:
key - The (relative) key. null is not allowed.
Returns:
the color.
Throws:
java.lang.NumberFormatException - if the value exists but is not a number. The exception message contains the full key and the invalid value.

getColor

public java.awt.Color getColor(java.lang.String key,
                               java.awt.Color defaultValue)
Returns the color associated with the specified key or the specified default value if no key-value pair exists for the specified key. The color is coded as

Parameters:
key - The (relative) key. null is not allowed.
defaultValue - The default value. Can be null.
Returns:
the color or null if the value is an empty string.
Throws:
java.lang.NumberFormatException - if the value exists but is not a number. The exception message contains the full key and the invalid value.

getNode

public ConfigParameters getNode(java.lang.String key)
Returns the child node associated with the specified key. This method returns in any case a non-null result.

Parameters:
key - The (relative) key. null is not allowed.
Returns:
the corresponding child node which may be empty.