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

Unified Diff: chrome/browser/chromeos/cros/network_parser.cc

Issue 23618026: NOT FOR SUBMIT: Remove NetworkLibrary (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebase Created 7 years, 3 months 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/chromeos/cros/network_parser.cc
diff --git a/chrome/browser/chromeos/cros/network_parser.cc b/chrome/browser/chromeos/cros/network_parser.cc
deleted file mode 100644
index e769a82943924816753c1b24f65a927a74f076a4..0000000000000000000000000000000000000000
--- a/chrome/browser/chromeos/cros/network_parser.cc
+++ /dev/null
@@ -1,218 +0,0 @@
-// Copyright (c) 2012 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 "chrome/browser/chromeos/cros/network_parser.h"
-
-#include "base/json/json_reader.h"
-#include "base/json/json_writer.h" // for debug output only.
-#include "base/strings/stringprintf.h"
-#include "base/values.h"
-// Needed only for debug output (ConnectionTypeToString).
-#include "chrome/browser/chromeos/cros/native_network_constants.h"
-
-namespace chromeos {
-
-NetworkDeviceParser::NetworkDeviceParser(
- const EnumMapper<PropertyIndex>* mapper) : mapper_(mapper) {
- CHECK(mapper);
-}
-
-NetworkDeviceParser::~NetworkDeviceParser() {
-}
-
-NetworkDevice* NetworkDeviceParser::CreateDeviceFromInfo(
- const std::string& device_path,
- const DictionaryValue& info) {
- scoped_ptr<NetworkDevice> device(CreateNewNetworkDevice(device_path));
- if (!UpdateDeviceFromInfo(info, device.get())) {
- NOTREACHED() << "Unable to create new device";
- return NULL;
- }
- VLOG(2) << "Created device for path " << device_path;
- return device.release();
-}
-
-bool NetworkDeviceParser::UpdateDeviceFromInfo(const DictionaryValue& info,
- NetworkDevice* device) {
- for (DictionaryValue::Iterator iter(info); !iter.IsAtEnd(); iter.Advance())
- UpdateStatus(iter.key(), iter.value(), device, NULL);
-
- if (VLOG_IS_ON(2)) {
- std::string json;
- base::JSONWriter::WriteWithOptions(&info,
- base::JSONWriter::OPTIONS_PRETTY_PRINT,
- &json);
- VLOG(2) << "Updated device for path "
- << device->device_path() << ": " << json;
- }
- return true;
-}
-
-bool NetworkDeviceParser::UpdateStatus(const std::string& key,
- const base::Value& value,
- NetworkDevice* device,
- PropertyIndex* index) {
- PropertyIndex found_index = mapper().Get(key);
- if (index)
- *index = found_index;
- if (!ParseValue(found_index, value, device)) {
- VLOG(3) << "NetworkDeviceParser: Unhandled key: " << key;
- return false;
- }
- if (VLOG_IS_ON(3)) {
- std::string value_json;
- base::JSONWriter::WriteWithOptions(&value,
- base::JSONWriter::OPTIONS_PRETTY_PRINT,
- &value_json);
- VLOG(3) << "Updated value on device: "
- << device->device_path() << "[" << key << "] = " << value_json;
- }
- return true;
-}
-
-NetworkDevice* NetworkDeviceParser::CreateNewNetworkDevice(
- const std::string&device_path) {
- return new NetworkDevice(device_path);
-}
-
-//----------- Network Parser -----------------
-
-NetworkParser::NetworkParser(const EnumMapper<PropertyIndex>* mapper)
- : mapper_(mapper) {
- CHECK(mapper);
-}
-
-NetworkParser::~NetworkParser() {
-}
-
-Network* NetworkParser::CreateNetworkFromInfo(
- const std::string& service_path,
- const DictionaryValue& info) {
- ConnectionType type = ParseTypeFromDictionary(info);
- if (type == TYPE_UNKNOWN) // Return NULL if cannot parse network type.
- return NULL;
- scoped_ptr<Network> network(CreateNewNetwork(type, service_path));
- UpdateNetworkFromInfo(info, network.get());
- VLOG(2) << "Created Network '" << network->name()
- << "' from info. Path:" << service_path
- << " Type:" << ConnectionTypeToString(type);
- return network.release();
-}
-
-bool NetworkParser::UpdateNetworkFromInfo(const DictionaryValue& info,
- Network* network) {
- network->set_unique_id("");
- for (DictionaryValue::Iterator iter(info); !iter.IsAtEnd(); iter.Advance())
- network->UpdateStatus(iter.key(), iter.value(), NULL);
-
- if (network->unique_id().empty())
- network->CalculateUniqueId();
- VLOG(2) << "Updated network '" << network->name()
- << "' Path:" << network->service_path() << " Type:"
- << ConnectionTypeToString(network->type());
- return true;
-}
-
-bool NetworkParser::UpdateStatus(const std::string& key,
- const base::Value& value,
- Network* network,
- PropertyIndex* index) {
- PropertyIndex found_index = mapper().Get(key);
- if (index)
- *index = found_index;
- if (!ParseValue(found_index, value, network)) {
- VLOG(3) << "Unhandled key '" << key << "' in Network: " << network->name()
- << " ID: " << network->unique_id()
- << " Type: " << ConnectionTypeToString(network->type());
- return false;
- }
- if (VLOG_IS_ON(3)) {
- std::string value_json;
- base::JSONWriter::WriteWithOptions(&value,
- base::JSONWriter::OPTIONS_PRETTY_PRINT,
- &value_json);
- VLOG(3) << "Updated value on network: "
- << network->unique_id() << "[" << key << "] = " << value_json;
- }
- return true;
-}
-
-Network* NetworkParser::CreateNewNetwork(
- ConnectionType type, const std::string& service_path) {
- switch (type) {
- case TYPE_ETHERNET: {
- EthernetNetwork* ethernet = new EthernetNetwork(service_path);
- return ethernet;
- }
- case TYPE_WIFI: {
- WifiNetwork* wifi = new WifiNetwork(service_path);
- return wifi;
- }
- case TYPE_WIMAX: {
- WimaxNetwork* wifi = new WimaxNetwork(service_path);
- return wifi;
- }
- case TYPE_CELLULAR: {
- CellularNetwork* cellular = new CellularNetwork(service_path);
- return cellular;
- }
- case TYPE_VPN: {
- VirtualNetwork* vpn = new VirtualNetwork(service_path);
- return vpn;
- }
- default: {
- // If we try and create a service for which we have an unknown
- // type, then that's a bug, and we will crash.
- LOG(FATAL) << "Unknown service type: " << type;
- return NULL;
- }
- }
-}
-
-bool NetworkParser::ParseValue(PropertyIndex index,
- const base::Value& value,
- Network* network) {
- switch (index) {
- case PROPERTY_INDEX_NAME: {
- std::string name;
- if (!value.GetAsString(&name))
- return false;
- network->SetName(name);
- return true;
- }
- case PROPERTY_INDEX_GUID: {
- std::string unique_id;
- if (!value.GetAsString(&unique_id))
- return false;
- network->set_unique_id(unique_id);
- return true;
- }
- case PROPERTY_INDEX_AUTO_CONNECT: {
- bool auto_connect;
- if (!value.GetAsBoolean(&auto_connect))
- return false;
- network->set_auto_connect(auto_connect);
- return true;
- }
- case PROPERTY_INDEX_UI_DATA: {
- network->set_ui_data(NetworkUIData());
- std::string ui_data_json;
- if (!value.GetAsString(&ui_data_json))
- return false;
- scoped_ptr<base::Value> ui_data_value(
- base::JSONReader::Read(ui_data_json));
- base::DictionaryValue* ui_data_dict = NULL;
- if (!ui_data_value.get() ||
- !ui_data_value->GetAsDictionary(&ui_data_dict))
- return false;
- network->set_ui_data(NetworkUIData(*ui_data_dict));
- return true;
- }
- default:
- break;
- }
- return false;
-}
-
-} // namespace chromeos
« no previous file with comments | « chrome/browser/chromeos/cros/network_parser.h ('k') | chrome/browser/chromeos/login/screens/error_screen_actor.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698