#define DBBACKENDS_RTCOMEVENTLOGGER_H
#include "iDBBackend.h"
-
-class Settings;
+#include "Settings.h"
class _RTComElAttachment;
typedef _RTComElAttachment RTComElAttachment;
class _RTComElEvent;
typedef _RTComElEvent RTComElEvent;
+class _RTComEl;
+typedef _RTComEl RTComEl;
template <typename T1> class QList;
+class QString;
#include <QHash>
RtcomEventLogger(const Settings &settings, const EventTypes::RtcomEvent &event);
virtual void Insert(EventTypes::iEvent &event, const NumberToNameLookup &numberToNameLookup);
+ virtual void PostInsert();
virtual void Process(EventProcessors::iEventProcessor &eventProcessor);
protected:
protected:
virtual EventTypes::iEvent *const CreateEvent(RTComElEvent &revent, QList<RTComElAttachment*> &rattachments);
+ void ProcessService(EventProcessors::iEventProcessor &processor, const EventTypes::eEventTypes service, const RTComEl &el);
+
+ virtual const QList<int> &InsertedIDs() const { return m_InsertedIDs; }
+
+ public:
+ virtual void ClearInsertedIDs();
private:
- const Settings &m_Settings;
+ void Reindex();
+ QList<int> &InsertedIDs() { return m_InsertedIDs; }
- enum ServiceID
- {
- SERVICE_ID_CALL,
- SERVICE_ID_CHAT,
- SERVICE_ID_SMS,
- SERVICE_ID_MMS,
- SERVICE_ID_SIZE
- };
+ private:
+ const Settings &m_Settings;
+ const QString mk_DBPath;
+ QList<int> m_InsertedIDs;
- QHash<ServiceID, int> m_ServiceIDs;
+ QHash<EventTypes::eEventTypes, int> m_ServiceIDs;
};
}