James Moger
2011-07-01 892570d96cdfaf4779c1e92c89d76dabf78be361
src/com/gitblit/IStoredSettings.java
@@ -24,6 +24,12 @@
import com.gitblit.utils.StringUtils;
/**
 * Base class for stored settings implementations.
 *
 * @author James Moger
 *
 */
public abstract class IStoredSettings {
   protected final Logger logger;
@@ -42,6 +48,13 @@
      return props;
   }
   /**
    * Returns the list of keys whose name starts with the specified prefix. If
    * the prefix is null or empty, all key names are returned.
    *
    * @param startingWith
    * @return list of keys
    */
   public List<String> getAllKeys(String startingWith) {
      List<String> keys = new ArrayList<String>();
      Properties props = getSettings();
@@ -59,6 +72,15 @@
      return keys;
   }
   /**
    * Returns the boolean value for the specified key. If the key does not
    * exist or the value for the key can not be interpreted as a boolean, the
    * defaultValue is returned.
    *
    * @param key
    * @param defaultValue
    * @return key value or defaultValue
    */
   public boolean getBoolean(String name, boolean defaultValue) {
      Properties props = getSettings();
      if (props.containsKey(name)) {
@@ -70,6 +92,15 @@
      return defaultValue;
   }
   /**
    * Returns the integer value for the specified key. If the key does not
    * exist or the value for the key can not be interpreted as an integer, the
    * defaultValue is returned.
    *
    * @param key
    * @param defaultValue
    * @return key value or defaultValue
    */
   public int getInteger(String name, int defaultValue) {
      Properties props = getSettings();
      if (props.containsKey(name)) {
@@ -86,6 +117,15 @@
      return defaultValue;
   }
   /**
    * Returns the string value for the specified key. If the key does not exist
    * or the value for the key can not be interpreted as a string, the
    * defaultValue is returned.
    *
    * @param key
    * @param defaultValue
    * @return key value or defaultValue
    */
   public String getString(String name, String defaultValue) {
      Properties props = getSettings();
      if (props.containsKey(name)) {
@@ -97,10 +137,24 @@
      return defaultValue;
   }
   /**
    * Returns a list of space-separated strings from the specified key.
    *
    * @param name
    * @return list of strings
    */
   public List<String> getStrings(String name) {
      return getStrings(name, " ");
   }
   /**
    * Returns a list of strings from the specified key using the specified
    * string separator.
    *
    * @param name
    * @param separator
    * @return list of strings
    */
   public List<String> getStrings(String name, String separator) {
      List<String> strings = new ArrayList<String>();
      Properties props = getSettings();
@@ -111,6 +165,12 @@
      return strings;
   }
   /**
    * Override the specified key with the specified value.
    *
    * @param key
    * @param value
    */
   public void overrideSetting(String key, String value) {
      overrides.put(key, value);
   }