de.cau.cs.kieler.core
Class MapPreferenceStore

java.lang.Object
  extended by de.cau.cs.kieler.core.MapPreferenceStore
All Implemented Interfaces:
IKielerPreferenceStore

public class MapPreferenceStore
extends Object
implements IKielerPreferenceStore

Preference store implementation that uses maps to hold preference values in memory. Subclasses may access currentMap and defaultMap and use their keySet methods to obtain the sets of all stored current and default values. This can be used to write these keys together with their values to a file for permanent storage.

Rating proposed yellow
(2009-12-11) msp

Constructor Summary
MapPreferenceStore()
           
 
Method Summary
 boolean contains(String name)
          Returns whether the named preference is known to this preference store.
 boolean getBoolean(String name)
          Returns the current value of the boolean-valued preference with the given name.
 boolean getDefaultBoolean(String name)
          Returns the default value for the boolean-valued preference with the given name.
 double getDefaultDouble(String name)
          Returns the default value for the double-valued preference with the given name.
 float getDefaultFloat(String name)
          Returns the default value for the float-valued preference with the given name.
 int getDefaultInt(String name)
          Returns the default value for the integer-valued preference with the given name.
 long getDefaultLong(String name)
          Returns the default value for the long-valued preference with the given name.
 String getDefaultString(String name)
          Returns the default value for the string-valued preference with the given name.
 double getDouble(String name)
          Returns the current value of the double-valued preference with the given name.
 float getFloat(String name)
          Returns the current value of the float-valued preference with the given name.
 int getInt(String name)
          Returns the current value of the integer-valued preference with the given name.
 long getLong(String name)
          Returns the current value of the long-valued preference with the given name.
 String getString(String name)
          Returns the current value of the string-valued preference with the given name.
 boolean isDefault(String name)
          Returns whether the current value of the preference with the given name has the default value.
 void setDefault(String name, boolean value)
          Sets the default value for the boolean-valued preference with the given name.
 void setDefault(String name, double value)
          Sets the default value for the double-valued preference with the given name.
 void setDefault(String name, float value)
          Sets the default value for the float-valued preference with the given name.
 void setDefault(String name, int value)
          Sets the default value for the integer-valued preference with the given name.
 void setDefault(String name, long value)
          Sets the default value for the long-valued preference with the given name.
 void setDefault(String name, String defaultObject)
          Sets the default value for the string-valued preference with the given name.
 void setToDefault(String name)
          Sets the current value of the preference with the given name back to its default value.
 void setValue(String name, boolean value)
          Sets the current value of the boolean-valued preference with the given name.
 void setValue(String name, double value)
          Sets the current value of the double-valued preference with the given name.
 void setValue(String name, float value)
          Sets the current value of the float-valued preference with the given name.
 void setValue(String name, int value)
          Sets the current value of the integer-valued preference with the given name.
 void setValue(String name, long value)
          Sets the current value of the long-valued preference with the given name.
 void setValue(String name, String value)
          Sets the current value of the string-valued preference with the given name.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MapPreferenceStore

public MapPreferenceStore()
Method Detail

contains

public boolean contains(String name)
Returns whether the named preference is known to this preference store.

Specified by:
contains in interface IKielerPreferenceStore
Parameters:
name - the name of the preference
Returns:
true if either a current value or a default value is known for the named preference, and false otherwise

getBoolean

public boolean getBoolean(String name)
Returns the current value of the boolean-valued preference with the given name. Returns the default-default value (false) if there is no preference with the given name, or if the current value cannot be treated as a boolean.

Specified by:
getBoolean in interface IKielerPreferenceStore
Parameters:
name - the name of the preference
Returns:
the boolean-valued preference

getDefaultBoolean

public boolean getDefaultBoolean(String name)
Returns the default value for the boolean-valued preference with the given name. Returns the default-default value (false) if there is no default preference with the given name, or if the default value cannot be treated as a boolean.

Specified by:
getDefaultBoolean in interface IKielerPreferenceStore
Parameters:
name - the name of the preference
Returns:
the default value of the named preference

getDefaultDouble

