}
}
public MetaField processColumn(DboTableMeta t, Field field) {
NoSqlColumn col = field.getAnnotation(NoSqlColumn.class);
MetaCommonField metaField = metaProvider.get();
String colName = field.getName();
if(col != null) {
if(!"".equals(col.columnName()))
colName = col.columnName();
}
boolean isIndexed = false;
if(field.isAnnotationPresent(NoSqlIndexed.class))
isIndexed = true;
boolean isPartitioned = false;
if(field.isAnnotationPresent(NoSqlPartitionByThisField.class))
isPartitioned = true;
Class<?> type = field.getType();
Converter converter = null;
if(col != null && !NoConversion.class.isAssignableFrom(col.customConverter()))
converter = ReflectionUtil.create(col.customConverter());
try {
converter = lookupConverter(type, converter);
metaField.setup(t, field, colName, converter, isIndexed, isPartitioned);
return metaField;
} catch(IllegalArgumentException e) {
throw new IllegalArgumentException("No converter found for field='"+field.getName()+"' in class="
+field.getDeclaringClass()+". You need to either add one of the @*ToOne annotations, @Embedded, @Transient " +
"or add your own converter calling EntityMgrFactory.setup(Map<Class, Converter>) which " +