columnFields.add(field);
}
HasMany hasMany = f.getAnnotation(HasMany.class);
if (hasMany != null){
HasManyField field = new HasManyField();
field.setName(f.getName());
field.setAnnotation(hasMany);
ParameterizedType ptype = (ParameterizedType)f.getGenericType();
Class<?> childClass = (Class<?>)ptype.getActualTypeArguments()[0];
if (hasMany.foreignKey().equals("")){
field.setForeignKey(orm.table+"_id");
}
else{
field.setForeignKey(hasMany.foreignKey());
}
field.setTargetType(childClass);
hasManyFields.add(field);
}
HasOne hasOne = f.getAnnotation(HasOne.class);
if (hasOne != null){
HasOneField field = new HasOneField();
field.setName(f.getName());
field.setAnnotation(hasOne);
field.setTargetType(f.getType());
if (hasOne.foreignKey().equals("")){
field.setForeignKey(orm.table+"_id");
}
else{
field.setForeignKey(hasOne.foreignKey());
}
hasOneFields.add(field);
}
BelongsTo belongsTo = f.getAnnotation(BelongsTo.class);
if (belongsTo != null){
BelongsToField field = new BelongsToField();
field.setName(f.getName());
field.setAnnotation(belongsTo);
field.setTargetType(f.getType());
if (belongsTo.foreignKey().equals("")){
OrmInfo targetOrm = OrmInfo.getOrmInfo(f.getType());
field.setForeignKey(targetOrm.table+"_id");
}
else{
field.setForeignKey(belongsTo.foreignKey());
}
belongsToFields.add(field);
}
}