From d15b737723efeae4a7e0af08bcdd9e7f9fff8bd1 Mon Sep 17 00:00:00 2001 From: Olivier Lamy Date: Tue, 18 Dec 2012 17:51:54 +0000 Subject: [PATCH] [MRM-1720] make pageSize and selectedPage configurable tru the REST request. git-svn-id: https://svn.apache.org/repos/asf/archiva/trunk@1423550 13f79535-47bb-0310-9956-ffa450edef68 --- .../archiva/rest/api/model/SearchRequest.java | 31 +++++++++++++++++++ .../rest/services/DefaultSearchService.java | 3 +- 2 files changed, 33 insertions(+), 1 deletion(-) diff --git a/archiva-modules/archiva-web/archiva-rest/archiva-rest-api/src/main/java/org/apache/archiva/rest/api/model/SearchRequest.java b/archiva-modules/archiva-web/archiva-rest/archiva-rest-api/src/main/java/org/apache/archiva/rest/api/model/SearchRequest.java index da2c1ef22..209e1ccd2 100644 --- a/archiva-modules/archiva-web/archiva-rest/archiva-rest-api/src/main/java/org/apache/archiva/rest/api/model/SearchRequest.java +++ b/archiva-modules/archiva-web/archiva-rest/archiva-rest-api/src/main/java/org/apache/archiva/rest/api/model/SearchRequest.java @@ -117,6 +117,15 @@ public class SearchRequest */ private boolean includePomArtifacts = false; + /** + * @since 1.4-M4 + */ + private int pageSize = 30; + + /** + * @since 1.4-M4 + */ + private int selectedPage = 0; public SearchRequest() @@ -286,6 +295,26 @@ public class SearchRequest this.bundleRequireBundle = bundleRequireBundle; } + public int getPageSize() + { + return pageSize; + } + + public void setPageSize( int pageSize ) + { + this.pageSize = pageSize; + } + + public int getSelectedPage() + { + return selectedPage; + } + + public void setSelectedPage( int selectedPage ) + { + this.selectedPage = selectedPage; + } + @Override public String toString() { @@ -306,6 +335,8 @@ public class SearchRequest sb.append( ", bundleRequireBundle='" ).append( bundleRequireBundle ).append( '\'' ); sb.append( ", classifier='" ).append( classifier ).append( '\'' ); sb.append( ", includePomArtifacts=" ).append( includePomArtifacts ); + sb.append( ", pageSize=" ).append( pageSize ); + sb.append( ", selectedPage=" ).append( selectedPage ); sb.append( '}' ); return sb.toString(); } diff --git a/archiva-modules/archiva-web/archiva-rest/archiva-rest-services/src/main/java/org/apache/archiva/rest/services/DefaultSearchService.java b/archiva-modules/archiva-web/archiva-rest/archiva-rest-services/src/main/java/org/apache/archiva/rest/services/DefaultSearchService.java index ee2ce4cc3..2f4fc210c 100644 --- a/archiva-modules/archiva-web/archiva-rest/archiva-rest-services/src/main/java/org/apache/archiva/rest/services/DefaultSearchService.java +++ b/archiva-modules/archiva-web/archiva-rest/archiva-rest-services/src/main/java/org/apache/archiva/rest/services/DefaultSearchService.java @@ -91,7 +91,8 @@ public class DefaultSearchService { repositories = getObservableRepos(); } - SearchResultLimits limits = new SearchResultLimits( 0 ); + SearchResultLimits limits = + new SearchResultLimits( searchRequest.getPageSize(), searchRequest.getSelectedPage() ); try { SearchResults searchResults = repositorySearch.search( getPrincipal(), repositories, queryString, limits, -- 2.39.5