[Yanel-commits] rev 43992 -
public/yanel/trunk/src/contributions/resources/search/src/java/org/wyona/yanel/impl/resources/search
michi at wyona.com
michi at wyona.com
Wed Aug 5 10:00:19 CEST 2009
Author: michi
Date: 2009-08-05 10:00:18 +0200 (Wed, 05 Aug 2009)
New Revision: 43992
Modified:
public/yanel/trunk/src/contributions/resources/search/src/java/org/wyona/yanel/impl/resources/search/SearchResource.java
Log:
provider code refactored
Modified: public/yanel/trunk/src/contributions/resources/search/src/java/org/wyona/yanel/impl/resources/search/SearchResource.java
===================================================================
--- public/yanel/trunk/src/contributions/resources/search/src/java/org/wyona/yanel/impl/resources/search/SearchResource.java 2009-08-05 07:47:40 UTC (rev 43991)
+++ public/yanel/trunk/src/contributions/resources/search/src/java/org/wyona/yanel/impl/resources/search/SearchResource.java 2009-08-05 08:00:18 UTC (rev 43992)
@@ -28,13 +28,14 @@
private static String PROVIDER_NAME = "provider";
private static String QUERY_NAME = "q";
private static String DOMAIN_NAME = "domain";
+ private static String DEFAULT_PROVIDER = "yanel";
/**
* @see org.wyona.yanel.core.api.attributes.ViewableV2#getView(String)
*/
public View getView(String viewId) throws Exception {
String provider = getRequest().getParameter(PROVIDER_NAME);
- if (provider != null && !provider.equals("yanel")) {
+ if (provider != null && !provider.equals(DEFAULT_PROVIDER)) {
ExternalSearchProvider esp = getExternalSearchProvider(provider);
if (esp != null) {
View view = new View();
@@ -65,31 +66,31 @@
StringBuilder sb = new StringBuilder("<?xml version=\"1.0\"?>");
sb.append("<y:search xmlns:y=\"http://www.wyona.org/yanel/search/1.0\">");
+ String provider = getRequest().getParameter(PROVIDER_NAME);
+ if (provider == null) {
+ provider = DEFAULT_PROVIDER;
+ log.warn("No search provider specified! Default provider will be used: " + provider);
+ }
+ sb.append("<y:provider id=\"" + provider + "\">" + provider + "</y:provider>");
+
String query = getRequest().getParameter(QUERY_NAME);
- String provider = getRequest().getParameter(PROVIDER_NAME);
if (query != null && query.length() > 0) {
sb.append("<y:query>" + query + "</y:query>");
try {
Result[] results;
- if (provider != null) {
- if (provider.equals("yanel")) {
- results = getLocalResults(query);
- } else if (provider.equals("google")) {
- results = getGoogleResults(query);
- } else if (provider.equals("bing")) {
- results = getMSNResults(query);
- } else {
- results = getLocalResults(query);
- log.warn("No such provider: " + provider);
- }
+ if (provider.equals(DEFAULT_PROVIDER)) {
+ results = getLocalResults(query);
+ } else if (provider.equals("google")) {
+ results = getGoogleResults(query);
+ } else if (provider.equals("bing")) {
+ results = getMSNResults(query);
} else {
- results = getLocalResults(query);
- provider = "yanel";
- log.warn("No search provider specified!");
+ results = new Result[0];
+ String eMessage = "No such provider: " + provider;
+ log.warn(eMessage);
+ sb.append("<y:exception>" + eMessage + "</y:exception>");
}
- sb.append("<y:provider id=\"" + provider + "\">" + provider + "</y:provider>");
-
if (results != null && results.length > 0) {
sb.append("<y:results>");
for (int i = 0; i < results.length; i++) {
More information about the Yanel-commits
mailing list