From 5fb9a6a9024eaf7b94f20eefcffce928adeaed78 Mon Sep 17 00:00:00 2001 From: Christian Mollekopf Date: Mon, 8 Feb 2016 23:28:21 +0100 Subject: Gather more timings --- common/listener.cpp | 2 +- examples/dummyresource/resourcefactory.cpp | 5 +++++ examples/maildirresource/maildirresource.cpp | 6 ++++++ tests/dummyresourcetest.cpp | 15 ++++++++++----- 4 files changed, 22 insertions(+), 6 deletions(-) diff --git a/common/listener.cpp b/common/listener.cpp index d2fa266..ed6f305 100644 --- a/common/listener.cpp +++ b/common/listener.cpp @@ -237,7 +237,7 @@ void Listener::processCommand(int commandId, uint messageId, const QByteArray &c job = job.then(loadResource()->processAllMessages()); } job.then([callback, timer]() { - Trace() << "Sync took " << timer->elapsed(); + Trace() << "Sync took " << Sink::Log::TraceTime(timer->elapsed()); callback(true); }).exec(); return; diff --git a/examples/dummyresource/resourcefactory.cpp b/examples/dummyresource/resourcefactory.cpp index 36866ec..48858da 100644 --- a/examples/dummyresource/resourcefactory.cpp +++ b/examples/dummyresource/resourcefactory.cpp @@ -95,12 +95,17 @@ Sink::ApplicationDomain::Folder::Ptr DummyResource::createFolder(const QByteArra void DummyResource::synchronize(const QByteArray &bufferType, const QMap > &data, Sink::Storage::Transaction &transaction, Sink::Storage::Transaction &synchronizationTransaction, DomainTypeAdaptorFactoryInterface &adaptorFactory, std::function &data, Sink::Storage::Transaction &)> createEntity) { + auto time = QSharedPointer::create(); + time->start(); //TODO find items to remove + int count = 0; for (auto it = data.constBegin(); it != data.constEnd(); it++) { + count++; const auto remoteId = it.key().toUtf8(); auto entity = createEntity(remoteId, it.value(), synchronizationTransaction); createOrModify(transaction, synchronizationTransaction, adaptorFactory, bufferType, remoteId, *entity); } + Trace() << "Sync of " << count << " entities of type " << bufferType << " done." << Sink::Log::TraceTime(time->elapsed()); } KAsync::Job DummyResource::synchronizeWithSource(Sink::Storage &mainStore, Sink::Storage &synchronizationStore) diff --git a/examples/maildirresource/maildirresource.cpp b/examples/maildirresource/maildirresource.cpp index d5cc24b..6fd70a0 100644 --- a/examples/maildirresource/maildirresource.cpp +++ b/examples/maildirresource/maildirresource.cpp @@ -135,6 +135,8 @@ void MaildirResource::synchronizeFolders(Sink::Storage::Transaction &transaction void MaildirResource::synchronizeMails(Sink::Storage::Transaction &transaction, Sink::Storage::Transaction &synchronizationTransaction, const QString &path) { Trace() << "Synchronizing mails" << path; + auto time = QSharedPointer::create(); + time->start(); const QByteArray bufferType = ENTITY_TYPE_MAIL; KPIM::Maildir maildir(path, true); @@ -165,7 +167,9 @@ void MaildirResource::synchronizeMails(Sink::Storage::Transaction &transaction, } ); + int count = 0; while (entryIterator->hasNext()) { + count++; const QString filePath = QDir::fromNativeSeparators(entryIterator->next()); const QString fileName = entryIterator->fileName(); const auto remoteId = filePath.toUtf8(); @@ -192,6 +196,8 @@ void MaildirResource::synchronizeMails(Sink::Storage::Transaction &transaction, createOrModify(transaction, synchronizationTransaction, *mMailAdaptorFactory, bufferType, remoteId, mail); } + Trace() << "Synchronized " << count << " mails in " << listingPath << Sink::Log::TraceTime(time->elapsed()); + } KAsync::Job MaildirResource::synchronizeWithSource(Sink::Storage &mainStore, Sink::Storage &synchronizationStore) diff --git a/tests/dummyresourcetest.cpp b/tests/dummyresourcetest.cpp index c5b2f30..bfa4885 100644 --- a/tests/dummyresourcetest.cpp +++ b/tests/dummyresourcetest.cpp @@ -19,6 +19,9 @@ class DummyResourceTest : public QObject { Q_OBJECT + + QTime time; + private Q_SLOTS: void initTestCase() { @@ -29,16 +32,18 @@ private Q_SLOTS: ResourceConfig::addResource("org.kde.dummy.instance1", "org.kde.dummy"); } - void cleanup() - { - Sink::Store::removeDataFromDisk(QByteArray("org.kde.dummy.instance1")).exec().waitForFinished(); - } - void init() { qDebug(); qDebug() << "-----------------------------------------"; qDebug(); + time.start(); + } + + void cleanup() + { + qDebug() << "Test took " << time.elapsed(); + Sink::Store::removeDataFromDisk(QByteArray("org.kde.dummy.instance1")).exec().waitForFinished(); } void testProperty() -- cgit v1.2.3