2
* Copyright (C) 2011 Canonical, Ltd.
5
* Ugo Riboni <ugo.riboni@canonical.com>
7
* This program is free software; you can redistribute it and/or modify
8
* it under the terms of the GNU General Public License as published by
9
* the Free Software Foundation; version 3.
11
* This program is distributed in the hope that it will be useful,
12
* but WITHOUT ANY WARRANTY; without even the implied warranty of
13
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
* GNU General Public License for more details.
16
* You should have received a copy of the GNU General Public License
17
* along with this program. If not, see <http://www.gnu.org/licenses/>.
20
#ifndef ABSTRACTDBUSSERVICEMONITOR_H
21
#define ABSTRACTDBUSSERVICEMONITOR_H
25
#include <QDBusInterface>
26
#include <QDBusServiceWatcher>
30
class AbstractDBusServiceMonitor : public QObject
33
Q_PROPERTY(bool serviceAvailable READ serviceAvailable NOTIFY serviceAvailableChanged)
36
explicit AbstractDBusServiceMonitor(QString service, QString path, QString interface,
38
~AbstractDBusServiceMonitor();
40
QDBusInterface* dbusInterface() const;
42
bool serviceAvailable() const;
45
void serviceAvailableChanged(bool available);
48
void createInterface();
49
void destroyInterface();
55
QDBusServiceWatcher* m_watcher;
56
QDBusInterface* m_dbusInterface;
59
#endif // ABSTRACTDBUSSERVICEMONITOR_H