[refactor] More post-NSS WebCrypto cleanups (utility functions).
[chromium-blink-merge.git] / content / browser / notifications / notification_event_dispatcher_impl.h
blobe9fcc3016c52814712b4803bce6acdab6b236523
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.
5 #ifndef CONTENT_BROWSER_NOTIFICATIONS_NOTIFICATION_EVENT_DISPATCHER_IMPL_H_
6 #define CONTENT_BROWSER_NOTIFICATIONS_NOTIFICATION_EVENT_DISPATCHER_IMPL_H_
8 #include "base/memory/singleton.h"
9 #include "content/public/browser/notification_event_dispatcher.h"
11 namespace content {
13 class NotificationEventDispatcherImpl : public NotificationEventDispatcher {
14 public:
15 // Returns the instance of the NotificationEventDispatcherImpl. Must be called
16 // on the UI thread.
17 static NotificationEventDispatcherImpl* GetInstance();
19 // NotificationEventDispatcher implementation.
20 void DispatchNotificationClickEvent(
21 BrowserContext* browser_context,
22 int64_t persistent_notification_id,
23 const GURL& origin,
24 int action_index,
25 const NotificationClickDispatchCompleteCallback&
26 dispatch_complete_callback) override;
28 private:
29 NotificationEventDispatcherImpl();
30 ~NotificationEventDispatcherImpl() override;
32 friend struct base::DefaultSingletonTraits<NotificationEventDispatcherImpl>;
34 DISALLOW_COPY_AND_ASSIGN(NotificationEventDispatcherImpl);
37 } // namespace content
39 #endif // CONTENT_BROWSER_NOTIFICATIONS_NOTIFICATION_EVENT_DISPATCHER_IMPL_H_