Class Setting<T>

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

public class Setting<T> extends 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 Details

    • Setting

      public Setting(String name, String description, boolean locked, ValueValidator validator, T defaultValue, T value, 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 "<internal>")
    • 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 Details

    • 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 String getDescription()
      Returns:
      a human readable description of this setting
    • getName

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

      public 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(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
    • toString

      public String toString()
      Overrides:
      toString in class Object