@Override public int getMode() { return producer.getMode(); }
if (p.getMode() == Producer.EXTENSION) {
private PathFinder getPathFinder(Exp exp, Producer p) { List<PathFinder> lp = lPathFinder; for (PathFinder pf : lp) { if (pf.getEdge() == exp.getEdge()) { return pf; } } PathFinder pathFinder = PathFinder.create(this, p, query); //pathFinder.setDefaultBreadth(false); if (hasEvent) { pathFinder.set(manager); } pathFinder.set(listener); pathFinder.setList(query.getGlobalQuery().isListPath()); // rdf:type/rdfs:subClassOf* generated system path does not store the list of edges // to be optimized pathFinder.setStorePath(query.getGlobalQuery().isStorePath() && !exp.isSystem()); pathFinder.setCache(query.getGlobalQuery().isCachePath()); // TODO: subQuery pathFinder.setCheckLoop(query.isCheckLoop()); pathFinder.setCountPath(query.isCountPath()); pathFinder.init(exp.getRegex(), exp.getObject(), exp.getMin(), exp.getMax()); // TODO: check this with clean() if (p.getMode() == Producer.EXTENSION && p.getQuery() == memory.getQuery()) { // do nothing } else { lPathFinder.add(pathFinder); } return pathFinder; }
Node bNode = gNode; if (p.getMode() == Producer.EXTENSION) { if (p.getQuery() == memory.getQuery()) { list = empty;