Author: magnuse
Date: 2006-05-11 12:25:35 +0200 (Thu, 11 May 2006)
New Revision: 2891

Modified:
   
trunk/src/java/no/schibstedsok/front/searchportal/command/AbstractSearchCommand.java
   
trunk/src/java/no/schibstedsok/front/searchportal/command/MobileSearchCommand.java
   
trunk/src/java/no/schibstedsok/front/searchportal/configuration/MobileSearchConfiguration.java
   
trunk/src/java/no/schibstedsok/front/searchportal/configuration/SearchModeFactory.java
Log:
Added origination parameter to favour telenor content for mobile sesam.


Modified: 
trunk/src/java/no/schibstedsok/front/searchportal/command/AbstractSearchCommand.java
===================================================================
--- 
trunk/src/java/no/schibstedsok/front/searchportal/command/AbstractSearchCommand.java
        2006-05-10 12:48:03 UTC (rev 2890)
+++ 
trunk/src/java/no/schibstedsok/front/searchportal/command/AbstractSearchCommand.java
        2006-05-11 10:25:35 UTC (rev 2891)
@@ -363,6 +363,21 @@
         return parameters;
     }
 
+    /**
+     * Returns parameter value. In case the parameter is multi-valued only the
+     * first value is returned. If the parameter does not exist or is empty
+     * the empty string is returned.
+     */
+    protected String getParameter(String paramName) {
+        if (parameters.containsKey(paramName)) {
+            String val[] = (String[]) parameters.get(paramName);
+            if (val.length > 0 && val[0].length() > 0) {
+                return val[0];
+            }
+        }
+        return "";
+    }
+    
     protected final synchronized String getQueryRepresentation(final Query 
query) {
 
         final Clause root = query.getRootClause();

Modified: 
trunk/src/java/no/schibstedsok/front/searchportal/command/MobileSearchCommand.java
===================================================================
--- 
trunk/src/java/no/schibstedsok/front/searchportal/command/MobileSearchCommand.java
  2006-05-10 12:48:03 UTC (rev 2890)
+++ 
trunk/src/java/no/schibstedsok/front/searchportal/command/MobileSearchCommand.java
  2006-05-11 10:25:35 UTC (rev 2891)
@@ -57,6 +57,7 @@
     private static final String PERSONALIZATION_GROUP = "aspiro-sesam1";
     private static final String USER_AGENT_PARAMETER="ua";
     private static final String MSEARCH_CLIENT_PROPS = 
"msearch-client.properties";
+    private static final String ORIGINATION_PARAMETER = "origination";
     
     private final MobileSearchConfiguration cfg;
     
@@ -83,14 +84,23 @@
             params.setParameter(new SearchParameter("offset", 
getCurrentOffset(0)));
             
             final IDeviceCapabilities cap = getDeviceCapabilities();
-            final IPersonalizationSpecification ps = 
ExplicitUserGroupPersonalizationFactory.getUserGroupSpecification(cfg.getPersonalizationGroup());
+
+            String personalizationGroup = cfg.getPersonalizationGroup();
+            
+            if (getParameter(ORIGINATION_PARAMETER).equals("telenor")) {
+                personalizationGroup = cfg.getTelenorPersonalizationGroup();
+            }
+            
+            IPersonalizationSpecification ps = 
+                    
ExplicitUserGroupPersonalizationFactory.getUserGroupSpecification(personalizationGroup);
+            
+            
             final IQuery query = new Query(params);
 
             if (LOG.isDebugEnabled()) {
                 LOG.debug("mSearch query is " + query);
             }
             
-            
             final List<IMSearchResult> results = cap != null ? 
engine.search(query, ps, cap) : engine.search(query, ps);
             
             IMSearchResult mResult = null;

Modified: 
trunk/src/java/no/schibstedsok/front/searchportal/configuration/MobileSearchConfiguration.java
===================================================================
--- 
trunk/src/java/no/schibstedsok/front/searchportal/configuration/MobileSearchConfiguration.java
      2006-05-10 12:48:03 UTC (rev 2890)
+++ 
trunk/src/java/no/schibstedsok/front/searchportal/configuration/MobileSearchConfiguration.java
      2006-05-11 10:25:35 UTC (rev 2891)
@@ -22,6 +22,7 @@
 
     private String source;
     private String personalizationGroup;
+    private String telenorPersonalizationGroup;
     private String sortBy;
 
     public MobileSearchConfiguration(final SearchConfiguration asc) {
@@ -30,6 +31,7 @@
             final MobileSearchConfiguration cfg = (MobileSearchConfiguration) 
asc;
             source = cfg.source;
             personalizationGroup = cfg.personalizationGroup;
+            telenorPersonalizationGroup = cfg.telenorPersonalizationGroup;
             sortBy = cfg.sortBy;
         }
     }
@@ -50,6 +52,14 @@
         this.personalizationGroup = group;
     }
 
+    public String getTelenorPersonalizationGroup() {
+        return telenorPersonalizationGroup;
+    }
+
+    public void setTelenorPersonalizationGroup(final String 
telenorPersonalizationGroup) {
+        this.telenorPersonalizationGroup = telenorPersonalizationGroup;
+    }
+    
     public String getSortBy() {
         return sortBy;
     }

Modified: 
trunk/src/java/no/schibstedsok/front/searchportal/configuration/SearchModeFactory.java
===================================================================
--- 
trunk/src/java/no/schibstedsok/front/searchportal/configuration/SearchModeFactory.java
      2006-05-10 12:48:03 UTC (rev 2890)
+++ 
trunk/src/java/no/schibstedsok/front/searchportal/configuration/SearchModeFactory.java
      2006-05-11 10:25:35 UTC (rev 2891)
@@ -432,6 +432,7 @@
                     final MobileSearchConfiguration msc = 
(MobileSearchConfiguration) sc;
 
                     
msc.setPersonalizationGroup(commandE.getAttribute("personalization-group"));
+                    
msc.setTelenorPersonalizationGroup(commandE.getAttribute("telenor-personalization-group"));
                     msc.setSortBy(commandE.getAttribute("sort-by"));
                     msc.setSource(commandE.getAttribute("source"));
                 }

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

Reply via email to