Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(312)

Side by Side Diff: chrome/browser/ui/webui/options/chromeos/internet_options_handler.cc

Issue 694533007: Add 'setProperties' to InternetOptionsHandler (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: . Created 6 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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/ui/webui/options/chromeos/internet_options_handler.h" 5 #include "chrome/browser/ui/webui/options/chromeos/internet_options_handler.h"
6 6
7 #include <ctype.h> 7 #include <ctype.h>
8 8
9 #include <map> 9 #include <map>
10 #include <string> 10 #include <string>
(...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after
88 const char kGetManagedPropertiesResultFunction[] = 88 const char kGetManagedPropertiesResultFunction[] =
89 "options.internet.DetailsInternetPage.getManagedPropertiesResult"; 89 "options.internet.DetailsInternetPage.getManagedPropertiesResult";
90 const char kUpdateConnectionDataFunction[] = 90 const char kUpdateConnectionDataFunction[] =
91 "options.internet.DetailsInternetPage.updateConnectionData"; 91 "options.internet.DetailsInternetPage.updateConnectionData";
92 const char kUpdateCarrierFunction[] = 92 const char kUpdateCarrierFunction[] =
93 "options.internet.DetailsInternetPage.updateCarrier"; 93 "options.internet.DetailsInternetPage.updateCarrier";
94 94
95 // Setter methods called from JS that still need to be converted to match 95 // Setter methods called from JS that still need to be converted to match
96 // networkingPrivate methods. 96 // networkingPrivate methods.
97 const char kSetApnMessage[] = "setApn"; 97 const char kSetApnMessage[] = "setApn";
98 const char kSetAutoConnectMessage[] = "setAutoConnect";
99 const char kSetCarrierMessage[] = "setCarrier"; 98 const char kSetCarrierMessage[] = "setCarrier";
100 const char kSetIPConfigMessage[] = "setIPConfig"; 99 const char kSetIPConfigMessage[] = "setIPConfig";
101 const char kSetPreferNetworkMessage[] = "setPreferNetwork";
102 const char kSetServerHostname[] = "setServerHostname";
103 const char kShowMorePlanInfoMessage[] = "showMorePlanInfo"; 100 const char kShowMorePlanInfoMessage[] = "showMorePlanInfo";
104 const char kSimOperationMessage[] = "simOperation"; 101 const char kSimOperationMessage[] = "simOperation";
105 102
106 // TODO(stevenjb): Replace these with the matching networkingPrivate methods. 103 // TODO(stevenjb): Replace these with the matching networkingPrivate methods.
107 // crbug.com/279351. 104 // crbug.com/279351.
108 const char kDisableNetworkTypeMessage[] = "disableNetworkType"; 105 const char kDisableNetworkTypeMessage[] = "disableNetworkType";
109 const char kEnableNetworkTypeMessage[] = "enableNetworkType"; 106 const char kEnableNetworkTypeMessage[] = "enableNetworkType";
110 const char kGetManagedPropertiesMessage[] = "getManagedProperties"; 107 const char kGetManagedPropertiesMessage[] = "getManagedProperties";
111 const char kRequestNetworkScanMessage[] = "requestNetworkScan"; 108 const char kRequestNetworkScanMessage[] = "requestNetworkScan";
112 const char kStartConnectMessage[] = "startConnect"; 109 const char kStartConnectMessage[] = "startConnect";
113 const char kStartDisconnectMessage[] = "startDisconnect"; 110 const char kStartDisconnectMessage[] = "startDisconnect";
111 const char kSetPropertiesMessage[] = "setProperties";
114 112
115 // TODO(stevenjb): Add these to networkingPrivate. 113 // TODO(stevenjb): Add these to networkingPrivate.
116 const char kRemoveNetworkMessage[] = "removeNetwork"; 114 const char kRemoveNetworkMessage[] = "removeNetwork";
117 115
118 // TODO(stevenjb): Deprecate these and integrate with settings Web UI. 116 // TODO(stevenjb): Deprecate these and integrate with settings Web UI.
119 const char kAddConnectionMessage[] = "addConnection"; 117 const char kAddConnectionMessage[] = "addConnection";
120 const char kConfigureNetworkMessage[] = "configureNetwork"; 118 const char kConfigureNetworkMessage[] = "configureNetwork";
121 const char kActivateNetworkMessage[] = "activateNetwork"; 119 const char kActivateNetworkMessage[] = "activateNetwork";
122 120
123 // These are strings used to communicate with JavaScript. 121 // These are strings used to communicate with JavaScript.
(...skipping 14 matching lines...) Expand all
138 const char kTagWimaxAvailable[] = "wimaxAvailable"; 136 const char kTagWimaxAvailable[] = "wimaxAvailable";
139 const char kTagWimaxEnabled[] = "wimaxEnabled"; 137 const char kTagWimaxEnabled[] = "wimaxEnabled";
140 const char kTagWiredList[] = "wiredList"; 138 const char kTagWiredList[] = "wiredList";
141 const char kTagWirelessList[] = "wirelessList"; 139 const char kTagWirelessList[] = "wirelessList";
142 140
143 // Pseudo-ONC chrome specific properties appended to the ONC dictionary. 141 // Pseudo-ONC chrome specific properties appended to the ONC dictionary.
144 const char kNetworkInfoKeyServicePath[] = "servicePath"; 142 const char kNetworkInfoKeyServicePath[] = "servicePath";
145 const char kTagErrorMessage[] = "errorMessage"; 143 const char kTagErrorMessage[] = "errorMessage";
146 const char kTagShowViewAccountButton[] = "showViewAccountButton"; 144 const char kTagShowViewAccountButton[] = "showViewAccountButton";
147 145
148 const int kPreferredPriority = 1;
149
150 void ShillError(const std::string& function, 146 void ShillError(const std::string& function,
151 const std::string& error_name, 147 const std::string& error_name,
152 scoped_ptr<base::DictionaryValue> error_data) { 148 scoped_ptr<base::DictionaryValue> error_data) {
153 // UpdateConnectionData may send requests for stale services; ignore 149 // UpdateConnectionData may send requests for stale services; ignore
154 // these errors. 150 // these errors.
155 if (function == "UpdateConnectionData" && 151 if (function == "UpdateConnectionData" &&
156 error_name == network_handler::kDBusFailedError) 152 error_name == network_handler::kDBusFailedError)
157 return; 153 return;
158 NET_LOG_ERROR("Shill Error from InternetOptionsHandler: " + error_name, 154 NET_LOG_ERROR("Shill Error from InternetOptionsHandler: " + error_name,
159 function); 155 function);
160 } 156 }
161 157
162 const NetworkState* GetNetworkState(const std::string& service_path) { 158 const NetworkState* GetNetworkState(const std::string& service_path) {
163 return NetworkHandler::Get()->network_state_handler()-> 159 return NetworkHandler::Get()->network_state_handler()->
164 GetNetworkState(service_path); 160 GetNetworkState(service_path);
165 } 161 }
166 162
167 void SetNetworkProperty(const std::string& service_path,
168 const std::string& property,
169 base::Value* value) {
170 NET_LOG_EVENT("SetNetworkProperty: " + property, service_path);
171 base::DictionaryValue properties;
172 properties.SetWithoutPathExpansion(property, value);
173 NetworkHandler::Get()->network_configuration_handler()->SetProperties(
174 service_path, properties,
175 base::Bind(&base::DoNothing),
176 base::Bind(&ShillError, "SetNetworkProperty"));
177 }
178
179 // Builds a dictionary with network information and an icon used for the 163 // Builds a dictionary with network information and an icon used for the
180 // NetworkList on the settings page. Ownership of the returned pointer is 164 // NetworkList on the settings page. Ownership of the returned pointer is
181 // transferred to the caller. 165 // transferred to the caller.
182 base::DictionaryValue* BuildNetworkDictionary( 166 base::DictionaryValue* BuildNetworkDictionary(
183 const NetworkState* network, 167 const NetworkState* network,
184 float icon_scale_factor, 168 float icon_scale_factor,
185 const PrefService* profile_prefs) { 169 const PrefService* profile_prefs) {
186 scoped_ptr<base::DictionaryValue> network_info = 170 scoped_ptr<base::DictionaryValue> network_info =
187 network_util::TranslateNetworkStateToONC(network); 171 network_util::TranslateNetworkStateToONC(network);
188 172
(...skipping 144 matching lines...) Expand 10 before | Expand all | Expand 10 after
333 base::Unretained(this))); 317 base::Unretained(this)));
334 web_ui()->RegisterMessageCallback(kRemoveNetworkMessage, 318 web_ui()->RegisterMessageCallback(kRemoveNetworkMessage,
335 base::Bind(&InternetOptionsHandler::RemoveNetwork, 319 base::Bind(&InternetOptionsHandler::RemoveNetwork,
336 base::Unretained(this))); 320 base::Unretained(this)));
337 web_ui()->RegisterMessageCallback(kConfigureNetworkMessage, 321 web_ui()->RegisterMessageCallback(kConfigureNetworkMessage,
338 base::Bind(&InternetOptionsHandler::ConfigureNetwork, 322 base::Bind(&InternetOptionsHandler::ConfigureNetwork,
339 base::Unretained(this))); 323 base::Unretained(this)));
340 web_ui()->RegisterMessageCallback(kActivateNetworkMessage, 324 web_ui()->RegisterMessageCallback(kActivateNetworkMessage,
341 base::Bind(&InternetOptionsHandler::ActivateNetwork, 325 base::Bind(&InternetOptionsHandler::ActivateNetwork,
342 base::Unretained(this))); 326 base::Unretained(this)));
343 web_ui()->RegisterMessageCallback(kSetPreferNetworkMessage,
344 base::Bind(&InternetOptionsHandler::SetPreferNetworkCallback,
345 base::Unretained(this)));
346 web_ui()->RegisterMessageCallback(kSetAutoConnectMessage,
347 base::Bind(&InternetOptionsHandler::SetAutoConnectCallback,
348 base::Unretained(this)));
349 web_ui()->RegisterMessageCallback(kSetIPConfigMessage, 327 web_ui()->RegisterMessageCallback(kSetIPConfigMessage,
350 base::Bind(&InternetOptionsHandler::SetIPConfigCallback, 328 base::Bind(&InternetOptionsHandler::SetIPConfigCallback,
351 base::Unretained(this))); 329 base::Unretained(this)));
352 web_ui()->RegisterMessageCallback(kShowMorePlanInfoMessage, 330 web_ui()->RegisterMessageCallback(kShowMorePlanInfoMessage,
353 base::Bind(&InternetOptionsHandler::ShowMorePlanInfoCallback, 331 base::Bind(&InternetOptionsHandler::ShowMorePlanInfoCallback,
354 base::Unretained(this))); 332 base::Unretained(this)));
355 web_ui()->RegisterMessageCallback(kSetApnMessage, 333 web_ui()->RegisterMessageCallback(kSetApnMessage,
356 base::Bind(&InternetOptionsHandler::SetApnCallback, 334 base::Bind(&InternetOptionsHandler::SetApnCallback,
357 base::Unretained(this))); 335 base::Unretained(this)));
358 web_ui()->RegisterMessageCallback(kSetCarrierMessage, 336 web_ui()->RegisterMessageCallback(kSetCarrierMessage,
359 base::Bind(&InternetOptionsHandler::SetCarrierCallback, 337 base::Bind(&InternetOptionsHandler::SetCarrierCallback,
360 base::Unretained(this))); 338 base::Unretained(this)));
361 web_ui()->RegisterMessageCallback(kSimOperationMessage, 339 web_ui()->RegisterMessageCallback(kSimOperationMessage,
362 base::Bind(&InternetOptionsHandler::SimOperationCallback, 340 base::Bind(&InternetOptionsHandler::SimOperationCallback,
363 base::Unretained(this))); 341 base::Unretained(this)));
364 web_ui()->RegisterMessageCallback(kSetServerHostname,
365 base::Bind(&InternetOptionsHandler::SetServerHostnameCallback,
366 base::Unretained(this)));
367 342
368 // networkingPrivate methods 343 // networkingPrivate methods
369 web_ui()->RegisterMessageCallback(kDisableNetworkTypeMessage, 344 web_ui()->RegisterMessageCallback(kDisableNetworkTypeMessage,
370 base::Bind(&InternetOptionsHandler::DisableNetworkTypeCallback, 345 base::Bind(&InternetOptionsHandler::DisableNetworkTypeCallback,
371 base::Unretained(this))); 346 base::Unretained(this)));
372 web_ui()->RegisterMessageCallback(kEnableNetworkTypeMessage, 347 web_ui()->RegisterMessageCallback(kEnableNetworkTypeMessage,
373 base::Bind(&InternetOptionsHandler::EnableNetworkTypeCallback, 348 base::Bind(&InternetOptionsHandler::EnableNetworkTypeCallback,
374 base::Unretained(this))); 349 base::Unretained(this)));
375 web_ui()->RegisterMessageCallback(kGetManagedPropertiesMessage, 350 web_ui()->RegisterMessageCallback(kGetManagedPropertiesMessage,
376 base::Bind(&InternetOptionsHandler::GetManagedPropertiesCallback, 351 base::Bind(&InternetOptionsHandler::GetManagedPropertiesCallback,
377 base::Unretained(this))); 352 base::Unretained(this)));
378 web_ui()->RegisterMessageCallback(kRequestNetworkScanMessage, 353 web_ui()->RegisterMessageCallback(kRequestNetworkScanMessage,
379 base::Bind(&InternetOptionsHandler::RequestNetworkScanCallback, 354 base::Bind(&InternetOptionsHandler::RequestNetworkScanCallback,
380 base::Unretained(this))); 355 base::Unretained(this)));
381 web_ui()->RegisterMessageCallback(kStartConnectMessage, 356 web_ui()->RegisterMessageCallback(kStartConnectMessage,
382 base::Bind(&InternetOptionsHandler::StartConnectCallback, 357 base::Bind(&InternetOptionsHandler::StartConnectCallback,
383 base::Unretained(this))); 358 base::Unretained(this)));
384 web_ui()->RegisterMessageCallback(kStartDisconnectMessage, 359 web_ui()->RegisterMessageCallback(kStartDisconnectMessage,
385 base::Bind(&InternetOptionsHandler::StartDisconnectCallback, 360 base::Bind(&InternetOptionsHandler::StartDisconnectCallback,
386 base::Unretained(this))); 361 base::Unretained(this)));
362 web_ui()->RegisterMessageCallback(kSetPropertiesMessage,
363 base::Bind(&InternetOptionsHandler::SetPropertiesCallback,
364 base::Unretained(this)));
387 } 365 }
388 366
389 void InternetOptionsHandler::ShowMorePlanInfoCallback( 367 void InternetOptionsHandler::ShowMorePlanInfoCallback(
390 const base::ListValue* args) { 368 const base::ListValue* args) {
391 if (!web_ui()) 369 if (!web_ui())
392 return; 370 return;
393 std::string service_path; 371 std::string service_path;
394 if (args->GetSize() != 1 || !args->GetString(0, &service_path)) { 372 if (args->GetSize() != 1 || !args->GetString(0, &service_path)) {
395 NOTREACHED(); 373 NOTREACHED();
396 return; 374 return;
(...skipping 297 matching lines...) Expand 10 before | Expand all | Expand 10 after
694 return; 672 return;
695 if (device->type() != shill::kTypeCellular) 673 if (device->type() != shill::kTypeCellular)
696 return; 674 return;
697 const NetworkState* network = 675 const NetworkState* network =
698 NetworkHandler::Get()->network_state_handler()->FirstNetworkByType( 676 NetworkHandler::Get()->network_state_handler()->FirstNetworkByType(
699 NetworkTypePattern::Cellular()); 677 NetworkTypePattern::Cellular());
700 if (network && network->path() == details_path_) 678 if (network && network->path() == details_path_)
701 UpdateConnectionData(network->path()); 679 UpdateConnectionData(network->path());
702 } 680 }
703 681
704 void InternetOptionsHandler::SetServerHostnameCallback( 682 void InternetOptionsHandler::SetPropertiesCallback(
705 const base::ListValue* args) { 683 const base::ListValue* args) {
706 std::string service_path, server_hostname; 684 std::string service_path;
685 const base::DictionaryValue* properties;
707 if (args->GetSize() < 2 || 686 if (args->GetSize() < 2 ||
708 !args->GetString(0, &service_path) || 687 !args->GetString(0, &service_path) ||
709 !args->GetString(1, &server_hostname)) { 688 !args->GetDictionary(1, &properties)) {
710 NOTREACHED(); 689 NOTREACHED();
711 return; 690 return;
712 } 691 }
713 SetNetworkProperty(service_path, 692 NetworkHandler::Get()->managed_network_configuration_handler()->SetProperties(
714 shill::kProviderHostProperty, 693 service_path, *properties,
715 new base::StringValue(server_hostname)); 694 base::Bind(&base::DoNothing),
716 } 695 base::Bind(&ShillError, "SetProperties"));
717
718 void InternetOptionsHandler::SetPreferNetworkCallback(
719 const base::ListValue* args) {
720 std::string service_path;
721 bool prefer_network;
722 if (args->GetSize() < 2 ||
723 !args->GetString(0, &service_path) ||
724 !args->GetBoolean(1, &prefer_network)) {
725 NOTREACHED();
726 return;
727 }
728 int priority = prefer_network ? kPreferredPriority : 0;
729 SetNetworkProperty(service_path,
730 shill::kPriorityProperty,
731 new base::FundamentalValue(priority));
732 }
733
734 void InternetOptionsHandler::SetAutoConnectCallback(
735 const base::ListValue* args) {
736 std::string service_path;
737 bool auto_connect;
738 if (args->GetSize() < 2 ||
739 !args->GetString(0, &service_path) ||
740 !args->GetBoolean(1, &auto_connect)) {
741 NOTREACHED();
742 return;
743 }
744 SetNetworkProperty(service_path,
745 shill::kAutoConnectProperty,
746 new base::FundamentalValue(auto_connect));
747 } 696 }
748 697
749 void InternetOptionsHandler::SetIPConfigCallback(const base::ListValue* args) { 698 void InternetOptionsHandler::SetIPConfigCallback(const base::ListValue* args) {
750 std::string service_path; 699 std::string service_path;
751 if (!args->GetString(0, &service_path)) { 700 if (!args->GetString(0, &service_path)) {
752 NOTREACHED(); 701 NOTREACHED();
753 return; 702 return;
754 } 703 }
755 NetworkHandler::Get()->network_configuration_handler()->GetProperties( 704 NetworkHandler::Get()->network_configuration_handler()->GetProperties(
756 service_path, 705 service_path,
(...skipping 246 matching lines...) Expand 10 before | Expand all | Expand 10 after
1003 dictionary->SetBoolean( 952 dictionary->SetBoolean(
1004 kTagWimaxAvailable, 953 kTagWimaxAvailable,
1005 handler->IsTechnologyAvailable(NetworkTypePattern::Wimax())); 954 handler->IsTechnologyAvailable(NetworkTypePattern::Wimax()));
1006 dictionary->SetBoolean( 955 dictionary->SetBoolean(
1007 kTagWimaxEnabled, 956 kTagWimaxEnabled,
1008 handler->IsTechnologyEnabled(NetworkTypePattern::Wimax())); 957 handler->IsTechnologyEnabled(NetworkTypePattern::Wimax()));
1009 } 958 }
1010 959
1011 } // namespace options 960 } // namespace options
1012 } // namespace chromeos 961 } // namespace chromeos
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698