genericError constructors can accept nil error
if the error is nil, we do not populate generic error's message, but the constructor will still return a valid error Signed-off-by: Daniel, Dao Quang Minh <dqminh89@gmail.com>
This commit is contained in:
parent
4ce8d97320
commit
e22b589543
|
@ -25,26 +25,32 @@ func newGenericError(err error, c ErrorCode) Error {
|
||||||
if le, ok := err.(Error); ok {
|
if le, ok := err.(Error); ok {
|
||||||
return le
|
return le
|
||||||
}
|
}
|
||||||
return &genericError{
|
gerr := &genericError{
|
||||||
Timestamp: time.Now(),
|
Timestamp: time.Now(),
|
||||||
Err: err,
|
Err: err,
|
||||||
Message: err.Error(),
|
|
||||||
ECode: c,
|
ECode: c,
|
||||||
Stack: stacktrace.Capture(1),
|
Stack: stacktrace.Capture(1),
|
||||||
}
|
}
|
||||||
|
if err != nil {
|
||||||
|
gerr.Message = err.Error()
|
||||||
|
}
|
||||||
|
return gerr
|
||||||
}
|
}
|
||||||
|
|
||||||
func newSystemError(err error) Error {
|
func newSystemError(err error) Error {
|
||||||
if le, ok := err.(Error); ok {
|
if le, ok := err.(Error); ok {
|
||||||
return le
|
return le
|
||||||
}
|
}
|
||||||
return &genericError{
|
gerr := &genericError{
|
||||||
Timestamp: time.Now(),
|
Timestamp: time.Now(),
|
||||||
Err: err,
|
Err: err,
|
||||||
ECode: SystemError,
|
ECode: SystemError,
|
||||||
Message: err.Error(),
|
|
||||||
Stack: stacktrace.Capture(1),
|
Stack: stacktrace.Capture(1),
|
||||||
}
|
}
|
||||||
|
if err != nil {
|
||||||
|
gerr.Message = err.Error()
|
||||||
|
}
|
||||||
|
return gerr
|
||||||
}
|
}
|
||||||
|
|
||||||
type genericError struct {
|
type genericError struct {
|
||||||
|
|
Loading…
Reference in New Issue