1
1
mirror of https://github.com/go-gitea/gitea synced 2025-07-22 18:28:37 +00:00

Remove NewSession method from db.Engine interface (#17577)

* Remove NewSession method from db.Engine interface

* Fix bug

* Some improvements

* Fix bug

* Fix test

* Use XXXBean instead of XXXExample
This commit is contained in:
Lunny Xiao
2021-11-21 23:41:00 +08:00
committed by GitHub
parent 0add627182
commit d710af6669
44 changed files with 600 additions and 620 deletions

View File

@@ -118,11 +118,12 @@ func deleteRepositoryTransfer(e db.Engine, repoID int64) error {
// CancelRepositoryTransfer marks the repository as ready and remove pending transfer entry,
// thus cancel the transfer process.
func CancelRepositoryTransfer(repo *Repository) error {
sess := db.NewSession(db.DefaultContext)
defer sess.Close()
if err := sess.Begin(); err != nil {
ctx, committer, err := db.TxContext()
if err != nil {
return err
}
defer committer.Close()
sess := db.GetEngine(ctx)
repo.Status = RepositoryReady
if err := updateRepositoryCols(sess, repo, "status"); err != nil {
@@ -133,7 +134,7 @@ func CancelRepositoryTransfer(repo *Repository) error {
return err
}
return sess.Commit()
return committer.Commit()
}
// TestRepositoryReadyForTransfer make sure repo is ready to transfer
@@ -150,11 +151,12 @@ func TestRepositoryReadyForTransfer(status RepositoryStatus) error {
// CreatePendingRepositoryTransfer transfer a repo from one owner to a new one.
// it marks the repository transfer as "pending"
func CreatePendingRepositoryTransfer(doer, newOwner *User, repoID int64, teams []*Team) error {
sess := db.NewSession(db.DefaultContext)
defer sess.Close()
if err := sess.Begin(); err != nil {
ctx, committer, err := db.TxContext()
if err != nil {
return err
}
defer committer.Close()
sess := db.GetEngine(ctx)
repo, err := getRepositoryByID(sess, repoID)
if err != nil {
@@ -191,11 +193,11 @@ func CreatePendingRepositoryTransfer(doer, newOwner *User, repoID int64, teams [
transfer.TeamIDs = append(transfer.TeamIDs, teams[k].ID)
}
if _, err := sess.Insert(transfer); err != nil {
if err := db.Insert(ctx, transfer); err != nil {
return err
}
return sess.Commit()
return committer.Commit()
}
// TransferOwnership transfers all corresponding repository items from old user to new one.
@@ -232,11 +234,13 @@ func TransferOwnership(doer *User, newOwnerName string, repo *Repository) (err e
}
}()
sess := db.NewSession(db.DefaultContext)
defer sess.Close()
if err := sess.Begin(); err != nil {
return fmt.Errorf("sess.Begin: %v", err)
ctx, committer, err := db.TxContext()
if err != nil {
return err
}
defer committer.Close()
sess := db.GetEngine(ctx)
newOwner, err := getUserByName(sess, newOwnerName)
if err != nil {
@@ -408,5 +412,5 @@ func TransferOwnership(doer *User, newOwnerName string, repo *Repository) (err e
return fmt.Errorf("newRepoRedirect: %v", err)
}
return sess.Commit()
return committer.Commit()
}