Author: gttersen
Date: 2007-04-25 22:57:20 +0200 (Wed, 25 Apr 2007)
New Revision: 4883

Added:
   
trunk/core-api/src/main/java/no/schibstedsok/searchportal/mode/command/NewsEspSearchCommand.java
   
trunk/search-command-config-spi/src/main/java/no/schibstedsok/searchportal/mode/config/NewsEspSearchConfiguration.java
Modified:
   
trunk/core-api/src/main/java/no/schibstedsok/searchportal/mode/SearchModeFactory.java
   
trunk/core-api/src/main/java/no/schibstedsok/searchportal/mode/command/AbstractSearchCommand.java
   
trunk/core-api/src/main/java/no/schibstedsok/searchportal/mode/command/ClusteringESPFastCommand.java
   
trunk/search-command-config-spi/src/main/java/no/schibstedsok/searchportal/mode/config/ClusteringESPFastConfiguration.java
Log:
Fixes for newsAggregator: NewsEnrichment and newsCounter for norway updated in 
modes.xml.

Modified: 
trunk/core-api/src/main/java/no/schibstedsok/searchportal/mode/SearchModeFactory.java
===================================================================
--- 
trunk/core-api/src/main/java/no/schibstedsok/searchportal/mode/SearchModeFactory.java
       2007-04-25 15:11:17 UTC (rev 4882)
+++ 
trunk/core-api/src/main/java/no/schibstedsok/searchportal/mode/SearchModeFactory.java
       2007-04-25 20:57:20 UTC (rev 4883)
@@ -25,6 +25,7 @@
 import no.schibstedsok.searchportal.mode.config.MobileSearchConfiguration;
 import 
no.schibstedsok.searchportal.mode.config.NavigatableESPFastConfiguration;
 import 
no.schibstedsok.searchportal.mode.config.NewsAggregatorSearchConfiguration;
+import no.schibstedsok.searchportal.mode.config.NewsEspSearchConfiguration;
 import no.schibstedsok.searchportal.mode.config.NewsMyNewsSearchConfiguration;
 import no.schibstedsok.searchportal.mode.config.NewsSearchConfiguration;
 import no.schibstedsok.searchportal.mode.config.OverturePPCSearchConfiguration;
@@ -313,7 +314,7 @@
             final SearchMode.SearchCommandExecutorConfig def) {
 
         try {
-            if(0 < name.length()){
+            if (0 < name.length()) {
                 return 
SearchMode.SearchCommandExecutorConfig.valueOf(name.toUpperCase());
             }
 
@@ -375,7 +376,8 @@
         CATALOGUE_BANNERS_COMMAND(CatalogueBannersSearchConfiguration.class),
         CLUSTERING_ESP_FAST_COMMAND(ClusteringESPFastConfiguration.class),
         NEWS_AGGREGATOR_COMMAND(NewsAggregatorSearchConfiguration.class),
-        NEWS_MY_NEWS_COMMAND(NewsMyNewsSearchConfiguration.class);
+        NEWS_MY_NEWS_COMMAND(NewsMyNewsSearchConfiguration.class),
+        NEWS_ESP_COMMAND(NewsEspSearchConfiguration.class);
 
         private final Class<? extends SearchConfiguration> clazz;
         private final String xmlName;
@@ -769,6 +771,13 @@
                     fillBeanProperty(cbsc, inherit, "queryParameterWhere", 
ParseType.String, commandE, "");
                 }
 
+                if (sc instanceof NewsEspSearchConfiguration) {
+                    final NewsEspSearchConfiguration nesc = 
(NewsEspSearchConfiguration) sc;
+                    fillBeanProperty(nesc, inherit, "mediumPrefix", 
ParseType.String, commandE, "medium");
+                    fillBeanProperty(nesc, inherit, "defaultMedium", 
ParseType.String, commandE, "webnewsarticle");
+                    fillBeanProperty(nesc, inherit, "mediumParameter", 
ParseType.String, commandE, "medium");
+                }
+
                 if (sc instanceof ClusteringESPFastConfiguration) {
                     final ClusteringESPFastConfiguration cefc = 
(ClusteringESPFastConfiguration) sc;
                     fillBeanProperty(cefc, inherit, "clusterIdParameter", 
ParseType.String, commandE, "clusterId");
@@ -930,9 +939,9 @@
 
             LOG.info("findClass " + className);
             final Class clazz = (Class<QueryTransformerConfig>) 
SiteClassLoaderFactory.valueOf(site).getClassLoader().loadClass(
-                "no.schibstedsok.searchportal.query.transform."
-                                + className
-                                + "QueryTransformerConfig");
+                    "no.schibstedsok.searchportal.query.transform."
+                            + className
+                            + "QueryTransformerConfig");
             LOG.info("Found class " + clazz.getName());
             return clazz;
         }
@@ -963,9 +972,10 @@
         }
     }
 
