添加文件: errors.go
This commit is contained in:
parent
f00a93afae
commit
84fac4ce78
|
|
@ -0,0 +1,41 @@
|
|||
package xyshanghai
|
||||
|
||||
import "fmt"
|
||||
|
||||
// ErrorCode 定义错误码类型
|
||||
type ErrorCode int
|
||||
|
||||
const (
|
||||
// ErrCodeSuccess 成功
|
||||
ErrCodeSuccess ErrorCode = 0
|
||||
// ErrCodeFailure 失败
|
||||
ErrCodeFailure ErrorCode = -1
|
||||
)
|
||||
|
||||
// SDKError 自定义SDK错误
|
||||
type SDKError struct {
|
||||
Code ErrorCode
|
||||
Message string
|
||||
Err error
|
||||
}
|
||||
|
||||
func (e *SDKError) Error() string {
|
||||
if e.Err != nil {
|
||||
return fmt.Sprintf("code=%d, message=%s, err=%v", e.Code, e.Message, e.Err)
|
||||
}
|
||||
return fmt.Sprintf("code=%d, message=%s", e.Code, e.Message)
|
||||
}
|
||||
|
||||
// Unwrap 返回内部错误
|
||||
func (e *SDKError) Unwrap() error {
|
||||
return e.Err
|
||||
}
|
||||
|
||||
// NewSDKError 创建SDK错误
|
||||
func NewSDKError(code ErrorCode, message string, err error) *SDKError {
|
||||
return &SDKError{
|
||||
Code: code,
|
||||
Message: message,
|
||||
Err: err,
|
||||
}
|
||||
}
|
||||
Loading…
Reference in New Issue