Author: reto
Date: Thu Apr 12 09:45:17 2012
New Revision: 1325173

URL: http://svn.apache.org/viewvc?rev=1325173&view=rev
Log:
providing documents as list rather than set to allow pagination. Clarified 
comments.

Modified:
    
incubator/stanbol/branches/faceted-browsing/src/main/java/org/apache/stanbol/contenthub/faceted/ConstrainedDocumentSet.java

Modified: 
incubator/stanbol/branches/faceted-browsing/src/main/java/org/apache/stanbol/contenthub/faceted/ConstrainedDocumentSet.java
URL: 
http://svn.apache.org/viewvc/incubator/stanbol/branches/faceted-browsing/src/main/java/org/apache/stanbol/contenthub/faceted/ConstrainedDocumentSet.java?rev=1325173&r1=1325172&r2=1325173&view=diff
==============================================================================
--- 
incubator/stanbol/branches/faceted-browsing/src/main/java/org/apache/stanbol/contenthub/faceted/ConstrainedDocumentSet.java
 (original)
+++ 
incubator/stanbol/branches/faceted-browsing/src/main/java/org/apache/stanbol/contenthub/faceted/ConstrainedDocumentSet.java
 Thu Apr 12 09:45:17 2012
@@ -15,6 +15,7 @@
  */
 package org.apache.stanbol.contenthub.faceted;
 
+import java.util.List;
 import java.util.Locale;
 import java.util.Set;
 import org.apache.clerezza.rdf.core.Resource;
@@ -40,7 +41,7 @@ public interface ConstrainedDocumentSet 
                
                /**
                 * 
-                * @return the URIRef of Literal that documents matching this 
constraint have as value of this facet
+                * @return the URIRef or Literal that documents matching this 
constraint have as value of this facet
                 */
                Resource getValue();
        }
@@ -73,13 +74,23 @@ public interface ConstrainedDocumentSet 
        
        
        /**
-        * Note that this method might be implemented so that getting the size 
of
-        * the set doesn't require enumerating the documents
+        * The documents contained in this ConstrainedDocumentSet. There is no 
+        * defined order of the list, but implementations should keep the order
+        * stable as too allow stateless pagination.
+        * 
+        * Implementations may populate the list just when the respective 
+        * elements are accessed and implement size() to access optimized 
backend 
+        * functionality. Clients must thus that the list changes while they 
are 
+        * using it. For example the size returned by List.size() may not match 
+        * the actual number of elements when iterating throw it at a later 
point 
+        * in time. The iterate() as well as the subList(int,int) method
+        * are safe.
+        * 
         * 
         * @return the documents matching this ConstrainedDocumentSet
         */
        //TODO is just retuning the UriRef enough of should we rettur a 
DocumentResult or use ContentItem
-       Set<UriRef> getDocuments();
+       List<UriRef> getDocuments();
        
        /**
         * This is the breadcrumb of this ConstrainedDocumentSet


Reply via email to