view src/de/mpiwg/anteater/results/filter/FilterController.java @ 0:036535fcd179

anteater
author jdamerow
date Fri, 14 Sep 2012 10:30:43 +0200
parents
children
line wrap: on
line source

package de.mpiwg.anteater.results.filter;

import java.util.ArrayList;
import java.util.List;

import de.mpiwg.anteater.results.ApplicantResult;
import de.mpiwg.anteater.results.LocationResult;
import de.mpiwg.anteater.results.SpeciesScientificResult;
import de.mpiwg.anteater.text.TextInformation;

public class FilterController {
	
	private List<IResultFilter> filters;
	
	public FilterController() {
		filters = new ArrayList<IResultFilter>();
		filters.add(new ApplicantExistsFilter());
		filters.add(new SpeciesExistsFilter());
		filters.add(new ApplicantLocWithoutApplicantFilter());
		filters.add(new SpeciesInBetweenRegexApplicantFilter());
		filters.add(new NestedResultsFilter());
	}

	
	public void runFilters(TextInformation info, 
			List<ApplicantResult> applicantResults,
			List<SpeciesScientificResult> speciesResults,
			List<LocationResult> locationResults) {
		
		for (IResultFilter filter : filters) {
			filter.filterElements(info, applicantResults, speciesResults, locationResults);
		}
	}
}