Author: ssmiweve
Date: 2008-11-26 22:06:17 +0100 (Wed, 26 Nov 2008)
New Revision: 6988
Modified:
branches/2.18/generic.sesam/search-command-config/src/main/java/no/sesat/search/mode/config/NewsEspCommandConfig.java
branches/2.18/search-command-config-spi/src/main/java/no/sesat/search/mode/config/CommandConfig.java
branches/2.18/search-command-config-spi/src/main/java/no/sesat/search/mode/config/SearchConfiguration.java
branches/2.18/search-command-control-spi/src/main/java/no/sesat/search/mode/command/AbstractSearchCommand.java
branches/2.18/view-config-spi/src/main/java/no/sesat/search/view/navigation/NavigationConfig.java
Log:
Issue SKER4750: (Only main search should use sort order set in the URL)
SEARCH-5226 - N?\195?\165r man sorterer resultatet p?\195?\165
nettby.beta.test.sesam.no forsvinner resultatet
Modified:
branches/2.18/generic.sesam/search-command-config/src/main/java/no/sesat/search/mode/config/NewsEspCommandConfig.java
===================================================================
---
branches/2.18/generic.sesam/search-command-config/src/main/java/no/sesat/search/mode/config/NewsEspCommandConfig.java
2008-11-25 20:25:31 UTC (rev 6987)
+++
branches/2.18/generic.sesam/search-command-config/src/main/java/no/sesat/search/mode/config/NewsEspCommandConfig.java
2008-11-26 21:06:17 UTC (rev 6988)
@@ -42,9 +42,6 @@
private String nestedResultsField = "entries";;
private int collapsingMaxFetch = 10;
-
- /** Name of the sort parameter used in the url. */
- private String userSortParameter = "sort";
/** Sort field used when sort is not relevance. */
private String sortField = "publishedtime";
/** Default sort direction if no sort is configured. */
@@ -62,20 +59,6 @@
private String ageField = "publishedtime";
private char ageSymbol;
- /** Getter for the userSortParameter property.
- * @return the userSortParameter value
- */
- public String getUserSortParameter() {
- return userSortParameter;
- }
-
- /** Setter for the userSortParameter property.
- * @param userSortParameter the new userSortParameter value
- */
- public void setUserSortParameter(final String userSortParameter) {
- this.userSortParameter = userSortParameter;
- }
-
/** Getter for the sortField property.
* @return the sortField value
*/
Modified:
branches/2.18/search-command-config-spi/src/main/java/no/sesat/search/mode/config/CommandConfig.java
===================================================================
---
branches/2.18/search-command-config-spi/src/main/java/no/sesat/search/mode/config/CommandConfig.java
2008-11-25 20:25:31 UTC (rev 6987)
+++
branches/2.18/search-command-config-spi/src/main/java/no/sesat/search/mode/config/CommandConfig.java
2008-11-26 21:06:17 UTC (rev 6988)
@@ -93,6 +93,11 @@
*/
private final Map<String,String> fieldFilters = new
HashMap<String,String>();
+ /**
+ * Name of the sort parameter used in the url.
+ */
+ private String userSortParameter = "sort";
+
// Static --------------------------------------------------------
// Constructors --------------------------------------------------
@@ -150,8 +155,7 @@
}
/**
- * @param resultFields
- * Result fields to add.
+ * @param resultFieldArray Result fields to add.
*/
public final void addResultFields(final String[] resultFieldArray) {
for (String resultField : resultFieldArray) {
@@ -242,18 +246,7 @@
public void setAsynchronous(final boolean asynchronous){
this.asynchronous = asynchronous;
}
-
/**
- * @param fieldAndFilter
- * String containing name of field and filter seperated with '
AS '.
- */
- private void setFieldFilter(final String fieldAndFilter) {
- String parsed[] = fieldAndFilter.trim().split(" AS ");
- String field = parsed[0].trim();
- fieldFilters.put(field, (parsed.length > 1) ? parsed[1].trim() :
field);
- }
-
- /**
* Syntax: field-filters="size, nyhetskilde AS newssource"
*
* Just "size" will be the same as writing "size AS size"
@@ -314,11 +307,6 @@
this.pagingParameter = pagingParameter;
}
-
-
- // Protected --------------------------------------------------------
-
-
public SearchConfiguration readSearchConfiguration(final Element element,
final SearchConfiguration inherit, Context context) {
if(null!=inherit){
@@ -339,7 +327,38 @@
return this;
}
- /** Currently only used by the fast subclasses but hopefully open to all
one day. **/
+ @Override
+ public String toString() {
+ try {
+ return this.getClass().getSimpleName() + " " +
BeanUtils.describe(this).toString();
+ } catch (Exception e) {
+ LOG.warn("Failed to do BeanUtils.describe", e);
+ }
+ return this.getClass().getSimpleName();
+ }
+
+ /**
+ * Getter for the userSortParameter property.
+ * @return the userSortParameter value
+ */
+ public String getUserSortParameter() {
+ return userSortParameter;
+ }
+
+ /**
+ * Setter for the userSortParameter property.
+ * @param userSortParameter the new userSortParameter value
+ */
+ public void setUserSortParameter(final String userSortParameter) {
+ this.userSortParameter = userSortParameter;
+ }
+
+ // Protected --------------------------------------------------------
+
+ /** Currently only used by the fast subclasses but hopefully open to all
one day. *
+ * @param navsE w3c dom elements to deserialise
+ * @return collection of Navigators
+ */
protected final Collection<Navigator> parseNavigators(final Element navsE)
{
final Collection<Navigator> navigators = new
ArrayList<Navigator>();
@@ -377,14 +396,16 @@
return navigators;
}
- @Override
- public String toString() {
- try {
- return this.getClass().getSimpleName() + " " +
BeanUtils.describe(this).toString();
- } catch (Exception e) {
- LOG.warn("Failed to do BeanUtils.describe", e);
- }
- return this.getClass().getSimpleName();
+ // Private --------------------------------------------------------
+
+ /**
+ * @param fieldAndFilter
+ * String containing name of field and filter seperated with '
AS '.
+ */
+ private void setFieldFilter(final String fieldAndFilter) {
+ String parsed[] = fieldAndFilter.trim().split(" AS ");
+ String field = parsed[0].trim();
+ fieldFilters.put(field, (parsed.length > 1) ? parsed[1].trim() :
field);
}
// Inner classes -------------------------------------------------
Modified:
branches/2.18/search-command-config-spi/src/main/java/no/sesat/search/mode/config/SearchConfiguration.java
===================================================================
---
branches/2.18/search-command-config-spi/src/main/java/no/sesat/search/mode/config/SearchConfiguration.java
2008-11-25 20:25:31 UTC (rev 6987)
+++
branches/2.18/search-command-config-spi/src/main/java/no/sesat/search/mode/config/SearchConfiguration.java
2008-11-26 21:06:17 UTC (rev 6988)
@@ -36,6 +36,11 @@
public static final String DEFAULT_PAGING_PARAMETER = "offset";
/**
+ * Default value associated with getUserSortParameter()
+ */
+ public static final String DEFAULT_USER_SORT_PARAMETER = "sort";
+
+ /**
* @param resultField
*/
void addResultField(String... resultField);
@@ -93,6 +98,16 @@
*/
String getPagingParameter();
+ /** Return the parameter key that any associated
PagingNavigationController for sorting
+ * should use to fetch the offset value.
+ * Defaults to "sort".
+ *
+ * Typically used when multiple sorting PagingNavigationControllers are to
be configured on the one mode.
+ *
+ * @return the userSortParameter value
+ */
+ public String getUserSortParameter();
+
/**
* @return true if the command should always run.
*/
Modified:
branches/2.18/search-command-control-spi/src/main/java/no/sesat/search/mode/command/AbstractSearchCommand.java
===================================================================
---
branches/2.18/search-command-control-spi/src/main/java/no/sesat/search/mode/command/AbstractSearchCommand.java
2008-11-25 20:25:31 UTC (rev 6987)
+++
branches/2.18/search-command-control-spi/src/main/java/no/sesat/search/mode/command/AbstractSearchCommand.java
2008-11-26 21:06:17 UTC (rev 6988)
@@ -258,8 +258,8 @@
userSortByParameter = new NavigationSearchCommandParameter(
context,
- USER_SORT_KEY,
- USER_SORT_KEY,
+ getSearchConfiguration().getUserSortParameter(),
+ getSearchConfiguration().getUserSortParameter(),
BaseSearchCommandParameter.Origin.REQUEST);
}
Modified:
branches/2.18/view-config-spi/src/main/java/no/sesat/search/view/navigation/NavigationConfig.java
===================================================================
---
branches/2.18/view-config-spi/src/main/java/no/sesat/search/view/navigation/NavigationConfig.java
2008-11-25 20:25:31 UTC (rev 6987)
+++
branches/2.18/view-config-spi/src/main/java/no/sesat/search/view/navigation/NavigationConfig.java
2008-11-26 21:06:17 UTC (rev 6988)
@@ -36,6 +36,7 @@
import java.lang.annotation.Target;
import java.lang.annotation.ElementType;
import java.lang.annotation.Inherited;
+import no.sesat.search.mode.config.SearchConfiguration;
import no.sesat.search.view.config.SearchTab;
/**
@@ -53,7 +54,7 @@
*/
public final class NavigationConfig implements Serializable {
- public static final String USER_SORT_KEY = "sort";
+ public static final String USER_SORT_KEY =
SearchConfiguration.DEFAULT_USER_SORT_PARAMETER;
private final Map<String, Nav> navMap = new HashMap<String, Nav>();
private final Map<String, Navigation> navigationMap = new HashMap<String,
Navigation>();
_______________________________________________
Kernel-commits mailing list
[email protected]
http://sesat.no/mailman/listinfo/kernel-commits