@Override public boolean apply(InputFile f) { for (OptimizedFilePredicate predicate : predicates) { if (!predicate.apply(f)) { return false; } } return true; }
@Override public Iterable<InputFile> get(Index index) { if (predicates.isEmpty()) { return index.inputFiles(); } // Optimization, use get on first predicate then filter with next predicates Iterable<InputFile> result = predicates.get(0).get(index); for (int i = 1; i < predicates.size(); i++) { result = predicates.get(i).filter(result); } return result; }
@Override public final int compareTo(OptimizedFilePredicate o) { return o.priority() - priority(); }
@Override public Iterable<InputFile> inputFiles(FilePredicate predicate) { Iterable<InputFile> iterable = OptimizedFilePredicateAdapter.create(predicate).get(cache); if (defaultPredicateFactory != null) { return StreamSupport.stream(iterable.spliterator(), false) .filter(defaultPredicateFactory.apply(predicate)).collect(Collectors.toList()); } return iterable; }
@Override public Iterable<InputFile> filter(Iterable<InputFile> target) { Iterable<InputFile> result = target; for (OptimizedFilePredicate predicate : predicates) { result = predicate.filter(result); } return result; }
/** * Bypass default predicate to get all files/dirs indexed. * Default predicate is used when some files/dirs should not be processed by sensors. */ public Iterable<InputFile> inputFiles() { return OptimizedFilePredicateAdapter.create(predicates.all()).get(cache); }
@Override public Iterable<InputFile> filter(Iterable<InputFile> target) { Iterable<InputFile> result = target; for (OptimizedFilePredicate predicate : predicates) { result = predicate.filter(result); } return result; }
@Override public Iterable<InputFile> get(Index index) { if (predicates.isEmpty()) { return index.inputFiles(); } // Optimization, use get on first predicate then filter with next predicates Iterable<InputFile> result = predicates.get(0).get(index); for (int i = 1; i < predicates.size(); i++) { result = predicates.get(i).filter(result); } return result; }
@Override public Iterable<InputFile> inputFiles(FilePredicate predicate) { Iterable<InputFile> iterable = OptimizedFilePredicateAdapter.create(predicate).get(cache); if (defaultPredicateFactory != null) { return StreamSupport.stream(iterable.spliterator(), false) .filter(defaultPredicateFactory.apply(predicate)).collect(Collectors.toList()); } return iterable; }
@Override public boolean apply(InputFile f) { for (OptimizedFilePredicate predicate : predicates) { if (!predicate.apply(f)) { return false; } } return true; }
@Override public Iterable<InputFile> filter(Iterable<InputFile> target) { Iterable<InputFile> result = target; for (OptimizedFilePredicate predicate : predicates) { result = predicate.filter(result); } return result; }
@Override public final int compareTo(OptimizedFilePredicate o) { return o.priority() - priority(); }
@Override public Iterable<InputFile> get(Index index) { if (predicates.isEmpty()) { return index.inputFiles(); } // Optimization, use get on first predicate then filter with next predicates Iterable<InputFile> result = predicates.get(0).get(index); for (int i = 1; i < predicates.size(); i++) { result = predicates.get(i).filter(result); } return result; }
@Override public Iterable<InputFile> inputFiles(FilePredicate predicate) { doPreloadFiles(); return OptimizedFilePredicateAdapter.create(predicate).get(cache); }
@Override public boolean apply(InputFile f) { for (OptimizedFilePredicate predicate : predicates) { if (!predicate.apply(f)) { return false; } } return true; }
@Override public final int compareTo(OptimizedFilePredicate o) { return o.priority() - priority(); }
/** * Bypass default predicate to get all files/dirs indexed. * Default predicate is used when some files/dirs should not be processed by sensors. */ public Iterable<InputFile> inputFiles() { return OptimizedFilePredicateAdapter.create(predicates.all()).get(cache); }