in paimon-prestosql-common/src/main/java/org/apache/paimon/prestosql/PrestoSqlTableOptionUtils.java [51:80]
public static List<OptionInfo> getOptionInfos() {
List<OptionInfo> optionInfos = new ArrayList<>();
List<OptionWithMetaInfo> optionWithMetaInfos = extractConfigOptions(CoreOptions.class);
String className = "";
for (OptionWithMetaInfo optionWithMetaInfo : optionWithMetaInfos) {
if (shouldSkip(optionWithMetaInfo.field.getName())) {
continue;
}
Type genericType = optionWithMetaInfo.field.getGenericType();
if (genericType instanceof ParameterizedType) {
ParameterizedType parameterizedType = (ParameterizedType) genericType;
Type[] actualTypeArguments = parameterizedType.getActualTypeArguments();
for (Type actualTypeArgument : actualTypeArguments) {
if (actualTypeArgument instanceof Class<?>) {
className = ((Class<?>) actualTypeArgument).getSimpleName();
}
}
}
optionInfos.add(
new OptionInfo(
convertOptionKey(optionWithMetaInfo.option.key()),
optionWithMetaInfo.option.key(),
buildClass(className),
isEnum(className),
className));
}
return optionInfos;
}