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 "chromeos/network/onc/onc_translator.h" | 5 #include "chromeos/network/onc/onc_translator.h" |
6 | 6 |
7 #include <string> | 7 #include <string> |
8 | 8 |
9 #include "base/basictypes.h" | 9 #include "base/basictypes.h" |
10 #include "base/json/json_reader.h" | 10 #include "base/json/json_reader.h" |
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
72 // Translates the associated Shill dictionary and creates an ONC object of the | 72 // Translates the associated Shill dictionary and creates an ONC object of the |
73 // given signature. | 73 // given signature. |
74 scoped_ptr<base::DictionaryValue> CreateTranslatedONCObject(); | 74 scoped_ptr<base::DictionaryValue> CreateTranslatedONCObject(); |
75 | 75 |
76 private: | 76 private: |
77 void TranslateEthernet(); | 77 void TranslateEthernet(); |
78 void TranslateOpenVPN(); | 78 void TranslateOpenVPN(); |
79 void TranslateIPsec(); | 79 void TranslateIPsec(); |
80 void TranslateVPN(); | 80 void TranslateVPN(); |
81 void TranslateWiFiWithState(); | 81 void TranslateWiFiWithState(); |
| 82 void TranslateWiMAXWithState(); |
82 void TranslateCellularWithState(); | 83 void TranslateCellularWithState(); |
83 void TranslateCellularDevice(); | 84 void TranslateCellularDevice(); |
84 void TranslateNetworkWithState(); | 85 void TranslateNetworkWithState(); |
85 void TranslateIPConfig(); | 86 void TranslateIPConfig(); |
86 void TranslateSavedOrStaticIPConfig(const std::string& nameserver_property); | 87 void TranslateSavedOrStaticIPConfig(const std::string& nameserver_property); |
87 void TranslateSavedIPConfig(); | 88 void TranslateSavedIPConfig(); |
88 void TranslateStaticIPConfig(); | 89 void TranslateStaticIPConfig(); |
89 | 90 |
90 // Creates an ONC object from |dictionary| according to the signature | 91 // Creates an ONC object from |dictionary| according to the signature |
91 // associated to |onc_field_name| and adds it to |onc_object_| at | 92 // associated to |onc_field_name| and adds it to |onc_object_| at |
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
153 } else if (onc_signature_ == &kEthernetSignature) { | 154 } else if (onc_signature_ == &kEthernetSignature) { |
154 TranslateEthernet(); | 155 TranslateEthernet(); |
155 } else if (onc_signature_ == &kVPNSignature) { | 156 } else if (onc_signature_ == &kVPNSignature) { |
156 TranslateVPN(); | 157 TranslateVPN(); |
157 } else if (onc_signature_ == &kOpenVPNSignature) { | 158 } else if (onc_signature_ == &kOpenVPNSignature) { |
158 TranslateOpenVPN(); | 159 TranslateOpenVPN(); |
159 } else if (onc_signature_ == &kIPsecSignature) { | 160 } else if (onc_signature_ == &kIPsecSignature) { |
160 TranslateIPsec(); | 161 TranslateIPsec(); |
161 } else if (onc_signature_ == &kWiFiWithStateSignature) { | 162 } else if (onc_signature_ == &kWiFiWithStateSignature) { |
162 TranslateWiFiWithState(); | 163 TranslateWiFiWithState(); |
| 164 } else if (onc_signature_ == &kWiMAXWithStateSignature) { |
| 165 TranslateWiMAXWithState(); |
163 } else if (onc_signature_ == &kCellularWithStateSignature) { | 166 } else if (onc_signature_ == &kCellularWithStateSignature) { |
164 if (field_translation_table_ == kCellularDeviceTable) | 167 if (field_translation_table_ == kCellularDeviceTable) |
165 TranslateCellularDevice(); | 168 TranslateCellularDevice(); |
166 else | 169 else |
167 TranslateCellularWithState(); | 170 TranslateCellularWithState(); |
168 } else if (onc_signature_ == &kIPConfigSignature) { | 171 } else if (onc_signature_ == &kIPConfigSignature) { |
169 TranslateIPConfig(); | 172 TranslateIPConfig(); |
170 } else if (onc_signature_ == &kSavedIPConfigSignature) { | 173 } else if (onc_signature_ == &kSavedIPConfigSignature) { |
171 TranslateSavedIPConfig(); | 174 TranslateSavedIPConfig(); |
172 } else if (onc_signature_ == &kStaticIPConfigSignature) { | 175 } else if (onc_signature_ == &kStaticIPConfigSignature) { |
(...skipping 137 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
310 } | 313 } |
311 | 314 |
312 void ShillToONCTranslator::TranslateWiFiWithState() { | 315 void ShillToONCTranslator::TranslateWiFiWithState() { |
313 TranslateWithTableAndSet( | 316 TranslateWithTableAndSet( |
314 shill::kSecurityProperty, kWiFiSecurityTable, ::onc::wifi::kSecurity); | 317 shill::kSecurityProperty, kWiFiSecurityTable, ::onc::wifi::kSecurity); |
315 std::string ssid = shill_property_util::GetSSIDFromProperties( | 318 std::string ssid = shill_property_util::GetSSIDFromProperties( |
316 *shill_dictionary_, NULL /* ignore unknown encoding */); | 319 *shill_dictionary_, NULL /* ignore unknown encoding */); |
317 if (!ssid.empty()) | 320 if (!ssid.empty()) |
318 onc_object_->SetStringWithoutPathExpansion(::onc::wifi::kSSID, ssid); | 321 onc_object_->SetStringWithoutPathExpansion(::onc::wifi::kSSID, ssid); |
319 CopyPropertiesAccordingToSignature(); | 322 CopyPropertiesAccordingToSignature(); |
| 323 TranslateAndAddNestedObject(::onc::wifi::kEAP); |
| 324 } |
| 325 |
| 326 void ShillToONCTranslator::TranslateWiMAXWithState() { |
| 327 CopyPropertiesAccordingToSignature(); |
| 328 TranslateAndAddNestedObject(::onc::wimax::kEAP); |
320 } | 329 } |
321 | 330 |
322 void ShillToONCTranslator::TranslateCellularWithState() { | 331 void ShillToONCTranslator::TranslateCellularWithState() { |
323 CopyPropertiesAccordingToSignature(); | 332 CopyPropertiesAccordingToSignature(); |
324 TranslateWithTableAndSet(shill::kActivationStateProperty, | 333 TranslateWithTableAndSet(shill::kActivationStateProperty, |
325 kActivationStateTable, | 334 kActivationStateTable, |
326 ::onc::cellular::kActivationState); | 335 ::onc::cellular::kActivationState); |
327 TranslateWithTableAndSet(shill::kRoamingStateProperty, | 336 TranslateWithTableAndSet(shill::kRoamingStateProperty, |
328 kRoamingStateTable, | 337 kRoamingStateTable, |
329 ::onc::cellular::kRoamingState); | 338 ::onc::cellular::kRoamingState); |
(...skipping 336 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
666 ::onc::ONCSource onc_source, | 675 ::onc::ONCSource onc_source, |
667 const OncValueSignature* onc_signature) { | 676 const OncValueSignature* onc_signature) { |
668 CHECK(onc_signature != NULL); | 677 CHECK(onc_signature != NULL); |
669 | 678 |
670 ShillToONCTranslator translator(shill_dictionary, onc_source, *onc_signature); | 679 ShillToONCTranslator translator(shill_dictionary, onc_source, *onc_signature); |
671 return translator.CreateTranslatedONCObject(); | 680 return translator.CreateTranslatedONCObject(); |
672 } | 681 } |
673 | 682 |
674 } // namespace onc | 683 } // namespace onc |
675 } // namespace chromeos | 684 } // namespace chromeos |
OLD | NEW |