From e8446f88b2e49ef70214c07d06afb812d3eecba1 Mon Sep 17 00:00:00 2001 From: Jessica Wang Date: Thu, 19 Aug 2010 14:28:18 -0700 Subject: [PATCH] Issue #: 5975 (1) API-side: make listDomains, ListDomainChildren return all items (2) UI-side: make domains page show all domains by specifying pageSize=-1 --- .../src/com/cloud/api/commands/ListDomainChildrenCmd.java | 8 +++++++- server/src/com/cloud/api/commands/ListDomainsCmd.java | 8 +++++++- ui/scripts/cloud.core.domains.js | 6 +++--- 3 files changed, 17 insertions(+), 5 deletions(-) diff --git a/server/src/com/cloud/api/commands/ListDomainChildrenCmd.java b/server/src/com/cloud/api/commands/ListDomainChildrenCmd.java index 3e3150f56b4..fddc1e88647 100644 --- a/server/src/com/cloud/api/commands/ListDomainChildrenCmd.java +++ b/server/src/com/cloud/api/commands/ListDomainChildrenCmd.java @@ -89,7 +89,13 @@ public class ListDomainChildrenCmd extends BaseCmd { } } - Criteria c = new Criteria("id", Boolean.TRUE, startIndex, Long.valueOf(pageSizeNum)); + //temporary solution at API level. We need a permanent solution for all "listXXXXXXX & pageSize = -1" in the future. + Criteria c; + if(pageSizeNum != -1) + c = new Criteria("id", Boolean.TRUE, startIndex, Long.valueOf(pageSizeNum)); + else + c = new Criteria("id", Boolean.TRUE, null, null); + if (keyword != null) { c.addCriteria(Criteria.KEYWORD, keyword); diff --git a/server/src/com/cloud/api/commands/ListDomainsCmd.java b/server/src/com/cloud/api/commands/ListDomainsCmd.java index 42c0576fb9c..69b281cff4a 100644 --- a/server/src/com/cloud/api/commands/ListDomainsCmd.java +++ b/server/src/com/cloud/api/commands/ListDomainsCmd.java @@ -85,7 +85,13 @@ public class ListDomainsCmd extends BaseCmd { startIndex = Long.valueOf(pageSizeNum * (pageNum-1)); } } - Criteria c = new Criteria("id", Boolean.TRUE, startIndex, Long.valueOf(pageSizeNum)); + + //temporary solution at API level. We need a permanent solution for all "listXXXXXXX & pageSize = -1" in the future. + Criteria c; + if(pageSizeNum != -1) + c = new Criteria("id", Boolean.TRUE, startIndex, Long.valueOf(pageSizeNum)); + else + c = new Criteria("id", Boolean.TRUE, null, null); if (keyword != null) { c.addCriteria(Criteria.KEYWORD, keyword); diff --git a/ui/scripts/cloud.core.domains.js b/ui/scripts/cloud.core.domains.js index 4272ff6f795..ed883aa393f 100644 --- a/ui/scripts/cloud.core.domains.js +++ b/ui/scripts/cloud.core.domains.js @@ -66,7 +66,7 @@ function showDomainsTab() { function drawTree(id, level, container) { $.ajax({ - data: "command=listDomainChildren&id="+id+"&response=json", + data: "command=listDomainChildren&id="+id+"&response=json&pageSize=-1", dataType: "json", async: false, success: function(json) { @@ -320,7 +320,7 @@ function showDomainsTab() { rightPanelSearchResult.show(); var keyword = searchInput.val(); $.ajax({ - data: "command=listDomains&keyword="+keyword+"&response=json", + data: "command=listDomains&keyword="+keyword+"&response=json&pageSize=-1", //pageSize=-1 will return all items (no limitation) dataType: "json", async: false, success: function(json) { @@ -349,7 +349,7 @@ function showDomainsTab() { function drawRootNode(rootDomainId) { treeContentBox.empty(); $.ajax({ - data: "command=listDomains&id="+rootDomainId+"&response=json", + data: "command=listDomains&id="+rootDomainId+"&response=json&pageSize=-1", //pageSize=-1 will return all items (no limitation) dataType: "json", async: false, success: function(json) {