package org.limewire.ui.swing.search.model;
/**
* This class takes a parameter an array of SimilarResultDetectors. It calls
* detectSimilarResults on each of the given detectors when detectSimilarResult
* is called on itself.
*/
public class MultiSimilarResultDetector implements SimilarResultsDetector {
private final SimilarResultsDetector[] similarResultsDetectors;
public MultiSimilarResultDetector(SimilarResultsDetector... similarResultsDetectors) {
this.similarResultsDetectors = similarResultsDetectors;
}
@Override
public void detectSimilarResult(VisualSearchResult result) {
for (SimilarResultsDetector similarResultsDetector : similarResultsDetectors) {
similarResultsDetector.detectSimilarResult(result);
}
}
@Override
public void removeSpamItem(VisualSearchResult result, VisualSearchResult newParent) {
for (SimilarResultsDetector similarResultsDetector : similarResultsDetectors) {
similarResultsDetector.removeSpamItem(result, newParent);
}
}
@Override
public void clear() {
for (SimilarResultsDetector similarResultsDetector : similarResultsDetectors) {
similarResultsDetector.clear();
}
}
}