This is an automated email from the ASF dual-hosted git repository.
liujun pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/dubbo-kubernetes.git
The following commit(s) were added to refs/heads/master by this push:
new af029242 add pagination support for application/instance/info ap
af029242 is described below
commit af029242e271163f4c77b8437303764213b2964d
Author: chickenlj <[email protected]>
AuthorDate: Mon Oct 21 09:43:40 2024 +0800
add pagination support for application/instance/info ap
---
pkg/admin/model/application.go | 10 ++++++++++
pkg/admin/service/application.go | 6 ++++--
2 files changed, 14 insertions(+), 2 deletions(-)
diff --git a/pkg/admin/model/application.go b/pkg/admin/model/application.go
index 24dcc198..49fbbd74 100644
--- a/pkg/admin/model/application.go
+++ b/pkg/admin/model/application.go
@@ -179,6 +179,16 @@ type ApplicationTabInstanceInfoResp struct {
WorkloadName string `json:"workloadName"`
}
+type ByApplicationInstanceName []*ApplicationTabInstanceInfoResp
+
+func (a ByApplicationInstanceName) Len() int { return len(a) }
+
+func (a ByApplicationInstanceName) Less(i, j int) bool {
+ return a[i].Name < a[j].Name
+}
+
+func (a ByApplicationInstanceName) Swap(i, j int) { a[i], a[j] = a[j], a[i] }
+
func (a *ApplicationTabInstanceInfoResp) FromDataplaneResource(dataplane
*mesh.DataplaneResource) *ApplicationTabInstanceInfoResp {
// TODO: support more fields
extensions := dataplane.Spec.Extensions
diff --git a/pkg/admin/service/application.go b/pkg/admin/service/application.go
index 7b1ae7b9..d1f0f8f3 100644
--- a/pkg/admin/service/application.go
+++ b/pkg/admin/service/application.go
@@ -66,7 +66,7 @@ func GetApplicationDetail(rt core_runtime.Runtime, req
*model.ApplicationDetailR
return respItem, nil
}
-func GetApplicationTabInstanceInfo(rt core_runtime.Runtime, req
*model.ApplicationTabInstanceInfoReq) ([]*model.ApplicationTabInstanceInfoResp,
error) {
+func GetApplicationTabInstanceInfo(rt core_runtime.Runtime, req
*model.ApplicationTabInstanceInfoReq) (*model.SearchPaginationResult, error) {
manager := rt.ResourceManager()
dataplaneList := &mesh.DataplaneResourceList{}
@@ -82,7 +82,9 @@ func GetApplicationTabInstanceInfo(rt core_runtime.Runtime,
req *model.Applicati
res = append(res, resItem)
}
- return res, nil
+ pagedRes := ToSearchPaginationResult(res,
model.ByApplicationInstanceName(res), req.PageReq)
+
+ return pagedRes, nil
}
func GetApplicationServiceFormInfo(rt core_runtime.Runtime, req
*model.ApplicationServiceFormReq) (*model.SearchPaginationResult, error) {