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

@@ -10,19 +10,17 @@ import (
"github.com/stashapp/stash/pkg/models"
"github.com/stashapp/stash/pkg/models/jsonschema"
"github.com/stashapp/stash/pkg/sliceutil/stringslice"
"github.com/stashapp/stash/pkg/tag"
"github.com/stashapp/stash/pkg/utils"
)
type NameFinderCreatorUpdater interface {
NameFinderCreator
Update(ctx context.Context, updatedPerformer *models.Performer) error
UpdateImage(ctx context.Context, performerID int, image []byte) error
type ImporterReaderWriter interface {
models.PerformerCreatorUpdater
models.PerformerQueryer
}
type Importer struct {
ReaderWriter NameFinderCreatorUpdater
TagWriter tag.NameFinderCreator
ReaderWriter ImporterReaderWriter
TagWriter models.TagFinderCreator
Input jsonschema.Performer
MissingRefBehaviour models.ImportMissingRefEnum
@@ -65,7 +63,7 @@ func (i *Importer) populateTags(ctx context.Context) error {
return nil
}
func importTags(ctx context.Context, tagWriter tag.NameFinderCreator, names []string, missingRefBehaviour models.ImportMissingRefEnum) ([]*models.Tag, error) {
func importTags(ctx context.Context, tagWriter models.TagFinderCreator, names []string, missingRefBehaviour models.ImportMissingRefEnum) ([]*models.Tag, error) {
tags, err := tagWriter.FindByNames(ctx, names, false)
if err != nil {
return nil, err
@@ -100,7 +98,7 @@ func importTags(ctx context.Context, tagWriter tag.NameFinderCreator, names []st
return tags, nil
}
func createTags(ctx context.Context, tagWriter tag.NameFinderCreator, names []string) ([]*models.Tag, error) {
func createTags(ctx context.Context, tagWriter models.TagFinderCreator, names []string) ([]*models.Tag, error) {
var ret []*models.Tag
for _, name := range names {
newTag := models.NewTag(name)