OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef CHROME_BROWSER_EXTENSIONS_EXTENSION_GCM_APP_HANDLER_H_ | 5 #ifndef CHROME_BROWSER_EXTENSIONS_EXTENSION_GCM_APP_HANDLER_H_ |
6 #define CHROME_BROWSER_EXTENSIONS_EXTENSION_GCM_APP_HANDLER_H_ | 6 #define CHROME_BROWSER_EXTENSIONS_EXTENSION_GCM_APP_HANDLER_H_ |
7 | 7 |
8 #include <string> | 8 #include <string> |
9 | 9 |
10 #include "base/compiler_specific.h" | 10 #include "base/compiler_specific.h" |
(...skipping 28 matching lines...) Expand all Loading... |
39 public ExtensionRegistryObserver { | 39 public ExtensionRegistryObserver { |
40 public: | 40 public: |
41 explicit ExtensionGCMAppHandler(content::BrowserContext* context); | 41 explicit ExtensionGCMAppHandler(content::BrowserContext* context); |
42 virtual ~ExtensionGCMAppHandler(); | 42 virtual ~ExtensionGCMAppHandler(); |
43 | 43 |
44 // BrowserContextKeyedAPI implementation. | 44 // BrowserContextKeyedAPI implementation. |
45 static BrowserContextKeyedAPIFactory<ExtensionGCMAppHandler>* | 45 static BrowserContextKeyedAPIFactory<ExtensionGCMAppHandler>* |
46 GetFactoryInstance(); | 46 GetFactoryInstance(); |
47 | 47 |
48 // gcm::GCMAppHandler implementation. | 48 // gcm::GCMAppHandler implementation. |
49 virtual void ShutdownHandler() OVERRIDE; | 49 virtual void ShutdownHandler() override; |
50 virtual void OnMessage( | 50 virtual void OnMessage( |
51 const std::string& app_id, | 51 const std::string& app_id, |
52 const gcm::GCMClient::IncomingMessage& message) OVERRIDE; | 52 const gcm::GCMClient::IncomingMessage& message) override; |
53 virtual void OnMessagesDeleted(const std::string& app_id) OVERRIDE; | 53 virtual void OnMessagesDeleted(const std::string& app_id) override; |
54 virtual void OnSendError( | 54 virtual void OnSendError( |
55 const std::string& app_id, | 55 const std::string& app_id, |
56 const gcm::GCMClient::SendErrorDetails& send_error_details) OVERRIDE; | 56 const gcm::GCMClient::SendErrorDetails& send_error_details) override; |
57 virtual void OnSendAcknowledged(const std::string& app_id, | 57 virtual void OnSendAcknowledged(const std::string& app_id, |
58 const std::string& message_id) OVERRIDE; | 58 const std::string& message_id) override; |
59 | 59 |
60 protected: | 60 protected: |
61 // Could be overridden by testing purpose. | 61 // Could be overridden by testing purpose. |
62 virtual void OnUnregisterCompleted(const std::string& app_id, | 62 virtual void OnUnregisterCompleted(const std::string& app_id, |
63 gcm::GCMClient::Result result); | 63 gcm::GCMClient::Result result); |
64 virtual void AddAppHandler(const std::string& app_id); | 64 virtual void AddAppHandler(const std::string& app_id); |
65 virtual void RemoveAppHandler(const std::string& app_id); | 65 virtual void RemoveAppHandler(const std::string& app_id); |
66 | 66 |
67 gcm::GCMDriver* GetGCMDriver() const; | 67 gcm::GCMDriver* GetGCMDriver() const; |
68 | 68 |
69 private: | 69 private: |
70 friend class BrowserContextKeyedAPIFactory<ExtensionGCMAppHandler>; | 70 friend class BrowserContextKeyedAPIFactory<ExtensionGCMAppHandler>; |
71 | 71 |
72 // ExtensionRegistryObserver implementation. | 72 // ExtensionRegistryObserver implementation. |
73 virtual void OnExtensionLoaded(content::BrowserContext* browser_context, | 73 virtual void OnExtensionLoaded(content::BrowserContext* browser_context, |
74 const Extension* extension) OVERRIDE; | 74 const Extension* extension) override; |
75 virtual void OnExtensionUnloaded( | 75 virtual void OnExtensionUnloaded( |
76 content::BrowserContext* browser_context, | 76 content::BrowserContext* browser_context, |
77 const Extension* extension, | 77 const Extension* extension, |
78 UnloadedExtensionInfo::Reason reason) OVERRIDE; | 78 UnloadedExtensionInfo::Reason reason) override; |
79 virtual void OnExtensionUninstalled( | 79 virtual void OnExtensionUninstalled( |
80 content::BrowserContext* browser_context, | 80 content::BrowserContext* browser_context, |
81 const Extension* extension, | 81 const Extension* extension, |
82 extensions::UninstallReason reason) OVERRIDE; | 82 extensions::UninstallReason reason) override; |
83 | 83 |
84 void AddDummyAppHandler(); | 84 void AddDummyAppHandler(); |
85 void RemoveDummyAppHandler(); | 85 void RemoveDummyAppHandler(); |
86 | 86 |
87 // BrowserContextKeyedAPI implementation. | 87 // BrowserContextKeyedAPI implementation. |
88 static const char* service_name() { return "ExtensionGCMAppHandler"; } | 88 static const char* service_name() { return "ExtensionGCMAppHandler"; } |
89 static const bool kServiceIsNULLWhileTesting = true; | 89 static const bool kServiceIsNULLWhileTesting = true; |
90 | 90 |
91 Profile* profile_; | 91 Profile* profile_; |
92 | 92 |
93 // Listen to extension load, unloaded notifications. | 93 // Listen to extension load, unloaded notifications. |
94 ScopedObserver<ExtensionRegistry, ExtensionRegistryObserver> | 94 ScopedObserver<ExtensionRegistry, ExtensionRegistryObserver> |
95 extension_registry_observer_; | 95 extension_registry_observer_; |
96 | 96 |
97 scoped_ptr<extensions::GcmJsEventRouter> js_event_router_; | 97 scoped_ptr<extensions::GcmJsEventRouter> js_event_router_; |
98 | 98 |
99 base::WeakPtrFactory<ExtensionGCMAppHandler> weak_factory_; | 99 base::WeakPtrFactory<ExtensionGCMAppHandler> weak_factory_; |
100 | 100 |
101 DISALLOW_COPY_AND_ASSIGN(ExtensionGCMAppHandler); | 101 DISALLOW_COPY_AND_ASSIGN(ExtensionGCMAppHandler); |
102 }; | 102 }; |
103 | 103 |
104 } // namespace extensions | 104 } // namespace extensions |
105 | 105 |
106 #endif // CHROME_BROWSER_EXTENSIONS_EXTENSION_GCM_APP_HANDLER_H_ | 106 #endif // CHROME_BROWSER_EXTENSIONS_EXTENSION_GCM_APP_HANDLER_H_ |
OLD | NEW |