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