public double getDefaultDouble(String name)
Returns the default value for the double-valued preference with the given name. Returns the default-default value (0.0) if there is no default preference with the given name, or if the default value cannot be treated as a double.

Specified by:
getDefaultDouble in interface IKielerPreferenceStore
Parameters:
name - the name of the preference
Returns:
the default value of the named preference

getDefaultFloat

public float getDefaultFloat(String name)
Returns the default value for the float-valued preference with the given name. Returns the default-default value (0.0f) if there is no default preference with the given name, or if the default value cannot be treated as a float.

Specified by:
getDefaultFloat in interface IKielerPreferenceStore
Parameters:
name - the name of the preference
Returns:
the default value of the named preference

getDefaultInt

public int getDefaultInt(String name)
Returns the default value for the integer-valued preference with the given name. Returns the default-default value (0) if there is no default preference with the given name, or if the default value cannot be treated as an integer.

Specified by:
getDefaultInt in interface IKielerPreferenceStore
Parameters:
name - the name of the preference
Returns:
the default value of the named preference

getDefaultLong

public long getDefaultLong(String name)
Returns the default value for the long-valued preference with the given name. Returns the default-default value (0L) if there is no default preference with the given name, or if the default value cannot be treated as a long.

Specified by:
getDefaultLong in interface IKielerPreferenceStore
Parameters:
name - the name of the preference
Returns:
the default value of the named preference

getDefaultString

public String getDefaultString(String name)
Returns the default value for the string-valued preference with the given name. Returns the default-default value (the empty string "") if there is no default preference with the given name, or if the default value cannot be treated as a string.

Specified by:
getDefaultString in interface IKielerPreferenceStore
Parameters:
name - the name of the preference
Returns:
the default value of the named preference

getDouble

public double getDouble(String name)
Returns the current value of the double-valued preference with the given name. Returns the default-default value (0.0) if there is no preference with the given name, or if the current value cannot be treated as a double.

Specified by:
getDouble in interface IKielerPreferenceStore
Parameters:
name - the name of the preference
Returns:
the double-valued preference

getFloat

public float getFloat(String name)
Returns the current value of the float-valued preference with the given name. Returns the default-default value (0.0f) if there is no preference with the given name, or if the current value cannot be treated as a float.

Specified by:
getFloat in interface IKielerPreferenceStore
Parameters:
name - the name of the preference
Returns:
the float-valued preference

getInt

public int getInt(String name)
Returns the current value of the integer-valued preference with the given name. Returns the default-default value (0) if there is no preference with the given name, or if the current value cannot be treated as an integter.

Specified by:
getInt in interface IKielerPreferenceStore
Parameters:
name - the name of the preference
Returns:
the int-valued preference

getLong

public long getLong(String name)
Returns the current value of the long-valued preference with the given name. Returns the default-default value (0L) if there is no preference with the given name, or if the current value cannot be treated as a long.

Specified by:
getLong in interface IKielerPreferenceStore
Parameters:
name - the name of the preference
Returns:
the long-valued preference

getString

public String getString(String name)
Returns the current value of the string-valued preference with the given name. Returns the default-default value (the empty string "") if there is no preference with the given name, or if the current value cannot be treated as a string.

Specified by:
getString in interface IKielerPreferenceStore
Parameters:
name - the name of the preference
Returns:
the string-valued preference

isDefault

public boolean isDefault(String name)
Returns whether the current value of the preference with the given name has the default value.

Specified by:
isDefault in interface IKielerPreferenceStore
Parameters:
name - the name of the preference
Returns:
true if the preference has a known default value and its current value is the same, and false otherwise (including the case where the preference is unknown to this store)

setDefault

public void setDefault(String name,
                       double value)
Sets the default value for the double-valued preference with the given name.

Note that the current value of the preference is affected if the preference's current value was its old default value, in which case it changes to the new default value. If the preference's current is different from its old default value, its current value is unaffected.

Specified by:
setDefault in interface IKielerPreferenceStore
Parameters:
name - the name of the preference
value - the new default value for the preference

setDefault

public void setDefault(String name,
                       float value)
Sets the default value for the float-valued preference with the given name.

