Baloo Widgets
7#include "filefetchjob.h"
8#include "filemetadatautil_p.h"
9#include "widgetsdebug.h"
15#include <KFileMetaData/UserMetaData>
19FileFetchJob::FileFetchJob(
const QStringList &urls,
bool canEditAll, FileFetchJob::UseRealtimeIndexing useRealtime,
QObject *parent)
22 , m_canEditAll(canEditAll)
23 , m_useRealtime(useRealtime)
27void FileFetchJob::start()
32void FileFetchJob::doStart()
34 for (
const QString &filePath : std::as_const(m_urls)) {
35 bool extractorRunning =
false;
36 KFileMetaData::PropertyMultiMap fileProperties;
41 if (m_useRealtime != UseRealtimeIndexing::Only) {
42 Baloo::File file(filePath);
44 fileProperties = file.properties();
45 qCDebug(WIDGETS) << filePath <<
"DB properties:" << fileProperties;
47 if (fileProperties.empty() && m_useRealtime != UseRealtimeIndexing::Disabled) {
48 extractorRunning =
true;
49 m_extractor.process(filePath);
53 KFileMetaData::UserMetaData umd(filePath);
55 if (umd.isSupported()) {
57 auto umdData = Baloo::Private::fetchUserMetaData(umd, Attribute::Tags | Attribute::Rating | Attribute::Comment | Attribute::OriginUrl);
58 prop = Baloo::Private::convertUserMetaData(umdData);
63 m_canEditAll = QFileInfo(filePath).isWritable();
66 if (extractorRunning) {
67 m_extractor.waitFinished();
68 fileProperties = m_extractor.properties();
69 qCDebug(WIDGETS) << filePath <<
" properties:" << fileProperties;
71 prop.insert(Baloo::Private::toNamedVariantMap(fileProperties));
79QList<QVariantMap> Baloo::FileFetchJob::data()
const
84bool FileFetchJob::canEditAll()
const
89#include "moc_filefetchjob.cpp"
This file is part of the KDE documentation.
Documentation copyright © 1996-2025 The KDE developers.
Generated on Fri Jan 31 2025 12:09:51 by
doxygen 1.13.2 written
by
Dimitri van Heesch, © 1997-2006
KDE's Doxygen guidelines are available online.