public boolean isBlocking() { for (OpFilter filter : filters) { if (filter.isBlocking()) return true; } return false; }
/** rewrites the subop of filter. */ @Override public void visit(final OpFilter opFilter) { if (LOG.isDebugEnabled()) { LOG.debug("Starting visiting OpFilter"); } addOp(OpFilter.filterBy(opFilter.getExprs(), rewriteOp1(opFilter))); }
public boolean canCacheResult() { for (OpFilter filter : filters) { if (!filter.canCacheResult()) return false; } return true; }
@Override public void visit(final OpBGP opBGP) throws ReadDeniedException, AuthenticationRequiredException { if (LOG.isDebugEnabled()) { LOG.debug("Starting visiting OpBGP"); } Object principal = securityEvaluator.getPrincipal(); if (!securityEvaluator.evaluate(principal, Action.Read, graphIRI)) { if (silentFail) { return; } else { throw new ReadDeniedException(SecuredItem.Util.modelPermissionMsg(graphIRI)); } } // if the user can read any triple just add the opBGP if (securityEvaluator.evaluate(principal, Action.Read, graphIRI, Triple.ANY)) { addOp(opBGP); } else { // add security filtering to the resulting triples final List<Triple> newBGP = new ArrayList<>(); final List<Node> variables = new ArrayList<>(); // register all variables for (final Triple t : opBGP.getPattern().getList()) { newBGP.add(registerBGPTriple(t, variables)); } // create the security function. final SecuredFunction secFunc = new SecuredFunction(graphIRI, securityEvaluator, variables, newBGP); // create the filter Op filter = OpFilter.filter(secFunc, new OpBGP(BasicPattern.wrap(newBGP))); // add the filter addOp(filter); } }
public void visit(OpFilter opFilter) { // JoinPlanner.setFilterVars(); Iterator<Expr> it = opFilter.getExprs().iterator(); while (it.hasNext()) { Expr e = it.next(); Iterator<Expr> a = e.getFunction().getArgs().iterator(); System.out.println(e.getFunction().getOpName()); while (a.hasNext()) { Expr temp = a.next(); if (temp.isVariable()) JoinPlaner.filter(temp.toString(), e.getFunction()); } } }
public void removeListener(IOpFilterListener listener) { for (OpFilter filter : filters) { filter.removeListener(listener); } }
public void addListener(IOpFilterListener listener) { for (OpFilter filter : filters) { filter.addListener(listener); } }
public boolean accept(Object object) { for (OpFilter filter : filters) { if (filter.accept(object)) return true; } return false; }
public void visit(OpFilter opFilter) { Table table = eval(opFilter.getSubOp()); table = evaluator.filter(opFilter.getExprs(), table); push(table); }
/** * Determines whether the current operation can operate on the object. * * @return true if object can be used as the operation input. */ public boolean isValid(Object obj) { return !this.loadingError && AdapterUtil.instance.canAdaptTo(targetClass, obj) && filter.accept(obj); }