Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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/chromeos/proxy_cros_settings_parser.h" | 5 #include "chrome/browser/chromeos/proxy_cros_settings_parser.h" |
| 6 | 6 |
| 7 #include "base/string_util.h" | 7 #include "base/string_util.h" |
| 8 #include "base/values.h" | 8 #include "base/values.h" |
| 9 #include "chrome/browser/chromeos/proxy_config_service_impl.h" | 9 #include "chrome/browser/chromeos/proxy_config_service_impl.h" |
| 10 #include "chrome/browser/profiles/profile.h" | 10 #include "chrome/browser/profiles/profile.h" |
| (...skipping 11 matching lines...) Expand all Loading... | |
| 22 const char kProxyHttpPort[] = "cros.session.proxy.httpport"; | 22 const char kProxyHttpPort[] = "cros.session.proxy.httpport"; |
| 23 const char kProxyHttpsUrl[] = "cros.session.proxy.httpsurl"; | 23 const char kProxyHttpsUrl[] = "cros.session.proxy.httpsurl"; |
| 24 const char kProxyHttpsPort[] = "cros.session.proxy.httpsport"; | 24 const char kProxyHttpsPort[] = "cros.session.proxy.httpsport"; |
| 25 const char kProxyType[] = "cros.session.proxy.type"; | 25 const char kProxyType[] = "cros.session.proxy.type"; |
| 26 const char kProxySingle[] = "cros.session.proxy.single"; | 26 const char kProxySingle[] = "cros.session.proxy.single"; |
| 27 const char kProxyFtpUrl[] = "cros.session.proxy.ftpurl"; | 27 const char kProxyFtpUrl[] = "cros.session.proxy.ftpurl"; |
| 28 const char kProxyFtpPort[] = "cros.session.proxy.ftpport"; | 28 const char kProxyFtpPort[] = "cros.session.proxy.ftpport"; |
| 29 const char kProxySocks[] = "cros.session.proxy.socks"; | 29 const char kProxySocks[] = "cros.session.proxy.socks"; |
| 30 const char kProxySocksPort[] = "cros.session.proxy.socksport"; | 30 const char kProxySocksPort[] = "cros.session.proxy.socksport"; |
| 31 const char kProxyIgnoreList[] = "cros.session.proxy.ignorelist"; | 31 const char kProxyIgnoreList[] = "cros.session.proxy.ignorelist"; |
| 32 const char kProxyUsePacUrl[] = "cros.session.proxy.usepacurl"; | |
|
pneubeck (no reviews)
2013/04/09 09:48:19
I don't like this forwarding of every UI element's
sathish.kuppuswamy
2013/04/16 16:46:57
Hi pneubeck,
Here(.js) you want me to check the
| |
| 32 | 33 |
| 33 const char* const kProxySettings[] = { | 34 const char* const kProxySettings[] = { |
| 34 kProxyPacUrl, | 35 kProxyPacUrl, |
| 35 kProxySingleHttp, | 36 kProxySingleHttp, |
| 36 kProxySingleHttpPort, | 37 kProxySingleHttpPort, |
| 37 kProxyHttpUrl, | 38 kProxyHttpUrl, |
| 38 kProxyHttpPort, | 39 kProxyHttpPort, |
| 39 kProxyHttpsUrl, | 40 kProxyHttpsUrl, |
| 40 kProxyHttpsPort, | 41 kProxyHttpsPort, |
| 41 kProxyType, | 42 kProxyType, |
| 42 kProxySingle, | 43 kProxySingle, |
| 43 kProxyFtpUrl, | 44 kProxyFtpUrl, |
| 44 kProxyFtpPort, | 45 kProxyFtpPort, |
| 45 kProxySocks, | 46 kProxySocks, |
| 46 kProxySocksPort, | 47 kProxySocksPort, |
| 47 kProxyIgnoreList, | 48 kProxyIgnoreList, |
| 49 kProxyUsePacUrl | |
|
Dan Beam
2013/04/06 01:45:14
nit: ,
| |
| 48 }; | 50 }; |
| 49 | 51 |
| 50 // We have to explicitly export this because the arraysize macro doesn't like | 52 // We have to explicitly export this because the arraysize macro doesn't like |
| 51 // extern arrays as their size is not known on compile time. | 53 // extern arrays as their size is not known on compile time. |
| 52 const size_t kProxySettingsCount = arraysize(kProxySettings); | 54 const size_t kProxySettingsCount = arraysize(kProxySettings); |
| 53 | 55 |
| 54 namespace { | 56 namespace { |
| 55 | 57 |
| 56 base::Value* CreateServerHostValue( | 58 base::Value* CreateServerHostValue( |
| 57 const ProxyConfigServiceImpl::ProxyConfig::ManualProxy& proxy) { | 59 const ProxyConfigServiceImpl::ProxyConfig::ManualProxy& proxy) { |
| (...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 124 } | 126 } |
| 125 | 127 |
| 126 chromeos::ProxyConfigServiceImpl* config_service = | 128 chromeos::ProxyConfigServiceImpl* config_service = |
| 127 profile->GetProxyConfigTracker(); | 129 profile->GetProxyConfigTracker(); |
| 128 // Retrieve proxy config. | 130 // Retrieve proxy config. |
| 129 chromeos::ProxyConfigServiceImpl::ProxyConfig config; | 131 chromeos::ProxyConfigServiceImpl::ProxyConfig config; |
| 130 config_service->UIGetProxyConfig(&config); | 132 config_service->UIGetProxyConfig(&config); |
| 131 | 133 |
| 132 if (path == kProxyPacUrl) { | 134 if (path == kProxyPacUrl) { |
| 133 std::string val; | 135 std::string val; |
| 134 if (in_value->GetAsString(&val)) { | 136 if (in_value->GetAsString(&val)) { |
|
pneubeck (no reviews)
2013/04/09 09:48:19
Why not check for the checkbox's value?
sathish.kuppuswamy
2013/04/16 16:46:57
Hi pneubeck,
Its been checked below (path== kP
| |
| 135 GURL url(val); | 137 GURL url(val); |
| 136 if (url.is_valid()) | 138 if (url.is_valid()) |
| 137 config_service->UISetProxyConfigToPACScript(url); | 139 config_service->UISetProxyConfigToPACScript(url); |
| 138 else | 140 else |
| 139 config_service->UISetProxyConfigToAutoDetect(); | 141 config_service->UISetProxyConfigToAutoDetect(); |
| 140 } | 142 } |
| 141 } else if (path == kProxySingleHttp) { | 143 } else if (path == kProxySingleHttp) { |
| 142 std::string val; | 144 std::string val; |
| 143 if (in_value->GetAsString(&val)) { | 145 if (in_value->GetAsString(&val)) { |
| 144 config_service->UISetProxyConfigToSingleProxy(CreateProxyServerFromHost( | 146 config_service->UISetProxyConfigToSingleProxy(CreateProxyServerFromHost( |
| (...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 225 } else if (path == kProxySingle) { | 227 } else if (path == kProxySingle) { |
| 226 bool val; | 228 bool val; |
| 227 if (in_value->GetAsBoolean(&val)) { | 229 if (in_value->GetAsBoolean(&val)) { |
| 228 if (val) | 230 if (val) |
| 229 config_service->UISetProxyConfigToSingleProxy( | 231 config_service->UISetProxyConfigToSingleProxy( |
| 230 config.single_proxy.server); | 232 config.single_proxy.server); |
| 231 else | 233 else |
| 232 config_service->UISetProxyConfigToProxyPerScheme("http", | 234 config_service->UISetProxyConfigToProxyPerScheme("http", |
| 233 config.http_proxy.server); | 235 config.http_proxy.server); |
| 234 } | 236 } |
| 237 } else if (path == kProxyUsePacUrl) { | |
| 238 bool use_pac_url; | |
| 239 if (in_value->GetAsBoolean(&use_pac_url)) { | |
| 240 if (use_pac_url && config.automatic_proxy.pac_url.is_valid()) { | |
| 241 config_service->UISetProxyConfigToPACScript( | |
| 242 config.automatic_proxy.pac_url); | |
| 243 } else { | |
| 244 config_service->UISetProxyConfigToAutoDetect(); | |
| 245 } | |
| 246 } | |
| 235 } else if (path == kProxyFtpUrl) { | 247 } else if (path == kProxyFtpUrl) { |
| 236 std::string val; | 248 std::string val; |
| 237 if (in_value->GetAsString(&val)) { | 249 if (in_value->GetAsString(&val)) { |
| 238 config_service->UISetProxyConfigToProxyPerScheme("ftp", | 250 config_service->UISetProxyConfigToProxyPerScheme("ftp", |
| 239 CreateProxyServerFromHost( | 251 CreateProxyServerFromHost( |
| 240 val, config.ftp_proxy, net::ProxyServer::SCHEME_HTTP)); | 252 val, config.ftp_proxy, net::ProxyServer::SCHEME_HTTP)); |
| 241 } | 253 } |
| 242 } else if (path == kProxyFtpPort) { | 254 } else if (path == kProxyFtpPort) { |
| 243 int val; | 255 int val; |
| 244 if (in_value->GetAsInteger(&val)) { | 256 if (in_value->GetAsInteger(&val)) { |
| (...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 330 controlled_by = "other"; | 342 controlled_by = "other"; |
| 331 break; | 343 break; |
| 332 default: | 344 default: |
| 333 if (!config.user_modifiable) | 345 if (!config.user_modifiable) |
| 334 controlled_by = "shared"; | 346 controlled_by = "shared"; |
| 335 break; | 347 break; |
| 336 } | 348 } |
| 337 } else if (path == kProxySingle) { | 349 } else if (path == kProxySingle) { |
| 338 data = base::Value::CreateBooleanValue(config.mode == | 350 data = base::Value::CreateBooleanValue(config.mode == |
| 339 chromeos::ProxyConfigServiceImpl::ProxyConfig::MODE_SINGLE_PROXY); | 351 chromeos::ProxyConfigServiceImpl::ProxyConfig::MODE_SINGLE_PROXY); |
| 352 } else if (path == kProxyUsePacUrl) { | |
| 353 data = base::Value::CreateBooleanValue(config.mode == | |
| 354 chromeos::ProxyConfigServiceImpl::ProxyConfig::MODE_PAC_SCRIPT); | |
| 340 } else if (path == kProxyFtpUrl) { | 355 } else if (path == kProxyFtpUrl) { |
| 341 data = CreateServerHostValue(config.ftp_proxy); | 356 data = CreateServerHostValue(config.ftp_proxy); |
| 342 } else if (path == kProxySocks) { | 357 } else if (path == kProxySocks) { |
| 343 data = CreateServerHostValue(config.socks_proxy); | 358 data = CreateServerHostValue(config.socks_proxy); |
| 344 } else if (path == kProxyHttpPort) { | 359 } else if (path == kProxyHttpPort) { |
| 345 data = CreateServerPortValue(config.http_proxy); | 360 data = CreateServerPortValue(config.http_proxy); |
| 346 } else if (path == kProxyHttpsPort) { | 361 } else if (path == kProxyHttpsPort) { |
| 347 data = CreateServerPortValue(config.https_proxy); | 362 data = CreateServerPortValue(config.https_proxy); |
| 348 } else if (path == kProxyFtpPort) { | 363 } else if (path == kProxyFtpPort) { |
| 349 data = CreateServerPortValue(config.ftp_proxy); | 364 data = CreateServerPortValue(config.ftp_proxy); |
| (...skipping 22 matching lines...) Expand all Loading... | |
| 372 } else { | 387 } else { |
| 373 dict->SetBoolean("disabled", false); | 388 dict->SetBoolean("disabled", false); |
| 374 } | 389 } |
| 375 *out_value = dict; | 390 *out_value = dict; |
| 376 return true; | 391 return true; |
| 377 } | 392 } |
| 378 | 393 |
| 379 } // namespace proxy_cros_settings_parser | 394 } // namespace proxy_cros_settings_parser |
| 380 | 395 |
| 381 } // namespace chromeos | 396 } // namespace chromeos |
| OLD | NEW |