Model refactor (#3915)

* Add mockery config file
* Move basic file/folder structs to models
* Fix hack due to import loop
* Move file interfaces to models
* Move folder interfaces to models
* Move scene interfaces to models
* Move scene marker interfaces to models
* Move image interfaces to models
* Move gallery interfaces to models
* Move gallery chapter interfaces to models
* Move studio interfaces to models
* Move movie interfaces to models
* Move performer interfaces to models
* Move tag interfaces to models
* Move autotag interfaces to models
* Regenerate mocks
This commit is contained in:
DingDongSoLong4
2023-09-01 02:39:29 +02:00
committed by GitHub
parent 20520a58b4
commit c364346a59
185 changed files with 3840 additions and 2559 deletions

View File

@@ -5,8 +5,6 @@ import (
"path/filepath"
"strconv"
"time"
"github.com/stashapp/stash/pkg/file"
)
// Image stores the metadata for a single image.
@@ -24,7 +22,7 @@ type Image struct {
// transient - not persisted
Files RelatedFiles
PrimaryFileID *file.ID
PrimaryFileID *FileID
// transient - path of primary file - empty if no files
Path string
// transient - checksum of primary file - empty if no files
@@ -39,13 +37,13 @@ type Image struct {
}
func (i *Image) LoadFiles(ctx context.Context, l FileLoader) error {
return i.Files.load(func() ([]file.File, error) {
return i.Files.load(func() ([]File, error) {
return l.GetFiles(ctx, i.ID)
})
}
func (i *Image) LoadPrimaryFile(ctx context.Context, l file.Finder) error {
return i.Files.loadPrimary(func() (file.File, error) {
func (i *Image) LoadPrimaryFile(ctx context.Context, l FileGetter) error {
return i.Files.loadPrimary(func() (File, error) {
if i.PrimaryFileID == nil {
return nil, nil
}
@@ -107,7 +105,7 @@ func (i Image) DisplayName() string {
type ImageCreateInput struct {
*Image
FileIDs []file.ID
FileIDs []FileID
}
type ImagePartial struct {
@@ -125,7 +123,7 @@ type ImagePartial struct {
GalleryIDs *UpdateIDs
TagIDs *UpdateIDs
PerformerIDs *UpdateIDs
PrimaryFileID *file.ID
PrimaryFileID *FileID
}
func NewImagePartial() ImagePartial {