| Index: components/gcm_driver/gcm_driver_desktop.cc
|
| diff --git a/components/gcm_driver/gcm_driver_desktop.cc b/components/gcm_driver/gcm_driver_desktop.cc
|
| index 1303152f20aa0b5342f804da7b576483127abcc3..001b0183f8304cc051177294ebb8e14dfa020877 100644
|
| --- a/components/gcm_driver/gcm_driver_desktop.cc
|
| +++ b/components/gcm_driver/gcm_driver_desktop.cc
|
| @@ -22,13 +22,6 @@
|
|
|
| namespace gcm {
|
|
|
| -namespace {
|
| -
|
| -// Empty string is reserved for the default app handler.
|
| -const char kDefaultAppHandler[] = "";
|
| -
|
| -} // namespace
|
| -
|
| // Helper class to save tasks to run until we're ready to execute them.
|
| class GCMDriverDesktop::DelayedTaskController {
|
| public:
|
| @@ -463,6 +456,15 @@ void GCMDriverDesktop::RemoveAppHandler(const std::string& app_id) {
|
| Stop();
|
| }
|
|
|
| +void GCMDriverDesktop::AddConnectionObserver(GCMConnectionObserver* observer) {
|
| + connection_observer_list_.AddObserver(observer);
|
| +}
|
| +
|
| +void GCMDriverDesktop::RemoveConnectionObserver(
|
| + GCMConnectionObserver* observer) {
|
| + connection_observer_list_.RemoveObserver(observer);
|
| +}
|
| +
|
| void GCMDriverDesktop::Enable() {
|
| DCHECK(ui_thread_->RunsTasksOnCurrentThread());
|
|
|
| @@ -759,13 +761,9 @@ void GCMDriverDesktop::OnConnected(const net::IPEndPoint& ip_endpoint) {
|
| if (!gcm_started_)
|
| return;
|
|
|
| - const GCMAppHandlerMap& app_handler_map = app_handlers();
|
| - for (GCMAppHandlerMap::const_iterator iter = app_handler_map.begin();
|
| - iter != app_handler_map.end(); ++iter) {
|
| - iter->second->OnConnected(ip_endpoint);
|
| - }
|
| -
|
| - GetAppHandler(kDefaultAppHandler)->OnConnected(ip_endpoint);
|
| + FOR_EACH_OBSERVER(GCMConnectionObserver,
|
| + connection_observer_list_,
|
| + OnConnected(ip_endpoint));
|
| }
|
|
|
| void GCMDriverDesktop::OnDisconnected() {
|
| @@ -777,13 +775,8 @@ void GCMDriverDesktop::OnDisconnected() {
|
| if (!gcm_started_)
|
| return;
|
|
|
| - const GCMAppHandlerMap& app_handler_map = app_handlers();
|
| - for (GCMAppHandlerMap::const_iterator iter = app_handler_map.begin();
|
| - iter != app_handler_map.end(); ++iter) {
|
| - iter->second->OnDisconnected();
|
| - }
|
| -
|
| - GetAppHandler(kDefaultAppHandler)->OnDisconnected();
|
| + FOR_EACH_OBSERVER(
|
| + GCMConnectionObserver, connection_observer_list_, OnDisconnected());
|
| }
|
|
|
| void GCMDriverDesktop::GetGCMStatisticsFinished(
|
|
|