OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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 #include "chrome/browser/extensions/api/gcm/gcm_api.h" | 5 #include "chrome/browser/extensions/api/gcm/gcm_api.h" |
6 | 6 |
7 #include <stddef.h> | 7 #include <stddef.h> |
8 | |
9 #include <algorithm> | 8 #include <algorithm> |
10 #include <map> | 9 #include <map> |
| 10 #include <utility> |
11 #include <vector> | 11 #include <vector> |
12 | 12 |
13 #include "base/macros.h" | 13 #include "base/macros.h" |
14 #include "base/metrics/histogram.h" | 14 #include "base/metrics/histogram.h" |
15 #include "base/strings/string_number_conversions.h" | 15 #include "base/strings/string_number_conversions.h" |
16 #include "base/strings/string_util.h" | 16 #include "base/strings/string_util.h" |
17 #include "chrome/browser/profiles/profile.h" | 17 #include "chrome/browser/profiles/profile.h" |
18 #include "chrome/browser/profiles/profile.h" | 18 #include "chrome/browser/profiles/profile.h" |
19 #include "chrome/browser/services/gcm/gcm_profile_service_factory.h" | 19 #include "chrome/browser/services/gcm/gcm_profile_service_factory.h" |
20 #include "chrome/common/extensions/api/gcm.h" | 20 #include "chrome/common/extensions/api/gcm.h" |
(...skipping 191 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
212 const gcm::IncomingMessage& message) { | 212 const gcm::IncomingMessage& message) { |
213 api::gcm::OnMessage::Message message_arg; | 213 api::gcm::OnMessage::Message message_arg; |
214 message_arg.data.additional_properties = message.data; | 214 message_arg.data.additional_properties = message.data; |
215 if (!message.sender_id.empty()) | 215 if (!message.sender_id.empty()) |
216 message_arg.from.reset(new std::string(message.sender_id)); | 216 message_arg.from.reset(new std::string(message.sender_id)); |
217 if (!message.collapse_key.empty()) | 217 if (!message.collapse_key.empty()) |
218 message_arg.collapse_key.reset(new std::string(message.collapse_key)); | 218 message_arg.collapse_key.reset(new std::string(message.collapse_key)); |
219 | 219 |
220 scoped_ptr<Event> event( | 220 scoped_ptr<Event> event( |
221 new Event(events::GCM_ON_MESSAGE, api::gcm::OnMessage::kEventName, | 221 new Event(events::GCM_ON_MESSAGE, api::gcm::OnMessage::kEventName, |
222 api::gcm::OnMessage::Create(message_arg).Pass(), profile_)); | 222 api::gcm::OnMessage::Create(message_arg), profile_)); |
223 EventRouter::Get(profile_)->DispatchEventToExtension(app_id, event.Pass()); | 223 EventRouter::Get(profile_) |
| 224 ->DispatchEventToExtension(app_id, std::move(event)); |
224 } | 225 } |
225 | 226 |
226 void GcmJsEventRouter::OnMessagesDeleted(const std::string& app_id) { | 227 void GcmJsEventRouter::OnMessagesDeleted(const std::string& app_id) { |
227 scoped_ptr<Event> event(new Event( | 228 scoped_ptr<Event> event(new Event( |
228 events::GCM_ON_MESSAGES_DELETED, api::gcm::OnMessagesDeleted::kEventName, | 229 events::GCM_ON_MESSAGES_DELETED, api::gcm::OnMessagesDeleted::kEventName, |
229 api::gcm::OnMessagesDeleted::Create().Pass(), profile_)); | 230 api::gcm::OnMessagesDeleted::Create(), profile_)); |
230 EventRouter::Get(profile_)->DispatchEventToExtension(app_id, event.Pass()); | 231 EventRouter::Get(profile_) |
| 232 ->DispatchEventToExtension(app_id, std::move(event)); |
231 } | 233 } |
232 | 234 |
233 void GcmJsEventRouter::OnSendError( | 235 void GcmJsEventRouter::OnSendError( |
234 const std::string& app_id, | 236 const std::string& app_id, |
235 const gcm::GCMClient::SendErrorDetails& send_error_details) { | 237 const gcm::GCMClient::SendErrorDetails& send_error_details) { |
236 api::gcm::OnSendError::Error error; | 238 api::gcm::OnSendError::Error error; |
237 error.message_id.reset(new std::string(send_error_details.message_id)); | 239 error.message_id.reset(new std::string(send_error_details.message_id)); |
238 error.error_message = GcmResultToError(send_error_details.result); | 240 error.error_message = GcmResultToError(send_error_details.result); |
239 error.details.additional_properties = send_error_details.additional_data; | 241 error.details.additional_properties = send_error_details.additional_data; |
240 | 242 |
241 scoped_ptr<Event> event( | 243 scoped_ptr<Event> event( |
242 new Event(events::GCM_ON_SEND_ERROR, api::gcm::OnSendError::kEventName, | 244 new Event(events::GCM_ON_SEND_ERROR, api::gcm::OnSendError::kEventName, |
243 api::gcm::OnSendError::Create(error).Pass(), profile_)); | 245 api::gcm::OnSendError::Create(error), profile_)); |
244 EventRouter::Get(profile_)->DispatchEventToExtension(app_id, event.Pass()); | 246 EventRouter::Get(profile_) |
| 247 ->DispatchEventToExtension(app_id, std::move(event)); |
245 } | 248 } |
246 | 249 |
247 } // namespace extensions | 250 } // namespace extensions |
OLD | NEW |