mirror of
https://github.com/stashapp/stash.git
synced 2025-12-06 08:26:00 +01:00
* 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
27 lines
546 B
Go
27 lines
546 B
Go
package models
|
|
|
|
import (
|
|
"io"
|
|
"io/fs"
|
|
)
|
|
|
|
// FileOpener provides an interface to open a file.
|
|
type FileOpener interface {
|
|
Open() (io.ReadCloser, error)
|
|
}
|
|
|
|
// FS represents a file system.
|
|
type FS interface {
|
|
Stat(name string) (fs.FileInfo, error)
|
|
Lstat(name string) (fs.FileInfo, error)
|
|
Open(name string) (fs.ReadDirFile, error)
|
|
OpenZip(name string) (ZipFS, error)
|
|
IsPathCaseSensitive(path string) (bool, error)
|
|
}
|
|
|
|
// ZipFS represents a zip file system.
|
|
type ZipFS interface {
|
|
FS
|
|
io.Closer
|
|
OpenOnly(name string) (io.ReadCloser, error)
|
|
}
|