mirror of
https://github.com/stashapp/stash.git
synced 2025-12-18 04:44:37 +03:00
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:
@@ -3,8 +3,6 @@ package manager
|
||||
import (
|
||||
"context"
|
||||
|
||||
"github.com/stashapp/stash/pkg/file"
|
||||
"github.com/stashapp/stash/pkg/gallery"
|
||||
"github.com/stashapp/stash/pkg/image"
|
||||
"github.com/stashapp/stash/pkg/models"
|
||||
"github.com/stashapp/stash/pkg/scene"
|
||||
@@ -12,49 +10,17 @@ import (
|
||||
"github.com/stashapp/stash/pkg/txn"
|
||||
)
|
||||
|
||||
type ImageReaderWriter interface {
|
||||
models.ImageReaderWriter
|
||||
image.FinderCreatorUpdater
|
||||
GetManyFileIDs(ctx context.Context, ids []int) ([][]file.ID, error)
|
||||
}
|
||||
|
||||
type GalleryReaderWriter interface {
|
||||
models.GalleryReaderWriter
|
||||
gallery.FinderCreatorUpdater
|
||||
gallery.Finder
|
||||
models.FileLoader
|
||||
GetManyFileIDs(ctx context.Context, ids []int) ([][]file.ID, error)
|
||||
}
|
||||
|
||||
type SceneReaderWriter interface {
|
||||
models.SceneReaderWriter
|
||||
scene.CreatorUpdater
|
||||
models.URLLoader
|
||||
GetManyFileIDs(ctx context.Context, ids []int) ([][]file.ID, error)
|
||||
}
|
||||
|
||||
type FileReaderWriter interface {
|
||||
file.Store
|
||||
Query(ctx context.Context, options models.FileQueryOptions) (*models.FileQueryResult, error)
|
||||
GetCaptions(ctx context.Context, fileID file.ID) ([]*models.VideoCaption, error)
|
||||
IsPrimary(ctx context.Context, fileID file.ID) (bool, error)
|
||||
}
|
||||
|
||||
type FolderReaderWriter interface {
|
||||
file.FolderStore
|
||||
}
|
||||
|
||||
type Repository struct {
|
||||
models.TxnManager
|
||||
|
||||
File FileReaderWriter
|
||||
Folder FolderReaderWriter
|
||||
Gallery GalleryReaderWriter
|
||||
File models.FileReaderWriter
|
||||
Folder models.FolderReaderWriter
|
||||
Gallery models.GalleryReaderWriter
|
||||
GalleryChapter models.GalleryChapterReaderWriter
|
||||
Image ImageReaderWriter
|
||||
Image models.ImageReaderWriter
|
||||
Movie models.MovieReaderWriter
|
||||
Performer models.PerformerReaderWriter
|
||||
Scene SceneReaderWriter
|
||||
Scene models.SceneReaderWriter
|
||||
SceneMarker models.SceneMarkerReaderWriter
|
||||
Studio models.StudioReaderWriter
|
||||
Tag models.TagReaderWriter
|
||||
@@ -94,15 +60,15 @@ func sqliteRepository(d *sqlite.Database) Repository {
|
||||
}
|
||||
|
||||
type SceneService interface {
|
||||
Create(ctx context.Context, input *models.Scene, fileIDs []file.ID, coverImage []byte) (*models.Scene, error)
|
||||
AssignFile(ctx context.Context, sceneID int, fileID file.ID) error
|
||||
Create(ctx context.Context, input *models.Scene, fileIDs []models.FileID, coverImage []byte) (*models.Scene, error)
|
||||
AssignFile(ctx context.Context, sceneID int, fileID models.FileID) error
|
||||
Merge(ctx context.Context, sourceIDs []int, destinationID int, values models.ScenePartial) error
|
||||
Destroy(ctx context.Context, scene *models.Scene, fileDeleter *scene.FileDeleter, deleteGenerated, deleteFile bool) error
|
||||
}
|
||||
|
||||
type ImageService interface {
|
||||
Destroy(ctx context.Context, image *models.Image, fileDeleter *image.FileDeleter, deleteGenerated, deleteFile bool) error
|
||||
DestroyZipImages(ctx context.Context, zipFile file.File, fileDeleter *image.FileDeleter, deleteGenerated bool) ([]*models.Image, error)
|
||||
DestroyZipImages(ctx context.Context, zipFile models.File, fileDeleter *image.FileDeleter, deleteGenerated bool) ([]*models.Image, error)
|
||||
}
|
||||
|
||||
type GalleryService interface {
|
||||
|
||||
Reference in New Issue
Block a user