Skip to content

Commit 85251dc

Browse files
authored
refactor: accountAPI related error handling in Account package (#2016)
1 parent dc70be2 commit 85251dc

File tree

14 files changed

+974
-222
lines changed

14 files changed

+974
-222
lines changed

pkg/account/api/account.go

Lines changed: 19 additions & 102 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ import (
2929
"github.com/bucketeer-io/bucketeer/pkg/account/command"
3030
"github.com/bucketeer-io/bucketeer/pkg/account/domain"
3131
v2as "github.com/bucketeer-io/bucketeer/pkg/account/storage/v2"
32+
"github.com/bucketeer-io/bucketeer/pkg/api/api"
3233
domainauditlog "github.com/bucketeer-io/bucketeer/pkg/auditlog/domain"
3334
domainevent "github.com/bucketeer-io/bucketeer/pkg/domainevent/domain"
3435
"github.com/bucketeer-io/bucketeer/pkg/locale"
@@ -134,14 +135,7 @@ func (s *AccountService) CreateAccountV2(
134135
zap.Strings("tags", req.Command.Tags),
135136
)...,
136137
)
137-
dt, err := statusInternal.WithDetails(&errdetails.LocalizedMessage{
138-
Locale: localizer.GetLocale(),
139-
Message: localizer.MustLocalize(locale.InternalServerError),
140-
})
141-
if err != nil {
142-
return nil, statusInternal.Err()
143-
}
144-
return nil, dt.Err()
138+
return nil, api.NewGRPCStatus(err).Err()
145139
}
146140
// Upsert tags
147141
for _, envRole := range req.Command.EnvironmentRoles {
@@ -156,7 +150,7 @@ func (s *AccountService) CreateAccountV2(
156150
zap.Strings("tags", req.Command.Tags),
157151
)...,
158152
)
159-
return nil, statusInternal.Err()
153+
return nil, api.NewGRPCStatus(err).Err()
160154
}
161155
}
162156
return &accountproto.CreateAccountV2Response{Account: account.AccountV2}, nil
@@ -262,14 +256,7 @@ func (s *AccountService) createAccountV2NoCommand(
262256
zap.String("email", req.Email),
263257
)...,
264258
)
265-
dt, err := statusInternal.WithDetails(&errdetails.LocalizedMessage{
266-
Locale: localizer.GetLocale(),
267-
Message: localizer.MustLocalize(locale.InternalServerError),
268-
})
269-
if err != nil {
270-
return nil, statusInternal.Err()
271-
}
272-
return nil, dt.Err()
259+
return nil, api.NewGRPCStatus(err).Err()
273260
}
274261

275262
if err = s.publisher.Publish(ctx, createAccountEvent); err != nil {
@@ -296,7 +283,7 @@ func (s *AccountService) createAccountV2NoCommand(
296283
zap.Any("tags", req.Tags),
297284
)...,
298285
)
299-
return nil, statusInternal.Err()
286+
return nil, api.NewGRPCStatus(err).Err()
300287
}
301288
}
302289

