Error provides a pretty printed string of an APIError object based on present data.
()
| 208 | |
| 209 | // Error provides a pretty printed string of an APIError object based on present data. |
| 210 | func (e *APIError) Error() string { |
| 211 | var message string |
| 212 | switch msg := e.Message.(type) { |
| 213 | case string: |
| 214 | message = msg |
| 215 | case []interface{}, map[string]interface{}: |
| 216 | messages := collectMessages(msg, []string{}) |
| 217 | message = strings.Join(messages, ", ") |
| 218 | default: |
| 219 | message = fmt.Sprint(msg) |
| 220 | } |
| 221 | |
| 222 | if message != "" { |
| 223 | if e.Code != "" { |
| 224 | return e.Code + " " + message |
| 225 | } |
| 226 | return message |
| 227 | } |
| 228 | if e.Code != "" { |
| 229 | return e.Code |
| 230 | } |
| 231 | return fmt.Sprintf("%d %s", e.StatusCode, e.Code) |
| 232 | } |
| 233 | |
| 234 | func (e *APIError) Unwrap() error { |
| 235 | return &e.LibraryError |