-    private static abstract class AbstractFactory<C>{
-        AbstractFactory(){}
-        
+    private static abstract class AbstractFactory<C> {
+        AbstractFactory() {
+        }
+
         boolean supported(final String xmlName, final Site site) {
 
             try {

Modified: 
trunk/core-api/src/main/java/no/schibstedsok/searchportal/mode/command/AbstractSearchCommand.java
===================================================================
--- 
trunk/core-api/src/main/java/no/schibstedsok/searchportal/mode/command/AbstractSearchCommand.java
   2007-04-25 15:11:17 UTC (rev 4882)
+++ 
trunk/core-api/src/main/java/no/schibstedsok/searchportal/mode/command/AbstractSearchCommand.java
   2007-04-25 20:57:20 UTC (rev 4883)
@@ -35,6 +35,8 @@
 import no.schibstedsok.searchportal.result.Modifier;
 import no.schibstedsok.searchportal.result.SearchResult;
 import no.schibstedsok.searchportal.result.handler.ResultHandler;
+import no.schibstedsok.searchportal.result.handler.ResultHandlerConfig;
+import no.schibstedsok.searchportal.result.handler.ResultHandlerFactory;
 import no.schibstedsok.searchportal.run.RunningQuery;
 import no.schibstedsok.searchportal.site.Site;
 import no.schibstedsok.searchportal.view.config.SearchTab;
@@ -45,8 +47,6 @@
 import java.util.LinkedHashMap;
 import java.util.List;
 import java.util.Map;
-import no.schibstedsok.searchportal.result.handler.ResultHandlerConfig;
-import no.schibstedsok.searchportal.result.handler.ResultHandlerFactory;
 
 /**
  * @author <a href="mailto:[EMAIL PROTECTED]">Magnus Eklund</a>.
@@ -383,7 +383,6 @@
 
     /**
      * TODO comment me.
-     *
      */
     protected final void performQueryTransformation() {
 
@@ -464,7 +463,7 @@
 
         // process listed result handlers
         for (ResultHandlerConfig resultHandlerConfig : 
getSearchConfiguration().getResultHandlers()) {
-            
+
             final ResultHandler resultHandler = 
ResultHandlerFactory.getController(resultHandlerConfig);
 
             final ResultHandler.Context resultHandlerContext = 
ContextWrapper.wrap(
@@ -571,6 +570,11 @@
         sb.append(addition);
     }
 
+    protected final void appendToQueryRepresentation(final char addition) {
+        sb.append(addition);
+    }
+
+
     /**
      * TODO comment me. *
      */
@@ -884,28 +888,28 @@
 
     private class MapInitialisor extends AbstractReflectionVisitor {
 
-        private final Map<Clause,String> map;
+        private final Map<Clause, String> map;
 
-        public MapInitialisor(final Map<Clause,String> m) {
+        public MapInitialisor(final Map<Clause, String> m) {
             map = m;
         }
 
         protected void visitImpl(final LeafClause clause) {
 
-            if(null == map.get(clause)){
-                if (null != clause.getField()){
-                    if(null == getFieldFilter(clause)){
-                        
+            if (null == map.get(clause)) {
+                if (null != clause.getField()) {
+                    if (null == getFieldFilter(clause)) {
+
                         // Escape any fielded leafs for fields that are not 
supported by this command.
                         // Performed here in order to make the correct terms 
visible to the query transformers.
                         map.put(clause, escapeFieldedLeaf(clause));
-                        
-                    }else{
-                        
+
+                    } else {
+
                         map.put(clause, "");
                     }
                 } else {
-                    
+
                     map.put(clause, clause.getTerm());
                 }
             }

Modified: 
trunk/core-api/src/main/java/no/schibstedsok/searchportal/mode/command/ClusteringESPFastCommand.java
===================================================================
--- 
trunk/core-api/src/main/java/no/schibstedsok/searchportal/mode/command/ClusteringESPFastCommand.java
        2007-04-25 15:11:17 UTC (rev 4882)
+++ 
trunk/core-api/src/main/java/no/schibstedsok/searchportal/mode/command/ClusteringESPFastCommand.java
        2007-04-25 20:57:20 UTC (rev 4883)
@@ -21,7 +21,7 @@
 import java.util.HashMap;
 import java.util.Map;
 
-public class ClusteringESPFastCommand extends NavigatableESPFastCommand {
+public class ClusteringESPFastCommand extends NewsEspSearchCommand {
     public static final String PARAM_NEXT_OFFSET = "nextOffset";
 
     private static final Logger LOG = 
Logger.getLogger(ClusteringESPFastCommand.class);

Added: 
trunk/core-api/src/main/java/no/schibstedsok/searchportal/mode/command/NewsEspSearchCommand.java
===================================================================
--- 
trunk/core-api/src/main/java/no/schibstedsok/searchportal/mode/command/NewsEspSearchCommand.java
                            (rev 0)
+++ 
trunk/core-api/src/main/java/no/schibstedsok/searchportal/mode/command/NewsEspSearchCommand.java
    2007-04-25 20:57:20 UTC (rev 4883)
@@ -0,0 +1,100 @@
+package no.schibstedsok.searchportal.mode.command;
+
+import no.schibstedsok.searchportal.mode.config.NewsEspSearchConfiguration;
+import no.schibstedsok.searchportal.query.AndClause;
+import no.schibstedsok.searchportal.query.AndNotClause;
+import no.schibstedsok.searchportal.query.Clause;
+import no.schibstedsok.searchportal.query.DefaultOperatorClause;
+import no.schibstedsok.searchportal.query.LeafClause;
+import no.schibstedsok.searchportal.query.NotClause;
+import no.schibstedsok.searchportal.query.OperationClause;
+import no.schibstedsok.searchportal.query.OrClause;
+import org.apache.log4j.Logger;
+
+public class NewsEspSearchCommand extends NavigatableESPFastCommand {
+    private static final Logger LOG = 
Logger.getLogger(NewsEspSearchCommand.class);
+
+    public NewsEspSearchCommand(Context cxt) {
+        super(cxt);
+    }
+
+    private void addMedium(Clause clause) {
+        if (getQuery().getRootClause() == clause) {
+            NewsEspSearchConfiguration config = getSearchConfiguration();
+            String medium = (String) 
datamodel.getJunkYard().getValue(config.getMediumParameter());
+            if (!NewsEspSearchConfiguration.ALL_MEDIUMS.equals(medium) && 
getTransformedQuery().length() > 0) {
+                if (medium == null || medium.length() == 0) {
+                    medium = config.getDefaultMedium();
+                }
+                insertToQueryRepresentation(0, "and(");
+                appendToQueryRepresentation(',');
+                appendToQueryRepresentation(config.getMediumPrefix());
+                appendToQueryRepresentation(':');
+                appendToQueryRepresentation(medium);
+                appendToQueryRepresentation(')');
+                LOG.debug("Added medium");
+            }
+
+        }
+    }
+
+    protected void visitImpl(final Clause clause) {
+        LOG.debug("Visited me with: " + clause + ", isRoot=" + 
(getQuery().getRootClause() == clause));
+        super.visitImpl(clause);
+        addMedium(clause);
+    }
+
+    @Override
+    protected void visitImpl(final LeafClause clause) {
+        LOG.debug("Visited me with: " + clause + ", isRoot=" + 
(getQuery().getRootClause() == clause));
+        super.visitImpl(clause);
+        addMedium(clause);
+    }
+
+    @Override
+    protected void visitImpl(final OperationClause clause) {
+        LOG.debug("Visited me with: " + clause + ", isRoot=" + 
(getQuery().getRootClause() == clause));
+        super.visitImpl(clause);
+        addMedium(clause);
+    }
+
+    @Override
+    protected void visitImpl(final AndClause clause) {
+        LOG.debug("Visited me with: " + clause + ", isRoot=" + 
(getQuery().getRootClause() == clause));
+        super.visitImpl(clause);
+        addMedium(clause);
+    }
+
+    @Override
+    protected void visitImpl(final OrClause clause) {
+        LOG.debug("Visited me with: " + clause + ", isRoot=" + 
(getQuery().getRootClause() == clause));
+        super.visitImpl(clause);
+        addMedium(clause);
+    }
+
+    @Override
+    protected void visitImpl(final DefaultOperatorClause clause) {
+        LOG.debug("Visited me with: " + clause + ", isRoot=" + 
(getQuery().getRootClause() == clause));
+        super.visitImpl(clause);
+        addMedium(clause);
+    }
+
+    @Override
+    protected void visitImpl(final NotClause clause) {
+        LOG.debug("Visited me with: " + clause + ", isRoot=" + 
(getQuery().getRootClause() == clause));
+        super.visitImpl(clause);
+        addMedium(clause);
+    }
+
+    @Override
+    protected void visitImpl(final AndNotClause clause) {
+        LOG.debug("Visited me with: " + clause + ", isRoot=" + 
(getQuery().getRootClause() == clause));
+        super.visitImpl(clause);
+        addMedium(clause);
+    }
+
+    @Override
+    public NewsEspSearchConfiguration getSearchConfiguration() {
+        return (NewsEspSearchConfiguration) super.getSearchConfiguration();
+    }
+}

Modified: 
trunk/search-command-config-spi/src/main/java/no/schibstedsok/searchportal/mode/config/ClusteringESPFastConfiguration.java
===================================================================
--- 
trunk/search-command-config-spi/src/main/java/no/schibstedsok/searchportal/mode/config/ClusteringESPFastConfiguration.java
  2007-04-25 15:11:17 UTC (rev 4882)
+++ 
trunk/search-command-config-spi/src/main/java/no/schibstedsok/searchportal/mode/config/ClusteringESPFastConfiguration.java
  2007-04-25 20:57:20 UTC (rev 4883)
@@ -8,7 +8,7 @@
  * @version $Id$
  */
 @Controller("ClusteringESPFastCommand")
-public class ClusteringESPFastConfiguration extends 
NavigatableESPFastConfiguration {
+public class ClusteringESPFastConfiguration extends NewsEspSearchConfiguration 
{
 
     private String clusterIdParameter = "clusterId";
     private int resultsPerCluster;

Added: 
trunk/search-command-config-spi/src/main/java/no/schibstedsok/searchportal/mode/config/NewsEspSearchConfiguration.java
===================================================================
--- 
trunk/search-command-config-spi/src/main/java/no/schibstedsok/searchportal/mode/config/NewsEspSearchConfiguration.java
                              (rev 0)
+++ 
trunk/search-command-config-spi/src/main/java/no/schibstedsok/searchportal/mode/config/NewsEspSearchConfiguration.java
      2007-04-25 20:57:20 UTC (rev 4883)
@@ -0,0 +1,46 @@
+package no.schibstedsok.searchportal.mode.config;
+
+import 
no.schibstedsok.searchportal.mode.config.AbstractSearchConfiguration.Controller;
+
[EMAIL PROTECTED]("NewsEspSearchCommand")
+public class NewsEspSearchConfiguration extends 
NavigatableESPFastConfiguration {
+    public static final String ALL_MEDIUMS = "all";
+    private String mediumPrefix = "medium";
+    private String defaultMedium = "webnewsarticle";
+    private String mediumParameter = "medium";
+
+
+    public NewsEspSearchConfiguration(final SearchConfiguration asc) {
+        super(asc);
+        if (asc instanceof NewsEspSearchConfiguration) {
+            final NewsEspSearchConfiguration nesc = 
(NewsEspSearchConfiguration) asc;
+            mediumPrefix = nesc.getMediumPrefix();
+            defaultMedium = nesc.getDefaultMedium();
+            mediumParameter = nesc.getMediumParameter();
+        }
+    }
+
+    public String getMediumPrefix() {
+        return mediumPrefix;
+    }
+
+    public void setMediumPrefix(String mediumPrefix) {
+        this.mediumPrefix = mediumPrefix;
+    }
+
+    public String getDefaultMedium() {
+        return defaultMedium;
+    }
+
+    public void setDefaultMedium(String defaultMedium) {
+        this.defaultMedium = defaultMedium;
+    }
+
+    public String getMediumParameter() {
+        return mediumParameter;
+    }
+
+    public void setMediumParameter(String mediumParameter) {
+        this.mediumParameter = mediumParameter;
+    }
+}

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

Reply via email to