code: public <T> List<T> getList(final Object key, final Class<T> clazz) {
          notNull("clazz", clazz);
          return constructValuesList(key, clazz, null);
      }
docs: Gets the list value of the given key, casting the list elements to the given {@code Class<T>}.  This is useful to avoid having
  casts in client code, though the effect is the same.
  
  @param key   the key
  @param clazz the non-null class to cast the list value to
  @param <T>   the type of the class
  @return the list value of the given key, or null if the instance does not contain this key.
  @throws ClassCastException if the elements in the list value of the given key is not of type T or the value is not a list
  @since 3.10