package org.springframework.data.simpledb.reflection; import java.lang.reflect.Field; public class FieldTypeIdentifier { protected FieldTypeIdentifier() { /* utility class */ } public static boolean isOfType(final Field field, FieldType... fieldTypes) { for(final FieldType fieldType : fieldTypes) { if(fieldType.isOfType(field)) { return true; } } return false; } public static FieldType getFieldType(final Field field) { if(FieldType.ID.isOfType(field)) { return FieldType.ID; } else if(FieldType.ATTRIBUTES.isOfType(field)) { return FieldType.ATTRIBUTES; } else if(FieldType.PRIMITIVE.isOfType(field)) { return FieldType.PRIMITIVE; } else if(FieldType.CORE_TYPE.isOfType(field)) { return FieldType.CORE_TYPE; } else if(FieldType.COLLECTION.isOfType(field)) { return FieldType.COLLECTION; } else if(FieldType.ARRAY.isOfType(field)) { return FieldType.ARRAY; } else if(FieldType.MAP.isOfType(field)) { return FieldType.MAP; } else if(FieldType.NESTED_ENTITY.isOfType(field)) { return FieldType.NESTED_ENTITY; } else if(FieldType.REFERENCE_ENTITY.isOfType(field)) { return FieldType.REFERENCE_ENTITY; } return FieldType.OBJECT; } }