IcedTea-Web
NetX

net.sourceforge.jnlp.config
Class Setting<T>

java.lang.Object
  extended by net.sourceforge.jnlp.config.Setting<T>

public class Setting<T>
extends java.lang.Object

Represents a value for a configuration. Provides methods to get the value as well as marking the value as locked. Each instance of this class has an associated ValueChecker. This checker can be used to check if the current value is valid. The default value _must_ be valid. Null values can not originate externally so are (mostly) considered valid.


Constructor Summary
Setting(Setting<T> other)
          Creates a new Settings object by cloning the values from another Settings object
Setting(java.lang.String name, java.lang.String description, boolean locked, ValueValidator validator, T defaultValue, T value, java.lang.String source)
          Creates a new Settings object
 
Method Summary
 T getDefaultValue()
           
 java.lang.String getDescription()
           
 java.lang.String getName()
           
 java.lang.String getSource()
           
 ValueValidator getValidator()
           
 T getValue()
           
 boolean isLocked()
           
 void setLocked(boolean locked)
          Marks this setting as locked or unlocked.
 void setSource(java.lang.String source)
          Sets the source of the current value of this Setting.
 void setValue(T value)
          Note that setting the value is not enforced - it is the caller's responsibility to check if a value is locked or not before setting a new value
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Setting

public Setting(java.lang.String name,
               java.lang.String description,
               boolean locked,
               ValueValidator validator,
               T defaultValue,
               T value,
               java.lang.String source)
Creates a new Settings object

Parameters:
name - the name of this setting
description - a human readable description of this setting
locked - whether this setting is currently locked
validator - the ValueValidator that can be used to validate the value
defaultValue - the default value of this setting. If this is not a recognized setting, use null.
value - the initial value of this setting
source - the origin of the value (a file, or perhaps "")

Setting

public Setting(Setting<T> other)
Creates a new Settings object by cloning the values from another Settings object

Parameters:
other - a Settings object to initialize settings from
Method Detail

getValidator

public ValueValidator getValidator()
Returns:
the ValueValidator that can be used to check if the current value is valid

getDefaultValue

public T getDefaultValue()
Returns:
the default value for this setting. May be null if this is not one of the supported settings

getDescription

public java.lang.String getDescription()
Returns:
a human readable description of this setting

getName

public java.lang.String getName()
Returns:
the name (like foo.bar.baz) of this setting

getSource

public java.lang.String getSource()
Returns:
the source of the current value of this setting. May be a string like "internal" or it may be the location of the properties file

getValue

public T getValue()
Returns:
the current value of this setting

isLocked

public boolean isLocked()
Returns:
true if this setting is locked

setLocked

public void setLocked(boolean locked)
Marks this setting as locked or unlocked. Setting the value is not enforced by this class.

Parameters:
locked - whether to mark this setting as locked or not locked.

setSource

public void setSource(java.lang.String source)
Sets the source of the current value of this Setting. Maybe a string like "internal" or the location of the properties file

Parameters:
source - the source of the value

setValue

public void setValue(T value)
Note that setting the value is not enforced - it is the caller's responsibility to check if a value is locked or not before setting a new value

Parameters:
value - the new value

IcedTea-Web
NetX

Submit a bug or feature