Author: ssmiweve
Date: 2007-06-11 16:13:59 +0200 (Mon, 11 Jun 2007)
New Revision: 5302

Added:
   
trunk/result-spi/src/main/java/no/schibstedsok/searchportal/result/BasicNavigationItem.java
   
trunk/result-spi/src/main/java/no/schibstedsok/searchportal/result/NavigationItem.java
Removed:
   trunk/result-spi/src/main/java/no/schibstedsok/searchportal/view/
Modified:
   
trunk/core-api/src/main/java/no/schibstedsok/searchportal/mode/command/NavigationCommand.java
   
trunk/result-spi/src/main/java/no/schibstedsok/searchportal/result/BasicSearchResult.java
   
trunk/result-spi/src/main/java/no/schibstedsok/searchportal/result/BasicSearchResultItem.java
   
trunk/result-spi/src/main/java/no/schibstedsok/searchportal/result/Navigator.java
Log:
SEARCH-297 - Build Navigation Data Model


Modified: 
trunk/core-api/src/main/java/no/schibstedsok/searchportal/mode/command/NavigationCommand.java
===================================================================
--- 
trunk/core-api/src/main/java/no/schibstedsok/searchportal/mode/command/NavigationCommand.java
       2007-06-11 12:30:43 UTC (rev 5301)
+++ 
trunk/core-api/src/main/java/no/schibstedsok/searchportal/mode/command/NavigationCommand.java
       2007-06-11 14:13:59 UTC (rev 5302)
@@ -179,7 +179,7 @@
                                 selectedValue = new 
StringDataObjectSupport("dummy");
                             }
                             if (option.getDisplayName() != null) {
-                                navigator.setName(option.getDisplayName());
+                                navigator.setTitle(option.getDisplayName());
                             }
                         }
                     }
@@ -357,7 +357,7 @@
             this.proxiedList = proxiedList;
         }
 
-        public ExtendedNavigator getSelected() {
+        public ExtendedNavigator getChildSelected() {
             findSelection();
             return selectedItem;
         }
@@ -375,7 +375,7 @@
             dirty = false;
         }
 
