Chromium Code Reviews| Index: chromeos/network/shill_property_util.h |
| diff --git a/chromeos/network/shill_property_util.h b/chromeos/network/shill_property_util.h |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..e5769cbe7ea59c6eeca6e4ff61eb41c891e7f3ff |
| --- /dev/null |
| +++ b/chromeos/network/shill_property_util.h |
| @@ -0,0 +1,54 @@ |
| +// Copyright 2013 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_SHILL_PROPERTY_UTIL_H_ |
| +#define CHROMEOS_NETWORK_SHILL_PROPERTY_UTIL_H_ |
| + |
| +#include <string> |
| + |
| +#include "base/memory/scoped_ptr.h" |
| + |
| +namespace base { |
| +class DictionaryValue; |
| +class Value; |
| +} |
| + |
| +namespace chromeos { |
| + |
| +class NetworkUIData; |
| + |
| +namespace shill_property_util { |
| + |
| +// Generates a name from properties."Wifi.HexSSID" if present, otherwise |
| +// validates properties.Name and returns a valid utf8 version. |
| +std::string GetNameFromProperties(const std::string& service_path, |
| + const base::DictionaryValue& properties); |
| + |
| +// Sets |out| to the UIData specified by |value|. Returns true if successfully |
| +// parsed. |
| +bool GetUIDataFromValue(const base::Value& value, NetworkUIData* out); |
| + |
| +// Returns the NetworkUIData parsed from the UIData property of |
| +// |shill_dictionary|. If parsing fails or the field doesn't exist, returns |
| +// NULL. |
| +scoped_ptr<NetworkUIData> GetUIData( |
| + const base::DictionaryValue& shill_dictionary); |
|
stevenjb
2013/08/28 15:33:54
It's strange that these two functions use differen
pneubeck (no reviews)
2013/09/02 13:39:54
Done.
|
| + |
| +// Sets the UIData property in |shill_dictionary| to the serialization of |
| +// |ui_data|. |
| +void SetUIData(const NetworkUIData& ui_data, |
| + base::DictionaryValue* shill_dictionary); |
| + |
| +// Copy configuration properties required by Shill to identify a network. |
| +// Only WiFi, VPN, Ethernet and EthernetEAP are supported. WiMax and Cellular |
| +// are not supported. Returns true only if all required properties could be |
| +// copied. |
| +bool CopyIdentifyingProperties(const base::DictionaryValue& service_properties, |
| + base::DictionaryValue* dest); |
| + |
| +} // namespace shill_property_util |
| + |
| +} // namespace chromeos |
| + |
| +#endif // CHROMEOS_NETWORK_SHILL_PROPERTY_UTIL_H_ |