From b8db07db4d601bba809054041e0950a310b4de96 Mon Sep 17 00:00:00 2001 From: Yang Luo Date: Thu, 18 Jan 2024 20:59:27 +0800 Subject: [PATCH] feat: enable GetMaskedSyncers() --- controllers/syncer.go | 6 +++--- object/syncer.go | 27 ++++++++++++++++++++------- 2 files changed, 23 insertions(+), 10 deletions(-) diff --git a/controllers/syncer.go b/controllers/syncer.go index 5557664a..049d2115 100644 --- a/controllers/syncer.go +++ b/controllers/syncer.go @@ -40,7 +40,7 @@ func (c *ApiController) GetSyncers() { organization := c.Input().Get("organization") if limit == "" || page == "" { - syncers, err := object.GetOrganizationSyncers(owner, organization) + syncers, err := object.GetMaskedSyncers(object.GetOrganizationSyncers(owner, organization)) if err != nil { c.ResponseError(err.Error()) return @@ -56,7 +56,7 @@ func (c *ApiController) GetSyncers() { } paginator := pagination.SetPaginator(c.Ctx, limit, count) - syncers, err := object.GetPaginationSyncers(owner, organization, paginator.Offset(), limit, field, value, sortField, sortOrder) + syncers, err := object.GetMaskedSyncers(object.GetPaginationSyncers(owner, organization, paginator.Offset(), limit, field, value, sortField, sortOrder)) if err != nil { c.ResponseError(err.Error()) return @@ -76,7 +76,7 @@ func (c *ApiController) GetSyncers() { func (c *ApiController) GetSyncer() { id := c.Input().Get("id") - syncer, err := object.GetSyncer(id) + syncer, err := object.GetMaskedSyncer(object.GetSyncer(id)) if err != nil { c.ResponseError(err.Error()) return diff --git a/object/syncer.go b/object/syncer.go index 06104cfc..2b06ff40 100644 --- a/object/syncer.go +++ b/object/syncer.go @@ -116,22 +116,35 @@ func GetSyncer(id string) (*Syncer, error) { return getSyncer(owner, name) } -func GetMaskedSyncer(syncer *Syncer) *Syncer { +func GetMaskedSyncer(syncer *Syncer, errs ...error) (*Syncer, error) { + if len(errs) > 0 && errs[0] != nil { + return nil, errs[0] + } + if syncer == nil { - return nil + return nil, nil } if syncer.Password != "" { syncer.Password = "***" } - return syncer + return syncer, nil } -func GetMaskedSyncers(syncers []*Syncer) []*Syncer { - for _, syncer := range syncers { - syncer = GetMaskedSyncer(syncer) +func GetMaskedSyncers(syncers []*Syncer, errs ...error) ([]*Syncer, error) { + if len(errs) > 0 && errs[0] != nil { + return nil, errs[0] } - return syncers + + var err error + for _, syncer := range syncers { + syncer, err = GetMaskedSyncer(syncer) + if err != nil { + return nil, err + } + } + + return syncers, nil } func UpdateSyncer(id string, syncer *Syncer) (bool, error) {