final ChildrenCalculator[] calc = new ChildrenCalculator[1];
if (nameTestScorer == null) {
// always use simple in that case
calc[0] = new SimpleChildrenCalculator(reader, hResolver);
contextScorer.score(new HitCollector() {
public void collect(int doc, float score) {
calc[0].collectContextHit(doc);
}
});
} else {
// start simple but switch once threshold is reached
calc[0] = new SimpleChildrenCalculator(reader, hResolver);
contextScorer.score(new HitCollector() {
private List docIds = new ArrayList();
public void collect(int doc, float score) {
calc[0].collectContextHit(doc);