code: protected static String getOptionalProperty(String key) {
  		if(!propLoader.isPropertyDefined(key))
  			return null;
  		return propLoader.getProperty(key).trim();
  	}
docs: Load the given property from one of the known sources.
  <p>
  The order of precedence is as follows:
  <ol>
  <li>system properties, defined e.g. as -D arguments to the {@code mvn} command</li>
  <li>custom properties file, {@value #CUSTOM_PROPS_RESOURCE}</li>
  <li>defaults properties file, {@value #DEFAULT_PROPS_RESOURCE}</li>
  </ol>
  
  @param key the name of the property
  
  @return the value of the property;
  null if the property is not found