@SuppressWarnings({ "rawtypes", "unchecked" })
@Override
public Query<T> setParameter(String name, Object value) {
//check parameter
TypeInfo typeInfo = meta.getMetaFieldByParameter(name);
if(typeInfo==null){
throw new IllegalArgumentException("parameter='" + name
+ "' is not found in the query="+meta.getQuery());
} else if(typeInfo.getConstantType() != null)
throw new UnsupportedOperationException("not done here yet, need to validate constant type");
DboColumnMeta metaFieldDbo = typeInfo.getColumnInfo();
String colFamily = metaFieldDbo.getOwner().getColumnFamily();
String columnName = metaFieldDbo.getColumnName();
MetaClass metaClass = metaInfo.getMetaClass(colFamily);
MetaField metaField = metaClass.getMetaFieldByCol(targetSubclass, columnName);