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 "extensions/browser/api/networking_private/networking_private_api.h" | 5 #include "extensions/browser/api/networking_private/networking_private_api.h" |
6 | 6 |
7 #include <utility> | 7 #include <utility> |
8 | 8 |
9 #include "base/bind.h" | 9 #include "base/bind.h" |
10 #include "base/bind_helpers.h" | 10 #include "base/bind_helpers.h" |
(...skipping 297 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
308 SendResponse(false); | 308 SendResponse(false); |
309 } | 309 } |
310 | 310 |
311 //////////////////////////////////////////////////////////////////////////////// | 311 //////////////////////////////////////////////////////////////////////////////// |
312 // NetworkingPrivateGetEnabledNetworkTypesFunction | 312 // NetworkingPrivateGetEnabledNetworkTypesFunction |
313 | 313 |
314 NetworkingPrivateGetEnabledNetworkTypesFunction:: | 314 NetworkingPrivateGetEnabledNetworkTypesFunction:: |
315 ~NetworkingPrivateGetEnabledNetworkTypesFunction() { | 315 ~NetworkingPrivateGetEnabledNetworkTypesFunction() { |
316 } | 316 } |
317 | 317 |
318 bool NetworkingPrivateGetEnabledNetworkTypesFunction::RunSync() { | 318 ExtensionFunction::ResponseAction |
| 319 NetworkingPrivateGetEnabledNetworkTypesFunction::Run() { |
319 std::unique_ptr<base::ListValue> enabled_networks_onc_types( | 320 std::unique_ptr<base::ListValue> enabled_networks_onc_types( |
320 GetDelegate(browser_context())->GetEnabledNetworkTypes()); | 321 GetDelegate(browser_context())->GetEnabledNetworkTypes()); |
321 if (!enabled_networks_onc_types) { | 322 if (!enabled_networks_onc_types) |
322 error_ = networking_private::kErrorNotSupported; | 323 return RespondNow(Error(networking_private::kErrorNotSupported)); |
323 return false; | |
324 } | |
325 std::unique_ptr<base::ListValue> enabled_networks_list(new base::ListValue); | 324 std::unique_ptr<base::ListValue> enabled_networks_list(new base::ListValue); |
326 for (base::ListValue::iterator iter = enabled_networks_onc_types->begin(); | 325 for (base::ListValue::iterator iter = enabled_networks_onc_types->begin(); |
327 iter != enabled_networks_onc_types->end(); ++iter) { | 326 iter != enabled_networks_onc_types->end(); ++iter) { |
328 std::string type; | 327 std::string type; |
329 if (!(*iter)->GetAsString(&type)) | 328 if (!(*iter)->GetAsString(&type)) |
330 NOTREACHED(); | 329 NOTREACHED(); |
331 if (type == ::onc::network_type::kEthernet) { | 330 if (type == ::onc::network_type::kEthernet) { |
332 enabled_networks_list->AppendString( | 331 enabled_networks_list->AppendString( |
333 private_api::ToString(private_api::NETWORK_TYPE_ETHERNET)); | 332 private_api::ToString(private_api::NETWORK_TYPE_ETHERNET)); |
334 } else if (type == ::onc::network_type::kWiFi) { | 333 } else if (type == ::onc::network_type::kWiFi) { |
335 enabled_networks_list->AppendString( | 334 enabled_networks_list->AppendString( |
336 private_api::ToString(private_api::NETWORK_TYPE_WIFI)); | 335 private_api::ToString(private_api::NETWORK_TYPE_WIFI)); |
337 } else if (type == ::onc::network_type::kWimax) { | 336 } else if (type == ::onc::network_type::kWimax) { |
338 enabled_networks_list->AppendString( | 337 enabled_networks_list->AppendString( |
339 private_api::ToString(private_api::NETWORK_TYPE_WIMAX)); | 338 private_api::ToString(private_api::NETWORK_TYPE_WIMAX)); |
340 } else if (type == ::onc::network_type::kCellular) { | 339 } else if (type == ::onc::network_type::kCellular) { |
341 enabled_networks_list->AppendString( | 340 enabled_networks_list->AppendString( |
342 private_api::ToString(private_api::NETWORK_TYPE_CELLULAR)); | 341 private_api::ToString(private_api::NETWORK_TYPE_CELLULAR)); |
343 } else { | 342 } else { |
344 LOG(ERROR) << "networkingPrivate: Unexpected type: " << type; | 343 LOG(ERROR) << "networkingPrivate: Unexpected type: " << type; |
345 } | 344 } |
346 } | 345 } |
347 SetResult(std::move(enabled_networks_list)); | 346 return RespondNow(OneArgument(std::move(enabled_networks_list))); |
348 return true; | |
349 } | 347 } |
350 | 348 |
351 //////////////////////////////////////////////////////////////////////////////// | 349 //////////////////////////////////////////////////////////////////////////////// |
352 // NetworkingPrivateGetDeviceStatesFunction | 350 // NetworkingPrivateGetDeviceStatesFunction |
353 | 351 |
354 NetworkingPrivateGetDeviceStatesFunction:: | 352 NetworkingPrivateGetDeviceStatesFunction:: |
355 ~NetworkingPrivateGetDeviceStatesFunction() { | 353 ~NetworkingPrivateGetDeviceStatesFunction() { |
356 } | 354 } |
357 | 355 |
358 bool NetworkingPrivateGetDeviceStatesFunction::RunSync() { | 356 ExtensionFunction::ResponseAction |
| 357 NetworkingPrivateGetDeviceStatesFunction::Run() { |
359 std::unique_ptr<NetworkingPrivateDelegate::DeviceStateList> device_states( | 358 std::unique_ptr<NetworkingPrivateDelegate::DeviceStateList> device_states( |
360 GetDelegate(browser_context())->GetDeviceStateList()); | 359 GetDelegate(browser_context())->GetDeviceStateList()); |
361 if (!device_states) { | 360 if (!device_states) |
362 error_ = networking_private::kErrorNotSupported; | 361 return RespondNow(Error(networking_private::kErrorNotSupported)); |
363 return false; | |
364 } | |
365 | 362 |
366 std::unique_ptr<base::ListValue> device_state_list(new base::ListValue); | 363 std::unique_ptr<base::ListValue> device_state_list(new base::ListValue); |
367 for (const auto& properties : *device_states) | 364 for (const auto& properties : *device_states) |
368 device_state_list->Append(properties->ToValue()); | 365 device_state_list->Append(properties->ToValue()); |
369 SetResult(std::move(device_state_list)); | 366 return RespondNow(OneArgument(std::move(device_state_list))); |
370 return true; | |
371 } | 367 } |
372 | 368 |
373 //////////////////////////////////////////////////////////////////////////////// | 369 //////////////////////////////////////////////////////////////////////////////// |
374 // NetworkingPrivateEnableNetworkTypeFunction | 370 // NetworkingPrivateEnableNetworkTypeFunction |
375 | 371 |
376 NetworkingPrivateEnableNetworkTypeFunction:: | 372 NetworkingPrivateEnableNetworkTypeFunction:: |
377 ~NetworkingPrivateEnableNetworkTypeFunction() { | 373 ~NetworkingPrivateEnableNetworkTypeFunction() { |
378 } | 374 } |
379 | 375 |
380 bool NetworkingPrivateEnableNetworkTypeFunction::RunSync() { | 376 ExtensionFunction::ResponseAction |
| 377 NetworkingPrivateEnableNetworkTypeFunction::Run() { |
381 std::unique_ptr<private_api::EnableNetworkType::Params> params = | 378 std::unique_ptr<private_api::EnableNetworkType::Params> params = |
382 private_api::EnableNetworkType::Params::Create(*args_); | 379 private_api::EnableNetworkType::Params::Create(*args_); |
383 EXTENSION_FUNCTION_VALIDATE(params); | 380 EXTENSION_FUNCTION_VALIDATE(params); |
384 | 381 |
385 return GetDelegate(browser_context()) | 382 if (!GetDelegate(browser_context()) |
386 ->EnableNetworkType(private_api::ToString(params->network_type)); | 383 ->EnableNetworkType(private_api::ToString(params->network_type))) { |
| 384 return RespondNow(Error(networking_private::kErrorNotSupported)); |
| 385 } |
| 386 return RespondNow(NoArguments()); |
387 } | 387 } |
388 | 388 |
389 //////////////////////////////////////////////////////////////////////////////// | 389 //////////////////////////////////////////////////////////////////////////////// |
390 // NetworkingPrivateDisableNetworkTypeFunction | 390 // NetworkingPrivateDisableNetworkTypeFunction |
391 | 391 |
392 NetworkingPrivateDisableNetworkTypeFunction:: | 392 NetworkingPrivateDisableNetworkTypeFunction:: |
393 ~NetworkingPrivateDisableNetworkTypeFunction() { | 393 ~NetworkingPrivateDisableNetworkTypeFunction() { |
394 } | 394 } |
395 | 395 |
396 bool NetworkingPrivateDisableNetworkTypeFunction::RunSync() { | 396 ExtensionFunction::ResponseAction |
| 397 NetworkingPrivateDisableNetworkTypeFunction::Run() { |
397 std::unique_ptr<private_api::DisableNetworkType::Params> params = | 398 std::unique_ptr<private_api::DisableNetworkType::Params> params = |
398 private_api::DisableNetworkType::Params::Create(*args_); | 399 private_api::DisableNetworkType::Params::Create(*args_); |
399 | 400 |
400 return GetDelegate(browser_context()) | 401 if (!GetDelegate(browser_context()) |
401 ->DisableNetworkType(private_api::ToString(params->network_type)); | 402 ->DisableNetworkType(private_api::ToString(params->network_type))) { |
| 403 return RespondNow(Error(networking_private::kErrorNotSupported)); |
| 404 } |
| 405 return RespondNow(NoArguments()); |
402 } | 406 } |
403 | 407 |
404 //////////////////////////////////////////////////////////////////////////////// | 408 //////////////////////////////////////////////////////////////////////////////// |
405 // NetworkingPrivateRequestNetworkScanFunction | 409 // NetworkingPrivateRequestNetworkScanFunction |
406 | 410 |
407 NetworkingPrivateRequestNetworkScanFunction:: | 411 NetworkingPrivateRequestNetworkScanFunction:: |
408 ~NetworkingPrivateRequestNetworkScanFunction() { | 412 ~NetworkingPrivateRequestNetworkScanFunction() { |
409 } | 413 } |
410 | 414 |
411 bool NetworkingPrivateRequestNetworkScanFunction::RunSync() { | 415 ExtensionFunction::ResponseAction |
412 return GetDelegate(browser_context())->RequestScan(); | 416 NetworkingPrivateRequestNetworkScanFunction::Run() { |
| 417 if (!GetDelegate(browser_context())->RequestScan()) |
| 418 return RespondNow(Error(networking_private::kErrorNotSupported)); |
| 419 return RespondNow(NoArguments()); |
413 } | 420 } |
414 | 421 |
415 //////////////////////////////////////////////////////////////////////////////// | 422 //////////////////////////////////////////////////////////////////////////////// |
416 // NetworkingPrivateStartConnectFunction | 423 // NetworkingPrivateStartConnectFunction |
417 | 424 |
418 NetworkingPrivateStartConnectFunction:: | 425 NetworkingPrivateStartConnectFunction:: |
419 ~NetworkingPrivateStartConnectFunction() { | 426 ~NetworkingPrivateStartConnectFunction() { |
420 } | 427 } |
421 | 428 |
422 bool NetworkingPrivateStartConnectFunction::RunAsync() { | 429 bool NetworkingPrivateStartConnectFunction::RunAsync() { |
(...skipping 343 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
766 SendResponse(true); | 773 SendResponse(true); |
767 } | 774 } |
768 | 775 |
769 void NetworkingPrivateSetCellularSimStateFunction::Failure( | 776 void NetworkingPrivateSetCellularSimStateFunction::Failure( |
770 const std::string& error) { | 777 const std::string& error) { |
771 error_ = error; | 778 error_ = error; |
772 SendResponse(false); | 779 SendResponse(false); |
773 } | 780 } |
774 | 781 |
775 } // namespace extensions | 782 } // namespace extensions |
OLD | NEW |