code: public static void applyProperties(Object configuration, Map<String, String> properties) {
      for (Map.Entry<String, String> property : properties.entrySet()) {
        applyProperty(configuration, property.getKey(), property.getValue());
      }
    }
docs: Sets an objects fields via reflection from String values.
  Depending on the field's type the respective values are converted to int or boolean.
  
  @param configuration
  @param properties
  @throws ProcessEngineException if a property is supplied that matches no field or
  if the field's type is not String, nor int, nor boolean.