OLD | NEW |
(Empty) | |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. |
| 4 |
| 5 #ifndef CHROME_BROWSER_NOTIFICATIONS_GOOGLE_NOW_NOTIFICATION_STATS_COLLECTOR_H_ |
| 6 #define CHROME_BROWSER_NOTIFICATIONS_GOOGLE_NOW_NOTIFICATION_STATS_COLLECTOR_H_ |
| 7 |
| 8 #include <string> |
| 9 |
| 10 #include "ui/message_center/message_center.h" |
| 11 #include "ui/message_center/message_center_observer.h" |
| 12 #include "ui/message_center/message_center_types.h" |
| 13 |
| 14 // The Google Now Notification Stats Collector listens for message center |
| 15 // events and records stats about Google Now specific notifications. |
| 16 class GoogleNowNotificationStatsCollector |
| 17 : public message_center::MessageCenterObserver { |
| 18 public: |
| 19 explicit GoogleNowNotificationStatsCollector( |
| 20 message_center::MessageCenter* message_center); |
| 21 virtual ~GoogleNowNotificationStatsCollector(); |
| 22 |
| 23 private: |
| 24 // MessageCenterObserver |
| 25 virtual void OnNotificationDisplayed( |
| 26 const std::string& notification_id, |
| 27 const message_center::DisplaySource source) OVERRIDE; |
| 28 virtual void OnCenterVisibilityChanged( |
| 29 message_center::Visibility visibility) OVERRIDE; |
| 30 |
| 31 // Counts the number of Google Now Notifications in the message center. |
| 32 int CountVisibleGoogleNowNotifications(); |
| 33 |
| 34 // Returns true if the notification ID is for Google Now. |
| 35 bool IsNotificationIdForGoogleNow(const std::string& notification_id); |
| 36 |
| 37 // Weak, global. |
| 38 message_center::MessageCenter* message_center_; |
| 39 |
| 40 DISALLOW_COPY_AND_ASSIGN(GoogleNowNotificationStatsCollector); |
| 41 }; |
| 42 |
| 43 #endif // CHROME_BROWSER_NOTIFICATIONS_GOOGLE_NOW_NOTIFICATION_STATS_COLLECTOR_
H_ |
OLD | NEW |