use of org.openforis.idm.model.Time in project collect by openforis.
the class RecordDaoTest method createRecord.
private CollectRecord createRecord(CollectSurvey survey, int sequenceNumber) {
int skippedCount = new Double(Math.ceil((double) (Math.random() * 40))).intValue();
int missingCount = new Double(Math.ceil((double) (Math.random() * 50))).intValue();
int errorsCount = new Double(Math.ceil((double) (Math.random() * 10))).intValue();
int warningsCount = new Double(Math.ceil((double) (Math.random() * 30))).intValue();
int numberOfPlots = new Double(Math.ceil((double) (Math.random() * 20))).intValue();
int numberOfTrees = new Double(Math.ceil((double) (Math.random() * 30))).intValue();
;
CollectRecord record = new CollectRecord(recordManager, survey, "2.0");
record.setCreationDate(new GregorianCalendar(2011, 0, sequenceNumber, 8, 30).getTime());
// record.setCreatedBy("ModelDaoIntegrationTest");
record.setStep(Step.ENTRY);
record.setModifiedDate(new GregorianCalendar(2011, 1, sequenceNumber, 8, 30).getTime());
record.setSkipped(skippedCount);
record.setMissing(missingCount);
record.setErrors(errorsCount);
record.setWarnings(warningsCount);
Entity cluster = record.createRootEntity("cluster");
String keyId = Integer.toString(sequenceNumber);
EntityBuilder.addValue(cluster, "id", new Code(keyId));
EntityBuilder.addValue(cluster, "gps_realtime", Boolean.TRUE);
EntityBuilder.addValue(cluster, "region", new Code("001"));
EntityBuilder.addValue(cluster, "district", new Code("002"));
EntityBuilder.addValue(cluster, "vehicle_location", new Coordinate(432423423l, 4324324l, "srs"));
EntityBuilder.addValue(cluster, "gps_model", "TomTom 1.232");
{
Entity ts = EntityBuilder.addEntity(cluster, "time_study");
ts.addValue("date", new Date(2011, 2, 14));
ts.addValue("start_time", new Time(8, 15));
ts.addValue("end_time", new Time(15, 29));
}
{
Entity ts = EntityBuilder.addEntity(cluster, "time_study");
ts.addValue("date", new Date(2011, 2, 15));
ts.addValue("start_time", new Time(8, 32));
ts.addValue("end_time", new Time(11, 20));
}
for (int i = 0; i < numberOfPlots; i++) {
Entity plot = EntityBuilder.addEntity(cluster, "plot");
EntityBuilder.addValue(plot, "no", new Code(Integer.toString(i + 1)));
for (int j = 0; j < numberOfTrees; j++) {
Entity tree = EntityBuilder.addEntity(plot, "tree");
tree.addValue("dbh", 54.2);
tree.addValue("total_height", 2.0);
RealAttribute boleHeight = tree.addValue("bole_height", (Double) null);
boleHeight.getField().setSymbol('*');
boleHeight.getField().setRemarks("No value specified");
// .setMetadata(new CollectAttributeMetadata('*',null,"No value specified"));
}
}
// set counts
record.getEntityCounts().add(numberOfPlots);
// set keys
record.getRootEntityKeys().add(keyId);
return record;
}
use of org.openforis.idm.model.Time in project collect by openforis.
the class TimeAttributeMapper method addNode.
@Override
Node<?> addNode(NodeDefinition defn, Record r, Entity parent) {
String name = defn.getName();
Integer hour = r.getValueAsInteger(DATA.NUMBER1);
Integer minute = r.getValueAsInteger(DATA.NUMBER2);
Time time = new Time(hour, minute);
return parent.addValue(name, time);
}
use of org.openforis.idm.model.Time in project collect by openforis.
the class CollectRecordIntegrationTest method addTestValues.
private void addTestValues(Entity cluster, String id) {
EntityBuilder.addValue(cluster, "id", new Code(id));
EntityBuilder.addValue(cluster, "gps_realtime", Boolean.TRUE);
EntityBuilder.addValue(cluster, "region", new Code("001"));
EntityBuilder.addValue(cluster, "district", new Code("002"));
EntityBuilder.addValue(cluster, "crew_no", 10);
EntityBuilder.addValue(cluster, "map_sheet", "value 1");
EntityBuilder.addValue(cluster, "map_sheet", "value 2");
EntityBuilder.addValue(cluster, "vehicle_location", new Coordinate((double) 432423423l, (double) 4324324l, "srs"));
EntityBuilder.addValue(cluster, "gps_model", "TomTom 1.232");
{
Entity ts = EntityBuilder.addEntity(cluster, "time_study");
EntityBuilder.addValue(ts, "date", new Date(2011, 2, 14));
EntityBuilder.addValue(ts, "start_time", new Time(8, 15));
EntityBuilder.addValue(ts, "end_time", new Time(15, 29));
}
/*
{
Entity ts = EntityBuilder.addEntity(cluster, "time_study");
EntityBuilder.addValue(ts, "date", new Date(2011,2,15));
EntityBuilder.addValue(ts, "start_time", new Time(8,32));
EntityBuilder.addValue(ts, "end_time", new Time(11,20));
}
*/
{
Entity plot = EntityBuilder.addEntity(cluster, "plot");
EntityBuilder.addValue(plot, "no", new Code("1"));
Entity tree1 = EntityBuilder.addEntity(plot, "tree");
EntityBuilder.addValue(tree1, "tree_no", 1);
EntityBuilder.addValue(tree1, "dbh", 54.2);
EntityBuilder.addValue(tree1, "total_height", 2.0);
// EntityBuilder.addValue(tree1, "bole_height", (Double) null).setMetadata(new CollectAttributeMetadata('*',null,"No value specified"));
RealAttribute boleHeight = EntityBuilder.addValue(tree1, "bole_height", (Double) null);
boleHeight.getField(0).setSymbol('*');
boleHeight.getField(0).setRemarks("No value specified");
Entity tree2 = EntityBuilder.addEntity(plot, "tree");
EntityBuilder.addValue(tree2, "tree_no", 2);
EntityBuilder.addValue(tree2, "dbh", 82.8);
EntityBuilder.addValue(tree2, "total_height", 3.0);
}
{
Entity plot = EntityBuilder.addEntity(cluster, "plot");
EntityBuilder.addValue(plot, "no", new Code("2"));
Entity tree1 = EntityBuilder.addEntity(plot, "tree");
EntityBuilder.addValue(tree1, "tree_no", 1);
EntityBuilder.addValue(tree1, "dbh", 34.2);
EntityBuilder.addValue(tree1, "total_height", 2.0);
Entity tree2 = EntityBuilder.addEntity(plot, "tree");
EntityBuilder.addValue(tree2, "tree_no", 2);
EntityBuilder.addValue(tree2, "dbh", 85.8);
EntityBuilder.addValue(tree2, "total_height", 4.0);
{
Entity humanImpact = EntityBuilder.addEntity(plot, "human_impact");
EntityBuilder.addValue(humanImpact, "type", new Code("0"));
}
}
}
use of org.openforis.idm.model.Time in project collect by openforis.
the class ModelDaoIntegrationTest method addTestValues.
private void addTestValues(Entity cluster, String id) {
EntityBuilder.addValue(cluster, "id", new Code(id));
EntityBuilder.addValue(cluster, "gps_realtime", Boolean.TRUE);
EntityBuilder.addValue(cluster, "region", new Code("001"));
EntityBuilder.addValue(cluster, "district", new Code("002"));
EntityBuilder.addValue(cluster, "crew_no", 10);
EntityBuilder.addValue(cluster, "map_sheet", "value 1");
EntityBuilder.addValue(cluster, "map_sheet", "value 2");
EntityBuilder.addValue(cluster, "vehicle_location", new Coordinate((double) 432423423l, (double) 4324324l, "srs"));
EntityBuilder.addValue(cluster, "gps_model", "TomTom 1.232");
{
Entity ts = EntityBuilder.addEntity(cluster, "time_study");
EntityBuilder.addValue(ts, "date", new Date(2011, 2, 14));
EntityBuilder.addValue(ts, "start_time", new Time(8, 15));
EntityBuilder.addValue(ts, "end_time", new Time(15, 29));
}
{
Entity ts = EntityBuilder.addEntity(cluster, "time_study");
EntityBuilder.addValue(ts, "date", new Date(2011, 2, 15));
EntityBuilder.addValue(ts, "start_time", new Time(8, 32));
EntityBuilder.addValue(ts, "end_time", new Time(11, 20));
}
{
Entity plot = EntityBuilder.addEntity(cluster, "plot");
EntityBuilder.addValue(plot, "no", new Code("1"));
Entity tree1 = EntityBuilder.addEntity(plot, "tree");
EntityBuilder.addValue(tree1, "tree_no", 1);
EntityBuilder.addValue(tree1, "dbh", 54.2);
EntityBuilder.addValue(tree1, "total_height", 2.0);
// EntityBuilder.addValue(tree1, "bole_height", (Double) null).setMetadata(new CollectAttributeMetadata('*',null,"No value specified"));
RealAttribute boleHeight = EntityBuilder.addValue(tree1, "bole_height", (Double) null);
boleHeight.getField(0).setSymbol('*');
boleHeight.getField(0).setRemarks("No value specified");
Entity tree2 = EntityBuilder.addEntity(plot, "tree");
EntityBuilder.addValue(tree2, "tree_no", 2);
EntityBuilder.addValue(tree2, "dbh", 82.8);
EntityBuilder.addValue(tree2, "total_height", 3.0);
}
{
Entity plot = EntityBuilder.addEntity(cluster, "plot");
EntityBuilder.addValue(plot, "no", new Code("2"));
Entity tree1 = EntityBuilder.addEntity(plot, "tree");
EntityBuilder.addValue(tree1, "tree_no", 1);
EntityBuilder.addValue(tree1, "dbh", 34.2);
EntityBuilder.addValue(tree1, "total_height", 2.0);
Entity tree2 = EntityBuilder.addEntity(plot, "tree");
EntityBuilder.addValue(tree2, "tree_no", 2);
EntityBuilder.addValue(tree2, "dbh", 85.8);
EntityBuilder.addValue(tree2, "total_height", 4.0);
}
}
use of org.openforis.idm.model.Time in project collect by openforis.
the class TimeValidator method evaluate.
@Override
public ValidationResultFlag evaluate(TimeAttribute timeAttribute) {
try {
Time time = timeAttribute.getValue();
if (time != null) {
Integer hour = time.getHour();
Integer minute = time.getMinute();
if (!(hour == null && minute == null) && (hour == null || hour < 0 || hour >= 24 || minute == null || minute < 0 || minute >= 60)) {
return ValidationResultFlag.ERROR;
}
}
return ValidationResultFlag.OK;
} catch (Exception e) {
return ValidationResultFlag.ERROR;
}
}
Aggregations