1 package org.simantics.modeling.ui.viewpoint;
\r
3 import java.util.Collection;
\r
4 import java.util.Collections;
\r
6 import org.simantics.browsing.ui.model.children.ChildRule;
\r
7 import org.simantics.db.ReadGraph;
\r
8 import org.simantics.db.exception.DatabaseException;
\r
9 import org.simantics.db.layer0.variable.Variable;
\r
10 import org.simantics.structural.stubs.StructuralResource2;
\r
12 public class VariableChildRule implements ChildRule {
\r
15 public boolean isCompatible(Class<?> contentType) {
\r
16 return contentType.equals(Variable.class);
\r
20 public Collection<?> getChildren(ReadGraph graph, Object parent)
\r
21 throws DatabaseException {
\r
22 Collection<Variable> children = ((Variable)parent).getChildren(graph);
\r
23 return VariableChildren.filterByClassification(graph, children, StructuralResource2.URIs.Component);
\r
27 public Collection<?> getParents(ReadGraph graph, Object child)
\r
28 throws DatabaseException {
\r
29 Variable parent = ((Variable)child).getParent(graph);
\r
31 return Collections.emptyList();
\r
33 return Collections.singleton(parent);
\r