--- a/qtmobility/src/publishsubscribe/gconflayer_linux_p.h Fri Apr 16 15:51:22 2010 +0300
+++ b/qtmobility/src/publishsubscribe/gconflayer_linux_p.h Mon May 03 13:18:40 2010 +0300
@@ -45,10 +45,9 @@
#include "qvaluespace_p.h"
#include "qvaluespacepublisher.h"
-#include <QHash>
#include <QSet>
-#include <QByteArray>
-#include <QMultiMap>
+#include "gconfitem_p.h"
+#include <QMutex>
QTM_BEGIN_NAMESPACE
@@ -95,6 +94,9 @@
public:
static GConfLayer *instance();
+private slots:
+ void notifyChanged(const QString &key, const QVariant &value);
+
private:
struct GConfHandle {
GConfHandle(const QString &p)
@@ -120,9 +122,15 @@
return 0;
}
+ //private methods not locking a mutex
+ bool getValue(Handle handle, const QString &subPath, QVariant *data);
+ Handle getItem(Handle parent, const QString &subPath);
+ void doRemoveHandle(Handle handle);
+
private: //data
- QHash<QByteArray, GConfHandle *> m_monitoringHandles;
- QSet<QString> m_monitoringPaths;
+ QSet<GConfHandle *> m_monitoringHandles;
+ QMap<QString, GConfItem *> m_monitoringItems;
+ QMutex m_mutex;
};
QTM_END_NAMESPACE