Ref T709, changed to settings provider

* CPlugin is the provider
* it is "kept" in DBus object for traffic, service, weather
This commit is contained in:
Klaus Basan
2019-07-30 01:01:36 +02:00
committed by Mat Sutcliffe
parent ba7b97df11
commit 384b50ff80
10 changed files with 63 additions and 46 deletions

View File

@@ -9,10 +9,18 @@
#include "dbusobject.h"
#include <cassert>
XSwiftBus::ISettingsProvider *XSwiftBus::CDBusObject::s_settingsProvider = nullptr;
namespace XSwiftBus
{
CDBusObject::CDBusObject()
{ }
CDBusObject::CDBusObject(ISettingsProvider *settingsProvider)
{
if (!CDBusObject::s_settingsProvider)
{
// we expect a single pointer
CDBusObject::s_settingsProvider = settingsProvider;
}
}
CDBusObject::~CDBusObject()
{
@@ -73,6 +81,18 @@ namespace XSwiftBus
}
}
CSettings CDBusObject::getSettings() const
{
if (s_settingsProvider) { return s_settingsProvider->getSettings(); }
return CSettings();
}
bool CDBusObject::setSettings(const CSettings &s)
{
if (s_settingsProvider) { s_settingsProvider->setSettings(s); }
return false;
}
void CDBusObject::dbusObjectPathUnregisterFunction(DBusConnection *connection, void *data)
{
(void)connection; // unused