github.com/Files-com/files-sdk-go/v2@v2.1.2/errors.go (about) 1 package files_sdk 2 3 import ( 4 "encoding/json" 5 6 lib "github.com/Files-com/files-sdk-go/v2/lib" 7 ) 8 9 type Errors struct { 10 Fields []string `json:"fields,omitempty" path:"fields,omitempty" url:"fields,omitempty"` 11 Messages []string `json:"messages,omitempty" path:"messages,omitempty" url:"messages,omitempty"` 12 } 13 14 // Identifier no path or id 15 16 type ErrorsCollection []Errors 17 18 func (e *Errors) UnmarshalJSON(data []byte) error { 19 type errors Errors 20 var v errors 21 if err := json.Unmarshal(data, &v); err != nil { 22 return lib.ErrorWithOriginalResponse{}.ProcessError(data, err, map[string]interface{}{}) 23 } 24 25 *e = Errors(v) 26 return nil 27 } 28 29 func (e *ErrorsCollection) UnmarshalJSON(data []byte) error { 30 type errorss ErrorsCollection 31 var v errorss 32 if err := json.Unmarshal(data, &v); err != nil { 33 return lib.ErrorWithOriginalResponse{}.ProcessError(data, err, []map[string]interface{}{}) 34 } 35 36 *e = ErrorsCollection(v) 37 return nil 38 } 39 40 func (e *ErrorsCollection) ToSlice() *[]interface{} { 41 ret := make([]interface{}, len(*e)) 42 for i, v := range *e { 43 ret[i] = v 44 } 45 46 return &ret 47 }