qtmobility/src/messaging/eventloggerengine_maemo_p.h
changeset 4 90517678cc4f
child 8 71781823f776
equal deleted inserted replaced
1:2b40d63a9c3d 4:90517678cc4f
       
     1 #ifndef EVENTLOGGERENGINE_H
       
     2 #define EVENTLOGGERENGINE_H
       
     3 #include "qmessageglobal.h"
       
     4 #include "qmessagemanager.h"
       
     5 #include "qmessageaccount.h"
       
     6 #include "qmessageaccountid.h"
       
     7 #include "qmessageaccount_p.h"
       
     8 #include "qmessageaccountfilter.h"
       
     9 #include "qmessageaccountfilter_p.h"
       
    10 #include "qmessageservice.h"
       
    11 #include "qmessage.h"
       
    12 #include "qmessagemanager.h"
       
    13 #include "maemohelpers_p.h"
       
    14 #include "qmessagestore_p.h"
       
    15 #include "qmessage_p.h"
       
    16 #include "qmessagefilter.h"
       
    17 #include "qmessagefilter_p.h"
       
    18 #include "qmessagefolderfilter_p.h"
       
    19 #include <QObject>
       
    20 
       
    21 extern "C" {
       
    22 
       
    23 #include <glib.h>
       
    24 #include <rtcom-eventlogger/eventlogger.h>
       
    25 #include <dbus/dbus.h>
       
    26 #include <dbus/dbus-glib-lowlevel.h>
       
    27 
       
    28 };
       
    29 
       
    30 QTM_BEGIN_NAMESPACE
       
    31 
       
    32 
       
    33 class EventLoggerEngine
       
    34 {
       
    35     
       
    36 public:
       
    37 
       
    38     explicit EventLoggerEngine(QObject *parent = 0);
       
    39     static EventLoggerEngine* instance();
       
    40     void unregisterNotificationFilter(QMessageManager::NotificationFilterId notificationFilterId);
       
    41     QMessageManager::NotificationFilterId registerNotificationFilter(QMessageStorePrivate& aPrivateStore,const QMessageFilter &filter);
       
    42     QMessage message(const QMessageId& id);
       
    43     bool deleteMessage(const QMessageId& id);
       
    44     QMessage eventToMessage(RTComElEvent & ev);
       
    45     void notification(int eventId, QString servive,QMessageStorePrivate::NotificationType notificationType);
       
    46     static void new_event_cb(RTComEl *el,int event_id,
       
    47                              const char *local_uid,const char *remote_uid,const char *remote_ebook_uid,
       
    48                              const char *group_uid,const char *service,EventLoggerEngine *p);
       
    49     void newEvent(int event_id,
       
    50                   const char *local_uid,const char *remote_uid,const char *remote_ebook_uid,
       
    51                   const char *group_uid,const char *service);
       
    52     QMessageIdList filterAndOrderMessages(const QMessageFilter &filter, const QMessageSortOrder& sortOrder,
       
    53 				      QString body, QMessageDataComparator::MatchFlags matchFlags);
       
    54 
       
    55 signals:
       
    56 
       
    57 public slots:
       
    58 
       
    59 private:
       
    60     QMessageStorePrivate* ipMessageStorePrivate;
       
    61     void debugMessage(QMessage &message);
       
    62     RTComEl *el;
       
    63     DBusConnection   * dbus;
       
    64     bool iListenForNotifications;
       
    65     QMessageManager::NotificationFilterId _filterId;
       
    66     QMap<QMessageManager::NotificationFilterId, QMessageFilter> _filters;
       
    67 
       
    68 };
       
    69 
       
    70 QTM_END_NAMESPACE
       
    71 #endif // EVENTLOGGERENGINE_H