MCPcopy Create free account
hub / github.com/baidu/EasyFaaS / NewGenericException

Function NewGenericException

pkg/error/error.go:254–291  ·  view source on GitHub ↗

NewGenericException xxx

(err BasicError, lasterr error)

Source from the content-addressed store, hash-verified

252
253// NewGenericException xxx
254func NewGenericException(err BasicError, lasterr error) FinalError {
255
256 var returnerr FinalError
257
258 if err.Status >= http.StatusBadRequest && err.Status < http.StatusInternalServerError {
259 err.Type = "User"
260 } else if err.Status >= http.StatusInternalServerError && err.Status <= http.StatusNetworkAuthenticationRequired {
261 err.Type = "Server"
262 }
263
264 switch v := lasterr.(type) {
265 case FinalError:
266 returnerr = FinalError{
267 BasicError: err,
268 Backtrace: append(v.Backtrace, v.BasicError),
269 }
270 case BasicError:
271 returnerr = FinalError{
272 BasicError: err,
273 Backtrace: []BasicError{v},
274 }
275 default:
276 if lasterr == nil {
277 returnerr = FinalError{
278 BasicError: err,
279 Backtrace: nil,
280 }
281 } else {
282 returnerr = FinalError{
283 BasicError: err,
284 Backtrace: []BasicError{
285 BasicError{Message: lasterr.Error()},
286 },
287 }
288 }
289 }
290 return returnerr
291}
292
293func GenericKunFinalError(err error) FinalError {
294 switch v := err.(type) {

Calls 1

ErrorMethod · 0.45

Tested by

no test coverage detected