bruns created this revision. bruns added reviewers: Baloo, Frameworks, ngraham, astippich, poboiko. Herald added projects: Frameworks, Baloo. Herald added a subscriber: kde-frameworks-devel. bruns requested review of this revision.
REVISION SUMMARY In many cases, only a few plugins are required, or even only one (e.g. for baloo-widgets, baloo_filemetadata_temp_extractor) or none (in case there is no extractor for a given mimetype). Loading of plugins is somewhat costly, so delay loading of plugins until they are requested by fetchExtractors(mimetype). For e.g. extracting tags from an mp3 file, which only requires the taglibextractor, the runtime is reduced by more than 90%. TEST PLAN ctest valgrind --tool=callgrind REPOSITORY R286 KFileMetaData BRANCH lazy_loading REVISION DETAIL https://phabricator.kde.org/D19287 AFFECTED FILES src/extractor.cpp src/extractor.h src/extractor_p.h src/extractorcollection.cpp src/extractorcollection.h To: bruns, #baloo, #frameworks, ngraham, astippich, poboiko Cc: kde-frameworks-devel, domson, ashaposhnikov, michaelh, astippich, spoorun, ngraham, bruns, abrahams