public void resetToDefaults() {
    ConfigurationDefaults def = ConfigurationDefaults.getInstance();

    List<String> def_names = new ArrayList<String>((Set<String>) def.getAllowedParameters());

    for (String s : def_names) {

      if (propertiesMap.remove(s) != null) {

        notifyParameterListeners(s);
      }
    }

    List<ResetToDefaultsListener> listeners;

    synchronized (reset_to_def_listeners) {
      listeners = new ArrayList<ResetToDefaultsListener>(reset_to_def_listeners);
    }

    for (ResetToDefaultsListener l : listeners) {

      try {
        l.reset();

      } catch (Throwable e) {

        Debug.out(e);
      }
    }

    save();
  }
 /**
  * Remove the given configuration parameter completely.
  *
  * @param parameter to remove
  * @return true if found and removed, false if not
  */
 public boolean removeParameter(String parameter) {
   boolean removed = propertiesMap.remove(parameter) != null;
   if (removed) notifyParameterListeners(parameter);
   return removed;
 }