Search in sources :

Example 36 with Node

use of org.openforis.idm.model.Node in project collect by openforis.

the class CollectRecord method updateEntityCounts.

private void updateEntityCounts() {
    List<Integer> counts = new ArrayList<Integer>();
    List<EntityDefinition> countableDefns = getSurvey().getSchema().getCountableEntitiesInRecordList(getRootEntity().getDefinition());
    for (EntityDefinition defn : countableDefns) {
        List<Node<?>> nodes = findNodesByPath(defn.getPath());
        counts.add(nodes.size());
    }
    this.entityCounts = counts;
}
Also used : EntityDefinition(org.openforis.idm.metamodel.EntityDefinition) Node(org.openforis.idm.model.Node) ArrayList(java.util.ArrayList)

Example 37 with Node

use of org.openforis.idm.model.Node in project collect by openforis.

the class AbsoluteModelPathExpression method iterate.

public List<Node<?>> iterate(Record record) throws InvalidExpressionException {
    Entity contextNode = record.getRootEntity();
    if (contextNode.getName().equals(root)) {
        if (modelPathExpression == null) {
            List<Node<?>> list = new ArrayList<Node<?>>();
            list.add(contextNode);
            return list;
        } else {
            List<Node<?>> list = modelPathExpression.evaluateMultiple(contextNode, contextNode);
            return list;
        }
    } else {
        throw new InvalidExpressionException(root + " is not a valid root");
    }
}
Also used : Entity(org.openforis.idm.model.Entity) Node(org.openforis.idm.model.Node) ArrayList(java.util.ArrayList)

Aggregations

Node (org.openforis.idm.model.Node)37 Entity (org.openforis.idm.model.Entity)19 Test (org.junit.Test)13 ArrayList (java.util.ArrayList)11 AbstractTest (org.openforis.idm.AbstractTest)11 NodeDefinition (org.openforis.idm.metamodel.NodeDefinition)8 CollectRecord (org.openforis.collect.model.CollectRecord)6 RealAttribute (org.openforis.idm.model.RealAttribute)6 Attribute (org.openforis.idm.model.Attribute)5 CodeAttribute (org.openforis.idm.model.CodeAttribute)5 Code (org.openforis.idm.model.Code)4 Record (org.openforis.idm.model.Record)4 HashSet (java.util.HashSet)3 LinkedHashSet (java.util.LinkedHashSet)3 XPathDataQueryEvaluator (org.openforis.collect.datacleansing.xpath.XPathDataQueryEvaluator)3 CollectRecordSummary (org.openforis.collect.model.CollectRecordSummary)3 CollectSurvey (org.openforis.collect.model.CollectSurvey)3 RecordFilter (org.openforis.collect.model.RecordFilter)3 AttributeDefinition (org.openforis.idm.metamodel.AttributeDefinition)3 EntityDefinition (org.openforis.idm.metamodel.EntityDefinition)3