resolvedYml.put("object." + field.name + "." + play.db.Model.Manager.factoryFor((Class<? extends play.db.Model>)field.relationType).keyName(), resolvedIds); } else {
+ Model.Manager.factoryFor((Class<? extends Model>) field.relationType).keyName(), resolvedIds); } else {
GenericModel model = (GenericModel) validatedObject; Model.Factory factory = Model.Manager.factoryFor(model.getClass()); String keyProperty = factory.keyName(); Object keyValue = factory.keyValue(model);
String keyName = Model.Manager.factoryFor(c).keyName(); if (multiple && Collection.class.isAssignableFrom(field.getType())) { Collection l = new ArrayList();
String keyName = Model.Manager.factoryFor(c).keyName(); if (multiple && Collection.class.isAssignableFrom(field.getType())) { Collection l = new ArrayList();
final Model model = (Model) validatedObject; final Model.Factory factory = Model.Manager.factoryFor(model.getClass()); final String keyProperty = factory.keyName(); final Object keyValue = factory.keyValue(model);
@Override @SuppressWarnings("unchecked") public Object bind(String name, @SuppressWarnings("rawtypes") Class clazz, java.lang.reflect.Type type, Annotation[] annotations, Map<String, String[]> params) { if (Model.class.isAssignableFrom(clazz)) { String keyName = modelFactory(clazz).keyName(); String idKey = name + "." + keyName; if (params.containsKey(idKey) && params.get(idKey).length > 0 && params.get(idKey)[0] != null && params.get(idKey)[0].trim().length() > 0) { String id = params.get(idKey)[0]; try { Object o = ds().createQuery(clazz) .filter(keyName, new ObjectId(id)).get(); return Model.edit(o, name, params, annotations); } catch (Exception e) { return null; } } return Model.create(clazz, name, params, annotations); } return super.bind(name, clazz, type, annotations, params); }