Files
stash/pkg/gallery/service.go
WithoutPants b7799df2a6 Add package docs and project vision/goals (#5169)
* Add goals/design vision to contributing doc
* Add barebones package documentation
2024-08-28 09:01:39 +10:00

30 lines
964 B
Go

// Package gallery provides application logic for managing galleries.
// This functionality is exposed via the [Service] type.
package gallery
import (
"context"
"github.com/stashapp/stash/pkg/image"
"github.com/stashapp/stash/pkg/models"
)
type ImageFinder interface {
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 models.File, fileDeleter *image.FileDeleter, deleteGenerated bool) ([]*models.Image, error)
}
type Service struct {
Repository models.GalleryReaderWriter
ImageFinder ImageFinder
ImageService ImageService
File models.FileReaderWriter
Folder models.FolderReaderWriter
}