@@ -0,0 +1,32 @@
|
||||
package media
|
||||
|
||||
import (
|
||||
"io"
|
||||
|
||||
"source.offmarket.win/aleagle/eaglecast/models"
|
||||
"gopkg.in/volatiletech/null.v6"
|
||||
)
|
||||
|
||||
// Media represents an uploaded object.
|
||||
type Media struct {
|
||||
ID int `db:"id" json:"id"`
|
||||
UUID string `db:"uuid" json:"uuid"`
|
||||
Filename string `db:"filename" json:"filename"`
|
||||
ContentType string `db:"content_type" json:"content_type"`
|
||||
Thumb string `db:"thumb" json:"-"`
|
||||
CreatedAt null.Time `db:"created_at" json:"created_at"`
|
||||
ThumbURL null.String `json:"thumb_url"`
|
||||
Provider string `json:"provider"`
|
||||
Meta models.JSON `db:"meta" json:"meta"`
|
||||
URL string `json:"url"`
|
||||
|
||||
Total int `db:"total" json:"-"`
|
||||
}
|
||||
|
||||
// Store represents functions to store and retrieve media (files).
|
||||
type Store interface {
|
||||
Put(string, string, io.ReadSeeker) (string, error)
|
||||
Delete(string) error
|
||||
GetURL(string) string
|
||||
GetBlob(string) ([]byte, error)
|
||||
}
|
||||
Reference in New Issue
Block a user