navidrome/cmd
Deluan 593b5db8e9 refactor: extract missing files deletion into reusable service layer
Extracted inline deletion logic from server/nativeapi/missing.go into a new core.MissingFiles service interface and implementation. This provides better separation of concerns and testability.

The MissingFiles service handles:
- Deletion of specific or all missing files via transaction
- Garbage collection after deletion
- Extraction of affected album IDs from missing files
- Background refresh of artist and album statistics

The deleteMissingFiles HTTP handler now simply delegates to the service, removing 70+ lines of inline logic. All deletion, transaction, and stat refresh logic is now centralized in core/missing_files.go.

Updated dependency injection to provide MissingFiles service to the native API router. Renamed receiver variable from 'n' to 'api' throughout native_api.go for consistency.
2025-11-08 15:50:43 -05:00
..
backup.go fix(server): backup and restore issues from the cli (#3579) 2024-12-22 16:41:40 -05:00
cmd_suite_test.go feat(plugins): experimental support for plugins (#3998) 2025-06-22 20:45:38 -04:00
inspect.go feat(bfr): Big Refactor: new scanner, lots of new fields and tags, improvements and DB schema changes (#2709) 2025-02-19 20:35:17 -05:00
pls.go feat(bfr): Big Refactor: new scanner, lots of new fields and tags, improvements and DB schema changes (#2709) 2025-02-19 20:35:17 -05:00
plugin.go feat(plugins): allow Plugins to call the Subsonic API (#4260) 2025-06-25 14:18:32 -04:00
plugin_test.go feat(plugins): experimental support for plugins (#3998) 2025-06-22 20:45:38 -04:00
root.go feat: Multi-library support (#4181) 2025-07-18 18:41:12 -04:00
scan.go fix(scanner): update prometheus at the end of the scan (#4163) 2025-06-02 20:13:54 -04:00
signaller_nounix.go Fix typo 2024-05-01 23:09:11 -04:00
signaller_unix.go feat(bfr): Big Refactor: new scanner, lots of new fields and tags, improvements and DB schema changes (#2709) 2025-02-19 20:35:17 -05:00
svc.go build: add packages for deb and rpm to release (#3202) 2024-10-26 13:31:45 -04:00
wire_gen.go refactor: extract missing files deletion into reusable service layer 2025-11-08 15:50:43 -05:00
wire_injectors.go feat(insights): add plugin and multi-library information (#4391) 2025-07-28 13:21:10 -04:00