public Object visit(ASTServiceGraphPattern node, Object data) throws VisitorException { return node.childrenAccept(this, data); }
final public void ServiceGraphPattern() throws ParseException { ASTServiceGraphPattern jjtn000 = new ASTServiceGraphPattern(JJTSERVICEGRAPHPATTERN); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000);Token t; try { t = jj_consume_token(SERVICE); jjtn000.setBeginTokenLinePos(t.beginLine); jjtn000.setBeginTokenColumnPos(t.beginColumn); switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case SILENT: jj_consume_token(SILENT); jjtn000.setSilent(true); break; default: jjtree.closeNodeScope(jjtn000, true); jjtc000 = false; jjtn000.setEndTokenLinePos(t.beginLine); jjtn000.setEndTokenColumnPos(t.beginColumn); } catch (Throwable jjte000) { if (jjtc000) {
/** * @return Returns the patternString. */ public String getPatternString() { if (patternString == null) { ASTOperationContainer parentContainer = (ASTOperationContainer)getParentContainer(this); String sourceString = parentContainer.getSourceString(); // snip away line until begin token line position String substring = sourceString; for (int i = 1; i < getBeginTokenLinePos(); i++) { substring = substring.substring(substring.indexOf("\n") + 1); } // snip away until begin token column pos substring = substring.substring(getBeginTokenColumnPos() - 1); // determine part of the query behind the service pattern closing bracket. String toTrimSuffix = sourceString; for (int i = 1; i < getEndTokenLinePos(); i++) { toTrimSuffix = toTrimSuffix.substring(toTrimSuffix.indexOf("\n") + 1); } toTrimSuffix = toTrimSuffix.substring(getEndTokenColumnPos() - 1); // trim off the end patternString = substring.substring(0, substring.lastIndexOf(toTrimSuffix) + 1); } return patternString; }
@Override public Object visit(ASTServiceGraphPattern node, Object data) throws VisitorException { GraphPattern parentGP = graphPattern; ValueExpr serviceRef = (ValueExpr)node.jjtGetChild(0).jjtAccept(this, null); graphPattern = new GraphPattern(parentGP); node.jjtGetChild(1).jjtAccept(this, null); TupleExpr serviceExpr = graphPattern.buildTupleExpr(); if (serviceExpr instanceof SingletonSet) return null; // do not add an empty service block String serviceExpressionString = node.getPatternString(); parentGP.addRequiredTE(new Service(mapValueExprToVar(serviceRef), serviceExpr, serviceExpressionString, node.getPrefixDeclarations(), node.getBaseURI(), node.isSilent())); graphPattern = parentGP; return null; }
@Override public Object visit(ASTServiceGraphPattern node, Object data) throws VisitorException { node.setPrefixDeclarations(prefixMap); return super.visit(node, data); }
private Node getParentContainer(Node node) { if (node instanceof ASTOperationContainer || node == null) { return node; } return getParentContainer(node.jjtGetParent()); }
@Override public Object visit(final ASTServiceGraphPattern node, final Object data) throws VisitorException { node.setPrefixDeclarations(this.prefixMap); return super.visit(node, data); }
@Override public Object visit(final ASTServiceGraphPattern node, final Object data) throws VisitorException { node.setPrefixDeclarations(this.namespacesOut); return super.visit(node, data); }