From 7e838d61b809004c24fb1597d9663d4f5b2c7ce7 Mon Sep 17 00:00:00 2001 From: Qu Xuan Date: Wed, 18 Aug 2021 15:27:46 +0800 Subject: [PATCH] fix(region): lb resource count --- pkg/compute/models/loadbalancerawscachedlbb.go | 5 +++++ pkg/compute/models/loadbalancercachedacls.go | 5 +++++ pkg/compute/models/loadbalancercachedcertificates.go | 5 +++++ pkg/compute/models/loadbalancerhuaweicachedlbb.go | 5 +++++ pkg/compute/models/loadbalancerhuaweicachedlbbg.go | 5 +++++ pkg/compute/models/loadbalanceropenstackcachedlbb.go | 5 +++++ pkg/compute/models/loadbalanceropenstackcachedlbbg.go | 5 +++++ pkg/compute/models/loadbalancerqcloudcachedlbb.go | 5 +++++ pkg/compute/models/loadbalancerqcloudcachedlbbg.go | 5 +++++ 9 files changed, 45 insertions(+) diff --git a/pkg/compute/models/loadbalancerawscachedlbb.go b/pkg/compute/models/loadbalancerawscachedlbb.go index c6e04ff1bf..3f8e2df502 100644 --- a/pkg/compute/models/loadbalancerawscachedlbb.go +++ b/pkg/compute/models/loadbalancerawscachedlbb.go @@ -61,6 +61,11 @@ type SAwsCachedLb struct { CachedBackendGroupId string `width:"36" charset:"ascii" nullable:"true" list:"user" create:"optional"` } +func (manager *SAwsCachedLbManager) GetResourceCount() ([]db.SScopeResourceCount, error) { + virts := manager.Query().IsFalse("pending_deleted") + return db.CalculateResourceCount(virts, "tenant_id") +} + func (man *SAwsCachedLbManager) GetBackendsByLocalBackendId(backendId string) ([]SAwsCachedLb, error) { loadbalancerBackends := []SAwsCachedLb{} q := man.Query().Equals("backend_id", backendId) diff --git a/pkg/compute/models/loadbalancercachedacls.go b/pkg/compute/models/loadbalancercachedacls.go index 953cdb2489..dc29bd7c81 100644 --- a/pkg/compute/models/loadbalancercachedacls.go +++ b/pkg/compute/models/loadbalancercachedacls.go @@ -72,6 +72,11 @@ type SCachedLoadbalancerAcl struct { ListenerId string `width:"36" charset:"ascii" nullable:"true" list:"user" create:"optional"` // huawei only } +func (manager *SCachedLoadbalancerAclManager) GetResourceCount() ([]db.SScopeResourceCount, error) { + virts := manager.Query().IsFalse("pending_deleted") + return db.CalculateResourceCount(virts, "tenant_id") +} + func (lbacl *SCachedLoadbalancerAcl) AllowPerformStatus(ctx context.Context, userCred mcclient.TokenCredential, query jsonutils.JSONObject, data jsonutils.JSONObject) bool { return false } diff --git a/pkg/compute/models/loadbalancercachedcertificates.go b/pkg/compute/models/loadbalancercachedcertificates.go index 32246a7874..4b4e295434 100644 --- a/pkg/compute/models/loadbalancercachedcertificates.go +++ b/pkg/compute/models/loadbalancercachedcertificates.go @@ -71,6 +71,11 @@ type SCachedLoadbalancerCertificate struct { // CertificateId string `width:"128" charset:"ascii" nullable:"false" create:"required" index:"true" list:"user" json:"certificate_id"` // 本地证书ID } +func (manager *SCachedLoadbalancerCertificateManager) GetResourceCount() ([]db.SScopeResourceCount, error) { + virts := manager.Query().IsFalse("pending_deleted") + return db.CalculateResourceCount(virts, "tenant_id") +} + func (self *SCachedLoadbalancerCertificate) AllowPerformStatus(ctx context.Context, userCred mcclient.TokenCredential, query jsonutils.JSONObject, data jsonutils.JSONObject) bool { return false } diff --git a/pkg/compute/models/loadbalancerhuaweicachedlbb.go b/pkg/compute/models/loadbalancerhuaweicachedlbb.go index 003eedcb07..a51afa4855 100644 --- a/pkg/compute/models/loadbalancerhuaweicachedlbb.go +++ b/pkg/compute/models/loadbalancerhuaweicachedlbb.go @@ -64,6 +64,11 @@ type SHuaweiCachedLb struct { CachedBackendGroupId string `width:"36" charset:"ascii" nullable:"true" list:"user" create:"optional"` } +func (manager *SHuaweiCachedLbManager) GetResourceCount() ([]db.SScopeResourceCount, error) { + virts := manager.Query().IsFalse("pending_deleted") + return db.CalculateResourceCount(virts, "tenant_id") +} + func (man *SHuaweiCachedLbManager) GetBackendsByLocalBackendId(backendId string) ([]SHuaweiCachedLb, error) { loadbalancerBackends := []SHuaweiCachedLb{} q := man.Query().IsFalse("pending_deleted").Equals("backend_id", backendId) diff --git a/pkg/compute/models/loadbalancerhuaweicachedlbbg.go b/pkg/compute/models/loadbalancerhuaweicachedlbbg.go index 00c82699df..7f862a04c9 100644 --- a/pkg/compute/models/loadbalancerhuaweicachedlbbg.go +++ b/pkg/compute/models/loadbalancerhuaweicachedlbbg.go @@ -66,6 +66,11 @@ type SHuaweiCachedLbbg struct { ProtocolType string `width:"16" charset:"ascii" nullable:"false" list:"user" create:"required"` // 监听协议类型 } +func (manager *SHuaweiCachedLbbgManager) GetResourceCount() ([]db.SScopeResourceCount, error) { + virts := manager.Query().IsFalse("pending_deleted") + return db.CalculateResourceCount(virts, "tenant_id") +} + func (lbbg *SHuaweiCachedLbbg) GetLocalBackendGroup(ctx context.Context, userCred mcclient.TokenCredential) (*SLoadbalancerBackendGroup, error) { if len(lbbg.BackendGroupId) == 0 { return nil, fmt.Errorf("GetLocalBackendGroup no related local backendgroup") diff --git a/pkg/compute/models/loadbalanceropenstackcachedlbb.go b/pkg/compute/models/loadbalanceropenstackcachedlbb.go index 658e0eb282..b6b9275a6c 100644 --- a/pkg/compute/models/loadbalanceropenstackcachedlbb.go +++ b/pkg/compute/models/loadbalanceropenstackcachedlbb.go @@ -60,6 +60,11 @@ type SOpenstackCachedLb struct { CachedBackendGroupId string `width:"36" charset:"ascii" nullable:"true" list:"user" create:"optional"` } +func (manager *SOpenstackCachedLbManager) GetResourceCount() ([]db.SScopeResourceCount, error) { + virts := manager.Query().IsFalse("pending_deleted") + return db.CalculateResourceCount(virts, "tenant_id") +} + func (man *SOpenstackCachedLbManager) GetBackendsByLocalBackendId(backendId string) ([]SOpenstackCachedLb, error) { loadbalancerBackends := []SOpenstackCachedLb{} q := man.Query().IsFalse("pending_deleted").Equals("backend_id", backendId) diff --git a/pkg/compute/models/loadbalanceropenstackcachedlbbg.go b/pkg/compute/models/loadbalanceropenstackcachedlbbg.go index 5114913dfb..db563290e5 100644 --- a/pkg/compute/models/loadbalanceropenstackcachedlbbg.go +++ b/pkg/compute/models/loadbalanceropenstackcachedlbbg.go @@ -66,6 +66,11 @@ type SOpenstackCachedLbbg struct { ProtocolType string `width:"16" charset:"ascii" nullable:"false" list:"user" create:"required"` // 监听协议类型 } +func (manager *SOpenstackCachedLbbgManager) GetResourceCount() ([]db.SScopeResourceCount, error) { + virts := manager.Query().IsFalse("pending_deleted") + return db.CalculateResourceCount(virts, "tenant_id") +} + func (lbbg *SOpenstackCachedLbbg) GetLocalBackendGroup(ctx context.Context, userCred mcclient.TokenCredential) (*SLoadbalancerBackendGroup, error) { if len(lbbg.BackendGroupId) == 0 { return nil, fmt.Errorf("GetLocalBackendGroup no related local backendgroup") diff --git a/pkg/compute/models/loadbalancerqcloudcachedlbb.go b/pkg/compute/models/loadbalancerqcloudcachedlbb.go index af415caabd..7bd64694eb 100644 --- a/pkg/compute/models/loadbalancerqcloudcachedlbb.go +++ b/pkg/compute/models/loadbalancerqcloudcachedlbb.go @@ -62,6 +62,11 @@ type SQcloudCachedLb struct { CachedBackendGroupId string `width:"36" charset:"ascii" nullable:"true" list:"user" create:"optional"` } +func (manager *SQcloudCachedLbManager) GetResourceCount() ([]db.SScopeResourceCount, error) { + virts := manager.Query().IsFalse("pending_deleted") + return db.CalculateResourceCount(virts, "tenant_id") +} + func (lbb *SQcloudCachedLb) GetCustomizeColumns(context.Context, mcclient.TokenCredential, jsonutils.JSONObject) *jsonutils.JSONDict { return nil } diff --git a/pkg/compute/models/loadbalancerqcloudcachedlbbg.go b/pkg/compute/models/loadbalancerqcloudcachedlbbg.go index ea98d77d44..781eb52812 100644 --- a/pkg/compute/models/loadbalancerqcloudcachedlbbg.go +++ b/pkg/compute/models/loadbalancerqcloudcachedlbbg.go @@ -66,6 +66,11 @@ type SQcloudCachedLbbg struct { AssociatedType string `width:"36" charset:"ascii" nullable:"true" list:"user" create:"optional"` // 关联类型, listener || rule } +func (manager *SQcloudCachedLbbgManager) GetResourceCount() ([]db.SScopeResourceCount, error) { + virts := manager.Query().IsFalse("pending_deleted") + return db.CalculateResourceCount(virts, "tenant_id") +} + func (lbb *SQcloudCachedLbbg) GetCustomizeColumns(context.Context, mcclient.TokenCredential, jsonutils.JSONObject) *jsonutils.JSONDict { return nil }