code: public <T> Optional<T> getValueAs(Class<T> type) {
      return getValue().filter(StringUtils::hasText).map(value -> getConversionService().convert(value, type));
    }
docs: Returns the {@link String value} as an instance of the given {@link Class type}.
  
  @param <T> {@link Class type} used in the conversion of the {@link String value}.
  @param type {@link Class type} used in the conversion of the {@link String value}.
  @return the {@link String value} of this key/value data structure as an instance
  of the given {@link Class type}.
  @see #getConversionService()
  @see #getValue()
  @see java.lang.Class