Skip to content

Module detail: filemanager

enteraname74 edited this page May 15, 2025 · 1 revision

Used for updating the metadata of a music file and managing the file covers of the app. It contains all things related to the handling of files.

Cover management

Soul Searching offers multiple ways for retrieving a cover of an element.

From the metadata of a file

The CachedCoverManager class handles the fetching of the cover of a file from its metadata. Because this operation is quite heavy, each time a cover is fetched from a file, it is cached to be accessed faster if needed later.

From saved files in the app storage

For elements that are not files (artists, playlists, ...), covers are stored in the app's private storage. Covers are thus saved as files and app elements can access them with their IDs (present in the name of each file cover). The CoverFileManager interface handles those files.

General cover access

The CoverRetriever is a class that make the fetching of an element's cover easier by incorporating the two methods shown above. The correct method is used depending on the data type that the cover contains.

Updating music files on the user device

All logical elements that could lead to the update of a music file on the user's device are provided as use case to be used in other modules (UpdateMusicUseCase for example). Although there are multiple use case, it's the MusicFileUpdater that has the responsibility to update a music file.

Clone this wiki locally