github.com/Files-com/files-sdk-go/v2@v2.1.2/automationrun.go (about) 1 package files_sdk 2 3 import ( 4 "encoding/json" 5 "time" 6 7 lib "github.com/Files-com/files-sdk-go/v2/lib" 8 ) 9 10 type AutomationRun struct { 11 Id int64 `json:"id,omitempty" path:"id,omitempty" url:"id,omitempty"` 12 AutomationId int64 `json:"automation_id,omitempty" path:"automation_id,omitempty" url:"automation_id,omitempty"` 13 CompletedAt *time.Time `json:"completed_at,omitempty" path:"completed_at,omitempty" url:"completed_at,omitempty"` 14 CreatedAt *time.Time `json:"created_at,omitempty" path:"created_at,omitempty" url:"created_at,omitempty"` 15 Status string `json:"status,omitempty" path:"status,omitempty" url:"status,omitempty"` 16 StatusMessagesUrl string `json:"status_messages_url,omitempty" path:"status_messages_url,omitempty" url:"status_messages_url,omitempty"` 17 } 18 19 func (a AutomationRun) Identifier() interface{} { 20 return a.Id 21 } 22 23 type AutomationRunCollection []AutomationRun 24 25 type AutomationRunListParams struct { 26 UserId int64 `url:"user_id,omitempty" required:"false" json:"user_id,omitempty" path:"user_id"` 27 SortBy map[string]interface{} `url:"sort_by,omitempty" required:"false" json:"sort_by,omitempty" path:"sort_by"` 28 Filter AutomationRun `url:"filter,omitempty" required:"false" json:"filter,omitempty" path:"filter"` 29 AutomationId int64 `url:"automation_id,omitempty" required:"true" json:"automation_id,omitempty" path:"automation_id"` 30 ListParams 31 } 32 33 type AutomationRunFindParams struct { 34 Id int64 `url:"-,omitempty" required:"false" json:"-,omitempty" path:"id"` 35 } 36 37 func (a *AutomationRun) UnmarshalJSON(data []byte) error { 38 type automationRun AutomationRun 39 var v automationRun 40 if err := json.Unmarshal(data, &v); err != nil { 41 return lib.ErrorWithOriginalResponse{}.ProcessError(data, err, map[string]interface{}{}) 42 } 43 44 *a = AutomationRun(v) 45 return nil 46 } 47 48 func (a *AutomationRunCollection) UnmarshalJSON(data []byte) error { 49 type automationRuns AutomationRunCollection 50 var v automationRuns 51 if err := json.Unmarshal(data, &v); err != nil { 52 return lib.ErrorWithOriginalResponse{}.ProcessError(data, err, []map[string]interface{}{}) 53 } 54 55 *a = AutomationRunCollection(v) 56 return nil 57 } 58 59 func (a *AutomationRunCollection) ToSlice() *[]interface{} { 60 ret := make([]interface{}, len(*a)) 61 for i, v := range *a { 62 ret[i] = v 63 } 64 65 return &ret 66 }