summaryrefslogtreecommitdiff
path: root/indra/newview/lldonotdisturbnotificationstorage.h
diff options
context:
space:
mode:
Diffstat (limited to 'indra/newview/lldonotdisturbnotificationstorage.h')
-rw-r--r--indra/newview/lldonotdisturbnotificationstorage.h22
1 files changed, 21 insertions, 1 deletions
diff --git a/indra/newview/lldonotdisturbnotificationstorage.h b/indra/newview/lldonotdisturbnotificationstorage.h
index 60bcd89ec3..fd03b71357 100644
--- a/indra/newview/lldonotdisturbnotificationstorage.h
+++ b/indra/newview/lldonotdisturbnotificationstorage.h
@@ -28,12 +28,26 @@
#define LL_LLDONOTDISTURBNOTIFICATIONSTORAGE_H
#include "llerror.h"
+#include "lleventtimer.h"
#include "llnotifications.h"
#include "llnotificationstorage.h"
#include "llsingleton.h"
class LLSD;
+class LLDoNotDisturbNotificationStorageTimer : public LLEventTimer
+{
+public:
+ LLDoNotDisturbNotificationStorageTimer();
+ ~LLDoNotDisturbNotificationStorageTimer();
+
+public:
+ void startTimer();
+ void stopTimer();
+ bool isRunning();
+ BOOL tick();
+};
+
class LLDoNotDisturbNotificationStorage : public LLSingleton<LLDoNotDisturbNotificationStorage>, public LLNotificationStorage
{
LOG_CLASS(LLDoNotDisturbNotificationStorage);
@@ -42,13 +56,19 @@ public:
~LLDoNotDisturbNotificationStorage();
void initialize();
-
+ bool getDirty();
+ void resetDirty();
void saveNotifications();
void loadNotifications();
+ void updateNotifications();
+ void removeIMNotification(const LLUUID& session_id);
protected:
private:
+ bool mDirty;
+ LLDoNotDisturbNotificationStorageTimer mTimer;
+
LLNotificationChannelPtr getCommunicationChannel() const;
bool onChannelChanged(const LLSD& pPayload);
};