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

Side by Side Diff: chromeos/network/network_ui_data.h

Issue 370623002: Remove most of NetworkUIData. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Removed yet-another unused function. Created 6 years, 5 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 unified diff | Download patch | Annotate | Revision Log
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 #ifndef CHROMEOS_NETWORK_NETWORK_UI_DATA_H_ 5 #ifndef CHROMEOS_NETWORK_NETWORK_UI_DATA_H_
6 #define CHROMEOS_NETWORK_NETWORK_UI_DATA_H_ 6 #define CHROMEOS_NETWORK_NETWORK_UI_DATA_H_
7 7
8 #include <string> 8 #include <string>
9 9
10 #include "base/basictypes.h" 10 #include "base/basictypes.h"
11 #include "base/memory/scoped_ptr.h" 11 #include "base/memory/scoped_ptr.h"
12 #include "chromeos/chromeos_export.h" 12 #include "chromeos/chromeos_export.h"
13 #include "chromeos/network/certificate_pattern.h"
14 #include "components/onc/onc_constants.h" 13 #include "components/onc/onc_constants.h"
15 14
16 namespace base { 15 namespace base {
17 class DictionaryValue; 16 class DictionaryValue;
18 } 17 }
19 18
20 namespace chromeos { 19 namespace chromeos {
21 20
22 enum ClientCertType {
23 CLIENT_CERT_TYPE_NONE = 0,
24 CLIENT_CERT_TYPE_REF = 1,
25 CLIENT_CERT_TYPE_PATTERN = 2
26 };
27
28 // Helper for accessing and setting values in the network's UI data dictionary. 21 // Helper for accessing and setting values in the network's UI data dictionary.
29 // Accessing values is done via static members that take the network as an 22 // Accessing values is done via static members that take the network as an
30 // argument. In order to fill a UI data dictionary, construct an instance, set 23 // argument. In order to fill a UI data dictionary, construct an instance, set
31 // up your data members, and call FillDictionary(). For example, if you have a 24 // up your data members, and call FillDictionary(). For example, if you have a
32 // |network|: 25 // |network|:
33 // 26 //
34 // NetworkUIData ui_data; 27 // NetworkUIData ui_data;
35 // ui_data.set_onc_source(onc::ONC_SOURCE_USER_IMPORT);
36 // ui_data.FillDictionary(network->ui_data()); 28 // ui_data.FillDictionary(network->ui_data());
37 class CHROMEOS_EXPORT NetworkUIData { 29 class CHROMEOS_EXPORT NetworkUIData {
38 public: 30 public:
39 NetworkUIData(); 31 NetworkUIData();
40 NetworkUIData(const NetworkUIData& other); 32 NetworkUIData(const NetworkUIData& other);
41 NetworkUIData& operator=(const NetworkUIData& other); 33 NetworkUIData& operator=(const NetworkUIData& other);
42 explicit NetworkUIData(const base::DictionaryValue& dict); 34 explicit NetworkUIData(const base::DictionaryValue& dict);
43 ~NetworkUIData(); 35 ~NetworkUIData();
44 36
45 void set_onc_source(::onc::ONCSource onc_source) { onc_source_ = onc_source; }
46 ::onc::ONCSource onc_source() const { return onc_source_; } 37 ::onc::ONCSource onc_source() const { return onc_source_; }
47 38
48 void set_certificate_pattern(const CertificatePattern& pattern) {
49 certificate_pattern_ = pattern;
50 }
51 const CertificatePattern& certificate_pattern() const {
52 return certificate_pattern_;
53 }
54 void set_certificate_type(ClientCertType type) {
55 certificate_type_ = type;
56 }
57 ClientCertType certificate_type() const {
58 return certificate_type_;
59 }
60 bool is_managed() const {
61 return onc_source_ == ::onc::ONC_SOURCE_DEVICE_POLICY ||
62 onc_source_ == ::onc::ONC_SOURCE_USER_POLICY;
63 }
64 const base::DictionaryValue* user_settings() const { 39 const base::DictionaryValue* user_settings() const {
65 return user_settings_.get(); 40 return user_settings_.get();
66 } 41 }
67 void set_user_settings(scoped_ptr<base::DictionaryValue> dict); 42 void set_user_settings(scoped_ptr<base::DictionaryValue> dict);
68 const std::string& policy_guid() const {
69 return policy_guid_;
70 }
71 void set_policy_guid(const std::string& guid) {
72 policy_guid_ = guid;
73 }
74 43
75 // Returns |onc_source_| as a string, one of kONCSource*. 44 // Returns |onc_source_| as a string, one of kONCSource*.
76 std::string GetONCSourceAsString() const; 45 std::string GetONCSourceAsString() const;
77 46
78 // Fills in |dict| with the currently configured values. This will write the 47 // Fills in |dict| with the currently configured values. This will write the
79 // keys appropriate for Network::ui_data() as defined below (kKeyXXX). 48 // keys appropriate for Network::ui_data() as defined below (kKeyXXX).
80 void FillDictionary(base::DictionaryValue* dict) const; 49 void FillDictionary(base::DictionaryValue* dict) const;
81 50
82 // Creates a NetworkUIData object from |onc_network|, which has to be a valid 51 // Creates a NetworkUIData object from |onc_source|. This function is used to
83 // ONC NetworkConfiguration dictionary. 52 // create the "UIData" property of the Shill configuration.
84 // This function is used to create the "UIData" field of the Shill 53 static scoped_ptr<NetworkUIData> CreateFromONC(::onc::ONCSource onc_source);
85 // configuration.
86 static scoped_ptr<NetworkUIData> CreateFromONC(
87 ::onc::ONCSource onc_source,
88 const base::DictionaryValue& onc_network);
89 54
90 // Key for storing source of the ONC network. 55 // Key for storing source of the ONC network.
91 static const char kKeyONCSource[]; 56 static const char kKeyONCSource[];
92 57
93 // Key for storing the certificate pattern.
94 static const char kKeyCertificatePattern[];
95
96 // Key for storing the certificate type.
97 static const char kKeyCertificateType[];
98
99 // Key for storing the user settings. 58 // Key for storing the user settings.
100 static const char kKeyUserSettings[]; 59 static const char kKeyUserSettings[];
101 60
102 // Values for kKeyONCSource 61 // Values for kKeyONCSource
103 static const char kONCSourceUserImport[]; 62 static const char kONCSourceUserImport[];
104 static const char kONCSourceDevicePolicy[]; 63 static const char kONCSourceDevicePolicy[];
105 static const char kONCSourceUserPolicy[]; 64 static const char kONCSourceUserPolicy[];
106 65
107 private: 66 private:
108 CertificatePattern certificate_pattern_;
109 ::onc::ONCSource onc_source_; 67 ::onc::ONCSource onc_source_;
110 ClientCertType certificate_type_;
111 scoped_ptr<base::DictionaryValue> user_settings_; 68 scoped_ptr<base::DictionaryValue> user_settings_;
112 std::string policy_guid_;
113 }; 69 };
114 70
115 } // namespace chromeos 71 } // namespace chromeos
116 72
117 #endif // CHROMEOS_NETWORK_NETWORK_UI_DATA_H_ 73 #endif // CHROMEOS_NETWORK_NETWORK_UI_DATA_H_
OLDNEW
« no previous file with comments | « chromeos/network/network_connection_handler_unittest.cc ('k') | chromeos/network/network_ui_data.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698