[mb-commits] r13644 - in search_server/trunk/servlet/src: main/java/org/musicbrainz/search/servlet main/java/org/musicbrainz/search/servlet/mmd2 test/java/org/musicbrainz/search/servlet

[email protected] Thu, 28 Feb 2013 11:38:36 +0000
Newsgroups gmane.comp.audio.musicbrainz.cvs
Message-ID <E1UB1oq-0001eN-OS@wiley>
Author: ijabz
Date: 2013-02-28 11:38:34 +0000 (Thu, 28 Feb 2013)
New Revision: 13644

Modified:
   search_server/trunk/servlet/src/main/java/org/musicbrainz/search/servlet/SearchServerServlet.java
   search_server/trunk/servlet/src/main/java/org/musicbrainz/search/servlet/mmd2/AllWriter.java
   search_server/trunk/servlet/src/test/java/org/musicbrainz/search/servlet/SearchAll2Test.java
Log:
SEARCH-77:Have searchall respect limit parameter

Modified: search_server/trunk/servlet/src/main/java/org/musicbrainz/search/servlet/SearchServerServlet.java
===================================================================
--- search_server/trunk/servlet/src/main/java/org/musicbrainz/search/servlet/SearchServerServlet.java	2013-02-28 11:15:21 UTC (rev 13643)
+++ search_server/trunk/servlet/src/main/java/org/musicbrainz/search/servlet/SearchServerServlet.java	2013-02-28 11:38:34 UTC (rev 13644)
@@ -689,7 +689,7 @@
         Results recordingResults = results.get(4).get();
         Results workResults = results.get(5).get();
 
-        AllWriter writer = new AllWriter(artistResults, releaseResults, releaseGroupResults, labelResults,
+        AllWriter writer = new AllWriter(0, 10, artistResults, releaseResults, releaseGroupResults, labelResults,
                 recordingResults, workResults);
         response.setCharacterEncoding(CHARSET);
 

Modified: search_server/trunk/servlet/src/main/java/org/musicbrainz/search/servlet/mmd2/AllWriter.java
===================================================================
--- search_server/trunk/servlet/src/main/java/org/musicbrainz/search/servlet/mmd2/AllWriter.java	2013-02-28 11:15:21 UTC (rev 13643)
+++ search_server/trunk/servlet/src/main/java/org/musicbrainz/search/servlet/mmd2/AllWriter.java	2013-02-28 11:38:34 UTC (rev 13644)
@@ -18,19 +18,25 @@
  */
 public class AllWriter extends ResultsWriter {
 
-    Results artistResults;
-    Results releaseResults;
-    Results releaseGroupResults;
-    Results labelResults;
-    Results recordingResults;
-    Results workResults;
+    private int     limit;
+    private int     offset;
+    private Results artistResults;
+    private Results releaseResults;
+    private Results releaseGroupResults;
+    private Results labelResults;
+    private Results recordingResults;
+    private Results workResults;
 
-    public AllWriter(Results artistResults,
+    public AllWriter(int offset,
+                     int limit,
+                     Results artistResults,
                      Results releaseResults,
                      Results releaseGroupResults,
                      Results labelResults,
                      Results recordingResults,
                      Results workResults) {
+        this.offset =offset;
+        this.limit=limit;
         this.artistResults=artistResults;
         this.releaseResults=releaseResults;
         this.releaseGroupResults=releaseGroupResults;
@@ -89,6 +95,11 @@
         RecordingWriter recordingWriter = new RecordingWriter();
         WorkWriter workWriter = new WorkWriter();
 
+        //Limit results returned to the limit
+        if(allResults.size()>limit)
+        {
+            allResults = allResults.subList(0,limit);
+        }
         //Now use the correct writer to write the result
         for(Result result:allResults)
         {

Modified: search_server/trunk/servlet/src/test/java/org/musicbrainz/search/servlet/SearchAll2Test.java
===================================================================
--- search_server/trunk/servlet/src/test/java/org/musicbrainz/search/servlet/SearchAll2Test.java	2013-02-28 11:15:21 UTC (rev 13643)
+++ search_server/trunk/servlet/src/test/java/org/musicbrainz/search/servlet/SearchAll2Test.java	2013-02-28 11:38:34 UTC (rev 13644)
@@ -261,7 +261,7 @@
 
 
 
-        AllWriter writer = new AllWriter(artistResults, releaseResults, releaseGroupResults, labelResults,
+        AllWriter writer = new AllWriter(0, 10, artistResults, releaseResults, releaseGroupResults, labelResults,
                 recordingResults, workResults);
         StringWriter sw = new StringWriter();
         PrintWriter pr = new PrintWriter(sw);
@@ -303,7 +303,7 @@
 
 
 
-        AllWriter writer = new AllWriter(artistResults, releaseResults, releaseGroupResults, labelResults,
+        AllWriter writer = new AllWriter(0, 10, artistResults, releaseResults, releaseGroupResults, labelResults,
                 recordingResults, workResults);
         StringWriter sw = new StringWriter();
         PrintWriter pr = new PrintWriter(sw);