mirror of
https://github.com/yacy/yacy_search_server.git
synced 2024-09-21 00:00:13 +02:00
d2ea250d99
- moved many classes from de.anomic to net.yacy - made more sub-packages for search classes git-svn-id: https://svn.berlios.de/svnroot/repos/yacy/trunk@7973 6c8d7289-2bf4-0310-a012-ef5d649a1542
52 lines
2.4 KiB
Java
52 lines
2.4 KiB
Java
import net.yacy.cora.protocol.RequestHeader;
|
|
import net.yacy.kelondro.util.Formatter;
|
|
import net.yacy.search.query.QueryParams;
|
|
import net.yacy.search.query.SearchEvent;
|
|
import net.yacy.search.query.SearchEventCache;
|
|
import de.anomic.server.serverObjects;
|
|
import de.anomic.server.serverSwitch;
|
|
|
|
|
|
public class yacysearchlatestinfo {
|
|
|
|
public static serverObjects respond(final RequestHeader header, final serverObjects post, final serverSwitch env) {
|
|
final serverObjects prop = new serverObjects();
|
|
//Switchboard sb = (Switchboard) env;
|
|
|
|
// find search event
|
|
final String eventID = post.get("eventID", "");
|
|
final SearchEvent theSearch = SearchEventCache.getEvent(eventID);
|
|
if (theSearch == null) {
|
|
// the event does not exist.
|
|
// to avoid missing patterns, we return dummy values
|
|
prop.put("offset", 0);
|
|
prop.put("itemscount", -1);
|
|
prop.put("itemsperpage", 10);
|
|
prop.put("totalcount", 0);
|
|
prop.put("localResourceSize", 0);
|
|
prop.put("localMissCount", 0);
|
|
prop.put("remoteResourceSize", 0);
|
|
prop.put("remoteIndexCount", 0);
|
|
prop.put("remotePeerCount", 0);
|
|
return prop;
|
|
}
|
|
final QueryParams theQuery = theSearch.getQuery();
|
|
|
|
// dynamically update count values
|
|
final int totalcount = theSearch.getRankingResult().getLocalIndexCount() - theSearch.getRankingResult().getMissCount() - theSearch.getRankingResult().getSortOutCount() + theSearch.getRankingResult().getRemoteIndexCount();
|
|
final int offset = theQuery.neededResults() - theQuery.displayResults() + 1;
|
|
prop.put("offset", offset);
|
|
prop.put("itemscount", -1);
|
|
prop.put("itemsperpage", theSearch.getQuery().itemsPerPage);
|
|
prop.put("totalcount", Formatter.number(totalcount, true));
|
|
prop.put("localResourceSize", Formatter.number(theSearch.getRankingResult().getLocalIndexCount(), true));
|
|
prop.put("localMissCount", Formatter.number(theSearch.getRankingResult().getMissCount(), true));
|
|
prop.put("remoteResourceSize", Formatter.number(theSearch.getRankingResult().getRemoteResourceSize(), true));
|
|
prop.put("remoteIndexCount", Formatter.number(theSearch.getRankingResult().getRemoteIndexCount(), true));
|
|
prop.put("remotePeerCount", Formatter.number(theSearch.getRankingResult().getRemotePeerCount(), true));
|
|
|
|
return prop;
|
|
}
|
|
|
|
}
|