package topasin.processor;
import java.util.Map;
import java.util.Map.Entry;
import topasin.calculate.AsinDetailAnalysisFields;
import topasin.calculate.TopAsinsCalculator;
/**
* find top asin using (asin detail map of one asin detai file) and ( each asin detail line of another asin detail file)
*
* @author mengzang
*
*/
public class TopAsinFinder implements Runnable {
private final String groupKey;
private final Map<String, AsinDetailAnalysisFields> asins4Group;
private final Map<String, TopAsinsCalculator> group2TopAsin;
public TopAsinFinder(String groupKey, Map<String, AsinDetailAnalysisFields> asins4Group,
Map<String, TopAsinsCalculator> group2TopAsin) {
this.groupKey = groupKey;
this.asins4Group = asins4Group;
this.group2TopAsin = group2TopAsin;
}
@Override
public void run() {
TopAsinsCalculator topasinsCalculator = new TopAsinsCalculator();
group2TopAsin.put(groupKey, topasinsCalculator);
for (Entry<String, AsinDetailAnalysisFields> asinData : asins4Group.entrySet()) {
AsinDetailAnalysisFields asinFields = asinData.getValue();
asinFields.getComparable();
topasinsCalculator.addTopAsin(asinFields);
}
}
}