backend: add force rescan parameter to scanner
- Add Force bool field to ScanLibraryRequest in handlers - Pass force param through job params to worker - Add forceRescan field and SetForce method to MediaScanner - Modify processMediaFile to delete and re-create existing items when force=true - Default behavior unchanged (force=false maintains skip-if-exists)
This commit is contained in:
@@ -194,6 +194,11 @@ func (w *Worker) processScanJob(job *Job) (interface{}, error) {
|
||||
return nil, fmt.Errorf("database queries required")
|
||||
}
|
||||
|
||||
force := false
|
||||
if forceVal, ok := job.Params["force"].(bool); ok {
|
||||
force = forceVal
|
||||
}
|
||||
|
||||
scanner := NewMediaScanner(db)
|
||||
scanner.job = job
|
||||
|
||||
@@ -218,6 +223,7 @@ func (w *Worker) processScanJob(job *Job) (interface{}, error) {
|
||||
return nil, err
|
||||
}
|
||||
scanner.SetAdminID(adminUUID)
|
||||
scanner.SetForce(force)
|
||||
|
||||
if err := scanner.ScanFolders(job.Context); err != nil {
|
||||
return nil, err
|
||||
|
||||
Reference in New Issue
Block a user