mirror of https://github.com/stashapp/stash.git
37 lines
740 B
Go
37 lines
740 B
Go
package manager
|
|
|
|
import (
|
|
"sync"
|
|
|
|
"github.com/stashapp/stash/pkg/models"
|
|
)
|
|
|
|
// MigrateHashTask renames generated files between oshash and MD5 based on the
|
|
// value of the fileNamingAlgorithm flag.
|
|
type MigrateHashTask struct {
|
|
Scene *models.Scene
|
|
fileNamingAlgorithm models.HashAlgorithm
|
|
}
|
|
|
|
// Start starts the task.
|
|
func (t *MigrateHashTask) Start(wg *sync.WaitGroup) {
|
|
defer wg.Done()
|
|
|
|
if !t.Scene.OSHash.Valid || !t.Scene.Checksum.Valid {
|
|
// nothing to do
|
|
return
|
|
}
|
|
|
|
oshash := t.Scene.OSHash.String
|
|
checksum := t.Scene.Checksum.String
|
|
|
|
oldHash := oshash
|
|
newHash := checksum
|
|
if t.fileNamingAlgorithm == models.HashAlgorithmOshash {
|
|
oldHash = checksum
|
|
newHash = oshash
|
|
}
|
|
|
|
MigrateHash(oldHash, newHash)
|
|
}
|