public <E> List<E> get(final Object key, final Supplier<E> defaultValue) {
        final List<E> list = (List<E>) this.parameters.get(key);
        return (null == list) ? (null == defaultValue ? Collections.emptyList() : Collections.singletonList(defaultValue.get())) : list;
    }
Gets the value of a key and if that key isn't present returns the default value from the {@link Supplier}.

@param key          the key to retrieve
@param defaultValue the default value generator which if null will return an empty list
gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/util/Parameters.java