Author: gttersen
Date: 2007-04-30 17:06:42 +0200 (Mon, 30 Apr 2007)
New Revision: 4928

Modified:
   
trunk/core-api/src/main/java/no/schibstedsok/searchportal/mode/SearchModeFactory.java
   
trunk/core-api/src/main/java/no/schibstedsok/searchportal/mode/command/ClusteringESPFastCommand.java
   
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/ClusteringEspFastCommandConfig.java
   
trunk/search-command-config-spi/src/main/java/no/schibstedsok/searchportal/mode/config/NewsEspCommandConfig.java
Log:
newsAggregator changes

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-30 12:53:09 UTC (rev 4927)
+++ 
trunk/core-api/src/main/java/no/schibstedsok/searchportal/mode/SearchModeFactory.java
       2007-04-30 15:06:42 UTC (rev 4928)
@@ -79,8 +79,8 @@
 
     private static final Map<Site, SearchModeFactory> INSTANCES = new 
HashMap<Site, SearchModeFactory>();
     private static final ReentrantReadWriteLock INSTANCES_LOCK = new 
ReentrantReadWriteLock();
-    
-    
+
+
     private static final SearchCommandFactory searchConfigurationFactory = new 
SearchCommandFactory();
     private static final QueryTransformerFactory queryTransformerFactory = new 
QueryTransformerFactory();
     private static final ResultHandlerFactory resultHandlerFactory = new 
ResultHandlerFactory();
@@ -276,16 +276,16 @@
                     if (!(commandN instanceof Element)) {
                         continue;
                     }
-                    final Element commandE = (Element)commandN;
+                    final Element commandE = (Element) commandN;
 
-                    
if(searchConfigurationFactory.supported(commandE.getTagName(), 
context.getSite())){
-                        
+                    if 
(searchConfigurationFactory.supported(commandE.getTagName(), 
context.getSite())) {
+
                         final SearchConfiguration sc = 
CommandTypes.DUMMY.parseSearchConfiguration(context, commandE, mode);
                         modesCommands.put(sc.getName(), sc);
                         mode.addSearchConfiguration(sc);
                     }
                 }
-                
+
                 // add mode
                 try {
                     modesLock.writeLock().lock();
@@ -331,10 +331,11 @@
 
     /**
      * @deprecated we'll use SearchCommandFactory directly soon.
-     **/
-    private enum CommandTypes {DUMMY;
+     */
+    private enum CommandTypes {
+        DUMMY;
 
-//        private final Class<? extends SearchConfiguration> clazz;
+        //        private final Class<? extends SearchConfiguration> clazz;
         private final String xmlName;
 //        private final SearchCommandFactory searchConfigurationFactory = new 
SearchCommandFactory();
 //        private final QueryTransformerFactory queryTransformerFactory = new 
QueryTransformerFactory();
@@ -368,9 +369,9 @@
 
             try {
 
-                final SearchConfiguration sc 
+                final SearchConfiguration sc
                         = 
searchConfigurationFactory.parseSearchConfiguration(commandE, inherit, 
cxt.getSite());
-                
+
                 if (sc instanceof FastCommandConfig) {
                     final FastCommandConfig fsc = (FastCommandConfig) sc;
                     final FastCommandConfig fscInherit = inherit instanceof 
FastCommandConfig
@@ -692,6 +693,8 @@
                     fillBeanProperty(nesc, inherit, "mediumPrefix", 
ParseType.String, commandE, "medium");
                     fillBeanProperty(nesc, inherit, "defaultMedium", 
ParseType.String, commandE, "webnewsarticle");
                     fillBeanProperty(nesc, inherit, "mediumParameter", 
ParseType.String, commandE, "medium");
+                    fillBeanProperty(nesc, inherit, "nestedResultsField", 
ParseType.String, commandE, "entries");
+                    fillBeanProperty(nesc, inherit, "collapsingMaxFetch", 
ParseType.Int, commandE, "10");
                 }
 
                 if (sc instanceof ClusteringEspFastCommandConfig) {
@@ -699,8 +702,7 @@
                     fillBeanProperty(cefc, inherit, "clusterIdParameter", 
ParseType.String, commandE, "clusterId");
                     fillBeanProperty(cefc, inherit, "resultsPerCluster", 
ParseType.Int, commandE, "");
                     fillBeanProperty(cefc, inherit, "clusterField", 
ParseType.String, commandE, "cluster");
-                    fillBeanProperty(cefc, inherit, "clusterMaxFetch", 
ParseType.Int, commandE, "10");
-                    fillBeanProperty(cefc, inherit, "nestedResultsField", 
ParseType.String, commandE, "entries");
+
                     fillBeanProperty(cefc, inherit, "sortField", 
ParseType.String, commandE, "publishedtime");
                     fillBeanProperty(cefc, inherit, "defaultSort", 
ParseType.String, commandE, "descending");
                     fillBeanProperty(cefc, inherit, "userSortParameter", 
ParseType.String, commandE, "sort");
@@ -737,9 +739,9 @@
                             
sc.addQueryTransformer(queryTransformerFactory.parseQueryTransformer(qt, 
cxt.getSite()));
                         }
                     }
-                }else if(null!=inherit){
+                } else if (null != inherit) {
                     // inherit all
-                    for(QueryTransformerConfig qtc : 
inherit.getQueryTransformers()){
+                    for (QueryTransformerConfig qtc : 
inherit.getQueryTransformers()) {
                         sc.addQueryTransformer(qtc);
                     }
                 }
@@ -763,9 +765,9 @@
                             
sc.addResultHandler(resultHandlerFactory.parseResultHandler(rh, cxt.getSite()));
                         }
                     }
-                }else if(null!=inherit){
+                } else if (null != inherit) {
                     // inherit all
-                    for(ResultHandlerConfig rhc : inherit.getResultHandlers()){
+                    for (ResultHandlerConfig rhc : 
inherit.getResultHandlers()) {
                         sc.addResultHandler(rhc);
                     }
                 }
@@ -844,10 +846,10 @@
         }
 
         SearchConfiguration parseSearchConfiguration(
-                final Element element, 
-                final SearchConfiguration inherit, 
+                final Element element,
+                final SearchConfiguration inherit,
                 final Site site) {
-            
+
             return construct(element, site).readSearchConfiguration(element, 
inherit);
         }
 
@@ -859,12 +861,12 @@
             final String className = Character.toUpperCase(bName.charAt(0)) + 
bName.substring(1, bName.length());
 
             LOG.info("findClass " + className);
-            final Class<SearchConfiguration> clazz 
+            final Class<SearchConfiguration> clazz
                     = (Class<SearchConfiguration>) 
SiteClassLoaderFactory.valueOf(site).getClassLoader().loadClass(
-                                "no.schibstedsok.searchportal.mode.config."
-                                + className
-                                + "Config");
-            
+                    "no.schibstedsok.searchportal.mode.config."
+                            + className
+                            + "Config");
+
             LOG.info("Found class " + clazz.getName());
             return clazz;
         }
@@ -888,13 +890,13 @@
 
             LOG.info("findClass " + className);
 
-            final Class<QueryTransformerConfig> clazz 
+            final Class<QueryTransformerConfig> 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;
         }
@@ -918,23 +920,24 @@
 
             LOG.info("findClass " + className);
 
-            final Class<ResultHandlerConfig> clazz = 
+            final Class<ResultHandlerConfig> clazz =
                     (Class<ResultHandlerConfig>) 
SiteClassLoaderFactory.valueOf(site).getClassLoader().loadClass(
                             "no.schibstedsok.searchportal.result.handler."
-                            + className
-                            + "ResultHandlerConfig");
-            
+                                    + className
+                                    + "ResultHandlerConfig");
+
             LOG.info("Found class " + clazz.getName());
             return clazz;
         }
     }
 
-    private static abstract class AbstractFactory<C>{
-        
+    private static abstract class AbstractFactory<C> {
+
         private static final String INFO_CONSTRUCT = "  Construct ";
-        
-        AbstractFactory(){}
-        
+
+        AbstractFactory() {
+        }
+
         boolean supported(final String xmlName, final Site site) {
 
             try {

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-30 12:53:09 UTC (rev 4927)
+++ 
trunk/core-api/src/main/java/no/schibstedsok/searchportal/mode/command/ClusteringESPFastCommand.java
        2007-04-30 15:06:42 UTC (rev 4928)
@@ -11,15 +11,12 @@
 import no.schibstedsok.searchportal.datamodel.generic.StringDataObject;
 import no.schibstedsok.searchportal.mode.config.ClusteringEspFastCommandConfig;
 import no.schibstedsok.searchportal.result.BasicSearchResult;
-import no.schibstedsok.searchportal.result.BasicSearchResultItem;
 import no.schibstedsok.searchportal.result.FastSearchResult;
 import no.schibstedsok.searchportal.result.SearchResult;
 import no.schibstedsok.searchportal.result.SearchResultItem;
 import org.apache.log4j.Logger;
 
 import java.io.IOException;
-import java.util.HashMap;
-import java.util.Map;
 
 public class ClusteringESPFastCommand extends NewsEspSearchCommand {
     public static final String PARAM_NEXT_OFFSET = "nextOffset";
@@ -35,7 +32,9 @@
      *
      * @param query the FAST IQuery to modify
      */
+    @Override
     protected void modifyQuery(IQuery query) {
+        super.modifyQuery(query);
         final ClusteringEspFastCommandConfig config = getSearchConfiguration();
 
         // Because of a bug in FAST ESP5 related to collapsing and sorting, we 
must use sort direcetion,
@@ -60,9 +59,7 @@
 
             query.setParameter("collapseon", "batv" + 
config.getClusterField());
             query.setParameter("collapsenum", resultsPerCluster);
-            query.setParameter(BaseParameter.HITS, resultCount);
-        } else {
-            query.setParameter(BaseParameter.HITS, 
config.getClusterMaxFetch());
+            query.setParameter(BaseParameter.HITS, Math.max(resultCount, 
config.getCollapsingMaxFetch()));
         }
     }
 
@@ -80,7 +77,7 @@
             if (clusterId == null) {
                 return createClusteredSearchResult(config, getOffset(), 
result);
             } else {
-                return createSingleClusterResults(config, getOffset(), result);
+                return createCollapsedResults(config, getOffset(), result);
             }
         } catch (IllegalType e) {
             LOG.error("Could not convert result", e);
@@ -93,55 +90,6 @@
         return super.createSearchResult(result);
     }
 
-
-    private FastSearchResult 
createSingleClusterResults(ClusteringEspFastCommandConfig config, int offset, 
IQueryResult result) throws IllegalType, EmptyValueException {
-        final String nestedResultsField = config.getNestedResultsField();
-        final FastSearchResult searchResult = new FastSearchResult(this);
-        final HashMap<String, SearchResultItem> collapseMap = new 
HashMap<String, SearchResultItem>();
-        searchResult.setHitCount(result.getDocCount());
-        int collectedHits = 0;
-        for (int i = offset; i < result.getDocCount(); i++) {
-            try {
-                final IDocumentSummary document = result.getDocument(i + 1);
-                final String collapseId = 
document.getSummaryField("collapseid").getStringValue();
-                SearchResultItem parentResult = collapseMap.get(collapseId);
-                if (parentResult == null) {
-                    if (collapseMap.size() < config.getResultsToReturn()) {
-                        parentResult = addResult(config, searchResult, 
document);
-                        collapseMap.put(collapseId, parentResult);
-                        collectedHits++;
-                    }
-                } else {
-                    SearchResult nestedResult = 
parentResult.getNestedSearchResult(nestedResultsField);
-                    if (nestedResult == null) {
-                        nestedResult = new BasicSearchResult(this);
-                        parentResult.addNestedSearchResult(nestedResultsField, 
nestedResult);
-                        nestedResult.setHitCount(1);
-                    }
-                    addResult(config, nestedResult, document);
-                    nestedResult.setHitCount(nestedResult.getHitCount() + 1);
-                    collectedHits++;
-                }
-            } catch (NullPointerException e) {
-                // The doc count is not 100% accurate.
-                LOG.debug("Error finding document ", e);
-                break;
-            }
-        }
-        if (offset + collectedHits < result.getDocCount()) {
-            searchResult.addField(ClusteringESPFastCommand.PARAM_NEXT_OFFSET, 
Integer.toString(offset + collectedHits));
-        }
-        return searchResult;
-    }
-
-    protected int getOffset() {
-        int offset = 0;
-        if (datamodel.getJunkYard().getValue("offset") != null) {
-            offset = Integer.parseInt((String) 
datamodel.getJunkYard().getValue("offset"));
-        }
-        return offset;
-    }
-
     private FastSearchResult 
createClusteredSearchResult(ClusteringEspFastCommandConfig config, int offset, 
IQueryResult result) throws IllegalType, EmptyValueException {
         final String clusterField = config.getClusterField();
         final String nestedResultsField = config.getNestedResultsField();
@@ -203,20 +151,6 @@
         return searchResult;
     }
 
-    private static SearchResultItem addResult(ClusteringEspFastCommandConfig 
config, SearchResult searchResult, IDocumentSummary document) {
-        SearchResultItem searchResultItem = new BasicSearchResultItem();
-
-        for (final Map.Entry<String, String> entry : 
config.getResultFields().entrySet()) {
-            final IDocumentSummaryField summary = 
document.getSummaryField(entry.getKey());
-            if (summary != null && !summary.isEmpty()) {
-                searchResultItem.addField(entry.getValue(), 
summary.getStringValue().trim());
-            }
-        }
-        searchResult.addResult(searchResultItem);
-        return searchResultItem;
-    }
-
-
     public ClusteringEspFastCommandConfig getSearchConfiguration() {
         return (ClusteringEspFastCommandConfig) super.getSearchConfiguration();
     }

Modified: 
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
    2007-04-30 12:53:09 UTC (rev 4927)
+++ 
trunk/core-api/src/main/java/no/schibstedsok/searchportal/mode/command/NewsEspSearchCommand.java
    2007-04-30 15:06:42 UTC (rev 4928)
@@ -1,5 +1,12 @@
 package no.schibstedsok.searchportal.mode.command;
 
+import com.fastsearch.esp.search.query.BaseParameter;
+import com.fastsearch.esp.search.query.IQuery;
+import com.fastsearch.esp.search.result.EmptyValueException;
+import com.fastsearch.esp.search.result.IDocumentSummary;
+import com.fastsearch.esp.search.result.IDocumentSummaryField;
+import com.fastsearch.esp.search.result.IQueryResult;
+import com.fastsearch.esp.search.result.IllegalType;
 import no.schibstedsok.searchportal.mode.config.NewsEspCommandConfig;
 import no.schibstedsok.searchportal.query.AndClause;
 import no.schibstedsok.searchportal.query.AndNotClause;
@@ -9,8 +16,17 @@
 import no.schibstedsok.searchportal.query.NotClause;
 import no.schibstedsok.searchportal.query.OperationClause;
 import no.schibstedsok.searchportal.query.OrClause;
+import no.schibstedsok.searchportal.result.BasicSearchResult;
+import no.schibstedsok.searchportal.result.BasicSearchResultItem;
+import no.schibstedsok.searchportal.result.FastSearchResult;
+import no.schibstedsok.searchportal.result.SearchResult;
+import no.schibstedsok.searchportal.result.SearchResultItem;
 import org.apache.log4j.Logger;
 
+import java.io.IOException;
+import java.util.HashMap;
+import java.util.Map;
+
 public class NewsEspSearchCommand extends NavigatableESPFastCommand {
     private static final Logger LOG = 
Logger.getLogger(NewsEspSearchCommand.class);
 
@@ -18,6 +34,35 @@
         super(cxt);
     }
 
+
+    @Override
+    protected void modifyQuery(IQuery query) {
+        super.modifyQuery(query);
+        final NewsEspCommandConfig config = getSearchConfiguration();
+        query.setParameter(BaseParameter.HITS, 
Math.max(config.getCollapsingMaxFetch(), config.getResultsToReturn()));
+    }
+
+    @Override
+    protected FastSearchResult createSearchResult(final IQueryResult result) 
throws IOException {
+        final NewsEspCommandConfig config = getSearchConfiguration();
+        try {
+            return createCollapsedResults(config, getOffset(), result);
+        } catch (IllegalType e) {
+            LOG.error("Could not convert result", e);
+        } catch (EmptyValueException e) {
+            LOG.error("Could not convert result", e);
+        }
+        return super.createSearchResult(result);
+    }
+
+    protected int getOffset() {
+        int offset = 0;
+        if (datamodel.getJunkYard().getValue("offset") != null) {
+            offset = Integer.parseInt((String) 
datamodel.getJunkYard().getValue("offset"));
+        }
+        return offset;
+    }
+
     private void addMedium(Clause clause) {
         if (getQuery().getRootClause() == clause) {
             NewsEspCommandConfig config = getSearchConfiguration();
@@ -39,56 +84,48 @@
     }
 
     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);
     }
@@ -97,4 +134,60 @@
     public NewsEspCommandConfig getSearchConfiguration() {
         return (NewsEspCommandConfig) super.getSearchConfiguration();
     }
+
+    protected FastSearchResult createCollapsedResults(NewsEspCommandConfig 
config, int offset, IQueryResult result) throws IllegalType, 
EmptyValueException {
+        final String nestedResultsField = config.getNestedResultsField();
+        final FastSearchResult searchResult = new FastSearchResult(this);
+        final HashMap<String, SearchResultItem> collapseMap = new 
HashMap<String, SearchResultItem>();
+        searchResult.setHitCount(result.getDocCount());
+        int collectedHits = 0;
+        int analyzedHits = 0;
+        for (int i = offset; i < result.getDocCount() && analyzedHits < 
config.getCollapsingMaxFetch(); i++) {
+            try {
+                final IDocumentSummary document = result.getDocument(i + 1);
+                final String collapseId = 
document.getSummaryField("collapseid").getStringValue();
+                SearchResultItem parentResult = collapseMap.get(collapseId);
+                if (parentResult == null) {
+                    if (collapseMap.size() < config.getResultsToReturn()) {
+                        parentResult = addResult(config, searchResult, 
document);
+                        collapseMap.put(collapseId, parentResult);
+                        collectedHits++;
+                    }
+                } else {
+                    SearchResult nestedResult = 
parentResult.getNestedSearchResult(nestedResultsField);
+                    if (nestedResult == null) {
+                        nestedResult = new BasicSearchResult(this);
+                        parentResult.addNestedSearchResult(nestedResultsField, 
nestedResult);
+                        nestedResult.setHitCount(1);
+                    }
+                    addResult(config, nestedResult, document);
+                    nestedResult.setHitCount(nestedResult.getHitCount() + 1);
+                    collectedHits++;
+                }
+                analyzedHits++;
+            } catch (NullPointerException e) {
+                // The doc count is not 100% accurate.
+                LOG.debug("Error finding document ", e);
+                break;
+            }
+        }
+        if (offset + collectedHits < result.getDocCount()) {
+            searchResult.addField(ClusteringESPFastCommand.PARAM_NEXT_OFFSET, 
Integer.toString(offset + collectedHits));
+        }
+        return searchResult;
+    }
+
+    protected static SearchResultItem addResult(NewsEspCommandConfig config, 
SearchResult searchResult, IDocumentSummary document) {
+        SearchResultItem searchResultItem = new BasicSearchResultItem();
+
+        for (final Map.Entry<String, String> entry : 
config.getResultFields().entrySet()) {
+            final IDocumentSummaryField summary = 
document.getSummaryField(entry.getKey());
+            if (summary != null && !summary.isEmpty()) {
+                searchResultItem.addField(entry.getValue(), 
summary.getStringValue().trim());
+            }
+        }
+        searchResult.addResult(searchResultItem);
+        return searchResultItem;
+    }
+
 }

Modified: 
trunk/search-command-config-spi/src/main/java/no/schibstedsok/searchportal/mode/config/ClusteringEspFastCommandConfig.java
===================================================================
--- 
trunk/search-command-config-spi/src/main/java/no/schibstedsok/searchportal/mode/config/ClusteringEspFastCommandConfig.java
  2007-04-30 12:53:09 UTC (rev 4927)
+++ 
trunk/search-command-config-spi/src/main/java/no/schibstedsok/searchportal/mode/config/ClusteringEspFastCommandConfig.java
  2007-04-30 15:06:42 UTC (rev 4928)
@@ -13,26 +13,22 @@
     private String clusterIdParameter = "clusterId";
     private int resultsPerCluster;
     private String clusterField;
-    private String clusterMaxFetch;
-    private String nestedResultsField;
     private String userSortParameter;
     private String sortField;
     private String defaultSort;
 
-    public ClusteringEspFastCommandConfig(){}
-    
+    public ClusteringEspFastCommandConfig() {
+    }
+
     /**
      * @param asc
      */
     public ClusteringEspFastCommandConfig(SearchConfiguration asc) {
-
         if (asc instanceof ClusteringEspFastCommandConfig) {
             ClusteringEspFastCommandConfig cefcc = 
(ClusteringEspFastCommandConfig) asc;
             clusterIdParameter = cefcc.getClusterIdParameter();
             resultsPerCluster = cefcc.getResultsPerCluster();
             clusterField = cefcc.getClusterField();
-            clusterMaxFetch = cefcc.getClusterMaxFetch();
-            nestedResultsField = cefcc.getNestedResultsField();
             userSortParameter = cefcc.getUserSortParameter();
             sortField = cefcc.getSortField();
         }
@@ -55,20 +51,6 @@
     /**
      * @return
      */
-    public String getNestedResultsField() {
-        return nestedResultsField;
-    }
-
-    /**
-     * @param nestedResultsField
-     */
-    public void setNestedResultsField(String nestedResultsField) {
-        this.nestedResultsField = nestedResultsField;
-    }
-
-    /**
-     * @return
-     */
     public String getClusterIdParameter() {
         return clusterIdParameter;
     }
@@ -111,20 +93,6 @@
     /**
      * @return
      */
-    public String getClusterMaxFetch() {
-        return clusterMaxFetch;
-    }
-
-    /**
-     * @param clusterMaxFetch
-     */
-    public void setClusterMaxFetch(String clusterMaxFetch) {
-        this.clusterMaxFetch = clusterMaxFetch;
-    }
-
-    /**
-     * @return
-     */
     public String getSortField() {
         return sortField;
     }

Modified: 
trunk/search-command-config-spi/src/main/java/no/schibstedsok/searchportal/mode/config/NewsEspCommandConfig.java
===================================================================
--- 
trunk/search-command-config-spi/src/main/java/no/schibstedsok/searchportal/mode/config/NewsEspCommandConfig.java
    2007-04-30 12:53:09 UTC (rev 4927)
+++ 
trunk/search-command-config-spi/src/main/java/no/schibstedsok/searchportal/mode/config/NewsEspCommandConfig.java
    2007-04-30 15:06:42 UTC (rev 4928)
@@ -8,9 +8,13 @@
     private String mediumPrefix = "medium";
     private String defaultMedium = "webnewsarticle";
     private String mediumParameter = "medium";
+    private String nestedResultsField;
+    private int collapsingMaxFetch;
 
-    public NewsEspCommandConfig(){}
 
+    public NewsEspCommandConfig() {
+    }
+
     public NewsEspCommandConfig(final SearchConfiguration asc) {
 
         if (asc instanceof NewsEspCommandConfig) {
@@ -18,9 +22,40 @@
             mediumPrefix = nesc.getMediumPrefix();
             defaultMedium = nesc.getDefaultMedium();
             mediumParameter = nesc.getMediumParameter();
+            nestedResultsField = nesc.getNestedResultsField();
+            collapsingMaxFetch = nesc.getCollapsingMaxFetch();
         }
     }
 
+
+    /**
+     * @return
+     */
+    public int getCollapsingMaxFetch() {
+        return collapsingMaxFetch;
+    }
+
+    /**
+     * @param collapsingMaxFetch
+     */
+    public void setCollapsingMaxFetch(int collapsingMaxFetch) {
+        this.collapsingMaxFetch = collapsingMaxFetch;
+    }
+
+    /**
+     * @return
+     */
+    public String getNestedResultsField() {
+        return nestedResultsField;
+    }
+
+    /**
+     * @param nestedResultsField
+     */
+    public void setNestedResultsField(String nestedResultsField) {
+        this.nestedResultsField = nestedResultsField;
+    }
+
     public String getMediumPrefix() {
         return mediumPrefix;
     }

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

Reply via email to