@Override public Pair<Iterable<Bindings>, Bindings> visit(GraphBlock expr, Bindings bindings) { try { context = expr.getContext(); return visit((ContainerBlock) expr, bindings); } finally { context = null; } }
public static GraphBlock graphFilter(Expression<UID> context, Block block, Predicate... filters) { return new GraphBlock(context, Collections.singletonList(block), filters); }
@Override public Void visit(GraphBlock expr, Void context) { handle(expr.getBlocks()); handle(expr.getContext()); return null; }
@Nullable public Void visit(GraphBlock expr, @Nullable Void context) { lastPattern = null; append("GRAPH ").handle(expr.getContext()).append(" { "); visitBlocks(expr.getBlocks()); visitFilter(expr.getFilters()); append("} "); lastPattern = null; return null; }
@Override @SuppressWarnings("unchecked") public <R, C> R accept(Visitor<R, C> v, C context) { if (v instanceof RDFVisitor) { return (R) ((RDFVisitor) v).visit(this, context); } else if (v instanceof ToStringVisitor) { return (R) toString(); } else if (v.getClass().getName().equals("com.mysema.query.types.ExtractorVisitor")) { return (R) this; } else { throw new IllegalArgumentException(v.toString()); } }
@Override public TupleExpr visit(GraphBlock expr, QueryMetadata md) { graphs.push(toVar(expr.getContext(), md)); TupleExpr rv = visit((ContainerBlock) expr, md); graphs.pop(); return rv; }
public static GraphBlock graph(Expression<UID> context, Block... blocks) { return new GraphBlock(context, Arrays.asList(blocks)); }
@Override public TupleExpr visit(GraphBlock expr, QueryMetadata md) { graphs.push(toVar(expr.getContext(), md)); TupleExpr rv = visit((ContainerBlock) expr, md); graphs.pop(); return rv; }
public static GraphBlock graph(Expression<UID> context, Collection<Predicate> predicates) { List<Block> blocks = new ArrayList<Block>(); BooleanBuilder filters = new BooleanBuilder(); handle(predicates, blocks, filters); if (filters.getValue() == null) { return new GraphBlock(convert(UID.class, context), blocks); } else { return new GraphBlock(convert(UID.class, context), blocks, filters.getValue()); } }
@Override public TupleExpr visit(GraphBlock expr, QueryMetadata md) { graphs.push(toVar(expr.getContext(), md)); TupleExpr rv = visit((ContainerBlock)expr, md); graphs.pop(); return rv; }