code: public static <T> T returnValueOrDefaultIfNull(T value, Supplier<T> supplier) {
      return Optional.ofNullable(value).orElseGet(supplier);
    }
docs: Returns the given {@code value} if not {@literal null} or call the given {@link Supplier} to supply a value.
  
  @param <T> {@link Class} type of the {@code value}.
  @param value {@link Object} to evaluate for {@literal null}.
  @param supplier {@link Supplier} used to supply a value if {@code value} is {@literal null}.
  @return the given {@code value} if not {@literal null} or call the given {@link Supplier} to supply a value.
  @see java.util.function.Supplier