Skip to content

Commit 397d2ac

Browse files
authored
Move deletebeans into models/db (#18781)
1 parent bd71245 commit 397d2ac

File tree

4 files changed

+15
-16
lines changed

4 files changed

+15
-16
lines changed

models/db/context.go

+11
Original file line numberDiff line numberDiff line change
@@ -148,6 +148,17 @@ func DeleteByBean(ctx context.Context, bean interface{}) (int64, error) {
148148
return GetEngine(ctx).Delete(bean)
149149
}
150150

151+
// DeleteBeans deletes all given beans, beans should contain delete conditions.
152+
func DeleteBeans(ctx context.Context, beans ...interface{}) (err error) {
153+
e := GetEngine(ctx)
154+
for i := range beans {
155+
if _, err = e.Delete(beans[i]); err != nil {
156+
return err
157+
}
158+
}
159+
return nil
160+
}
161+
151162
// CountByBean counts the number of database records according non-empty fields of the bean as conditions.
152163
func CountByBean(ctx context.Context, bean interface{}) (int64, error) {
153164
return GetEngine(ctx).Count(bean)

models/org.go

+2-4
Original file line numberDiff line numberDiff line change
@@ -331,9 +331,7 @@ func DeleteOrganization(ctx context.Context, org *Organization) error {
331331
return fmt.Errorf("%s is a user not an organization", org.Name)
332332
}
333333

334-
e := db.GetEngine(ctx)
335-
336-
if err := deleteBeans(e,
334+
if err := db.DeleteBeans(ctx,
337335
&Team{OrgID: org.ID},
338336
&OrgUser{OrgID: org.ID},
339337
&TeamUser{OrgID: org.ID},
@@ -342,7 +340,7 @@ func DeleteOrganization(ctx context.Context, org *Organization) error {
342340
return fmt.Errorf("deleteBeans: %v", err)
343341
}
344342

345-
if _, err := e.ID(org.ID).Delete(new(user_model.User)); err != nil {
343+
if _, err := db.GetEngine(ctx).ID(org.ID).Delete(new(user_model.User)); err != nil {
346344
return fmt.Errorf("Delete: %v", err)
347345
}
348346

models/repo.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -765,7 +765,7 @@ func DeleteRepository(doer *user_model.User, uid, repoID int64) error {
765765
return err
766766
}
767767

768-
if err := deleteBeans(sess,
768+
if err := db.DeleteBeans(ctx,
769769
&Access{RepoID: repo.ID},
770770
&Action{RepoID: repo.ID},
771771
&Collaboration{RepoID: repoID},

models/user.go

+1-11
Original file line numberDiff line numberDiff line change
@@ -29,16 +29,6 @@ func GetOrganizationCount(ctx context.Context, u *user_model.User) (int64, error
2929
Count(new(OrgUser))
3030
}
3131

32-
// deleteBeans deletes all given beans, beans should contain delete conditions.
33-
func deleteBeans(e db.Engine, beans ...interface{}) (err error) {
34-
for i := range beans {
35-
if _, err = e.Delete(beans[i]); err != nil {
36-
return err
37-
}
38-
}
39-
return nil
40-
}
41-
4232
// DeleteUser deletes models associated to an user.
4333
func DeleteUser(ctx context.Context, u *user_model.User) (err error) {
4434
e := db.GetEngine(ctx)
@@ -82,7 +72,7 @@ func DeleteUser(ctx context.Context, u *user_model.User) (err error) {
8272
}
8373
// ***** END: Follow *****
8474

85-
if err = deleteBeans(e,
75+
if err = db.DeleteBeans(ctx,
8676
&AccessToken{UID: u.ID},
8777
&Collaboration{UserID: u.ID},
8878
&Access{UserID: u.ID},

0 commit comments

Comments
 (0)