Author: ssolsagl
Date: 2007-06-01 09:45:17 +0200 (Fri, 01 Jun 2007)
New Revision: 5242
Modified:
branches/2.13/core-api/src/main/java/no/schibstedsok/searchportal/mode/command/NewsMyNewsSearchCommand.java
Log:
fixed bug due to underlaying api changes
Modified:
branches/2.13/core-api/src/main/java/no/schibstedsok/searchportal/mode/command/NewsMyNewsSearchCommand.java
===================================================================
---
branches/2.13/core-api/src/main/java/no/schibstedsok/searchportal/mode/command/NewsMyNewsSearchCommand.java
2007-06-01 07:44:43 UTC (rev 5241)
+++
branches/2.13/core-api/src/main/java/no/schibstedsok/searchportal/mode/command/NewsMyNewsSearchCommand.java
2007-06-01 07:45:17 UTC (rev 5242)
@@ -11,6 +11,8 @@
import no.schibstedsok.searchportal.result.ResultItem;
import no.schibstedsok.searchportal.result.ResultList;
+;
+
/**
*
* @author geir
@@ -29,7 +31,8 @@
}
public ResultList<? extends ResultItem> execute() {
-
+
+ LOG.debug("entering execute()");
final NewsMyNewsCommandConfig config = getSearchConfiguration();
String myNews = (String)
context.getDataModel().getJunkYard().getValue("myNews");
LOG.debug("Cookie is: " + myNews);
@@ -58,32 +61,43 @@
} else if (type.equals("art")) {
commandName = "article" + position;
}
+
if (commandName != null) {
try {
LOG.debug("Waiting for " + commandName);
collectedResult = getSearchResult(commandName,
datamodel);
- if (collectedResult != null
- && collectedResult.getResults().size() > 0
- && collectedResult.getResults().get(0)
instanceof ResultList<?>) {
-
- ResultList<ResultItem> searchResultItem
- = (ResultList<ResultItem>)
collectedResult.getResults().get(0);
-
- final int lastSubPos =
Math.min(collectedResult.getResults().size(), 4);
- if (lastSubPos > 1) {
- final ResultList<ResultItem> subSearchResults
= new BasicSearchResult<ResultItem>();
-
subSearchResults.setHitCount(collectedResult.getHitCount());
- searchResultItem.addResult(subSearchResults);
- for (int i = 1; i < lastSubPos; i++) {
-
subSearchResults.addResult(collectedResult.getResults().get(i));
+
+
+ if (collectedResult != null
+ && collectedResult.getResults().size() > 0) {
+ // Article
+ if(!(collectedResult.getResults().get(0)
instanceof ResultList<?>)) {
+ ResultItem searchResultItem =
collectedResult.getResults().get(0);
+ searchResultItem =
searchResultItem.addField("type", type);
+ mergedResult.addResult(searchResultItem);
+ } else {
+ ResultList<ResultItem> searchResultItem
+ = (ResultList<ResultItem>)
collectedResult.getResults().get(0);
+
+ final int lastSubPos =
Math.min(collectedResult.getResults().size(), 4);
+ if (lastSubPos > 1) {
+ final ResultList<ResultItem>
subSearchResults = new BasicSearchResult<ResultItem>();
+
subSearchResults.setHitCount(collectedResult.getHitCount());
+
searchResultItem.addResult(subSearchResults);
+ for (int i = 1; i < lastSubPos; i++) {
+
subSearchResults.addResult(collectedResult.getResults().get(i));
+ }
}
+ searchResultItem =
searchResultItem.addField("type", type);
+ if (type.equals("sak") ||
type.equals("person")) {
+ searchResultItem =
searchResultItem.addField("newsCase", matcher.group(1));
+ }
+ mergedResult.addResult(searchResultItem);
+ LOG.debug("Collected " +
searchResultItem.getField("type") + ":" + searchResultItem.getField("title"));
}
- searchResultItem =
searchResultItem.addField("type", type);
- if (type.equals("sak") || type.equals("person")) {
- searchResultItem =
searchResultItem.addField("newsCase", matcher.group(1));
- }
- mergedResult.addResult(searchResultItem);
- LOG.debug("Collected " +
searchResultItem.getField("type") + ":" + searchResultItem.getField("title"));
+
+ } else {
+ LOG.debug("Command " + commandName + " is empty or
wrong type: " + collectedResult);
}
} catch (InterruptedException e) {
LOG.error("Command was interrupted", e);
@@ -103,6 +117,7 @@
return mergedResult;
} else {
+ LOG.info("Could not find cookie");
ResultList<ResultItem> searchResult = new
BasicSearchResult<ResultItem>();
searchResult.setHitCount(0);
return searchResult;
_______________________________________________
Kernel-commits mailing list
[email protected]
http://sesat.no/mailman/listinfo/kernel-commits