code: public <T> List<T> get(final URI property, final Class<T> valueClass,
              final List<T> defaultValue) {
          try {
              final List<T> values = get(property, valueClass);
              return values.isEmpty() ? defaultValue : values;
          } catch (final IllegalArgumentException ex) {
              return defaultValue;
          }
      }
docs: Returns the values of the property converted to instances of a certain class, or the
  default value supplied in case of failure or if the property has no values.
  
  @param property
  the property to read
  @param valueClass
  the class values have to be converted to
  @param defaultValue
  the default value to return in case conversion fails
  @param <T>
  the type of property values
  @return an immutable list with the values of the property, converted to the class specified
  and possibly empty, on success; the default value supplied in case the property has
  no value or conversion fails for some value