Author: daniele
Date: 2007-04-20 13:05:36 +0200 (Fri, 20 Apr 2007)
New Revision: 4839

Modified:
   
trunk/core-api/src/main/java/no/schibstedsok/searchportal/mode/command/CatalogueSearchCommand.java
Log:
just a little quick impl. for   SEARCH-2085, use text analysis to select rank 
profile.

Modified: 
trunk/core-api/src/main/java/no/schibstedsok/searchportal/mode/command/CatalogueSearchCommand.java
===================================================================
--- 
trunk/core-api/src/main/java/no/schibstedsok/searchportal/mode/command/CatalogueSearchCommand.java
  2007-04-20 10:35:10 UTC (rev 4838)
+++ 
trunk/core-api/src/main/java/no/schibstedsok/searchportal/mode/command/CatalogueSearchCommand.java
  2007-04-20 11:05:36 UTC (rev 4839)
@@ -70,6 +70,8 @@
  */
 public final class CatalogueSearchCommand extends AdvancedFastSearchCommand {
 
+    private boolean sortBy=false;
+    
     /** Logger for this class. */
     private static final Logger LOG = 
Logger.getLogger(CatalogueSearchCommand.class);
 
@@ -292,12 +294,12 @@
         // add the who and where fields (preferred over using them out of the 
junkyard)
         result.addField(PARAMETER_NAME_WHAT, getTransformedQuerySesamSyntax());
         result.addField(PARAMETER_NAME_WHERE, whereString);
-
+        
         // XXX deprecated approach
         getParameters().put(PARAMETER_NAME_WHAT, 
getTransformedQuerySesamSyntax());
         getParameters().put(PARAMETER_NAME_WHERE, whereString);
 
-
+        getParameters().put("userSortBy",userSortBy);
         return result;
     }
 
@@ -364,7 +366,12 @@
         String sortBy = super.getSortBy();
         if ("name".equalsIgnoreCase(userSortBy)) {
             sortBy = SORTBY_COMPANYNAME;
+        }else{
+            if(this.sortBy) sortBy=SORTBY_COMPANYNAME;
+            else sortBy=SORTBY_KEYWORD;
         }
+        
+
         return sortBy;
     }
 
@@ -405,8 +412,15 @@
 
         final boolean hasNotWordCharacters = m.find();
 
+
+        
if(clause.getKnownPredicates().contains(TokenPredicate.COMPANYENRICHMENT)
+           && (userSortBy==null || !userSortBy.equalsIgnoreCase("name"))){
+            userSortBy = "name";
+        }
+            
+            
+
         if(hasNotWordCharacters){
-
             appendToQueryRepresentation(createPhraseQuerySyntax('\"' + 
getTransformedTerms().get(clause) + '\"'));
 
         }else if(!getTransformedTerms().get(clause).equals(BLANK)) {

_______________________________________________
Kernel-commits mailing list
[email protected]
http://sesat.no/mailman/listinfo/kernel-commits

Reply via email to