本文整理了Java中org.openrdf.query.algebra.Join.visit()
方法的一些代码示例,展示了Join.visit()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Join.visit()
方法的具体详情如下:
包路径:org.openrdf.query.algebra.Join
类名称:Join
方法名:visit
暂无
代码示例来源:origin: org.openrdf.sesame/sesame-sail-spin
@Override
public void meet(Join node)
throws OpenRDFException
{
BGPCollector<OpenRDFException> collector = new BGPCollector<OpenRDFException>(this);
node.visit(collector);
processGraphPattern(collector.getStatementPatterns());
}
代码示例来源:origin: org.apache.rya/rya.indexing
@Override
public void meet(Join node) {
// if right node contained in index, move it to bottom of query tree
if (sSet.contains(node.getRightArg())) {
Set<QueryModelNode> eSet = getQNodes("sp", node);
Set<QueryModelNode> compSet = Sets.difference(eSet, sSet);
if (eSet.containsAll(sSet)) {
QNodeExchanger qne = new QNodeExchanger(node.getRightArg(), compSet);
node.visit(qne);
node.replaceChildNode(node.getRightArg(), qne.getReplaced());
super.meet(node);
}
return;
}
// if left node contained in index, move it to bottom of query tree
else if (sSet.contains(node.getLeftArg())) {
Set<QueryModelNode> eSet = getQNodes("sp", node);
Set<QueryModelNode> compSet = Sets.difference(eSet, sSet);
if (eSet.containsAll(sSet)) {
QNodeExchanger qne = new QNodeExchanger(node.getLeftArg(), compSet);
node.visit(qne);
node.replaceChildNode(node.getLeftArg(), qne.getReplaced());
super.meet(node);
}
return;
} else {
super.meet(node);
}
}
代码示例来源:origin: org.apache.rya/rya.indexing
@Override
public void meet(Join queryNode) {
// if query tree contains external tuples and they are not
// positioned above statement pattern node
// reposition
if (this.bsas.size() > 0 && !(queryNode.getRightArg() instanceof BindingSetAssignment)) {
QNodeExchanger qnev = new QNodeExchanger(queryNode.getRightArg(), bsas);
queryNode.visit(qnev);
queryNode.replaceChildNode(queryNode.getRightArg(), qnev.getReplaced());
super.meet(queryNode);
} else {
super.meet(queryNode);
}
}
代码示例来源:origin: org.apache.rya/rya.indexing
@Override
public void meet(Join queryNode) {
// if query tree contains external tuples and they are not
// positioned above statement pattern node
// reposition
if (this.extTuples.size() > 0 && !(queryNode.getRightArg() instanceof ExternalTupleSet)
&& !(queryNode.getRightArg() instanceof BindingSetAssignment)) {
if (queryNode.getLeftArg() instanceof ExternalTupleSet) {
QueryModelNode temp = queryNode.getLeftArg();
queryNode.setLeftArg(queryNode.getRightArg());
queryNode.setRightArg((TupleExpr)temp);
} else {
QNodeExchanger qnev = new QNodeExchanger(queryNode.getRightArg(), this.extTuples);
queryNode.visit(qnev);
queryNode.replaceChildNode(queryNode.getRightArg(), qnev.getReplaced());
super.meet(queryNode);
}
} else {
super.meet(queryNode);
}
}
内容来源于网络,如有侵权,请联系作者删除!