@@ -310,7 +297,7 @@ func (s *AccountService) createAccountV2NoCommand(
310297
zap.Any("teams", req.Teams),
311298
)...,
312299
)
313-
return nil, statusInternal.Err()
300+
return nil, api.NewGRPCStatus(err).Err()
314301
}
315302
return &accountproto.CreateAccountV2Response{Account: account.AccountV2}, nil
316303
}
@@ -511,14 +498,7 @@ func (s *AccountService) UpdateAccountV2(
511498
zap.String("email", req.Email),
512499
)...,
513500
)
514-
dt, err := statusInternal.WithDetails(&errdetails.LocalizedMessage{
515-
Locale: localizer.GetLocale(),
516-
Message: localizer.MustLocalize(locale.InternalServerError),
517-
})
518-
if err != nil {
519-
return nil, statusInternal.Err()
520-
}
521-
return nil, dt.Err()
501+
return nil, api.NewGRPCStatus(err).Err()
522502
}
523503
// Upsert tags
524504
if req.ChangeTagsCommand != nil {
@@ -534,7 +514,7 @@ func (s *AccountService) UpdateAccountV2(
534514
zap.Strings("tags", req.ChangeTagsCommand.Tags),
535515
)...,
536516
)
537-
return nil, statusInternal.Err()
517+
return nil, api.NewGRPCStatus(err).Err()
538518
}
539519
}
540520
}
@@ -609,14 +589,7 @@ func (s *AccountService) updateAccountV2NoCommand(
609589
zap.String("email", req.Email),
610590
)...,
611591
)
612-
dt, err := statusInternal.WithDetails(&errdetails.LocalizedMessage{
613-
Locale: localizer.GetLocale(),
614-
Message: localizer.MustLocalize(locale.InternalServerError),
615-
})
616-
if err != nil {
617-
return nil, statusInternal.Err()
618-
}
619-
return nil, dt.Err()
592+
return nil, api.NewGRPCStatus(err).Err()
620593
}
621594
// Upsert tags
622595
if req.Tags != nil {
@@ -635,7 +608,7 @@ func (s *AccountService) updateAccountV2NoCommand(
635608
zap.Any("tags", req.Tags),
636609
)...,
637610
)
638-
return nil, statusInternal.Err()
611+
return nil, api.NewGRPCStatus(err).Err()
639612
}
640613
}
641614
}
@@ -650,7 +623,7 @@ func (s *AccountService) updateAccountV2NoCommand(
650623
zap.Any("teams", updatedAccountPb.Teams),
651624
)...,
652625
)
653-
return nil, statusInternal.Err()
626+
return nil, api.NewGRPCStatus(err).Err()
654627
}
655628
}
656629
return &accountproto.UpdateAccountV2Response{
@@ -767,14 +740,7 @@ func (s *AccountService) EnableAccountV2(
767740
zap.String("email", req.Email),
768741
)...,
769742
)
770-
dt, err := statusInternal.WithDetails(&errdetails.LocalizedMessage{
771-
Locale: localizer.GetLocale(),
772-
Message: localizer.MustLocalize(locale.InternalServerError),
773-
})
774-
if err != nil {
775-
return nil, statusInternal.Err()
776-
}
777-
return nil, dt.Err()
743+
return nil, api.NewGRPCStatus(err).Err()
778744
}
779745
return &accountproto.EnableAccountV2Response{
780746
Account: accountV2Pb,
@@ -842,14 +808,7 @@ func (s *AccountService) DisableAccountV2(
842808
zap.String("email", req.Email),
843809
)...,
844810
)
845-
dt, err := statusInternal.WithDetails(&errdetails.LocalizedMessage{
846-
Locale: localizer.GetLocale(),
847-
Message: localizer.MustLocalize(locale.InternalServerError),
848-
})
849-
if err != nil {
850-
return nil, statusInternal.Err()
851-
}
852-
return nil, dt.Err()
811+
return nil, api.NewGRPCStatus(err).Err()
853812
}
854813
return &accountproto.DisableAccountV2Response{
855814
Account: accountV2Pb,
@@ -1030,14 +989,7 @@ func (s *AccountService) DeleteAccountV2(
1030989
zap.String("email", req.Email),
1031990
)...,
1032991
)
1033-
dt, err := statusInternal.WithDetails(&errdetails.LocalizedMessage{
1034-
Locale: localizer.GetLocale(),
1035-
Message: localizer.MustLocalize(locale.InternalServerError),
1036-
})
1037-
if err != nil {
1038-
return nil, statusInternal.Err()
1039-
}
1040-
return nil, dt.Err()
992+
return nil, api.NewGRPCStatus(err).Err()
1041993
}
1042994
return &accountproto.DeleteAccountV2Response{}, nil
1043995
}
@@ -1099,14 +1051,7 @@ func (s *AccountService) getAccountV2(
10991051
zap.String("email", email),
11001052
)...,
11011053
)
1102-
dt, err := statusInternal.WithDetails(&errdetails.LocalizedMessage{
1103-
Locale: localizer.GetLocale(),
1104-
Message: localizer.MustLocalize(locale.InternalServerError),
1105-
})
1106-
if err != nil {
1107-
return nil, statusInternal.Err()
1108-
}
1109-
return nil, dt.Err()
1054+
return nil, api.NewGRPCStatus(err).Err()
11101055
}
11111056
return account, nil
11121057
}
@@ -1168,14 +1113,7 @@ func (s *AccountService) getAccountV2ByEnvironmentID(
11681113
zap.String("email", email),
11691114
)...,
11701115
)
1171-
dt, err := statusInternal.WithDetails(&errdetails.LocalizedMessage{
1172-
Locale: localizer.GetLocale(),
1173-
Message: localizer.MustLocalize(locale.InternalServerError),
1174-
})
1175-
if err != nil {
1176-
return nil, statusInternal.Err()
1177-
}
1178-
return nil, dt.Err()
1116+
return nil, api.NewGRPCStatus(err).Err()
11791117
}
11801118
return account, nil
11811119
}
@@ -1275,14 +1213,7 @@ func (s *AccountService) ListAccountsV2(
12751213
"Failed to marshal environment role",
12761214
log.FieldsFromIncomingContext(ctx).AddFields(zap.Error(err))...,
12771215
)
1278-
dt, err := statusInternal.WithDetails(&errdetails.LocalizedMessage{
1279-
Locale: localizer.GetLocale(),
1280-
Message: localizer.MustLocalize(locale.InternalServerError),
1281-
})
1282-
if err != nil {
1283-
return nil, statusInternal.Err()
1284-
}
1285-
return nil, dt.Err()
1216+
return nil, api.NewGRPCStatus(err).Err()
12861217
}
12871218
values = append(values, string(jsonValues))
12881219

@@ -1308,14 +1239,7 @@ func (s *AccountService) ListAccountsV2(
13081239
"Failed to marshal environment role",
13091240
log.FieldsFromIncomingContext(ctx).AddFields(zap.Error(err))...,
13101241
)
1311-
dt, err := statusInternal.WithDetails(&errdetails.LocalizedMessage{
1312-
Locale: localizer.GetLocale(),
1313-
Message: localizer.MustLocalize(locale.InternalServerError),
1314-
})
1315-
if err != nil {
1316-
return nil, statusInternal.Err()
1317-
}
1318-
return nil, dt.Err()
1242+
return nil, api.NewGRPCStatus(err).Err()
13191243
}
13201244
orWhereParts = append(orWhereParts, &mysql.JSONFilter{
13211245
Column: "environment_roles",
@@ -1383,14 +1307,7 @@ func (s *AccountService) ListAccountsV2(
13831307
zap.String("organizationID", req.OrganizationId),
13841308
)...,
13851309
)
1386-
dt, err := statusInternal.WithDetails(&errdetails.LocalizedMessage{
1387-
Locale: localizer.GetLocale(),
1388-
Message: localizer.MustLocalize(locale.InternalServerError),
1389-
})
1390-
if err != nil {
1391-
return nil, statusInternal.Err()
1392-
}
1393-
return nil, dt.Err()
1310+
return nil, api.NewGRPCStatus(err).Err()
13941311
}
13951312
return &accountproto.ListAccountsV2Response{
13961313
Accounts: accounts,

0 commit comments

Comments
 (0)