use of cc.redberry.primitives.Filter in project mixcr by milaboratory.
the class ActionExportParameters method getFilter.
@SuppressWarnings("unchecked")
public Filter<T> getFilter() {
List<Filter<T>> filters = new ArrayList<>();
final Chains chains = getChains();
filters.add(new Filter<T>() {
@Override
public boolean accept(T object) {
for (GeneType gt : GeneType.VJC_REFERENCE) {
VDJCHit bestHit = object.getBestHit(gt);
if (bestHit != null && chains.intersects(bestHit.getGene().getChains()))
return true;
}
return false;
}
});
if (filters.isEmpty())
return ACCEPT_ALL;
if (filters.size() == 1)
return filters.get(0);
return and(filters.toArray(new Filter[filters.size()]));
}