code: public String getProperty(String name, String def) {
          String ret=PropertyUtil.getProperty(name, null);
  
          if (ret == null) {
              if (getProperties().containsKey(name)) {
                  ret = getProperties().get(name);
              } else {
                  ret = def;
              }
          }
  
          if (log.isLoggable(Level.FINEST)) {
              log.finest("Get property '"+name+"' (default="+def+") = "+ret);
          }
          return ret;
      }
docs: This method returns the property associated with the supplied name. The
  system properties will be checked first, and if not available, then the
  collector configuration properties.
  
  @param name The name of the required property
  @param def The optional default value
  @return The property value, or if not found then the default