public boolean setParameter(String parameter, Map value) {
   try {
     propertiesMap.put(parameter, value);
     notifyParameterListeners(parameter);
   } catch (Exception e) {
     Debug.printStackTrace(e);
     return false;
   }
   return true;
 }
 public boolean setParameter(String parameter, byte[] defaultValue) {
   try {
     byte[] oldValue = (byte[]) propertiesMap.put(parameter, defaultValue);
     return notifyParameterListenersIfChanged(parameter, defaultValue, oldValue);
   } catch (ClassCastException e) {
     // Issuing a warning here would be nice, but both logging and config stuff
     // at startup create potential deadlocks or stack overflows
     notifyParameterListeners(parameter);
     return true;
   }
 }
  public boolean setParameter(String parameter, StringList value) {
    try {
      List encoded = new ArrayList();

      List l = ((StringListImpl) value).getList();

      for (int i = 0; i < l.size(); i++) {

        encoded.add(stringToBytes((String) l.get(i)));
      }
      propertiesMap.put(parameter, encoded);
      notifyParameterListeners(parameter);
    } catch (Exception e) {
      Debug.printStackTrace(e);
      return false;
    }
    return true;
  }