68 class CntSymbianDatabase : public QObject, public MContactDbObserver |
68 class CntSymbianDatabase : public QObject, public MContactDbObserver |
69 { |
69 { |
70 Q_OBJECT |
70 Q_OBJECT |
71 |
71 |
72 public: |
72 public: |
73 CntSymbianDatabase(QContactManagerEngine *engine, QContactManager::Error& error); |
73 CntSymbianDatabase(QContactManagerEngine *engine, QContactManager::Error* error); |
74 ~CntSymbianDatabase(); |
74 ~CntSymbianDatabase(); |
75 |
75 |
76 public: |
76 public: |
77 CContactDatabase* contactDatabase(); |
77 CContactDatabase* contactDatabase(); |
78 void appendContactsEmitted(const QList<QContactLocalId>& contactList); |
78 void appendContactsEmitted(const QList<QContactLocalId>& contactList); |
81 public: |
81 public: |
82 // From MContactDbObserver |
82 // From MContactDbObserver |
83 void HandleDatabaseEventL(TContactDbObserverEvent aEvent); |
83 void HandleDatabaseEventL(TContactDbObserverEvent aEvent); |
84 |
84 |
85 private: |
85 private: |
|
86 void initializeL(); |
|
87 void updateGroupMembershipsL(); |
|
88 void updateGroupMembershipsL(QContactLocalId groupId, QSet<QContactLocalId> &added, QSet<QContactLocalId> &removed); |
|
89 QSet<QContactLocalId> groupMembersL(QContactLocalId groupId); |
|
90 |
|
91 private: |
86 CContactDatabase* m_contactDatabase; |
92 CContactDatabase* m_contactDatabase; |
87 #ifndef SYMBIAN_BACKEND_USE_SQLITE |
93 #ifndef SYMBIAN_BACKEND_USE_SQLITE |
88 CContactChangeNotifier* m_contactChangeNotifier; |
94 CContactChangeNotifier* m_contactChangeNotifier; |
89 #endif |
95 #endif |
90 QContactManagerEngine *m_engine; |
96 QContactManagerEngine *m_engine; |
91 QList<QContactLocalId> m_contactsEmitted; |
97 QList<QContactLocalId> m_contactsEmitted; |
92 QContactLocalId m_currentOwnCardId; |
98 QContactLocalId m_currentOwnCardId; |
|
99 QMap<QContactLocalId, QSet<QContactLocalId> > m_groupContents; |
93 #ifdef CNTSYMBIANDATABASE_UNIT_TEST |
100 #ifdef CNTSYMBIANDATABASE_UNIT_TEST |
94 friend class TestCntSymbianDatabase; |
101 friend class TestCntSymbianDatabase; |
95 #endif //CNTSYMBIANDATABASE_UNIT_TEST |
102 #endif //CNTSYMBIANDATABASE_UNIT_TEST |
96 }; |
103 }; |
97 |
104 |