center.go 462 B

12345678910111213141516171819202122232425262728293031
  1. package fserr
  2. import (
  3. "net/http"
  4. "sync"
  5. )
  6. var codeMap sync.Map
  7. var defaultErrCode = ErrCode{
  8. HttpCode: http.StatusOK,
  9. }
  10. func register(business int, code ErrCode) {
  11. _, ok := codeMap.Load(business)
  12. if ok {
  13. panic("duplicate business code")
  14. }
  15. codeMap.Store(business, code)
  16. }
  17. func getCode(business int) ErrCode {
  18. code, ok := codeMap.Load(business)
  19. if ok {
  20. return code.(ErrCode)
  21. }
  22. ret := defaultErrCode
  23. ret.BusinessCode = business
  24. return ret
  25. }