| OLD | NEW |
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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 "headless/lib/browser/headless_devtools_client_impl.h" | 5 #include "headless/lib/browser/headless_devtools_client_impl.h" |
| 6 | 6 |
| 7 #include <memory> | 7 #include <memory> |
| 8 | 8 |
| 9 #include "base/bind.h" | 9 #include "base/bind.h" |
| 10 #include "base/json/json_reader.h" | 10 #include "base/json/json_reader.h" |
| (...skipping 315 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 326 void HeadlessDevToolsClientImpl::SendMessageWithParams( | 326 void HeadlessDevToolsClientImpl::SendMessageWithParams( |
| 327 const char* method, | 327 const char* method, |
| 328 std::unique_ptr<base::Value> params, | 328 std::unique_ptr<base::Value> params, |
| 329 CallbackType callback) { | 329 CallbackType callback) { |
| 330 base::DictionaryValue message; | 330 base::DictionaryValue message; |
| 331 message.SetString("method", method); | 331 message.SetString("method", method); |
| 332 message.Set("params", std::move(params)); | 332 message.Set("params", std::move(params)); |
| 333 FinalizeAndSendMessage(&message, std::move(callback)); | 333 FinalizeAndSendMessage(&message, std::move(callback)); |
| 334 } | 334 } |
| 335 | 335 |
| 336 template <typename CallbackType> | |
| 337 void HeadlessDevToolsClientImpl::SendMessageWithoutParams( | |
| 338 const char* method, | |
| 339 CallbackType callback) { | |
| 340 base::DictionaryValue message; | |
| 341 message.SetString("method", method); | |
| 342 FinalizeAndSendMessage(&message, std::move(callback)); | |
| 343 } | |
| 344 | |
| 345 void HeadlessDevToolsClientImpl::SendMessage( | 336 void HeadlessDevToolsClientImpl::SendMessage( |
| 346 const char* method, | 337 const char* method, |
| 347 std::unique_ptr<base::Value> params, | 338 std::unique_ptr<base::Value> params, |
| 348 base::Callback<void(const base::Value&)> callback) { | 339 base::Callback<void(const base::Value&)> callback) { |
| 349 SendMessageWithParams(method, std::move(params), std::move(callback)); | 340 SendMessageWithParams(method, std::move(params), std::move(callback)); |
| 350 } | 341 } |
| 351 | 342 |
| 352 void HeadlessDevToolsClientImpl::SendMessage( | 343 void HeadlessDevToolsClientImpl::SendMessage( |
| 353 const char* method, | 344 const char* method, |
| 354 std::unique_ptr<base::Value> params, | 345 std::unique_ptr<base::Value> params, |
| 355 base::Callback<void()> callback) { | 346 base::Closure callback) { |
| 356 SendMessageWithParams(method, std::move(params), std::move(callback)); | 347 SendMessageWithParams(method, std::move(params), std::move(callback)); |
| 357 } | 348 } |
| 358 | 349 |
| 359 void HeadlessDevToolsClientImpl::SendMessage( | |
| 360 const char* method, | |
| 361 base::Callback<void(const base::Value&)> callback) { | |
| 362 SendMessageWithoutParams(method, std::move(callback)); | |
| 363 } | |
| 364 | |
| 365 void HeadlessDevToolsClientImpl::SendMessage(const char* method, | |
| 366 base::Callback<void()> callback) { | |
| 367 SendMessageWithoutParams(method, std::move(callback)); | |
| 368 } | |
| 369 | |
| 370 void HeadlessDevToolsClientImpl::RegisterEventHandler( | 350 void HeadlessDevToolsClientImpl::RegisterEventHandler( |
| 371 const char* method, | 351 const char* method, |
| 372 base::Callback<void(const base::Value&)> callback) { | 352 base::Callback<void(const base::Value&)> callback) { |
| 373 DCHECK(event_handlers_.find(method) == event_handlers_.end()); | 353 DCHECK(event_handlers_.find(method) == event_handlers_.end()); |
| 374 event_handlers_[method] = callback; | 354 event_handlers_[method] = callback; |
| 375 } | 355 } |
| 376 | 356 |
| 377 HeadlessDevToolsClientImpl::Callback::Callback() {} | 357 HeadlessDevToolsClientImpl::Callback::Callback() {} |
| 378 | 358 |
| 379 HeadlessDevToolsClientImpl::Callback::Callback(Callback&& other) = default; | 359 HeadlessDevToolsClientImpl::Callback::Callback(Callback&& other) = default; |
| 380 | 360 |
| 381 HeadlessDevToolsClientImpl::Callback::Callback(base::Callback<void()> callback) | 361 HeadlessDevToolsClientImpl::Callback::Callback(base::Closure callback) |
| 382 : callback(callback) {} | 362 : callback(callback) {} |
| 383 | 363 |
| 384 HeadlessDevToolsClientImpl::Callback::Callback( | 364 HeadlessDevToolsClientImpl::Callback::Callback( |
| 385 base::Callback<void(const base::Value&)> callback) | 365 base::Callback<void(const base::Value&)> callback) |
| 386 : callback_with_result(callback) {} | 366 : callback_with_result(callback) {} |
| 387 | 367 |
| 388 HeadlessDevToolsClientImpl::Callback::~Callback() {} | 368 HeadlessDevToolsClientImpl::Callback::~Callback() {} |
| 389 | 369 |
| 390 HeadlessDevToolsClientImpl::Callback& HeadlessDevToolsClientImpl::Callback:: | 370 HeadlessDevToolsClientImpl::Callback& HeadlessDevToolsClientImpl::Callback:: |
| 391 operator=(Callback&& other) = default; | 371 operator=(Callback&& other) = default; |
| 392 | 372 |
| 393 } // namespace headless | 373 } // namespace headless |
| OLD | NEW |