Note that the current value of the preference is affected if the preference's current value was its old default value, in which case it changes to the new default value. If the preference's current is different from its old default value, its current value is unaffected.

Specified by:
setDefault in interface IKielerPreferenceStore
Parameters:
name - the name of the preference
value - the new default value for the preference

setDefault

public void setDefault(String name,
                       int value)
Sets the default value for the integer-valued preference with the given name.

Note that the current value of the preference is affected if the preference's current value was its old default value, in which case it changes to the new default value. If the preference's current is different from its old default value, its current value is unaffected.

Specified by:
setDefault in interface IKielerPreferenceStore
Parameters:
name - the name of the preference
value - the new default value for the preference

setDefault

public void setDefault(String name,
                       long value)
Sets the default value for the long-valued preference with the given name.

Note that the current value of the preference is affected if the preference's current value was its old default value, in which case it changes to the new default value. If the preference's current is different from its old default value, its current value is unaffected.

Specified by:
setDefault in interface IKielerPreferenceStore
Parameters:
name - the name of the preference
value - the new default value for the preference

setDefault

public void setDefault(String name,
                       String defaultObject)
Sets the default value for the string-valued preference with the given name.

Note that the current value of the preference is affected if the preference's current value was its old default value, in which case it changes to the new default value. If the preference's current is different from its old default value, its current value is unaffected.

Specified by:
setDefault in interface IKielerPreferenceStore
Parameters:
name - the name of the preference
defaultObject - the new default value for the preference

setDefault

public void setDefault(String name,
                       boolean value)
Sets the default value for the boolean-valued preference with the given name.

Note that the current value of the preference is affected if the preference's current value was its old default value, in which case it changes to the new default value. If the preference's current is different from its old default value, its current value is unaffected.

Specified by:
setDefault in interface IKielerPreferenceStore
Parameters:
name - the name of the preference
value - the new default value for the preference

setToDefault

public void setToDefault(String name)
Sets the current value of the preference with the given name back to its default value.

Note that the preferred way of re-initializing a preference to the appropriate default value is to call setToDefault. This is implemented by removing the named value from the store, thereby exposing the default value.

Specified by:
setToDefault in interface IKielerPreferenceStore
Parameters:
name - the name of the preference

setValue

public void setValue(String name,
                     double value)
Sets the current value of the double-valued preference with the given name.

Note that the preferred way of re-initializing a preference to its default value is to call setToDefault.

Specified by:
setValue in interface IKielerPreferenceStore
Parameters:
name - the name of the preference
value - the new current value of the preference

setValue

public void setValue(String name,
                     float value)
Sets the current value of the float-valued preference with the given name.

Note that the preferred way of re-initializing a preference to its default value is to call setToDefault.

Specified by:
setValue in interface IKielerPreferenceStore
Parameters:
name - the name of the preference
value - the new current value of the preference

setValue

public void setValue(String name,
                     int value)
Sets the current value of the integer-valued preference with the given name.

Note that the preferred way of re-initializing a preference to its default value is to call setToDefault.

Specified by:
setValue in interface IKielerPreferenceStore
Parameters:
name - the name of the preference
value - the new current value of the preference

setValue

public void setValue(String name,
                     long value)
Sets the current value of the long-valued preference with the given name.

Note that the preferred way of re-initializing a preference to its default value is to call setToDefault.

Specified by:
setValue in interface IKielerPreferenceStore
Parameters:
name - the name of the preference
value - the new current value of the preference

setValue

public void setValue(String name,
                     String value)
Sets the current value of the string-valued preference with the given name.

Note that the preferred way of re-initializing a preference to its default value is to call setToDefault.

Specified by:
setValue in interface IKielerPreferenceStore
Parameters:
name - the name of the preference
value - the new current value of the preference

setValue

public void setValue(String name,
                     boolean value)
Sets the current value of the boolean-valued preference with the given name.

Note that the preferred way of re-initializing a preference to its default value is to call setToDefault.

Specified by:
setValue in interface IKielerPreferenceStore
Parameters:
name - the name of the preference
value - the new current value of the preference