/** * Return a PROJECTION node. * * @param assignmentNodes * The BIND()s that will appear in the projection. */ protected ProjectionNode projection(final AssignmentNode... assignmentNodes) { // Setup projection. final ProjectionNode projection = new ProjectionNode(); for (AssignmentNode varNode : assignmentNodes) projection.addProjectionExpression(varNode); return projection; }
/** * Return a PROJECTION node. * * @param varNodes * The variables that will appear in the projection. */ protected ProjectionNode projection(final VarNode... varNodes) { // Setup projection. final ProjectionNode projection = new ProjectionNode(); for (VarNode varNode : varNodes) projection.addProjectionVar(varNode); return projection; }
@Override public void apply(ASTBase rslt) { ((QueryBase) rslt).getProjection().setDistinct(false); } },
sb.append("\n").append(indent(indent)).append("SELECT "); if (isDistinct()) sb.append("DISTINCT "); if (isReduced()) sb.append("REDUCED "); final DescribeModeEnum describeMode = getDescribeMode(); final Integer describeIterationLimit = getDescribeIterationLimit(); final Integer describeStatementLimit = getDescribeStatementLimit(); if (isWildcard()) { if (excludeFromProjection(v.getVar())) { sb.append("[excludeFromProjection]");
final ProjectionNode projection = new ProjectionNode(); queryRoot.setProjection(projection); projection.addProjectionExpression(new AssignmentNode(anonvar, new ConstantNode(mikeURI.getIV()))); projection.setDescribeMode(DescribeModeEnum.ForwardOneStep); final ProjectionNode projection = new ProjectionNode(); expected.setProjection(projection); projection.setReduced(true); final VarNode anonvar = new VarNode("-iri-1"); anonvar.setAnonymous(true); projection.addProjectionExpression(new AssignmentNode(anonvar, new ConstantNode(mikeURI.getIV()))); projection.setDescribeMode(DescribeModeEnum.ForwardOneStep);
final IProjectionDecl queryRoot) throws VisitorException { final ProjectionNode projection = new ProjectionNode(); projection.setDistinct(true); projection.setReduced(true); projection.addProjectionVar(new VarNode("*")); projection.addProjectionVar(new VarNode(varname)); projection.addProjectionExpression(new AssignmentNode( new VarNode(varname), ve));
final ProjectionNode projection = new ProjectionNode(); projection.addProjectionVar(new VarNode("s")); projection.setDistinct(true); expected.setProjection(projection);
if (projection != null && projection.isWildcard()) { final ProjectionNode p2 = new ProjectionNode(); if(projection.isDistinct()) p2.setDistinct(true); if(projection.isReduced()) p2.setReduced(true); p2.addProjectionVar(new VarNode(var.getName()));
/** * Unit test when projecting a constant * <pre> * SELECT 12 as ?x * </pre> */ public void test_with_constant() { @SuppressWarnings({ "unchecked", "rawtypes" }) final VarNode x = new VarNode("x"); @SuppressWarnings({ "rawtypes", "unchecked" }) final ConstantNode xExpr = new ConstantNode( new XSDNumericIV(12)); final ProjectionNode select = new ProjectionNode(); select.addExpr(new AssignmentNode(x, xExpr)); final GroupByNode groupBy = null; final HavingNode having = null; new VerifyAggregates(select, groupBy, having); }
final ProjectionNode projection = new ProjectionNode(); projection.addProjectionVar(new VarNode("s")); projection.setReduced(true); expected.setProjection(projection);
/** * Unit test with simple aggregate function in SELECT clause. * <pre> * SELECT ?org, SUM(?lprice) AS ?totalPrice * GROUP BY ?org * </pre> */ @SuppressWarnings({ "rawtypes", "unchecked" }) public void test_simpleAggregate() { final VarNode org = new VarNode("org"); final VarNode lprice = new VarNode("lprice"); final VarNode totalPrice = new VarNode("totalPrice"); final IValueExpressionNode totalPriceExprNode = new FunctionNode( FunctionRegistry.SUM, null, lprice); final ProjectionNode select = new ProjectionNode(); select.addProjectionVar(org); select.addProjectionExpression(new AssignmentNode(totalPrice, totalPriceExprNode)); final GroupByNode groupBy = new GroupByNode(); groupBy.addGroupByVar(org); final HavingNode having = null; new VerifyAggregates(select, groupBy, having); }
final ProjectionNode projection = new ProjectionNode(); queryRoot.setProjection(projection); projection.setDescribeMode(describeExpansionMode); projection.addProjectionExpression(new AssignmentNode(anonvar, new ConstantNode(iv)));
final IValueExpression[] assignments = projection.getValueExpressions(); assertEquals(2, assignments.length); assertFalse(projection.excludeFromProjection(var1)); assertFalse("s".equals(var2.getName())); assertFalse("o".equals(var2.getName())); assertTrue(projection.excludeFromProjection(var2)); // [excludeFromProjection]
@Override public void apply(ASTBase rslt) { ((QueryBase) rslt).getProjection().setReduced(true); } },
DescribeModeEnum describeMode = projection.getDescribeMode();
: queryBase.getProjection().isEmpty() ? null : queryBase .getProjection(); if (projection.isWildcard()) throw new VisitorException( "Wildcard not allowed with aggregate."); .getValueExpressions();
public void addProjectionExpression(final AssignmentNode assignment) { addExpr(assignment); }
.getValueExpressions(); final Properties queryHints = projection.getQueryHints();
@Override public void handle(final AST2BOpContext context, final QueryRoot queryRoot, final QueryHintScope scope, final ASTBase op, final DescribeModeEnum value) { if (op instanceof ProjectionNode) { //_setQueryHint(context, scope, op, getName(), value); ((ProjectionNode) op).setDescribeMode(value); return; } // throw new QueryHintException(scope, op, getName(), value); }
/** * Return the projected variables. * * @param vars * A set into which the projected variables will be added. * * @return The caller's set. */ public Set<IVariable<?>> getProjectionVars(final Set<IVariable<?>> vars) { for (AssignmentNode n : this) { if (!excludeFromProjection(n.getVar())) { vars.add(n.getVar()); } } return vars; }