1 package org.simantics.modeling.ui.viewpoint;
3 import java.util.ArrayList;
4 import java.util.Collection;
5 import java.util.Collections;
8 import org.simantics.db.ReadGraph;
9 import org.simantics.db.exception.DatabaseException;
10 import org.simantics.db.layer0.variable.Variable;
13 * @author Tuukka Lehtonen
15 public class VariableChildren {
20 * @param requiredClassification
22 * @throws DatabaseException
24 public static Collection<Variable> filterByClassification(ReadGraph graph, Collection<Variable> variables, String requiredClassification) throws DatabaseException {
25 if (variables.isEmpty())
26 return Collections.emptyList();
27 Collection<Variable> result = null;
28 for (Variable v : variables) {
29 //System.out.println("child : " + v.getURI(graph));
30 Set<String> classifications = v.getClassifications(graph);
31 //System.out.println("classifications: " + classifications);
32 if (classifications != null && classifications.contains(requiredClassification)) {
34 result = new ArrayList<Variable>(variables.size());
38 return result != null ? result : Collections.<Variable>emptyList();