github.com/Files-com/files-sdk-go/v3@v3.1.81/messagecomment.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 MessageComment struct { 10 Id int64 `json:"id,omitempty" path:"id,omitempty" url:"id,omitempty"` 11 Body string `json:"body,omitempty" path:"body,omitempty" url:"body,omitempty"` 12 Reactions []string `json:"reactions,omitempty" path:"reactions,omitempty" url:"reactions,omitempty"` 13 UserId int64 `json:"user_id,omitempty" path:"user_id,omitempty" url:"user_id,omitempty"` 14 } 15 16 func (m MessageComment) Identifier() interface{} { 17 return m.Id 18 } 19 20 type MessageCommentCollection []MessageComment 21 22 type MessageCommentListParams struct { 23 UserId int64 `url:"user_id,omitempty" required:"false" json:"user_id,omitempty" path:"user_id"` 24 MessageId int64 `url:"message_id,omitempty" required:"true" json:"message_id,omitempty" path:"message_id"` 25 ListParams 26 } 27 28 type MessageCommentFindParams struct { 29 Id int64 `url:"-,omitempty" required:"false" json:"-,omitempty" path:"id"` 30 } 31 32 type MessageCommentCreateParams struct { 33 UserId int64 `url:"user_id,omitempty" required:"false" json:"user_id,omitempty" path:"user_id"` 34 Body string `url:"body,omitempty" required:"true" json:"body,omitempty" path:"body"` 35 } 36 37 type MessageCommentUpdateParams struct { 38 Id int64 `url:"-,omitempty" required:"false" json:"-,omitempty" path:"id"` 39 Body string `url:"body,omitempty" required:"true" json:"body,omitempty" path:"body"` 40 } 41 42 type MessageCommentDeleteParams struct { 43 Id int64 `url:"-,omitempty" required:"false" json:"-,omitempty" path:"id"` 44 } 45 46 func (m *MessageComment) UnmarshalJSON(data []byte) error { 47 type messageComment MessageComment 48 var v messageComment 49 if err := json.Unmarshal(data, &v); err != nil { 50 return lib.ErrorWithOriginalResponse{}.ProcessError(data, err, map[string]interface{}{}) 51 } 52 53 *m = MessageComment(v) 54 return nil 55 } 56 57 func (m *MessageCommentCollection) UnmarshalJSON(data []byte) error { 58 type messageComments MessageCommentCollection 59 var v messageComments 60 if err := json.Unmarshal(data, &v); err != nil { 61 return lib.ErrorWithOriginalResponse{}.ProcessError(data, err, []map[string]interface{}{}) 62 } 63 64 *m = MessageCommentCollection(v) 65 return nil 66 } 67 68 func (m *MessageCommentCollection) ToSlice() *[]interface{} { 69 ret := make([]interface{}, len(*m)) 70 for i, v := range *m { 71 ret[i] = v 72 } 73 74 return &ret 75 }