107 { |
107 { |
108 Q_OBJECT |
108 Q_OBJECT |
109 |
109 |
110 public: |
110 public: |
111 QContactTrackerEngine(const QString& managerName, int managerVersion, const QMap<QString, QString>& parameters); |
111 QContactTrackerEngine(const QString& managerName, int managerVersion, const QMap<QString, QString>& parameters); |
112 QContactTrackerEngine(const QMap<QString, QString>& parameters); |
112 QContactTrackerEngine(const QMap<QString, QString>& parameters); // XXX FIXME: I don't think this is used in your factory code either? |
113 QContactTrackerEngine(const QContactTrackerEngine& other); |
113 QContactTrackerEngine(const QContactTrackerEngine& other); // XXX FIXME: not used in your factory code...? |
114 ~QContactTrackerEngine(); |
114 ~QContactTrackerEngine(); |
115 QContactTrackerEngine& operator=(const QContactTrackerEngine& other); |
115 QContactTrackerEngine& operator=(const QContactTrackerEngine& other); // XXX FIXME: not used in your factory code...? |
116 QContactManagerEngine* clone(); |
116 QContactManagerEngine* clone(); // XXX FIXME: no longer part of the engine API |
117 void deref(); |
117 void deref(); // XXX FIXME: no longer part of the engine API |
118 |
118 |
119 // sync methods, wrapping async methods & waitForFinished |
119 // sync methods, wrapping async methods & waitForFinished |
120 QList<QContactLocalId> contactIds(const QList<QContactSortOrder>& sortOrders, QContactManager::Error& error) const; |
120 QList<QContactLocalId> contactIds(const QList<QContactSortOrder>& sortOrders, QContactManager::Error* error) const; // XXX FIXME: no longer part of engine API. |
121 QList<QContactLocalId> contactIds(const QContactFilter& filter, const QList<QContactSortOrder>& sortOrders, QContactManager::Error& error) const; |
121 QList<QContactLocalId> contactIds(const QContactFilter& filter, const QList<QContactSortOrder>& sortOrders, QContactManager::Error* error) const; |
122 QList<QContact> contacts(const QList<QContactSortOrder>& sortOrders, const QStringList& definitionRestrictions, QContactManager::Error& error) const; |
122 QList<QContact> contacts(const QContactFilter& filter, const QList<QContactSortOrder>& sortOrders, const QContactFetchHint& fetchHint, QContactManager::Error* error) const; |
123 QList<QContact> contacts(const QContactFilter& filter, const QList<QContactSortOrder>& sortOrders, const QStringList& definitionRestrictions, QContactManager::Error& error) const; |
123 QContact contact(const QContactLocalId& contactId, const QContactFetchHint& fetchHint, QContactManager::Error* error) const; |
124 QContact contact(const QContactLocalId& contactId, QContactManager::Error& error) const; |
|
125 |
124 |
126 /* Save contacts - single and in batch */ |
125 /* Save contacts - single and in batch */ |
127 bool saveContact( QContact* contact, QContactManager::Error& error); |
126 bool saveContact( QContact* contact, QContactManager::Error* error); |
128 bool saveContacts(QList<QContact>* contacts, QMap<int, QContactManager::Error>* errorMap, QContactManager::Error& error); |
127 bool saveContacts(QList<QContact>* contacts, QMap<int, QContactManager::Error>* errorMap, QContactManager::Error* error); |
129 |
128 |
130 bool removeContact(const QContactLocalId& contactId, QContactManager::Error& error); |
129 bool removeContact(const QContactLocalId& contactId, QContactManager::Error* error); |
131 bool removeContacts(QList<QContactLocalId>* contactIds, QMap<int, QContactManager::Error>* errorMap, QContactManager::Error& error) ; |
130 bool removeContacts(const QList<QContactLocalId>& contactIds, QMap<int, QContactManager::Error>* errorMap, QContactManager::Error* error) ; |
132 |
131 |
133 /* Definitions - Accessors and Mutators */ |
132 /* Definitions - Accessors and Mutators */ |
134 QMap<QString, QContactDetailDefinition> detailDefinitions(const QString& contactType, QContactManager::Error& error) const; |
133 QMap<QString, QContactDetailDefinition> detailDefinitions(const QString& contactType, QContactManager::Error* error) const; |
|
134 |
|
135 QContactLocalId selfContactId(QContactManager::Error* error) const; |
135 |
136 |
136 /* Asynchronous Request Support */ |
137 /* Asynchronous Request Support */ |
137 void requestDestroyed(QContactAbstractRequest* req); |
138 void requestDestroyed(QContactAbstractRequest* req); |
138 bool startRequest(QContactAbstractRequest* req); |
139 bool startRequest(QContactAbstractRequest* req); |
139 bool waitForRequestFinished(QContactAbstractRequest* req, int msecs); |
140 bool waitForRequestFinished(QContactAbstractRequest* req, int msecs); |
140 |
141 |
141 /* Capabilities reporting */ |
142 /* Capabilities reporting */ |
142 bool hasFeature(QContactManager::ManagerFeature feature) const; |
143 bool hasFeature(QContactManager::ManagerFeature feature, const QString& contactType) const; |
143 bool filterSupported(const QContactFilter& filter) const; |
144 |
|
145 bool isFilterSupported(const QContactFilter& filter) const; |
144 QList<QVariant::Type> supportedDataTypes() const; |
146 QList<QVariant::Type> supportedDataTypes() const; |
145 |
147 |
146 /* Version Reporting */ |
148 /* Version Reporting */ |
147 QString managerName() const; |
149 QString managerName() const; |
148 int implementationVersion() const; |
150 int managerVersion() const; |
149 |
151 |
150 /* Synthesise the display label of a contact */ |
152 /* Synthesise the display label of a contact */ |
151 QString synthesizedDisplayLabel(const QContact& contact, QContactManager::Error& error) const; |
153 QString synthesizedDisplayLabel(const QContact& contact, QContactManager::Error* error) const; |
|
154 |
|
155 |
|
156 |
|
157 /* XXX TODO: pure virtual unimplemented functions! */ |
|
158 QMap<QString, QString> managerParameters() const {return QMap<QString,QString>();} |
|
159 bool setSelfContactId(const QContactLocalId&, QContactManager::Error* error) {*error = QContactManager::NotSupportedError; return false;} |
|
160 QList<QContactRelationship> relationships(const QString&, const QContactId&, QContactRelationship::Role, QContactManager::Error* error) const {*error = QContactManager::NotSupportedError; return QList<QContactRelationship>();} |
|
161 bool saveRelationships(QList<QContactRelationship>*, QMap<int, QContactManager::Error>*, QContactManager::Error* error) {*error = QContactManager::NotSupportedError; return false;} |
|
162 bool removeRelationships(const QList<QContactRelationship>&, QMap<int, QContactManager::Error>*, QContactManager::Error* error) {*error = QContactManager::NotSupportedError; return false;} |
|
163 QContact compatibleContact(const QContact&, QContactManager::Error* error) const {*error = QContactManager::NotSupportedError; return QContact();} |
|
164 bool validateContact(const QContact&, QContactManager::Error* error) const {*error = QContactManager::NotSupportedError; return false;} |
|
165 bool validateDefinition(const QContactDetailDefinition&, QContactManager::Error* error) const {*error = QContactManager::NotSupportedError; return false;} |
|
166 QContactDetailDefinition detailDefinition(const QString&, const QString&, QContactManager::Error* error) const {*error = QContactManager::NotSupportedError; return QContactDetailDefinition();} |
|
167 bool saveDetailDefinition(const QContactDetailDefinition&, const QString&, QContactManager::Error* error) {*error = QContactManager::NotSupportedError; return false;} |
|
168 bool removeDetailDefinition(const QString&, const QString&, QContactManager::Error* error) {*error = QContactManager::NotSupportedError; return false;} |
|
169 bool cancelRequest(QContactAbstractRequest*) {return false;} |
|
170 bool isRelationshipTypeSupported(const QString&, const QString&) const {return false;} |
|
171 QStringList supportedContactTypes() const {return (QStringList() << QContactType::TypeContact);} |
152 |
172 |
153 |
173 |
154 private: |
174 private: |
155 //called from both constructors, connecting to all contact NodeList changes signals |
175 //called from both constructors, connecting to all contact NodeList changes signals |
156 void connectToSignals(); |
176 void connectToSignals(); |
157 RDFVariable contactDetail2Rdf(const RDFVariable& rdfContact, const QString& definitionName, const QString& fieldName) const; |
177 RDFVariable contactDetail2Rdf(const RDFVariable& rdfContact, const QString& definitionName, const QString& fieldName) const; |
158 QContact contact_impl(const QContactLocalId& contactId, QContactManager::Error& error) const; |
178 QContact contact_impl(const QContactLocalId& contactId, const QContactFetchHint& fetchHint, QContactManager::Error* error) const; |
159 private: |
179 private: |
160 QSharedDataPointer<QContactTrackerEngineData> d; |
180 QSharedDataPointer<QContactTrackerEngineData> d; |
161 const QString contactArchiveFile; |
181 const QString contactArchiveFile; |
162 const QString contactArchiveDir; |
182 const QString contactArchiveDir; |
163 friend class ut_qtcontacts_trackerplugin; |
183 friend class ut_qtcontacts_trackerplugin; |