@Override public FilterBuilder[] getBuilders(Workspace workspace) { List<FilterBuilder> builders = new ArrayList<>(); GraphModel am = Lookup.getDefault().lookup(GraphController.class).getGraphModel(workspace); List<Column> columns = new ArrayList<>(); columns.addAll(am.getNodeTable().toList()); columns.addAll(am.getEdgeTable().toList()); for (Column c : columns) { if (!c.isProperty() && !c.isArray()) { if (AttributeUtils.isNumberType(c.getTypeClass())) { AttributeRangeFilterBuilder b = new AttributeRangeFilterBuilder(c); builders.add(b); } } } return builders.toArray(new FilterBuilder[0]); }
@Override public FilterBuilder[] getBuilders(Workspace workspace) { List<FilterBuilder> builders = new ArrayList<>(); GraphModel am = Lookup.getDefault().lookup(GraphController.class).getGraphModel(workspace); List<Column> columns = new ArrayList<>(); columns.addAll(am.getNodeTable().toList()); columns.addAll(am.getEdgeTable().toList()); for (Column c : columns) { if (!c.isProperty()) { if (c.getTypeClass().equals(String.class) || c.getTypeClass().equals(TimestampStringMap.class) || c.getTypeClass().equals(IntervalStringMap.class) || c.isArray()) { EqualStringFilterBuilder b = new EqualStringFilterBuilder(c); builders.add(b); } else if (AttributeUtils.isNumberType(c.getTypeClass())) { EqualNumberFilterBuilder b = new EqualNumberFilterBuilder(c); builders.add(b); } else if (c.getTypeClass().equals(Boolean.class) || c.getTypeClass().equals(TimestampBooleanMap.class) || c.getTypeClass().equals(IntervalBooleanMap.class)) { EqualBooleanFilterBuilder b = new EqualBooleanFilterBuilder(c); builders.add(b); } } } return builders.toArray(new FilterBuilder[0]); }