01: /*
02: * Copyright Aduna (http://www.aduna-software.com/) (c) 2007.
03: *
04: * Licensed under the Aduna BSD-style license.
05: */
06: package org.openrdf.query.algebra.evaluation.iterator;
07:
08: import info.aduna.iteration.CloseableIteration;
09: import info.aduna.iteration.FilterIteration;
10:
11: import org.openrdf.query.BindingSet;
12: import org.openrdf.query.QueryEvaluationException;
13: import org.openrdf.query.QueryResultUtil;
14:
15: /**
16: * @author Arjohn Kampman
17: */
18: public class CompatibleBindingSetFilter extends
19: FilterIteration<BindingSet, QueryEvaluationException> {
20:
21: private BindingSet inputBindings;
22:
23: public CompatibleBindingSetFilter(
24: CloseableIteration<BindingSet, QueryEvaluationException> iter,
25: BindingSet inputBindings) {
26: super (iter);
27: this .inputBindings = inputBindings;
28: }
29:
30: @Override
31: protected boolean accept(BindingSet outputBindings)
32: throws QueryEvaluationException {
33: return QueryResultUtil.bindingSetsCompatible(inputBindings,
34: outputBindings);
35: }
36: }
|