package won.matcher.solr.query.factory;
/**
* Created by hfriedrich on 22.08.2016.
*/
public class GeoDistBoostQueryFactory extends SolrQueryFactory {
private float latitude;
private float longitude;
private String solrLocationField;
public GeoDistBoostQueryFactory(String solrLocationField, float latitude, float longitude) {
this.latitude = latitude;
this.longitude = longitude;
this.solrLocationField = solrLocationField;
}
@Override
protected String makeQueryString() {
// calculate the inverse of the distance as a distance measure
StringBuilder sb = new StringBuilder();
sb.append("recip(geodist(").append(solrLocationField).append(",").append(latitude)
.append(",").append(longitude).append("),5,100,100)");
return sb.toString();
}
}