code: public Map<String, Object> getProperties() {
          Map<String, Object> localProps = myProps;
          if (localProps == null) {
              localProps = new HashMap<String, Object>();
              if (config != null && !config.isEmpty()) {
                  for (Map.Entry<String, Object> entry : config.entrySet()) {
                      if (entry.getValue() instanceof String) {
                          localProps.put(entry.getKey(), entry.getValue());
                          continue;
                      }
                      if (entry.getValue() instanceof Boolean) {
                          Boolean boolVal = (Boolean) entry.getValue();
                          localProps.put(entry.getKey(), boolVal.toString());
                          continue;
                      }
                      if (entry.getValue() instanceof Integer) {
                          Integer IntVal = (Integer) entry.getValue();
                          localProps.put(entry.getKey(), IntVal.toString());
                          continue;
                      }
                  }
              }
              myProps = localProps;
          }
          return localProps;
      }
docs: This method take the configuration properties and builds a
  Map<String,String> set of properties. Any Boolean values
  turned to Strings.