Class<?> listItemType = String.class;
if (field.getGenericType() instanceof ParameterizedType) {
listItemType = (Class<?>) ((ParameterizedType) field.getGenericType()).getActualTypeArguments()[0];
}
FormAttributeField annotation = field.getAnnotation(FormAttributeField.class);
if (listItemType.equals(String.class) && annotation != null) {
List<String> choices;
switch (annotation.schema()) {
case UserSchema:
choices = schemaRestClient.getSchemaNames(AttributableType.USER);
break;
case UserDerivedSchema: