Author: ssmiweve
Date: 2008-03-01 23:25:59 +0100 (Sat, 01 Mar 2008)
New Revision: 6198
Modified:
branches/2.16/core-api/src/main/java/no/sesat/search/util/SearchConstants.java
branches/2.16/core-api/src/test/java/no/sesat/search/mode/command/AllSearchCommandsTest.java
branches/2.16/generic.sesam/result-handler-config/src/main/java/no/sesat/search/result/handler/ClusterOffsetAdapterResultHandlerConfig.java
branches/2.16/generic.sesam/search-command-control/default/src/main/java/no/sesat/search/mode/command/PicSearchCommand.java
branches/2.16/generic.sesam/search-command-control/default/src/main/java/no/sesat/search/mode/command/YahooIdpSearchCommand.java
branches/2.16/generic.sesam/search-command-control/default/src/main/java/no/sesat/search/mode/command/YahooMediaSearchCommand.java
branches/2.16/generic.sesam/search-command-control/fast/src/main/java/no/sesat/search/mode/command/AbstractESPFastSearchCommand.java
branches/2.16/generic.sesam/search-command-control/fast/src/main/java/no/sesat/search/mode/command/AbstractSimpleFastSearchCommand.java
branches/2.16/generic.sesam/search-command-control/fast/src/main/java/no/sesat/search/mode/command/BlendingNewsSearchCommand.java
branches/2.16/generic.sesam/search-command-control/fast/src/main/java/no/sesat/search/mode/command/MobileSearchCommand.java
branches/2.16/generic.sesam/search-command-control/fast/src/main/java/no/sesat/search/mode/command/NewsEspSearchCommand.java
branches/2.16/generic.sesam/search-command-control/fast/src/main/java/no/sesat/search/mode/command/NewsMyNewsSearchCommand.java
branches/2.16/query-transform-control-spi/src/main/java/no/sesat/search/query/transform/NewsMyNewsQueryTransformer.java
branches/2.16/search-command-config-spi/src/main/java/no/sesat/search/mode/config/SearchConfiguration.java
branches/2.16/search-command-control-spi/src/main/java/no/sesat/search/mode/command/AbstractSearchCommand.java
branches/2.16/search-command-control-spi/src/main/java/no/sesat/search/mode/command/SearchCommand.java
branches/2.16/view-config-spi/src/main/java/no/sesat/search/view/navigation/ResultPagingNavigationConfig.java
branches/2.16/view-control-spi/src/main/java/no/sesat/search/view/navigation/ResultPagingNavigationController.java
branches/2.16/war/src/main/java/no/sesat/search/http/servlet/SearchServlet.java
Log:
SEARCH-4264 - Nyhetss?\195?\184k, netts?\195?\184kberikelsen tar i bruk offset
fra URL-en
Added AbstractSearchCommand.getOffset() - returns 0 if offset navigator's
commandName doesn't match current commandName,
Deprecated AbstractSearchCommand.getCurrentOffset(int)
Modified:
branches/2.16/core-api/src/main/java/no/sesat/search/util/SearchConstants.java
===================================================================
---
branches/2.16/core-api/src/main/java/no/sesat/search/util/SearchConstants.java
2008-02-29 19:15:57 UTC (rev 6197)
+++
branches/2.16/core-api/src/main/java/no/sesat/search/util/SearchConstants.java
2008-03-01 22:25:59 UTC (rev 6198)
@@ -1,5 +1,5 @@
/*
- * Copyright (2005-2007) Schibsted Søk AS
+ * Copyright (2005-2008) Schibsted Søk AS
* This file is part of SESAT.
*
* SESAT is free software: you can redistribute it and/or modify
@@ -56,7 +56,7 @@
public static final String REQUEST_KEYPARAM_QUERY = "q";
public static final String REQUEST_KEYPARAM_LANGUAGE = "lan";
- public static final String REQUEST_KEYPARAM_OFFSET = "offset";
+
public static final String REQUEST_KEYPARAM_DOCUMENTS_TO_RETURN = "d";
public static final String REQUEST_KEYPARAM_COLLECTION = "c";
public static final String REQUEST_PARAM_DEFAULT_COLLECTIONS = "d";
@@ -78,7 +78,6 @@
public static final Object REQUEST_PARAM_PICTURE_SEARCH = "p";
- public static final Object PARAMETER_OFFSET = "offset";
}
Modified:
branches/2.16/core-api/src/test/java/no/sesat/search/mode/command/AllSearchCommandsTest.java
===================================================================
---
branches/2.16/core-api/src/test/java/no/sesat/search/mode/command/AllSearchCommandsTest.java
2008-02-29 19:15:57 UTC (rev 6197)
+++
branches/2.16/core-api/src/test/java/no/sesat/search/mode/command/AllSearchCommandsTest.java
2008-03-01 22:25:59 UTC (rev 6198)
@@ -1,4 +1,4 @@
-/* Copyright (2006-2007) Schibsted Søk AS
+/* Copyright (2006-2008) Schibsted Søk AS
* This file is part of SESAT.
*
* SESAT is free software: you can redistribute it and/or modify
@@ -34,6 +34,7 @@
import no.sesat.search.site.Site;
import no.sesat.search.site.SiteContext;
import no.sesat.search.site.config.BytecodeLoader;
+import no.sesat.search.view.navigation.ResultPagingNavigationConfig;
import org.apache.log4j.Logger;
import org.testng.annotations.Test;
@@ -172,8 +173,10 @@
final RunningQuery.Context rqCxt){
- if (map.get("offset") == null || "".equals(map.get("offset"))) {
- map.put("offset", "0");
+ if (map.get(ResultPagingNavigationConfig.OFFSET_KEY) == null
+ ||
"".equals(map.get(ResultPagingNavigationConfig.OFFSET_KEY))) {
+
+ map.put(ResultPagingNavigationConfig.OFFSET_KEY, "0");
}
map.put("contextPath", "/");
Modified:
branches/2.16/generic.sesam/result-handler-config/src/main/java/no/sesat/search/result/handler/ClusterOffsetAdapterResultHandlerConfig.java
===================================================================
---
branches/2.16/generic.sesam/result-handler-config/src/main/java/no/sesat/search/result/handler/ClusterOffsetAdapterResultHandlerConfig.java
2008-02-29 19:15:57 UTC (rev 6197)
+++
branches/2.16/generic.sesam/result-handler-config/src/main/java/no/sesat/search/result/handler/ClusterOffsetAdapterResultHandlerConfig.java
2008-03-01 22:25:59 UTC (rev 6198)
@@ -1,4 +1,4 @@
-/* Copyright (2007) Schibsted Søk AS
+/* Copyright (2007-2008) Schibsted Søk AS
* This file is part of SESAT.
*
* SESAT is free software: you can redistribute it and/or modify
@@ -17,6 +17,7 @@
package no.sesat.search.result.handler;
import no.sesat.search.result.handler.AbstractResultHandlerConfig.Controller;
+import no.sesat.search.view.navigation.ResultPagingNavigationConfig;
import org.apache.log4j.Logger;
import org.w3c.dom.Element;
@@ -27,7 +28,7 @@
@Controller("ClusterOffsetAdapter")
public class ClusterOffsetAdapterResultHandlerConfig extends
AbstractResultHandlerConfig {
private static final Logger LOG =
Logger.getLogger(ClusterOffsetAdapterResultHandlerConfig.class);
- private String offsetField = "offset";
+ private String offsetField = ResultPagingNavigationConfig.OFFSET_KEY;
private String offsetResultField = "nextOffset";
private int offsetInterval = 20;
Modified:
branches/2.16/generic.sesam/search-command-control/default/src/main/java/no/sesat/search/mode/command/PicSearchCommand.java
===================================================================
---
branches/2.16/generic.sesam/search-command-control/default/src/main/java/no/sesat/search/mode/command/PicSearchCommand.java
2008-02-29 19:15:57 UTC (rev 6197)
+++
branches/2.16/generic.sesam/search-command-control/default/src/main/java/no/sesat/search/mode/command/PicSearchCommand.java
2008-03-01 22:25:59 UTC (rev 6198)
@@ -1,4 +1,4 @@
-/* Copyright (2006-2007) Schibsted Søk AS
+/* Copyright (2006-2008) Schibsted Søk AS
* This file is part of SESAT.
*
* SESAT is free software: you can redistribute it and/or modify
@@ -96,7 +96,7 @@
cfg.getCustomerId(),
cfg.getResultsToReturn(),
query,
- getCurrentOffset(1),
+ getOffset()+1,
siteFilter);
DUMP.info("Using " + url);
Modified:
branches/2.16/generic.sesam/search-command-control/default/src/main/java/no/sesat/search/mode/command/YahooIdpSearchCommand.java
===================================================================
---
branches/2.16/generic.sesam/search-command-control/default/src/main/java/no/sesat/search/mode/command/YahooIdpSearchCommand.java
2008-02-29 19:15:57 UTC (rev 6197)
+++
branches/2.16/generic.sesam/search-command-control/default/src/main/java/no/sesat/search/mode/command/YahooIdpSearchCommand.java
2008-03-01 22:25:59 UTC (rev 6198)
@@ -1,5 +1,5 @@
/*
- * Copyright (2006-2007) Schibsted Søk AS
+ * Copyright (2006-2008) Schibsted Søk AS
* This file is part of SESAT.
*
* SESAT is free software: you can redistribute it and/or modify
@@ -199,7 +199,7 @@
getPartnerId(),
conf.getDatabase(),
URLEncoder.encode(conf.getDateRange().length() >0 ?
conf.getDateRange() : dateRange , "UTF-8"),
- getParameter("offset"),
+ getOffset(),
conf.getResultsToReturn(),
(0 < conf.getRegion().length() ? "Region=" +
conf.getRegion() + '&' : ""),
conf.getRegionMix(),
Modified:
branches/2.16/generic.sesam/search-command-control/default/src/main/java/no/sesat/search/mode/command/YahooMediaSearchCommand.java
===================================================================
---
branches/2.16/generic.sesam/search-command-control/default/src/main/java/no/sesat/search/mode/command/YahooMediaSearchCommand.java
2008-02-29 19:15:57 UTC (rev 6197)
+++
branches/2.16/generic.sesam/search-command-control/default/src/main/java/no/sesat/search/mode/command/YahooMediaSearchCommand.java
2008-03-01 22:25:59 UTC (rev 6198)
@@ -1,4 +1,4 @@
-/* Copyright (2007) Schibsted Søk AS
+/* Copyright (2007-2008) Schibsted Søk AS
* This file is part of SESAT.
*
* SESAT is free software: you can redistribute it and/or modify
@@ -127,7 +127,7 @@
String url = MessageFormat.format(
COMMAND_URL_PATTERN,
URLEncoder.encode(query, URL_ENCODING),
- getCurrentOffset(0),
+ getOffset(),
getPartnerId(),
cfg.getResultsToReturn(),
ocr,
Modified:
branches/2.16/generic.sesam/search-command-control/fast/src/main/java/no/sesat/search/mode/command/AbstractESPFastSearchCommand.java
===================================================================
---
branches/2.16/generic.sesam/search-command-control/fast/src/main/java/no/sesat/search/mode/command/AbstractESPFastSearchCommand.java
2008-02-29 19:15:57 UTC (rev 6197)
+++
branches/2.16/generic.sesam/search-command-control/fast/src/main/java/no/sesat/search/mode/command/AbstractESPFastSearchCommand.java
2008-03-01 22:25:59 UTC (rev 6198)
@@ -1,4 +1,4 @@
-/* Copyright (2005-2007) Schibsted Søk AS
+/* Copyright (2005-2008) Schibsted Søk AS
* This file is part of SESAT.
*
* SESAT is free software: you can redistribute it and/or modify
@@ -183,7 +183,7 @@
query.setParameter(new SearchParameter("sesat:uniqueId",
context.getDataModel().getParameters().getUniqueId()));
- query.setParameter(new SearchParameter(BaseParameter.OFFSET,
getCurrentOffset(0)));
+ query.setParameter(new SearchParameter(BaseParameter.OFFSET,
getOffset()));
query.setParameter(new SearchParameter(BaseParameter.HITS,
cfg.getResultsToReturn()));
query.setParameter(new SearchParameter(BaseParameter.SORT_BY,
sortBy));
query.setParameter(new SearchParameter(BaseParameter.LEMMATIZE,
cfg.isLemmatize()));
@@ -302,7 +302,7 @@
protected FastSearchResult<ResultItem> createSearchResult(final
IQueryResult result) throws IOException {
final FastSearchResult<ResultItem> searchResult = new
FastSearchResult<ResultItem>();
- final int cnt = getCurrentOffset(0);
+ final int cnt = getOffset();
final int maxIndex = getMaxDocIndex(result, cnt, cfg);
searchResult.setHitCount(result.getDocCount());
Modified:
branches/2.16/generic.sesam/search-command-control/fast/src/main/java/no/sesat/search/mode/command/AbstractSimpleFastSearchCommand.java
===================================================================
---
branches/2.16/generic.sesam/search-command-control/fast/src/main/java/no/sesat/search/mode/command/AbstractSimpleFastSearchCommand.java
2008-02-29 19:15:57 UTC (rev 6197)
+++
branches/2.16/generic.sesam/search-command-control/fast/src/main/java/no/sesat/search/mode/command/AbstractSimpleFastSearchCommand.java
2008-03-01 22:25:59 UTC (rev 6198)
@@ -1,4 +1,4 @@
-/* Copyright (2005-2007) Schibsted Søk AS
+/* Copyright (2005-2008) Schibsted Søk AS
* This file is part of SESAT.
*
* SESAT is free software: you can redistribute it and/or modify
@@ -486,7 +486,7 @@
}
final FastSearchResult<ResultItem> searchResult = new
FastSearchResult<ResultItem>();
- final int cnt = getCurrentOffset(0);
+ final int cnt = getOffset();
final int maxIndex = Math.min(cnt + getResultsToReturn(),
result.getDocCount());
Modified:
branches/2.16/generic.sesam/search-command-control/fast/src/main/java/no/sesat/search/mode/command/BlendingNewsSearchCommand.java
===================================================================
---
branches/2.16/generic.sesam/search-command-control/fast/src/main/java/no/sesat/search/mode/command/BlendingNewsSearchCommand.java
2008-02-29 19:15:57 UTC (rev 6197)
+++
branches/2.16/generic.sesam/search-command-control/fast/src/main/java/no/sesat/search/mode/command/BlendingNewsSearchCommand.java
2008-03-01 22:25:59 UTC (rev 6198)
@@ -1,4 +1,4 @@
-/* Copyright (2007) Schibsted Søk AS
+/* Copyright (2007-2008) Schibsted Søk AS
* This file is part of SESAT.
*
* SESAT is free software: you can redistribute it and/or modify
@@ -103,16 +103,9 @@
this.additionalFilter = filter;
}
- /**
- * Returns the offset in the result set. If paging is enabled for the
- * current search configuration the offset to the current page will be
- * added to the parameter.
- *
- * @param i the current offset.
- * @return i plus the offset of the current page.
- */
- protected int getCurrentOffset(final int i) {
- return Integer.parseInt(getParameter("offset")) /
cfg.getFiltersToBlend().size();
+
+ protected int getOffset(){
+ return super.getOffset() / cfg.getFiltersToBlend().size();
}
protected int getResultsToReturn() {
Modified:
branches/2.16/generic.sesam/search-command-control/fast/src/main/java/no/sesat/search/mode/command/MobileSearchCommand.java
===================================================================
---
branches/2.16/generic.sesam/search-command-control/fast/src/main/java/no/sesat/search/mode/command/MobileSearchCommand.java
2008-02-29 19:15:57 UTC (rev 6197)
+++
branches/2.16/generic.sesam/search-command-control/fast/src/main/java/no/sesat/search/mode/command/MobileSearchCommand.java
2008-03-01 22:25:59 UTC (rev 6198)
@@ -1,4 +1,4 @@
-/* Copyright (2006-2007) Schibsted Søk AS
+/* Copyright (2006-2008) Schibsted Søk AS
* This file is part of SESAT.
*
* SESAT is free software: you can redistribute it and/or modify
@@ -93,7 +93,7 @@
params.setParameter(new SearchParameter(
BaseParameter.QUERY, getTransformedQuery()));
params.setParameter(new SearchParameter(
- "offset", getCurrentOffset(0)));
+ "offset", getOffset())); // BaseParameter.OFFSET not in
Fast4
if (getParameter("msite") != null) {
String filter = "+(";
@@ -148,7 +148,7 @@
if( null != result ){
- final int cnt = getCurrentOffset(0);
+ final int cnt = getOffset();
final int maxIndex = Math.min(cnt + cfg.getResultsToReturn(),
result.getDocCount());
searchResult.setHitCount(result.getDocCount());
Modified:
branches/2.16/generic.sesam/search-command-control/fast/src/main/java/no/sesat/search/mode/command/NewsEspSearchCommand.java
===================================================================
---
branches/2.16/generic.sesam/search-command-control/fast/src/main/java/no/sesat/search/mode/command/NewsEspSearchCommand.java
2008-02-29 19:15:57 UTC (rev 6197)
+++
branches/2.16/generic.sesam/search-command-control/fast/src/main/java/no/sesat/search/mode/command/NewsEspSearchCommand.java
2008-03-01 22:25:59 UTC (rev 6198)
@@ -1,4 +1,4 @@
-/* Copyright (2007) Schibsted Søk AS
+/* Copyright (2007-2008) Schibsted Søk AS
* This file is part of SESAT.
*
* SESAT is free software: you can redistribute it and/or modify
@@ -165,18 +165,6 @@
return super.createSearchResult(result);
}
- /** Get the offset.
- * @return
- */
- 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(final Clause clause) {
if (getQuery().getRootClause() == clause) {
Modified:
branches/2.16/generic.sesam/search-command-control/fast/src/main/java/no/sesat/search/mode/command/NewsMyNewsSearchCommand.java
===================================================================
---
branches/2.16/generic.sesam/search-command-control/fast/src/main/java/no/sesat/search/mode/command/NewsMyNewsSearchCommand.java
2008-02-29 19:15:57 UTC (rev 6197)
+++
branches/2.16/generic.sesam/search-command-control/fast/src/main/java/no/sesat/search/mode/command/NewsMyNewsSearchCommand.java
2008-03-01 22:25:59 UTC (rev 6198)
@@ -1,4 +1,4 @@
-/* Copyright (2007) Schibsted Søk AS
+/* Copyright (2007-2008) Schibsted Søk AS
* This file is part of SESAT.
*
* SESAT is free software: you can redistribute it and/or modify
@@ -145,14 +145,6 @@
}
}
- private int getOffset() {
- int offset = 0;
- if (datamodel.getJunkYard().getValue("offset") != null) {
- offset = Integer.parseInt((String)
datamodel.getJunkYard().getValue("offset"));
- }
- return offset;
- }
-
@Override
public NewsMyNewsCommandConfig getSearchConfiguration() {
return (NewsMyNewsCommandConfig) super.getSearchConfiguration();
Modified:
branches/2.16/query-transform-control-spi/src/main/java/no/sesat/search/query/transform/NewsMyNewsQueryTransformer.java
===================================================================
---
branches/2.16/query-transform-control-spi/src/main/java/no/sesat/search/query/transform/NewsMyNewsQueryTransformer.java
2008-02-29 19:15:57 UTC (rev 6197)
+++
branches/2.16/query-transform-control-spi/src/main/java/no/sesat/search/query/transform/NewsMyNewsQueryTransformer.java
2008-03-01 22:25:59 UTC (rev 6198)
@@ -1,4 +1,4 @@
-/* Copyright (2007) Schibsted Søk AS
+/* Copyright (2007-2008) Schibsted Søk AS
* This file is part of SESAT.
*
* SESAT is free software: you can redistribute it and/or modify
@@ -21,6 +21,8 @@
import java.util.regex.Matcher;
import java.util.regex.Pattern;
+import no.sesat.search.datamodel.generic.StringDataObject;
+import no.sesat.search.view.navigation.ResultPagingNavigationConfig;
/**
@@ -80,9 +82,16 @@
*/
protected int getOffset() {
- return null !=
getContext().getDataModel().getJunkYard().getValue("offset")
- ? Integer.parseInt((String)
getContext().getDataModel().getJunkYard().getValue("offset"))
- : 0;
+ int offset = 0;
+
+ final StringDataObject offsetString
+ =
getContext().getDataModel().getParameters().getValue(ResultPagingNavigationConfig.OFFSET_KEY);
+
+ if( null != offsetString ){
+ offset = Integer.parseInt(offsetString.getUtf8UrlEncoded());
+ }
+
+ return offset;
}
private String transformQuery(final String myNews) {
Modified:
branches/2.16/search-command-config-spi/src/main/java/no/sesat/search/mode/config/SearchConfiguration.java
===================================================================
---
branches/2.16/search-command-config-spi/src/main/java/no/sesat/search/mode/config/SearchConfiguration.java
2008-02-29 19:15:57 UTC (rev 6197)
+++
branches/2.16/search-command-config-spi/src/main/java/no/sesat/search/mode/config/SearchConfiguration.java
2008-03-01 22:25:59 UTC (rev 6198)
@@ -1,5 +1,5 @@
/*
- * Copyright (2005-2007) Schibsted Søk AS
+ * Copyright (2005-2008) Schibsted Søk AS
* This file is part of SESAT.
*
* SESAT is free software: you can redistribute it and/or modify
@@ -27,7 +27,8 @@
import no.sesat.search.mode.SearchModeFactory.Context;
import org.w3c.dom.Element;
-/**
+/** Minimum behavior defined for any SearchConfiguration implementation.
+ *
* @author <a href="mailto:[EMAIL PROTECTED]">Magnus Eklund</a>
* @version <tt>$Id$</tt>
*/
@@ -48,7 +49,7 @@
void addQueryTransformer(QueryTransformerConfig transformer);
/**
- * Returns a list of [EMAIL PROTECTED]
no.sesat.search.result.handler.ResultHandlerConfig} that should act on the
search
+ * Returns a (defensive copy) list of [EMAIL PROTECTED]
no.sesat.search.result.handler.ResultHandlerConfig} that should act on the
search
* result.
*
* @return The list of handlers.
@@ -98,7 +99,7 @@
/**
* Sets the number of results to return. This is typically set to the
- * page size.
+ * page size defined in the view.xml.
*
* @param numberOfResults
*/
Modified:
branches/2.16/search-command-control-spi/src/main/java/no/sesat/search/mode/command/AbstractSearchCommand.java
===================================================================
---
branches/2.16/search-command-control-spi/src/main/java/no/sesat/search/mode/command/AbstractSearchCommand.java
2008-02-29 19:15:57 UTC (rev 6197)
+++
branches/2.16/search-command-control-spi/src/main/java/no/sesat/search/mode/command/AbstractSearchCommand.java
2008-03-01 22:25:59 UTC (rev 6198)
@@ -1,4 +1,4 @@
-/* Copyright (2006-2007) Schibsted Søk AS
+/* Copyright (2006-2008) Schibsted Søk AS
* This file is part of SESAT.
*
* SESAT is free software: you can redistribute it and/or modify
@@ -62,6 +62,7 @@
import no.sesat.search.site.SiteContext;
import no.sesat.search.site.config.BytecodeLoader;
import no.sesat.search.view.config.SearchTab;
+import static
no.sesat.search.view.navigation.ResultPagingNavigationConfig.OFFSET_KEY;
import org.apache.commons.lang.time.StopWatch;
import org.apache.log4j.Logger;
import org.apache.log4j.MDC;
@@ -70,6 +71,7 @@
import java.util.List;
import java.util.Map;
import no.sesat.search.datamodel.access.DataModelAccessException;
+import no.sesat.search.view.navigation.NavigationConfig.Nav;
/** The base abstraction for Search Commands providing a large framework for
commands to run against.
*
<br/><br/>
@@ -569,25 +571,40 @@
*
* @param i the current offset.
* @return i plus the offset of the current page.
+ *
+ * @deprecated instead use getOffset() + i
*/
protected int getCurrentOffset(final int i) {
- final Map<String, Object> parameters =
datamodel.getJunkYard().getValues();
- final Object v = parameters.get("offset");
-
- if (null != v && getSearchConfiguration().isPaging()) {
- return i + Integer.parseInt(v instanceof String[] && ((String[])
v).length == 1
- ? ((String[]) v)[0]
- : (String) v);
- } else {
- return i;
+ return i + getOffset();
+ }
+
+ /**
+ * Returns the offset applicable to this command.
+ * Zero if the command has no "offset" navigator configured,
+ * the value of the offset parameter otherwise.
+ *
+ * @return i plus the offset of the current page.
+ */
+ protected int getOffset(){
+
+ int offset = 0;
+ final Nav offsetNav =
context.getDataModel().getNavigation().getConfiguration().getNavMap().get(OFFSET_KEY);
+
+ if(null != offsetNav &&
getSearchConfiguration().getName().equals(offsetNav.getCommandName())){
+ final StringDataObject offsetString =
context.getDataModel().getParameters().getValue(OFFSET_KEY);
+ if( null != offsetString ){
+ offset = Integer.parseInt(offsetString.getUtf8UrlEncoded());
+ }
}
+ return offset;
}
/**
- * TODO comment me. *
+ * TODO comment me.
*
* @return
+ * @deprecated because it uses the junkyard
*/
protected Map<String, Object> getParameters() {
@@ -601,6 +618,8 @@
* the empty string is returned.
*
* @param paramName
+ *
+ * @deprecated because it uses the junkyard
*/
protected String getParameter(final String paramName) {
Modified:
branches/2.16/search-command-control-spi/src/main/java/no/sesat/search/mode/command/SearchCommand.java
===================================================================
---
branches/2.16/search-command-control-spi/src/main/java/no/sesat/search/mode/command/SearchCommand.java
2008-02-29 19:15:57 UTC (rev 6197)
+++
branches/2.16/search-command-control-spi/src/main/java/no/sesat/search/mode/command/SearchCommand.java
2008-03-01 22:25:59 UTC (rev 6198)
@@ -1,5 +1,5 @@
/*
-* Copyright (2005-2007) Schibsted Søk AS
+* Copyright (2005-2008) Schibsted Søk AS
* This file is part of SESAT.
*
* SESAT is free software: you can redistribute it and/or modify
@@ -28,7 +28,7 @@
import no.sesat.search.result.ResultItem;
import no.sesat.search.result.ResultList;
-/** Behavour requirements for any implementation Search Command.
+/** Behavour requirements for any implementating Search Command.
*
* @author <a href="mailto:[EMAIL PROTECTED]">Magnus Eklund</a>
* @version <tt>$Id$</tt>
Modified:
branches/2.16/view-config-spi/src/main/java/no/sesat/search/view/navigation/ResultPagingNavigationConfig.java
===================================================================
---
branches/2.16/view-config-spi/src/main/java/no/sesat/search/view/navigation/ResultPagingNavigationConfig.java
2008-02-29 19:15:57 UTC (rev 6197)
+++
branches/2.16/view-config-spi/src/main/java/no/sesat/search/view/navigation/ResultPagingNavigationConfig.java
2008-03-01 22:25:59 UTC (rev 6198)
@@ -1,4 +1,4 @@
-/* Copyright (2005-2007) Schibsted Søk AS
+/* Copyright (2005-2008) Schibsted Søk AS
* This file is part of SESAT.
*
* SESAT is free software: you can redistribute it and/or modify
@@ -25,9 +25,13 @@
/**
* @author <a href="mailto:[EMAIL PROTECTED]">Magnus Eklund</a>
+ * @version $Id$
*/
@ControllerFactory("no.sesat.search.view.navigation.ResultPagingNavigationController")
public final class ResultPagingNavigationConfig extends NavigationConfig.Nav {
+
+ /** Used for both the id of the configuration AND the parameter name. **/
+ public static final String OFFSET_KEY = "offset";
private int pageSize;
private int numberOfPages;
Property changes on:
branches/2.16/view-config-spi/src/main/java/no/sesat/search/view/navigation/ResultPagingNavigationConfig.java
___________________________________________________________________
Name: svn:keywords
+ Id
Modified:
branches/2.16/view-control-spi/src/main/java/no/sesat/search/view/navigation/ResultPagingNavigationController.java
===================================================================
---
branches/2.16/view-control-spi/src/main/java/no/sesat/search/view/navigation/ResultPagingNavigationController.java
2008-02-29 19:15:57 UTC (rev 6197)
+++
branches/2.16/view-control-spi/src/main/java/no/sesat/search/view/navigation/ResultPagingNavigationController.java
2008-03-01 22:25:59 UTC (rev 6198)
@@ -1,4 +1,4 @@
-/* Copyright (2005-2007) Schibsted Søk AS
+/* Copyright (2005-2008) Schibsted Søk AS
* This file is part of SESAT.
*
* SESAT is free software: you can redistribute it and/or modify
@@ -25,6 +25,7 @@
import no.sesat.search.result.ResultItem;
import no.sesat.search.result.ResultList;
import no.sesat.search.site.config.TextMessages;
+import static
no.sesat.search.view.navigation.ResultPagingNavigationConfig.OFFSET_KEY;
import org.apache.log4j.Logger;
@@ -72,7 +73,7 @@
}else {
hitCount = searchResult.getHitCount();
}
- final StringDataObject offsetString =
context.getDataModel().getParameters().getValue("offset");
+ final StringDataObject offsetString =
context.getDataModel().getParameters().getValue(OFFSET_KEY);
final int offset = offsetString == null ? 0 :
Integer.parseInt(offsetString.getUtf8UrlEncoded());
item = new BasicNavigationItem();
Modified:
branches/2.16/war/src/main/java/no/sesat/search/http/servlet/SearchServlet.java
===================================================================
---
branches/2.16/war/src/main/java/no/sesat/search/http/servlet/SearchServlet.java
2008-02-29 19:15:57 UTC (rev 6197)
+++
branches/2.16/war/src/main/java/no/sesat/search/http/servlet/SearchServlet.java
2008-03-01 22:25:59 UTC (rev 6198)
@@ -1,5 +1,5 @@
/*
- * Copyright (2005-2007) Schibsted Søk AS
+ * Copyright (2005-2008) Schibsted Søk AS
* This file is part of SESAT.
*
* SESAT is free software: you can redistribute it and/or modify
@@ -342,12 +342,7 @@
final DataModel datamodel = (DataModel)
request.getSession().getAttribute(DataModel.KEY);
- final ParametersDataObject parametersDO = datamodel.getParameters();
- if (null == parametersDO.getValue("offset") || 0 ==
parametersDO.getValue("offset").getString().length()) {
- request.setAttribute("offset", "0"); // TODO remove, access
through datamodel instead.
- }
-
// TODO remove next two, access through datamodel instead.
request.setAttribute("text",TextMessages.valueOf(ContextWrapper.wrap(
TextMessages.Context.class,
_______________________________________________
Kernel-commits mailing list
[email protected]
http://sesat.no/mailman/listinfo/kernel-commits