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 #include "chrome/browser/extensions/api/copresence/copresence_api.h" | 5 #include "chrome/browser/extensions/api/copresence/copresence_api.h" |
6 | 6 |
7 #include "base/lazy_instance.h" | 7 #include "base/lazy_instance.h" |
8 #include "base/memory/linked_ptr.h" | 8 #include "base/memory/linked_ptr.h" |
9 #include "base/prefs/pref_service.h" | 9 #include "base/prefs/pref_service.h" |
10 #include "chrome/browser/copresence/chrome_whispernet_client.h" | 10 #include "chrome/browser/copresence/chrome_whispernet_client.h" |
(...skipping 128 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
139 return; | 139 return; |
140 } | 140 } |
141 | 141 |
142 int message_count = messages.size(); | 142 int message_count = messages.size(); |
143 std::vector<linked_ptr<api::copresence::Message>> api_messages( | 143 std::vector<linked_ptr<api::copresence::Message>> api_messages( |
144 message_count); | 144 message_count); |
145 | 145 |
146 for (int m = 0; m < message_count; ++m) { | 146 for (int m = 0; m < message_count; ++m) { |
147 api_messages[m].reset(new api::copresence::Message); | 147 api_messages[m].reset(new api::copresence::Message); |
148 api_messages[m]->type = messages[m].type().type(); | 148 api_messages[m]->type = messages[m].type().type(); |
149 api_messages[m]->payload = messages[m].payload(); | 149 api_messages[m]->payload.assign(messages[m].payload().begin(), |
| 150 messages[m].payload().end()); |
150 DVLOG(2) << "Dispatching message of type " << api_messages[m]->type << ":\n" | 151 DVLOG(2) << "Dispatching message of type " << api_messages[m]->type << ":\n" |
151 << api_messages[m]->payload; | 152 << messages[m].payload(); |
152 } | 153 } |
153 | 154 |
154 // Send the messages to the client app. | 155 // Send the messages to the client app. |
155 scoped_ptr<Event> event( | 156 scoped_ptr<Event> event( |
156 new Event(api::copresence::OnMessagesReceived::kEventName, | 157 new Event(api::copresence::OnMessagesReceived::kEventName, |
157 api::copresence::OnMessagesReceived::Create(subscription_id, | 158 api::copresence::OnMessagesReceived::Create(subscription_id, |
158 api_messages), | 159 api_messages), |
159 browser_context_)); | 160 browser_context_)); |
160 EventRouter::Get(browser_context_) | 161 EventRouter::Get(browser_context_) |
161 ->DispatchEventToExtension(app_id, event.Pass()); | 162 ->DispatchEventToExtension(app_id, event.Pass()); |
(...skipping 131 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
293 api::copresence::SetAuthToken::Params::Create(*args_)); | 294 api::copresence::SetAuthToken::Params::Create(*args_)); |
294 EXTENSION_FUNCTION_VALIDATE(params.get()); | 295 EXTENSION_FUNCTION_VALIDATE(params.get()); |
295 | 296 |
296 // The token may be set to empty, to clear it. | 297 // The token may be set to empty, to clear it. |
297 CopresenceService::GetFactoryInstance()->Get(browser_context()) | 298 CopresenceService::GetFactoryInstance()->Get(browser_context()) |
298 ->set_auth_token(extension_id(), params->token); | 299 ->set_auth_token(extension_id(), params->token); |
299 return RespondNow(NoArguments()); | 300 return RespondNow(NoArguments()); |
300 } | 301 } |
301 | 302 |
302 } // namespace extensions | 303 } // namespace extensions |
OLD | NEW |