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

@@ -0,0 +1,76 @@
package models
import "context"
// SceneMarkerGetter provides methods to get scene markers by ID.
type SceneMarkerGetter interface {
// TODO - rename this to Find and remove existing method
FindMany(ctx context.Context, ids []int) ([]*SceneMarker, error)
Find(ctx context.Context, id int) (*SceneMarker, error)
}
// SceneMarkerFinder provides methods to find scene markers.
type SceneMarkerFinder interface {
SceneMarkerGetter
FindBySceneID(ctx context.Context, sceneID int) ([]*SceneMarker, error)
}
// SceneMarkerQueryer provides methods to query scene markers.
type SceneMarkerQueryer interface {
Query(ctx context.Context, sceneMarkerFilter *SceneMarkerFilterType, findFilter *FindFilterType) ([]*SceneMarker, int, error)
QueryCount(ctx context.Context, sceneMarkerFilter *SceneMarkerFilterType, findFilter *FindFilterType) (int, error)
}
// SceneMarkerCounter provides methods to count scene markers.
type SceneMarkerCounter interface {
Count(ctx context.Context) (int, error)
CountByTagID(ctx context.Context, tagID int) (int, error)
}
// SceneMarkerCreator provides methods to create scene markers.
type SceneMarkerCreator interface {
Create(ctx context.Context, newSceneMarker *SceneMarker) error
}
// SceneMarkerUpdater provides methods to update scene markers.
type SceneMarkerUpdater interface {
Update(ctx context.Context, updatedSceneMarker *SceneMarker) error
UpdatePartial(ctx context.Context, id int, updatedSceneMarker SceneMarkerPartial) (*SceneMarker, error)
UpdateTags(ctx context.Context, markerID int, tagIDs []int) error
}
// SceneMarkerDestroyer provides methods to destroy scene markers.
type SceneMarkerDestroyer interface {
Destroy(ctx context.Context, id int) error
}
type SceneMarkerCreatorUpdater interface {
SceneMarkerCreator
SceneMarkerUpdater
}
// SceneMarkerReader provides all methods to read scene markers.
type SceneMarkerReader interface {
SceneMarkerFinder
SceneMarkerQueryer
SceneMarkerCounter
TagIDLoader
All(ctx context.Context) ([]*SceneMarker, error)
Wall(ctx context.Context, q *string) ([]*SceneMarker, error)
GetMarkerStrings(ctx context.Context, q *string, sort *string) ([]*MarkerStringsResultType, error)
}
// SceneMarkerWriter provides all methods to modify scene markers.
type SceneMarkerWriter interface {
SceneMarkerCreator
SceneMarkerUpdater
SceneMarkerDestroyer
}
// SceneMarkerReaderWriter provides all scene marker methods.
type SceneMarkerReaderWriter interface {
SceneMarkerReader
SceneMarkerWriter
}