login_source.go 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. package errors
  2. import "fmt"
  3. type LoginSourceNotExist struct {
  4. ID int64
  5. }
  6. func IsLoginSourceNotExist(err error) bool {
  7. _, ok := err.(LoginSourceNotExist)
  8. return ok
  9. }
  10. func (err LoginSourceNotExist) Error() string {
  11. return fmt.Sprintf("login source does not exist [id: %d]", err.ID)
  12. }
  13. type LoginSourceNotActivated struct {
  14. SourceID int64
  15. }
  16. func IsLoginSourceNotActivated(err error) bool {
  17. _, ok := err.(LoginSourceNotActivated)
  18. return ok
  19. }
  20. func (err LoginSourceNotActivated) Error() string {
  21. return fmt.Sprintf("login source is not activated [source_id: %d]", err.SourceID)
  22. }
  23. type InvalidLoginSourceType struct {
  24. Type interface{}
  25. }
  26. func IsInvalidLoginSourceType(err error) bool {
  27. _, ok := err.(InvalidLoginSourceType)
  28. return ok
  29. }
  30. func (err InvalidLoginSourceType) Error() string {
  31. return fmt.Sprintf("invalid login source type [type: %v]", err.Type)
  32. }
  33. type LoginSourceMismatch struct {
  34. Expect int64
  35. Actual int64
  36. }
  37. func IsLoginSourceMismatch(err error) bool {
  38. _, ok := err.(LoginSourceMismatch)
  39. return ok
  40. }
  41. func (err LoginSourceMismatch) Error() string {
  42. return fmt.Sprintf("login source mismatch [expect: %d, actual: %d]", err.Expect, err.Actual)
  43. }