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,50 +3,25 @@ package gallery
|
||||
import (
|
||||
"context"
|
||||
|
||||
"github.com/stashapp/stash/pkg/file"
|
||||
"github.com/stashapp/stash/pkg/image"
|
||||
"github.com/stashapp/stash/pkg/models"
|
||||
)
|
||||
|
||||
type FinderByFile interface {
|
||||
FindByFileID(ctx context.Context, fileID file.ID) ([]*models.Gallery, error)
|
||||
}
|
||||
|
||||
type Repository interface {
|
||||
models.GalleryFinder
|
||||
FinderByFile
|
||||
Destroy(ctx context.Context, id int) error
|
||||
models.FileLoader
|
||||
ImageUpdater
|
||||
PartialUpdater
|
||||
}
|
||||
|
||||
type PartialUpdater interface {
|
||||
UpdatePartial(ctx context.Context, id int, updatedGallery models.GalleryPartial) (*models.Gallery, error)
|
||||
}
|
||||
|
||||
type ImageFinder interface {
|
||||
FindByFolderID(ctx context.Context, folder file.FolderID) ([]*models.Image, error)
|
||||
FindByZipFileID(ctx context.Context, zipFileID file.ID) ([]*models.Image, error)
|
||||
FindByFolderID(ctx context.Context, folder models.FolderID) ([]*models.Image, error)
|
||||
FindByZipFileID(ctx context.Context, zipFileID models.FileID) ([]*models.Image, error)
|
||||
models.GalleryIDLoader
|
||||
}
|
||||
|
||||
type ImageService interface {
|
||||
Destroy(ctx context.Context, i *models.Image, fileDeleter *image.FileDeleter, deleteGenerated, deleteFile bool) error
|
||||
DestroyZipImages(ctx context.Context, zipFile file.File, fileDeleter *image.FileDeleter, deleteGenerated bool) ([]*models.Image, error)
|
||||
}
|
||||
|
||||
type ChapterRepository interface {
|
||||
ChapterFinder
|
||||
ChapterDestroyer
|
||||
|
||||
Update(ctx context.Context, updatedObject models.GalleryChapter) (*models.GalleryChapter, error)
|
||||
DestroyZipImages(ctx context.Context, zipFile models.File, fileDeleter *image.FileDeleter, deleteGenerated bool) ([]*models.Image, error)
|
||||
}
|
||||
|
||||
type Service struct {
|
||||
Repository Repository
|
||||
Repository models.GalleryReaderWriter
|
||||
ImageFinder ImageFinder
|
||||
ImageService ImageService
|
||||
File file.Store
|
||||
Folder file.FolderStore
|
||||
File models.FileReaderWriter
|
||||
Folder models.FolderReaderWriter
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user