#1297 - ENH: Add DtoQuery ... such that we can map native SQL queries automatically into "DTO beans"

This commit is contained in:
Rob Bygrave
2018-03-02 23:32:01 +13:00
parent 5801f7620d
commit aad5b33db2
47 changed files with 2293 additions and 273 deletions
@@ -0,0 +1,32 @@
package io.ebeaninternal.server.dto;
import io.ebeaninternal.server.type.DataReader;
import java.sql.SQLException;
/**
* Plan based on Constructor plus some setter methods.
*/
class DtoQueryPlanConPlus extends DtoQueryPlanBase {
private final DtoMetaConstructor maxArgConstructor;
private final DtoReadSet[] setterProps;
DtoQueryPlanConPlus(DtoMappingRequest request, DtoMetaConstructor maxArgConstructor, DtoReadSet[] setterProps) {
super(request);
this.maxArgConstructor = maxArgConstructor;
this.setterProps = setterProps;
}
@Override
public Object readRow(DataReader dataReader) throws SQLException {
Object bean = maxArgConstructor.process(dataReader);
for (DtoReadSet setterProp : setterProps) {
setterProp.readSet(bean, dataReader);
}
return bean;
}
}