From c15c795fed9caeba95808f75649cbf0d84eeeccf Mon Sep 17 00:00:00 2001 From: Pearl Dsilva Date: Thu, 22 Jul 2021 09:00:49 +0530 Subject: [PATCH 1/2] api: Fix pagination for list PublicIPAddresses --- .../main/java/com/cloud/server/ManagementServerImpl.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/server/src/main/java/com/cloud/server/ManagementServerImpl.java b/server/src/main/java/com/cloud/server/ManagementServerImpl.java index 65204e823359..3b908d534dcb 100644 --- a/server/src/main/java/com/cloud/server/ManagementServerImpl.java +++ b/server/src/main/java/com/cloud/server/ManagementServerImpl.java @@ -2111,7 +2111,7 @@ public Pair, Integer> searchForIPAddresses(final ListP } } - final Filter searchFilter = new Filter(IPAddressVO.class, "address", false, cmd.getStartIndex(), cmd.getPageSizeVal()); + final Filter searchFilter = new Filter(IPAddressVO.class, "address", false, null, null); final SearchBuilder sb = _publicIpAddressDao.createSearchBuilder(); Long domainId = null; Boolean isRecursive = null; @@ -2197,7 +2197,11 @@ public Pair, Integer> searchForIPAddresses(final ListP sc2.setParameters("ids", freeAddrIds.toArray()); addrs.addAll(_publicIpAddressDao.search(sc2, searchFilter)); // Allocated + Free } - + List wPagination = com.cloud.utils.StringUtils.applyPagination(addrs, cmd.getStartIndex(), cmd.getPageSizeVal()); + if (wPagination != null) { + Pair, Integer> listWPagination = new Pair, Integer>(wPagination, addrs.size()); + return listWPagination; + } return new Pair<>(addrs, addrs.size()); } From f90c46e6744c198c5e06ea13f9bfea7849eb14f1 Mon Sep 17 00:00:00 2001 From: Pearl Dsilva Date: Thu, 22 Jul 2021 14:05:53 +0530 Subject: [PATCH 2/2] refactor based on comment --- .../src/main/java/com/cloud/server/ManagementServerImpl.java | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/server/src/main/java/com/cloud/server/ManagementServerImpl.java b/server/src/main/java/com/cloud/server/ManagementServerImpl.java index 3b908d534dcb..bec025f06851 100644 --- a/server/src/main/java/com/cloud/server/ManagementServerImpl.java +++ b/server/src/main/java/com/cloud/server/ManagementServerImpl.java @@ -2199,8 +2199,7 @@ public Pair, Integer> searchForIPAddresses(final ListP } List wPagination = com.cloud.utils.StringUtils.applyPagination(addrs, cmd.getStartIndex(), cmd.getPageSizeVal()); if (wPagination != null) { - Pair, Integer> listWPagination = new Pair, Integer>(wPagination, addrs.size()); - return listWPagination; + return new Pair, Integer>(wPagination, addrs.size()); } return new Pair<>(addrs, addrs.size()); }