~cjwatson/libusermetrics/valgrind-optional

« back to all changes in this revision

Viewing changes to src/libusermetricsinput/MetricManagerImpl.cpp

  • Committer: Pete Woods
  • Date: 2013-07-09 16:51:58 UTC
  • mto: This revision was merged to the branch mainline in revision 100.
  • Revision ID: pete.woods@canonical.com-20130709165158-rcym0f05hz714k29
Documentation

Show diffs side-by-side

added added

removed removed

Lines of Context:
23
23
#include <QtDBus/QtDBus>
24
24
#include <QtCore/QDebug>
25
25
 
 
26
#include <stdexcept>
 
27
 
 
28
using namespace std;
26
29
using namespace UserMetricsCommon;
27
30
using namespace UserMetricsInput;
28
31
 
39
42
MetricPtr MetricManagerImpl::add(const QString &dataSourceId,
40
43
                const QString &formatString, const QString &emptyDataString,
41
44
                const QString &textDomain) {
42
 
        QDBusObjectPath path(
 
45
        QDBusPendingReply<QDBusObjectPath> reply(
43
46
                        m_interface.createDataSource(dataSourceId, formatString,
44
47
                                        emptyDataString, textDomain));
45
48
 
 
49
        reply.waitForFinished();
 
50
 
 
51
        if (reply.isError()) {
 
52
                throw logic_error(reply.error().message().toStdString());
 
53
        }
 
54
 
 
55
        QDBusObjectPath path(reply.value());
 
56
 
46
57
        auto metric(m_metrics.find(dataSourceId));
47
58
        if (metric == m_metrics.end()) {
48
59
                MetricPtr newMetric(