苏州瑞玛APS项目web后台
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

36 lines
743 B

  1. package container
  2. import (
  3. "errors"
  4. "fmt"
  5. "github.com/go-xorm/xorm"
  6. )
  7. type DefaultTransactionHandler struct {
  8. // 会话
  9. session *xorm.Session
  10. }
  11. func NewDefaultTransactionHandler(session *xorm.Session) (*DefaultTransactionHandler, error) {
  12. if session == nil {
  13. return nil, errors.New(fmt.Sprintf("会话不能为空!"))
  14. }
  15. return &DefaultTransactionHandler{session}, nil
  16. }
  17. func (handler DefaultTransactionHandler) Close() {
  18. handler.session.Close()
  19. }
  20. func (handler DefaultTransactionHandler) Begin() error {
  21. return handler.session.Begin()
  22. }
  23. func (handler DefaultTransactionHandler) Commit() error {
  24. return handler.session.Commit()
  25. }
  26. func (handler DefaultTransactionHandler) Session() *xorm.Session {
  27. return handler.session
  28. }