} else if (field.isAnnotationPresent(FieldRelateAnnotation.class)) {
final String relatedEntity = field.getAnnotation(FieldRelateAnnotation.class).value().getSimpleName();
fields.put(name, new FieldRelate(name, relatedEntity, label));
} else if (field.isAnnotationPresent(FieldCurrencyAnnotation.class)) {
final String defaultValue = field.getAnnotation(FieldCurrencyAnnotation.class).value();
fields.put(name, new FieldCurrency(name, label, defaultValue));
} else if (field.isAnnotationPresent(FieldDateAnnotation.class)) {
fields.put(name, new FieldDate(name, label));
} else if (field.isAnnotationPresent(FieldTableAnnotation.class)) {
// TODO pass tableClass to the FieldTable constructor
// final Class<?> tableClass = field.getAnnotation(FieldTableAnnotation.class).value();