diff options
author | stevenjb@chromium.org <stevenjb@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-05-28 20:46:12 +0000 |
---|---|---|
committer | stevenjb@chromium.org <stevenjb@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-05-28 20:46:12 +0000 |
commit | f2949e6cee8f4c8fb155e2dae06de82703f38512 (patch) | |
tree | 48341092691c23cc31c07ee5c0d1e2c0da3d265d | |
parent | d201e86a4c9608e9d098a506a0da2747a12a8958 (diff) | |
download | chromium_src-f2949e6cee8f4c8fb155e2dae06de82703f38512.zip chromium_src-f2949e6cee8f4c8fb155e2dae06de82703f38512.tar.gz chromium_src-f2949e6cee8f4c8fb155e2dae06de82703f38512.tar.bz2 |
Move NetworkTypePattern to its own file
BUG=none
For trivial apps/shell/browser/ change:
R=pneubeck@chromium.org
TBR=derat@chromium.org
Review URL: https://codereview.chromium.org/300623008
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@273352 0039d316-1c4b-4281-b951-d872f2087c98
41 files changed, 228 insertions, 223 deletions
diff --git a/apps/shell/browser/shell_network_controller_chromeos.cc b/apps/shell/browser/shell_network_controller_chromeos.cc index fd7fd42..4280765 100644 --- a/apps/shell/browser/shell_network_controller_chromeos.cc +++ b/apps/shell/browser/shell_network_controller_chromeos.cc @@ -14,7 +14,6 @@ #include "chromeos/network/network_handler_callbacks.h" #include "chromeos/network/network_state.h" #include "chromeos/network/network_state_handler.h" -#include "chromeos/network/shill_property_util.h" #include "third_party/cros_system_api/dbus/service_constants.h" namespace apps { diff --git a/ash/system/chromeos/network/network_connect.cc b/ash/system/chromeos/network/network_connect.cc index d9e9bcf..339076e 100644 --- a/ash/system/chromeos/network/network_connect.cc +++ b/ash/system/chromeos/network/network_connect.cc @@ -25,7 +25,6 @@ #include "chromeos/network/network_profile_handler.h" #include "chromeos/network/network_state.h" #include "chromeos/network/network_state_handler.h" -#include "chromeos/network/shill_property_util.h" #include "grit/ash_resources.h" #include "grit/ash_strings.h" #include "third_party/cros_system_api/dbus/service_constants.h" diff --git a/ash/system/chromeos/network/network_icon.cc b/ash/system/chromeos/network/network_icon.cc index d2580ef..73abc84 100644 --- a/ash/system/chromeos/network/network_icon.cc +++ b/ash/system/chromeos/network/network_icon.cc @@ -13,7 +13,6 @@ #include "chromeos/network/network_connection_handler.h" #include "chromeos/network/network_state.h" #include "chromeos/network/network_state_handler.h" -#include "chromeos/network/shill_property_util.h" #include "grit/ash_resources.h" #include "grit/ash_strings.h" #include "third_party/cros_system_api/dbus/service_constants.h" diff --git a/ash/system/chromeos/network/network_state_list_detailed_view.cc b/ash/system/chromeos/network/network_state_list_detailed_view.cc index 715b843..de571bd 100644 --- a/ash/system/chromeos/network/network_state_list_detailed_view.cc +++ b/ash/system/chromeos/network/network_state_list_detailed_view.cc @@ -31,7 +31,6 @@ #include "chromeos/network/network_configuration_handler.h" #include "chromeos/network/network_state.h" #include "chromeos/network/network_state_handler.h" -#include "chromeos/network/shill_property_util.h" #include "grit/ash_resources.h" #include "grit/ash_strings.h" #include "third_party/cros_system_api/dbus/service_constants.h" diff --git a/ash/system/chromeos/network/tray_network.cc b/ash/system/chromeos/network/tray_network.cc index 598246c..c56a948 100644 --- a/ash/system/chromeos/network/tray_network.cc +++ b/ash/system/chromeos/network/tray_network.cc @@ -21,7 +21,6 @@ #include "base/strings/utf_string_conversions.h" #include "chromeos/network/network_state.h" #include "chromeos/network/network_state_handler.h" -#include "chromeos/network/shill_property_util.h" #include "grit/ash_resources.h" #include "grit/ash_strings.h" #include "third_party/cros_system_api/dbus/service_constants.h" diff --git a/ash/system/chromeos/network/tray_vpn.cc b/ash/system/chromeos/network/tray_vpn.cc index 3325557..3f73c7a 100644 --- a/ash/system/chromeos/network/tray_vpn.cc +++ b/ash/system/chromeos/network/tray_vpn.cc @@ -15,7 +15,6 @@ #include "ash/system/tray/tray_popup_label_button.h" #include "chromeos/network/network_state.h" #include "chromeos/network/network_state_handler.h" -#include "chromeos/network/shill_property_util.h" #include "grit/ash_strings.h" #include "third_party/cros_system_api/dbus/service_constants.h" #include "ui/base/l10n/l10n_util.h" diff --git a/chrome/browser/chromeos/app_mode/app_session_lifetime.cc b/chrome/browser/chromeos/app_mode/app_session_lifetime.cc index fcce0e2..6fa8455 100644 --- a/chrome/browser/chromeos/app_mode/app_session_lifetime.cc +++ b/chrome/browser/chromeos/app_mode/app_session_lifetime.cc @@ -27,7 +27,6 @@ #include "chrome/common/pref_names.h" #include "chromeos/network/network_state.h" #include "chromeos/network/network_state_handler.h" -#include "chromeos/network/shill_property_util.h" #include "content/public/browser/web_contents.h" using apps::AppWindowRegistry; diff --git a/chrome/browser/chromeos/extensions/info_private_api.cc b/chrome/browser/chromeos/extensions/info_private_api.cc index 4aeb54fa..c6079c3 100644 --- a/chrome/browser/chromeos/extensions/info_private_api.cc +++ b/chrome/browser/chromeos/extensions/info_private_api.cc @@ -17,7 +17,6 @@ #include "chromeos/network/device_state.h" #include "chromeos/network/network_handler.h" #include "chromeos/network/network_state_handler.h" -#include "chromeos/network/shill_property_util.h" #include "chromeos/settings/cros_settings_names.h" #include "chromeos/system/statistics_provider.h" #include "extensions/common/error_utils.h" diff --git a/chrome/browser/chromeos/login/auth/auth_prewarmer.cc b/chrome/browser/chromeos/login/auth/auth_prewarmer.cc index e8e0155..d187dcd 100644 --- a/chrome/browser/chromeos/login/auth/auth_prewarmer.cc +++ b/chrome/browser/chromeos/login/auth/auth_prewarmer.cc @@ -11,7 +11,6 @@ #include "chromeos/network/network_handler.h" #include "chromeos/network/network_state.h" #include "chromeos/network/network_state_handler.h" -#include "chromeos/network/shill_property_util.h" #include "content/public/browser/browser_thread.h" #include "google_apis/gaia/gaia_urls.h" #include "url/gurl.h" diff --git a/chrome/browser/chromeos/login/demo_mode/demo_app_launcher.cc b/chrome/browser/chromeos/login/demo_mode/demo_app_launcher.cc index 0a27264..eb8fbe4 100644 --- a/chrome/browser/chromeos/login/demo_mode/demo_app_launcher.cc +++ b/chrome/browser/chromeos/login/demo_mode/demo_app_launcher.cc @@ -20,7 +20,6 @@ #include "chrome/common/extensions/extension_constants.h" #include "chromeos/network/network_handler.h" #include "chromeos/network/network_state_handler.h" -#include "chromeos/network/shill_property_util.h" #include "extensions/browser/extension_system.h" #include "extensions/common/extension.h" #include "grit/browser_resources.h" diff --git a/chrome/browser/chromeos/login/demo_mode/demo_app_launcher_browsertest.cc b/chrome/browser/chromeos/login/demo_mode/demo_app_launcher_browsertest.cc index bb3fc9d..35f988b 100644 --- a/chrome/browser/chromeos/login/demo_mode/demo_app_launcher_browsertest.cc +++ b/chrome/browser/chromeos/login/demo_mode/demo_app_launcher_browsertest.cc @@ -19,7 +19,6 @@ #include "chromeos/chromeos_switches.h" #include "chromeos/network/network_state.h" #include "chromeos/network/network_state_handler.h" -#include "chromeos/network/shill_property_util.h" #include "content/public/browser/notification_service.h" #include "content/public/browser/notification_source.h" #include "content/public/test/test_utils.h" diff --git a/chrome/browser/chromeos/login/helper.cc b/chrome/browser/chromeos/login/helper.cc index 5d706fe..38809d6 100644 --- a/chrome/browser/chromeos/login/helper.cc +++ b/chrome/browser/chromeos/login/helper.cc @@ -12,7 +12,6 @@ #include "chromeos/network/network_handler.h" #include "chromeos/network/network_state.h" #include "chromeos/network/network_state_handler.h" -#include "chromeos/network/shill_property_util.h" #include "google_apis/gaia/gaia_auth_util.h" #include "grit/generated_resources.h" #include "grit/theme_resources.h" diff --git a/chrome/browser/chromeos/login/ui/proxy_settings_dialog.cc b/chrome/browser/chromeos/login/ui/proxy_settings_dialog.cc index ae2004a..ed25b5a 100644 --- a/chrome/browser/chromeos/login/ui/proxy_settings_dialog.cc +++ b/chrome/browser/chromeos/login/ui/proxy_settings_dialog.cc @@ -10,7 +10,7 @@ #include "chrome/browser/chromeos/login/helper.h" #include "chrome/common/url_constants.h" #include "chromeos/network/network_state.h" -#include "chromeos/network/shill_property_util.h" +#include "chromeos/network/network_type_pattern.h" #include "content/public/browser/browser_context.h" #include "content/public/browser/browser_thread.h" #include "content/public/browser/notification_service.h" diff --git a/chrome/browser/chromeos/mobile/mobile_activator.cc b/chrome/browser/chromeos/mobile/mobile_activator.cc index 84f6f58..262655f 100644 --- a/chrome/browser/chromeos/mobile/mobile_activator.cc +++ b/chrome/browser/chromeos/mobile/mobile_activator.cc @@ -35,7 +35,6 @@ #include "chromeos/network/network_handler_callbacks.h" #include "chromeos/network/network_state.h" #include "chromeos/network/network_state_handler.h" -#include "chromeos/network/shill_property_util.h" #include "content/public/browser/browser_thread.h" #include "third_party/cros_system_api/dbus/service_constants.h" diff --git a/chrome/browser/chromeos/net/network_portal_detector_impl_unittest.cc b/chrome/browser/chromeos/net/network_portal_detector_impl_unittest.cc index f2fbd67c..a5119bc 100644 --- a/chrome/browser/chromeos/net/network_portal_detector_impl_unittest.cc +++ b/chrome/browser/chromeos/net/network_portal_detector_impl_unittest.cc @@ -23,7 +23,6 @@ #include "chromeos/dbus/shill_service_client.h" #include "chromeos/network/network_state.h" #include "chromeos/network/network_state_handler.h" -#include "chromeos/network/shill_property_util.h" #include "components/captive_portal/captive_portal_detector.h" #include "components/captive_portal/captive_portal_testing_utils.h" #include "content/public/test/test_browser_thread_bundle.h" diff --git a/chrome/browser/chromeos/prerender_condition_network.cc b/chrome/browser/chromeos/prerender_condition_network.cc index e8ed05b..9033f80 100644 --- a/chrome/browser/chromeos/prerender_condition_network.cc +++ b/chrome/browser/chromeos/prerender_condition_network.cc @@ -6,7 +6,6 @@ #include "chromeos/network/network_state.h" #include "chromeos/network/network_state_handler.h" -#include "chromeos/network/shill_property_util.h" #include "third_party/cros_system_api/dbus/service_constants.h" namespace chromeos { diff --git a/chrome/browser/chromeos/status/network_menu.cc b/chrome/browser/chromeos/status/network_menu.cc index 638b295..cdaea87 100644 --- a/chrome/browser/chromeos/status/network_menu.cc +++ b/chrome/browser/chromeos/status/network_menu.cc @@ -25,7 +25,6 @@ #include "chromeos/network/device_state.h" #include "chromeos/network/network_state.h" #include "chromeos/network/network_state_handler.h" -#include "chromeos/network/shill_property_util.h" #include "grit/ash_resources.h" #include "grit/ash_strings.h" #include "grit/generated_resources.h" diff --git a/chrome/browser/extensions/api/dial/dial_service.cc b/chrome/browser/extensions/api/dial/dial_service.cc index e9b6901..5cdf383 100644 --- a/chrome/browser/extensions/api/dial/dial_service.cc +++ b/chrome/browser/extensions/api/dial/dial_service.cc @@ -29,7 +29,6 @@ #if defined(OS_CHROMEOS) #include "chromeos/network/network_state.h" #include "chromeos/network/network_state_handler.h" -#include "chromeos/network/shill_property_util.h" #include "third_party/cros_system_api/dbus/service_constants.h" #endif diff --git a/chrome/browser/extensions/api/networking_private/networking_private_api_chromeos.cc b/chrome/browser/extensions/api/networking_private/networking_private_api_chromeos.cc index dd652dc..a77d194 100644 --- a/chrome/browser/extensions/api/networking_private/networking_private_api_chromeos.cc +++ b/chrome/browser/extensions/api/networking_private/networking_private_api_chromeos.cc @@ -25,7 +25,6 @@ #include "chromeos/network/onc/onc_signature.h" #include "chromeos/network/onc/onc_translator.h" #include "chromeos/network/onc/onc_utils.h" -#include "chromeos/network/shill_property_util.h" #include "components/onc/onc_constants.h" #include "extensions/browser/extension_function_registry.h" diff --git a/chrome/browser/ui/webui/chromeos/choose_mobile_network_ui.cc b/chrome/browser/ui/webui/chromeos/choose_mobile_network_ui.cc index 88eb2e2..7a22c58 100644 --- a/chrome/browser/ui/webui/chromeos/choose_mobile_network_ui.cc +++ b/chrome/browser/ui/webui/chromeos/choose_mobile_network_ui.cc @@ -21,7 +21,6 @@ #include "chromeos/network/network_event_log.h" #include "chromeos/network/network_state_handler.h" #include "chromeos/network/network_state_handler_observer.h" -#include "chromeos/network/shill_property_util.h" #include "content/public/browser/web_contents.h" #include "content/public/browser/web_ui.h" #include "content/public/browser/web_ui_data_source.h" diff --git a/chrome/browser/ui/webui/chromeos/login/network_screen_handler.cc b/chrome/browser/ui/webui/chromeos/login/network_screen_handler.cc index bd67a5a..15939c5 100644 --- a/chrome/browser/ui/webui/chromeos/login/network_screen_handler.cc +++ b/chrome/browser/ui/webui/chromeos/login/network_screen_handler.cc @@ -36,7 +36,6 @@ #include "chromeos/ime/extension_ime_util.h" #include "chromeos/network/network_handler.h" #include "chromeos/network/network_state_handler.h" -#include "chromeos/network/shill_property_util.h" #include "grit/chromium_strings.h" #include "grit/generated_resources.h" #include "ui/base/l10n/l10n_util.h" diff --git a/chrome/browser/ui/webui/chromeos/sim_unlock_ui.cc b/chrome/browser/ui/webui/chromeos/sim_unlock_ui.cc index d51fa03..d983a23 100644 --- a/chrome/browser/ui/webui/chromeos/sim_unlock_ui.cc +++ b/chrome/browser/ui/webui/chromeos/sim_unlock_ui.cc @@ -25,7 +25,6 @@ #include "chromeos/network/network_event_log.h" #include "chromeos/network/network_state_handler.h" #include "chromeos/network/network_state_handler_observer.h" -#include "chromeos/network/shill_property_util.h" #include "content/public/browser/browser_thread.h" #include "content/public/browser/notification_service.h" #include "content/public/browser/url_data_source.h" diff --git a/chrome/browser/ui/webui/help/help_utils_chromeos.cc b/chrome/browser/ui/webui/help/help_utils_chromeos.cc index 258c012..95bb156 100644 --- a/chrome/browser/ui/webui/help/help_utils_chromeos.cc +++ b/chrome/browser/ui/webui/help/help_utils_chromeos.cc @@ -9,7 +9,7 @@ #include "base/logging.h" #include "base/values.h" #include "chrome/browser/chromeos/settings/cros_settings.h" -#include "chromeos/network/shill_property_util.h" +#include "chromeos/network/network_type_pattern.h" #include "chromeos/settings/cros_settings_names.h" #include "grit/chromium_strings.h" #include "grit/generated_resources.h" diff --git a/chrome/browser/ui/webui/options/chromeos/internet_options_handler.cc b/chrome/browser/ui/webui/options/chromeos/internet_options_handler.cc index c31aaf6..f3312cd 100644 --- a/chrome/browser/ui/webui/options/chromeos/internet_options_handler.cc +++ b/chrome/browser/ui/webui/options/chromeos/internet_options_handler.cc @@ -49,7 +49,6 @@ #include "chromeos/network/network_state_handler.h" #include "chromeos/network/network_ui_data.h" #include "chromeos/network/network_util.h" -#include "chromeos/network/shill_property_util.h" #include "components/onc/onc_constants.h" #include "content/public/browser/notification_service.h" #include "content/public/browser/user_metrics.h" diff --git a/chromeos/chromeos.gyp b/chromeos/chromeos.gyp index f26ac8a..d3aca5f 100644 --- a/chromeos/chromeos.gyp +++ b/chromeos/chromeos.gyp @@ -321,6 +321,8 @@ 'network/network_state_handler.h', 'network/network_state_handler_observer.cc', 'network/network_state_handler_observer.h', + 'network/network_type_pattern.cc', + 'network/network_type_pattern.h', 'network/network_ui_data.cc', 'network/network_ui_data.h', 'network/network_util.cc', @@ -529,6 +531,7 @@ 'network/network_sms_handler_unittest.cc', 'network/network_state_handler_unittest.cc', 'network/network_state_unittest.cc', + 'network/network_type_pattern_unittest.cc', 'network/network_ui_data_unittest.cc', 'network/network_util_unittest.cc', 'network/onc/onc_certificate_importer_impl_unittest.cc', @@ -538,7 +541,6 @@ 'network/onc/onc_utils_unittest.cc', 'network/onc/onc_validator_unittest.cc', 'network/shill_property_handler_unittest.cc', - 'network/shill_property_util_unittest.cc', 'process_proxy/process_output_watcher_unittest.cc', 'process_proxy/process_proxy_unittest.cc', 'system/name_value_pairs_parser_unittest.cc', diff --git a/chromeos/dbus/fake_shill_device_client.cc b/chromeos/dbus/fake_shill_device_client.cc index ef88a1c..dd0322f 100644 --- a/chromeos/dbus/fake_shill_device_client.cc +++ b/chromeos/dbus/fake_shill_device_client.cc @@ -11,7 +11,6 @@ #include "chromeos/dbus/dbus_thread_manager.h" #include "chromeos/dbus/shill_manager_client.h" #include "chromeos/dbus/shill_property_changed_observer.h" -#include "chromeos/network/shill_property_util.h" #include "dbus/bus.h" #include "dbus/message.h" #include "dbus/object_path.h" @@ -253,7 +252,7 @@ void FakeShillDeviceClient::AddDevice(const std::string& device_path, properties->SetWithoutPathExpansion( shill::kDBusServiceProperty, base::Value::CreateStringValue(modemmanager::kModemManager1ServiceName)); - if (NetworkTypePattern::Cellular().MatchesType(type)) { + if (type == shill::kTypeCellular) { properties->SetWithoutPathExpansion(shill::kCellularAllowRoamingProperty, new base::FundamentalValue(false)); } diff --git a/chromeos/network/managed_state.cc b/chromeos/network/managed_state.cc index 4bbece8..2c41781 100644 --- a/chromeos/network/managed_state.cc +++ b/chromeos/network/managed_state.cc @@ -10,7 +10,7 @@ #include "chromeos/network/favorite_state.h" #include "chromeos/network/network_event_log.h" #include "chromeos/network/network_state.h" -#include "chromeos/network/shill_property_util.h" +#include "chromeos/network/network_type_pattern.h" #include "third_party/cros_system_api/dbus/service_constants.h" namespace chromeos { diff --git a/chromeos/network/network_change_notifier_chromeos.cc b/chromeos/network/network_change_notifier_chromeos.cc index 5c6908a..5aa36b5 100644 --- a/chromeos/network/network_change_notifier_chromeos.cc +++ b/chromeos/network/network_change_notifier_chromeos.cc @@ -13,7 +13,6 @@ #include "chromeos/network/network_event_log.h" #include "chromeos/network/network_state.h" #include "chromeos/network/network_state_handler.h" -#include "chromeos/network/shill_property_util.h" #include "net/base/network_change_notifier.h" #include "net/dns/dns_config_service_posix.h" #include "third_party/cros_system_api/dbus/service_constants.h" diff --git a/chromeos/network/network_device_handler_impl.cc b/chromeos/network/network_device_handler_impl.cc index 85ff215..ac5e47b 100644 --- a/chromeos/network/network_device_handler_impl.cc +++ b/chromeos/network/network_device_handler_impl.cc @@ -16,7 +16,6 @@ #include "chromeos/network/network_event_log.h" #include "chromeos/network/network_handler_callbacks.h" #include "chromeos/network/network_state_handler.h" -#include "chromeos/network/shill_property_util.h" #include "dbus/object_path.h" #include "third_party/cros_system_api/dbus/service_constants.h" diff --git a/chromeos/network/network_state.cc b/chromeos/network/network_state.cc index 9cc868f..cc1b10b 100644 --- a/chromeos/network/network_state.cc +++ b/chromeos/network/network_state.cc @@ -8,6 +8,7 @@ #include "base/values.h" #include "chromeos/network/network_event_log.h" #include "chromeos/network/network_profile_handler.h" +#include "chromeos/network/network_type_pattern.h" #include "chromeos/network/network_util.h" #include "chromeos/network/shill_property_util.h" #include "third_party/cros_system_api/dbus/service_constants.h" diff --git a/chromeos/network/network_state_handler.cc b/chromeos/network/network_state_handler.cc index 996075e..77b0b27 100644 --- a/chromeos/network/network_state_handler.cc +++ b/chromeos/network/network_state_handler.cc @@ -21,7 +21,6 @@ #include "chromeos/network/network_state.h" #include "chromeos/network/network_state_handler_observer.h" #include "chromeos/network/shill_property_handler.h" -#include "chromeos/network/shill_property_util.h" #include "third_party/cros_system_api/dbus/service_constants.h" namespace chromeos { diff --git a/chromeos/network/network_state_handler.h b/chromeos/network/network_state_handler.h index 0765778..9c6cc74 100644 --- a/chromeos/network/network_state_handler.h +++ b/chromeos/network/network_state_handler.h @@ -19,6 +19,7 @@ #include "chromeos/network/managed_state.h" #include "chromeos/network/network_handler.h" #include "chromeos/network/network_handler_callbacks.h" +#include "chromeos/network/network_type_pattern.h" #include "chromeos/network/shill_property_handler.h" namespace base { @@ -37,7 +38,6 @@ class DeviceState; class NetworkState; class NetworkStateHandlerObserver; class NetworkStateHandlerTest; -class NetworkTypePattern; // Class for tracking the list of visible networks and their properties. // diff --git a/chromeos/network/network_state_handler_unittest.cc b/chromeos/network/network_state_handler_unittest.cc index 5e0af9c..669af30 100644 --- a/chromeos/network/network_state_handler_unittest.cc +++ b/chromeos/network/network_state_handler_unittest.cc @@ -20,7 +20,6 @@ #include "chromeos/network/favorite_state.h" #include "chromeos/network/network_state.h" #include "chromeos/network/network_state_handler_observer.h" -#include "chromeos/network/shill_property_util.h" #include "dbus/object_path.h" #include "testing/gtest/include/gtest/gtest.h" #include "third_party/cros_system_api/dbus/service_constants.h" diff --git a/chromeos/network/network_type_pattern.cc b/chromeos/network/network_type_pattern.cc new file mode 100644 index 0000000..fd7d216 --- /dev/null +++ b/chromeos/network/network_type_pattern.cc @@ -0,0 +1,149 @@ +// Copyright 2014 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "chromeos/network/network_type_pattern.h" + +#include "chromeos/network/network_event_log.h" +#include "third_party/cros_system_api/dbus/service_constants.h" + +namespace chromeos { + +namespace { + +const char kPatternDefault[] = "PatternDefault"; +const char kPatternEthernet[] = "PatternEthernet"; +const char kPatternWireless[] = "PatternWireless"; +const char kPatternMobile[] = "PatternMobile"; +const char kPatternNonVirtual[] = "PatternNonVirtual"; + +enum NetworkTypeBitFlag { + kNetworkTypeNone = 0, + kNetworkTypeEthernet = 1 << 0, + kNetworkTypeWifi = 1 << 1, + kNetworkTypeWimax = 1 << 2, + kNetworkTypeCellular = 1 << 3, + kNetworkTypeVPN = 1 << 4, + kNetworkTypeEthernetEap = 1 << 5, + kNetworkTypeBluetooth = 1 << 6 +}; + +struct ShillToBitFlagEntry { + const char* shill_network_type; + NetworkTypeBitFlag bit_flag; +} shill_type_to_flag[] = { + { shill::kTypeEthernet, kNetworkTypeEthernet }, + { shill::kTypeEthernetEap, kNetworkTypeEthernetEap }, + { shill::kTypeWifi, kNetworkTypeWifi }, + { shill::kTypeWimax, kNetworkTypeWimax }, + { shill::kTypeCellular, kNetworkTypeCellular }, + { shill::kTypeVPN, kNetworkTypeVPN }, + { shill::kTypeBluetooth, kNetworkTypeBluetooth } +}; + +NetworkTypeBitFlag ShillNetworkTypeToFlag(const std::string& shill_type) { + for (size_t i = 0; i < arraysize(shill_type_to_flag); ++i) { + if (shill_type_to_flag[i].shill_network_type == shill_type) + return shill_type_to_flag[i].bit_flag; + } + NET_LOG_ERROR("ShillNetworkTypeToFlag", "Unknown type: " + shill_type); + return kNetworkTypeNone; +} + +} // namespace + +// static +NetworkTypePattern NetworkTypePattern::Default() { + return NetworkTypePattern(~0); +} + +// static +NetworkTypePattern NetworkTypePattern::Wireless() { + return NetworkTypePattern(kNetworkTypeWifi | kNetworkTypeWimax | + kNetworkTypeCellular); +} + +// static +NetworkTypePattern NetworkTypePattern::Mobile() { + return NetworkTypePattern(kNetworkTypeCellular | kNetworkTypeWimax); +} + +// static +NetworkTypePattern NetworkTypePattern::NonVirtual() { + return NetworkTypePattern(~kNetworkTypeVPN); +} + +// static +NetworkTypePattern NetworkTypePattern::Ethernet() { + return NetworkTypePattern(kNetworkTypeEthernet); +} + +// static +NetworkTypePattern NetworkTypePattern::WiFi() { + return NetworkTypePattern(kNetworkTypeWifi); +} + +// static +NetworkTypePattern NetworkTypePattern::Cellular() { + return NetworkTypePattern(kNetworkTypeCellular); +} + +// static +NetworkTypePattern NetworkTypePattern::VPN() { + return NetworkTypePattern(kNetworkTypeVPN); +} + +// static +NetworkTypePattern NetworkTypePattern::Wimax() { + return NetworkTypePattern(kNetworkTypeWimax); +} + +// static +NetworkTypePattern NetworkTypePattern::Primitive( + const std::string& shill_network_type) { + return NetworkTypePattern(ShillNetworkTypeToFlag(shill_network_type)); +} + +bool NetworkTypePattern::Equals(const NetworkTypePattern& other) const { + return pattern_ == other.pattern_; +} + +bool NetworkTypePattern::MatchesType( + const std::string& shill_network_type) const { + return MatchesPattern(Primitive(shill_network_type)); +} + +bool NetworkTypePattern::MatchesPattern( + const NetworkTypePattern& other_pattern) const { + if (Equals(other_pattern)) + return true; + + return pattern_ & other_pattern.pattern_; +} + +std::string NetworkTypePattern::ToDebugString() const { + if (Equals(Default())) + return kPatternDefault; + if (Equals(Ethernet())) + return kPatternEthernet; + if (Equals(Wireless())) + return kPatternWireless; + if (Equals(Mobile())) + return kPatternMobile; + if (Equals(NonVirtual())) + return kPatternNonVirtual; + + std::string str; + for (size_t i = 0; i < arraysize(shill_type_to_flag); ++i) { + if (!(pattern_ & shill_type_to_flag[i].bit_flag)) + continue; + if (!str.empty()) + str += "|"; + str += shill_type_to_flag[i].shill_network_type; + } + return str; +} + +NetworkTypePattern::NetworkTypePattern(int pattern) : pattern_(pattern) {} + +} // namespace chromeos diff --git a/chromeos/network/network_type_pattern.h b/chromeos/network/network_type_pattern.h new file mode 100644 index 0000000..74e3aa9 --- /dev/null +++ b/chromeos/network/network_type_pattern.h @@ -0,0 +1,66 @@ +// Copyright 2014 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#ifndef CHROMEOS_NETWORK_NETWORK_TYPE_PATTERN_H_ +#define CHROMEOS_NETWORK_NETWORK_TYPE_PATTERN_H_ + +#include <string> + +#include "base/macros.h" +#include "chromeos/chromeos_export.h" + +namespace chromeos { + +class CHROMEOS_EXPORT NetworkTypePattern { + public: + // Matches any network. + static NetworkTypePattern Default(); + + // Matches wireless (WiFi, cellular, etc.) networks + static NetworkTypePattern Wireless(); + + // Matches cellular or wimax networks. + static NetworkTypePattern Mobile(); + + // Matches non virtual networks. + static NetworkTypePattern NonVirtual(); + + // Matches ethernet networks (with or without EAP). + static NetworkTypePattern Ethernet(); + + static NetworkTypePattern WiFi(); + static NetworkTypePattern Cellular(); + static NetworkTypePattern VPN(); + static NetworkTypePattern Wimax(); + + // Matches only networks of exactly the type |shill_network_type|, which must + // be one of the types defined in service_constants.h (e.g. + // shill::kTypeWifi). + // Note: Shill distinguishes Ethernet without EAP from Ethernet with EAP. If + // unsure, better use one of the matchers above. + static NetworkTypePattern Primitive(const std::string& shill_network_type); + + bool Equals(const NetworkTypePattern& other) const; + bool MatchesType(const std::string& shill_network_type) const; + + // Returns true if this pattern matches at least one network type that + // |other_pattern| matches (according to MatchesType). Thus MatchesPattern is + // symmetric and reflexive but not transitive. + // See the unit test for examples. + bool MatchesPattern(const NetworkTypePattern& other_pattern) const; + + std::string ToDebugString() const; + + private: + explicit NetworkTypePattern(int pattern); + + // The bit array of the matching network types. + int pattern_; + + DISALLOW_ASSIGN(NetworkTypePattern); +}; + +} // namespace chromeos + +#endif // CHROMEOS_NETWORK_NETWORK_TYPE_PATTERN_H_ diff --git a/chromeos/network/shill_property_util_unittest.cc b/chromeos/network/network_type_pattern_unittest.cc index 2d8b764..b56043c 100644 --- a/chromeos/network/shill_property_util_unittest.cc +++ b/chromeos/network/network_type_pattern_unittest.cc @@ -1,8 +1,8 @@ -// Copyright 2013 The Chromium Authors. All rights reserved. +// Copyright 2014 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. -#include "chromeos/network/shill_property_util.h" +#include "chromeos/network/network_type_pattern.h" #include "testing/gtest/include/gtest/gtest.h" #include "third_party/cros_system_api/dbus/service_constants.h" diff --git a/chromeos/network/network_util.cc b/chromeos/network/network_util.cc index a9b35e1..3426cad 100644 --- a/chromeos/network/network_util.cc +++ b/chromeos/network/network_util.cc @@ -12,7 +12,6 @@ #include "chromeos/network/network_state_handler.h" #include "chromeos/network/onc/onc_signature.h" #include "chromeos/network/onc/onc_translator.h" -#include "chromeos/network/shill_property_util.h" #include "third_party/cros_system_api/dbus/service_constants.h" namespace chromeos { diff --git a/chromeos/network/onc/onc_utils.h b/chromeos/network/onc/onc_utils.h index c89c26a..261ae49 100644 --- a/chromeos/network/onc/onc_utils.h +++ b/chromeos/network/onc/onc_utils.h @@ -13,7 +13,7 @@ #include "base/memory/ref_counted.h" #include "base/memory/scoped_ptr.h" #include "chromeos/chromeos_export.h" -#include "chromeos/network/shill_property_util.h" +#include "chromeos/network/network_type_pattern.h" #include "components/onc/onc_constants.h" namespace base { diff --git a/chromeos/network/policy_applicator.cc b/chromeos/network/policy_applicator.cc index 02001b5..c5f212a 100644 --- a/chromeos/network/policy_applicator.cc +++ b/chromeos/network/policy_applicator.cc @@ -14,6 +14,7 @@ #include "base/values.h" #include "chromeos/dbus/dbus_thread_manager.h" #include "chromeos/dbus/shill_profile_client.h" +#include "chromeos/network/network_type_pattern.h" #include "chromeos/network/network_ui_data.h" #include "chromeos/network/onc/onc_signature.h" #include "chromeos/network/onc/onc_translator.h" diff --git a/chromeos/network/shill_property_util.cc b/chromeos/network/shill_property_util.cc index f8e90b5..d5f8d6b 100644 --- a/chromeos/network/shill_property_util.cc +++ b/chromeos/network/shill_property_util.cc @@ -347,141 +347,4 @@ bool GetHomeProviderFromProperty(const base::Value& value, } // namespace shill_property_util -namespace { - -const char kPatternDefault[] = "PatternDefault"; -const char kPatternEthernet[] = "PatternEthernet"; -const char kPatternWireless[] = "PatternWireless"; -const char kPatternMobile[] = "PatternMobile"; -const char kPatternNonVirtual[] = "PatternNonVirtual"; - -enum NetworkTypeBitFlag { - kNetworkTypeNone = 0, - kNetworkTypeEthernet = 1 << 0, - kNetworkTypeWifi = 1 << 1, - kNetworkTypeWimax = 1 << 2, - kNetworkTypeCellular = 1 << 3, - kNetworkTypeVPN = 1 << 4, - kNetworkTypeEthernetEap = 1 << 5, - kNetworkTypeBluetooth = 1 << 6 -}; - -struct ShillToBitFlagEntry { - const char* shill_network_type; - NetworkTypeBitFlag bit_flag; -} shill_type_to_flag[] = { - { shill::kTypeEthernet, kNetworkTypeEthernet }, - { shill::kTypeEthernetEap, kNetworkTypeEthernetEap }, - { shill::kTypeWifi, kNetworkTypeWifi }, - { shill::kTypeWimax, kNetworkTypeWimax }, - { shill::kTypeCellular, kNetworkTypeCellular }, - { shill::kTypeVPN, kNetworkTypeVPN }, - { shill::kTypeBluetooth, kNetworkTypeBluetooth } -}; - -NetworkTypeBitFlag ShillNetworkTypeToFlag(const std::string& shill_type) { - for (size_t i = 0; i < arraysize(shill_type_to_flag); ++i) { - if (shill_type_to_flag[i].shill_network_type == shill_type) - return shill_type_to_flag[i].bit_flag; - } - NET_LOG_ERROR("ShillNetworkTypeToFlag", "Unknown type: " + shill_type); - return kNetworkTypeNone; -} - -} // namespace - -// static -NetworkTypePattern NetworkTypePattern::Default() { - return NetworkTypePattern(~0); -} - -// static -NetworkTypePattern NetworkTypePattern::Wireless() { - return NetworkTypePattern(kNetworkTypeWifi | kNetworkTypeWimax | - kNetworkTypeCellular); -} - -// static -NetworkTypePattern NetworkTypePattern::Mobile() { - return NetworkTypePattern(kNetworkTypeCellular | kNetworkTypeWimax); -} - -// static -NetworkTypePattern NetworkTypePattern::NonVirtual() { - return NetworkTypePattern(~kNetworkTypeVPN); -} - -// static -NetworkTypePattern NetworkTypePattern::Ethernet() { - return NetworkTypePattern(kNetworkTypeEthernet); -} - -// static -NetworkTypePattern NetworkTypePattern::WiFi() { - return NetworkTypePattern(kNetworkTypeWifi); -} - -// static -NetworkTypePattern NetworkTypePattern::Cellular() { - return NetworkTypePattern(kNetworkTypeCellular); -} - -// static -NetworkTypePattern NetworkTypePattern::VPN() { - return NetworkTypePattern(kNetworkTypeVPN); -} - -// static -NetworkTypePattern NetworkTypePattern::Wimax() { - return NetworkTypePattern(kNetworkTypeWimax); -} - -// static -NetworkTypePattern NetworkTypePattern::Primitive( - const std::string& shill_network_type) { - return NetworkTypePattern(ShillNetworkTypeToFlag(shill_network_type)); -} - -bool NetworkTypePattern::Equals(const NetworkTypePattern& other) const { - return pattern_ == other.pattern_; -} - -bool NetworkTypePattern::MatchesType( - const std::string& shill_network_type) const { - return MatchesPattern(Primitive(shill_network_type)); -} - -bool NetworkTypePattern::MatchesPattern( - const NetworkTypePattern& other_pattern) const { - if (Equals(other_pattern)) - return true; - - return pattern_ & other_pattern.pattern_; -} - -std::string NetworkTypePattern::ToDebugString() const { - if (Equals(Default())) - return kPatternDefault; - if (Equals(Ethernet())) - return kPatternEthernet; - if (Equals(Wireless())) - return kPatternWireless; - if (Equals(Mobile())) - return kPatternMobile; - if (Equals(NonVirtual())) - return kPatternNonVirtual; - - std::string str; - for (size_t i = 0; i < arraysize(shill_type_to_flag); ++i) { - if (!(pattern_ & shill_type_to_flag[i].bit_flag)) - continue; - if (!str.empty()) - str += "|"; - str += shill_type_to_flag[i].shill_network_type; - } - return str; -} - -NetworkTypePattern::NetworkTypePattern(int pattern) : pattern_(pattern) {} - } // namespace chromeos diff --git a/chromeos/network/shill_property_util.h b/chromeos/network/shill_property_util.h index 726fb36..ca0aa5c 100644 --- a/chromeos/network/shill_property_util.h +++ b/chromeos/network/shill_property_util.h @@ -81,55 +81,6 @@ bool GetHomeProviderFromProperty(const base::Value& value, } // namespace shill_property_util -class CHROMEOS_EXPORT NetworkTypePattern { - public: - // Matches any network. - static NetworkTypePattern Default(); - - // Matches wireless (WiFi, cellular, etc.) networks - static NetworkTypePattern Wireless(); - - // Matches cellular or wimax networks. - static NetworkTypePattern Mobile(); - - // Matches non virtual networks. - static NetworkTypePattern NonVirtual(); - - // Matches ethernet networks (with or without EAP). - static NetworkTypePattern Ethernet(); - - static NetworkTypePattern WiFi(); - static NetworkTypePattern Cellular(); - static NetworkTypePattern VPN(); - static NetworkTypePattern Wimax(); - - // Matches only networks of exactly the type |shill_network_type|, which must - // be one of the types defined in service_constants.h (e.g. - // shill::kTypeWifi). - // Note: Shill distinguishes Ethernet without EAP from Ethernet with EAP. If - // unsure, better use one of the matchers above. - static NetworkTypePattern Primitive(const std::string& shill_network_type); - - bool Equals(const NetworkTypePattern& other) const; - bool MatchesType(const std::string& shill_network_type) const; - - // Returns true if this pattern matches at least one network type that - // |other_pattern| matches (according to MatchesType). Thus MatchesPattern is - // symmetric and reflexive but not transitive. - // See the unit test for examples. - bool MatchesPattern(const NetworkTypePattern& other_pattern) const; - - std::string ToDebugString() const; - - private: - explicit NetworkTypePattern(int pattern); - - // The bit array of the matching network types. - int pattern_; - - DISALLOW_ASSIGN(NetworkTypePattern); -}; - } // namespace chromeos #endif // CHROMEOS_NETWORK_SHILL_PROPERTY_UTIL_H_ |