-        public boolean hasSelection() {
+        public boolean isChildSelected() {
             findSelection();
             return selectedItem != null;
         }
@@ -523,28 +523,28 @@
         /**
          * @return
          */
-        public String getName() {
+        public String getTitle() {
             return name;
         }
 
         /**
          * @param name
          */
-        public void setName(final String name) {
+        public void setTitle(final String name) {
             this.name = name;
         }
 
         /**
          * @return
          */
-        public String getUrlFragment() {
+        public String getUrl() {
             return urlFragment;
         }
 
         /**
          * @return
          */
-        public int getCount() {
+        public int getHitCount() {
             return count;
         }
     }

Added: 
trunk/result-spi/src/main/java/no/schibstedsok/searchportal/result/BasicNavigationItem.java
===================================================================
--- 
trunk/result-spi/src/main/java/no/schibstedsok/searchportal/result/BasicNavigationItem.java
                         (rev 0)
+++ 
trunk/result-spi/src/main/java/no/schibstedsok/searchportal/result/BasicNavigationItem.java
 2007-06-11 14:13:59 UTC (rev 5302)
@@ -0,0 +1,68 @@
+/*
+ * BasicNavigationItem.java
+ * 
+ * Created on 11/06/2007, 11:25:25
+ * 
+ */
+
+package no.schibstedsok.searchportal.result;
+
+/**
+ *
+ * @author mick
+ * @version $Id$
+ */
+public class BasicNavigationItem extends BasicSearchResult<NavigationItem> 
implements NavigationItem{
+
+    private boolean selected = false;
+
+    /**
+     * @param title
+     * @param url
+     * @param count
+     */
+    public BasicNavigationItem(final String title, final String url, final int 
hitCount) {
+        super(title, url, hitCount);
+    }
+
+    /**
+     * @param selected
+     */
+    public void setSelected(final boolean selected) {
+        this.selected = selected;
+    }
+
+    /**
+     * @return
+     */
+    public boolean isSelected() {
+        return selected;
+    }
+    
+    public NavigationItem getChildSelected() {
+        
+        return getChildSelectedImpl();
+    }
+
+    public boolean isChildSelected() {
+        
+        return null != getChildSelectedImpl();
+    }
+
+    private NavigationItem getChildSelectedImpl() {
+        
+        // XXX Geir's original work had a dirty flag here to cache this result.
+        //  I doubt that this is an application hotspot, 
+        //  and the flag wasn't bomb-proof, 
+        // so it's all been removed for now.
+        
+        NavigationItem childSelected = null;
+        for (NavigationItem item : getResults()) {
+            if (item.isSelected()) {
+                childSelected = item;
+                break;
+            }
+        }
+        return childSelected;
+    }
+}


Property changes on: 
trunk/result-spi/src/main/java/no/schibstedsok/searchportal/result/BasicNavigationItem.java
___________________________________________________________________
Name: svn:keywords
   + Id

Modified: 
trunk/result-spi/src/main/java/no/schibstedsok/searchportal/result/BasicSearchResult.java
===================================================================
--- 
trunk/result-spi/src/main/java/no/schibstedsok/searchportal/result/BasicSearchResult.java
   2007-06-11 12:30:43 UTC (rev 5301)
+++ 
trunk/result-spi/src/main/java/no/schibstedsok/searchportal/result/BasicSearchResult.java
   2007-06-11 14:13:59 UTC (rev 5302)
@@ -26,8 +26,12 @@
     private static final Logger LOG = 
Logger.getLogger(BasicSearchResult.class);
 
     private int hitCount = -1;
+    
     private final List<T> results = new ArrayList<T>();
-    private final Map<String,List<WeightedSuggestion>> spellingSuggestions = 
new HashMap<String,List<WeightedSuggestion>>();
+    
+    private final Map<String,List<WeightedSuggestion>> spellingSuggestions 
+            = new HashMap<String,List<WeightedSuggestion>>();
+    
     private final List<Suggestion> querySuggestions = new 
ArrayList<Suggestion>();
 
     private final List<WeightedSuggestion> relevantQueries = new 
ArrayList<WeightedSuggestion>(); 
@@ -37,6 +41,11 @@
      */
     public BasicSearchResult(){}
     
+    protected BasicSearchResult(final String title, final String url, final 
int hitCount){
+        super(title, url);
+        this.hitCount = hitCount;
+    }
+    
     /** Copy constructor. 
      * Does not copy results, spellingSuggestions, querySuggestions, or 
relevantQueries.
      *

Modified: 
trunk/result-spi/src/main/java/no/schibstedsok/searchportal/result/BasicSearchResultItem.java
===================================================================
--- 
trunk/result-spi/src/main/java/no/schibstedsok/searchportal/result/BasicSearchResultItem.java
       2007-06-11 12:30:43 UTC (rev 5301)
+++ 
trunk/result-spi/src/main/java/no/schibstedsok/searchportal/result/BasicSearchResultItem.java
       2007-06-11 14:13:59 UTC (rev 5302)
@@ -21,6 +21,7 @@
 public class BasicSearchResultItem implements ResultItem {
     
     private static final String URL_KEY = "url";
+    private static final String TITLE_KEY = "title";
 
     private final HashMap<String,Serializable> fields = new 
HashMap<String,Serializable>();
     
@@ -31,6 +32,15 @@
     
     /**
      * 
+     */
+    protected BasicSearchResultItem(final String title, final String url){
+        
+        fields.put(TITLE_KEY, StringChopper.chop(title, -1));
+        fields.put(URL_KEY, StringChopper.chop(url, -1));
+    }
+    
+    /**
+     * 
      * @param copy 
      */
     public BasicSearchResultItem(final ResultItem copy){
@@ -194,4 +204,14 @@
         return addField(URL_KEY, url);
     }
 
+    public String getTitle() {
+
+        return getField(TITLE_KEY);
+    }
+
+    public ResultItem setTitle(final String title) {
+
+        return addField(TITLE_KEY, title);
+    }
+
 }

Added: 
trunk/result-spi/src/main/java/no/schibstedsok/searchportal/result/NavigationItem.java
===================================================================
--- 
trunk/result-spi/src/main/java/no/schibstedsok/searchportal/result/NavigationItem.java
                              (rev 0)
+++ 
trunk/result-spi/src/main/java/no/schibstedsok/searchportal/result/NavigationItem.java
      2007-06-11 14:13:59 UTC (rev 5302)
@@ -0,0 +1,22 @@
+/*
+ * NavigationItem.java
+ * 
+ * Created on 11/06/2007, 10:42:11
+ * 
+ */
+
+package no.schibstedsok.searchportal.result;
+
+/**
+ *
+ * @author mick
+ * @version $Id$
+ */
+public interface NavigationItem extends ResultList<NavigationItem>{
+    
+    boolean isSelected();
+    void setSelected(boolean selected);
+    
+    boolean isChildSelected();
+    NavigationItem getChildSelected();
+}


Property changes on: 
trunk/result-spi/src/main/java/no/schibstedsok/searchportal/result/NavigationItem.java
___________________________________________________________________
Name: svn:keywords
   + Id

Modified: 
trunk/result-spi/src/main/java/no/schibstedsok/searchportal/result/Navigator.java
===================================================================
--- 
trunk/result-spi/src/main/java/no/schibstedsok/searchportal/result/Navigator.java
   2007-06-11 12:30:43 UTC (rev 5301)
+++ 
trunk/result-spi/src/main/java/no/schibstedsok/searchportal/result/Navigator.java
   2007-06-11 14:13:59 UTC (rev 5302)
@@ -4,6 +4,7 @@
 import java.io.Serializable;
 
 /**
+ * @deprecated Geir's navigation model is the replacement.
  * @author <a href="mailto:[EMAIL PROTECTED]">Magnus Eklund</a>
  * @version <tt>$Revision: 3361 $</tt>
  */
@@ -31,7 +32,7 @@
     }
 
     /**
-     * TODO comment me. *
+     *
      */
     public Navigator(final String name, final String field, final String 
displayName, final Sort sort) {
         this.name = name;
@@ -41,69 +42,69 @@
     }
 
     /**
-     * TODO comment me. *
+     *
      */
     public Navigator() {
     }
 
     /**
-     * TODO comment me. *
+     *
      */
     public Navigator getChildNavigator() {
         return childNavigator;
     }
 
     /**
-     * TODO comment me. *
+     *
      */
     public void setChildNavigator(final Navigator childNavigator) {
         this.childNavigator = childNavigator;
     }
 
     /**
-     * TODO comment me. *
+     *
      */
     public String getName() {
         return name;
     }
 
     /**
-     * TODO comment me. *
+     *
      */
     public void setName(final String name) {
         this.name = name;
     }
 
     /**
-     * TODO comment me. *
+     *
      */
     public String toString() {
         return name;
     }
 
     /**
-     * TODO comment me. *
+     *
      */
     public String getField() {
         return field;
     }
 
     /**
-     * TODO comment me. *
+     *
      */
     public void setField(final String field) {
         this.field = field;
     }
 
     /**
-     * TODO comment me. *
+     *
      */
     public String getDisplayName() {
         return displayName;
     }
 
     /**
-     * TODO comment me. *
+     *
      */
     public void setDisplayName(final String displayName) {
         this.displayName = displayName;

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

Reply via email to