@Override protected void meetNode(QueryModelNode node) { if (node instanceof TupleExpr && node != nodeToIgnore) { TupleExpr tupleExpr = (TupleExpr)node; bindingNames.addAll(tupleExpr.getBindingNames()); } } }
@Override protected void meetNode(QueryModelNode node) { if (node instanceof TupleExpr && node != nodeToIgnore) { TupleExpr tupleExpr = (TupleExpr)node; bindingNames.addAll(tupleExpr.getBindingNames()); } } }
public Set<String> getBindingNames() { Set<String> bindingNames = new LinkedHashSet<String>(16); bindingNames.addAll(getLeftArg().getBindingNames()); bindingNames.addAll(getRightArg().getBindingNames()); return bindingNames; }
public Set<String> getBindingNames() { Set<String> bindingNames = new LinkedHashSet<String>(16); bindingNames.addAll(getLeftArg().getBindingNames()); bindingNames.addAll(getRightArg().getBindingNames()); return bindingNames; }
@Override public Set<String> getBindingNames() { Set<String> bindingNames = new LinkedHashSet<>(16); bindingNames.addAll(getLeftArg().getBindingNames()); bindingNames.addAll(getRightArg().getBindingNames()); return bindingNames; }
@Override public Set<String> getBindingNames() { Set<String> result = getArg().getBindingNames(); if (condition instanceof SubQueryValueOperator) { result = Stream .concat(result.stream(), ((SubQueryValueOperator) condition).getSubQuery().getBindingNames().stream()) .collect(Collectors.toSet()); } return result; }
public Set<String> getBindingNames() { Set<String> bindingNames = new LinkedHashSet<String>(16); bindingNames.addAll(getLeftArg().getBindingNames()); bindingNames.addAll(getRightArg().getBindingNames()); return bindingNames; }
@Override public Set<String> getBindingNames() { Set<String> bindingNames = new LinkedHashSet<String>(arg.getBindingNames()); for (ExtensionElem pe : elements) { bindingNames.add(pe.getName()); } return bindingNames; }
@Override public Set<String> getBindingNames() { Set<String> bindingNames = new LinkedHashSet<>(16); bindingNames.addAll(getLeftArg().getBindingNames()); bindingNames.retainAll(getRightArg().getBindingNames()); return bindingNames; }
public Set<String> getBindingNames() { Set<String> result = getArg().getBindingNames(); if (condition instanceof SubQueryValueOperator) { result = Stream .concat(result.stream(), ((SubQueryValueOperator) condition).getSubQuery().getBindingNames().stream()) .collect(Collectors.toSet()); } return result; }
public HashJoinIteration(EvaluationStrategy strategy, TupleExpr left, TupleExpr right, BindingSet bindings, boolean leftJoin) throws QueryEvaluationException { this(strategy, strategy.evaluate(left, bindings), left.getBindingNames(), strategy.evaluate(right, bindings), right.getBindingNames(), leftJoin); }
public BottomUpJoinIterator(EvaluationStrategy strategy, Join join, BindingSet bindings) throws QueryEvaluationException { leftIter = strategy.evaluate(join.getLeftArg(), bindings); rightIter = strategy.evaluate(join.getRightArg(), bindings); joinAttributes = join.getLeftArg().getBindingNames(); joinAttributes.retainAll(join.getRightArg().getBindingNames()); hashTable = null; }
public BottomUpJoinIterator(EvaluationStrategy strategy, Join join, BindingSet bindings) throws QueryEvaluationException { leftIter = strategy.evaluate(join.getLeftArg(), bindings); rightIter = strategy.evaluate(join.getRightArg(), bindings); joinAttributes = join.getLeftArg().getBindingNames(); joinAttributes.retainAll(join.getRightArg().getBindingNames()); hashTable = null; }
public FlattenedOptional(LeftJoin node) { rightArgs = getJoinArgs(node.getRightArg(), new HashSet<TupleExpr>()); boundVars = setWithOutConstants( Sets.intersection(node.getLeftArg().getAssuredBindingNames(), node.getRightArg().getBindingNames())); unboundVars = setWithOutConstants(Sets.difference(node.getRightArg().getBindingNames(), boundVars)); condition = node.getCondition(); rightArg = node.getRightArg(); getVarCounts(node); assuredBindingNames = new HashSet<>(leftArgVarCounts.keySet()); bindingNames = new HashSet<>(Sets.union(assuredBindingNames, unboundVars)); }
@Override public void meet(Extension node) { if (node.getArg().getBindingNames().containsAll(filterVars)) { node.getArg().visit(this); } else { relocate(filter, node); } }
@Override public void meet(Extension node) { if (node.getArg().getBindingNames().containsAll(filterVars)) { node.getArg().visit(this); } else { relocate(filter, node); } }
@Override protected void meetNode(final QueryModelNode node) { // By default, do not traverse assert node instanceof TupleExpr; if (node instanceof UnaryTupleOperator) { if (((UnaryTupleOperator) node).getArg().getBindingNames() .containsAll(filterVars)) { ((UnaryTupleOperator) node).getArg().visit(this); } } relocate(filter, (TupleExpr) node); }
@Override public void meet(LeftJoin leftJoin) { if (leftJoin.getLeftArg().getBindingNames().containsAll(filterVars)) { leftJoin.getLeftArg().visit(this); } else { relocate(filter, leftJoin); } }
@Override public void meet(LeftJoin leftJoin) { if (leftJoin.getLeftArg().getBindingNames().containsAll(filterVars)) { leftJoin.getLeftArg().visit(this); } else { relocate(filter, leftJoin); } }
public Set<String> getNonAggregationVariables(final String sparql) throws MalformedQueryException { final TupleExpr te = new SPARQLParser().parseQuery(sparql, null).getTupleExpr(); bindingNames = te.getBindingNames(); te.visit(this); return bindingNames; }