package gatecode

// ErrCode 表示错误码
type ErrCode int

//go:generate stringer -type ErrCode -linecomment

// 定义错误码 *代码后错误注释,即返回用户的错误信息
const (
	// GLOBAL_ERR_NIL 常用全局异常定义
	GLOBAL_ERR_NIL            ErrCode = 1000 + iota // global OK
	GLOBAL_ERR_INVALID_PARAMS                       // 无效参数
	GLOBAL_ERR_TIMEOUT                              // 超时
	GLOBAL_ERR_UNDEFINED                            // 未知异常
	GLOBAL_ERR_NOPOWER                              // 没有权限

	// GATEWAY_ERR_NIL 代理网关错误定义
	GATEWAY_ERR_NIL          ErrCode = 2000 + iota // gateway ok
	GATEWAY_MODULE_UNDEFINED                       // 未找到服务
	GATEWAY_ROUTER_NOTFIND                         // 未注册路由地址
	GATEWAY_ROUTER_UPHOLD                          // 接口维护中
	GATEWAY_REGISTED_URL_ERR                       // 服务地址异常

	// SERVER_ERR_NIL 服务接口错误定义
	SERVER_ERR_NIL        ErrCode = 3000 + iota // server ok
	SERVER_DETAIL_TIMEOUT                       // 接口超时

	// OTHER_ERR_NIL 未捕获的异常
	OTHER_ERR_NIL       ErrCode = 4000 + iota // server ok
	OTHER_ERR_UNDEFINED                       // 未知异常

)
