shill: Supply home provider and serving operator for CDMA.

The Cellular::Operator classed is modeled after the Cellular::Network class.

BUG=chromium-os:19424
TEST=unit tests, tested on device

Change-Id: I464accd0f54318082c55ed50e879c6e229428d07
Reviewed-on: http://gerrit.chromium.org/gerrit/6402
Tested-by: Darin Petkov <petkov@chromium.org>
Reviewed-by: Chris Masone <cmasone@chromium.org>
diff --git a/cellular_service.cc b/cellular_service.cc
index f0cb2ab..70b1191 100644
--- a/cellular_service.cc
+++ b/cellular_service.cc
@@ -23,21 +23,17 @@
       strength_(0),
       cellular_(device),
       type_(flimflam::kTypeCellular) {
-
   store_.RegisterConstString(flimflam::kActivationStateProperty,
                              &activation_state_);
-
   store_.RegisterStringmap(flimflam::kCellularApnProperty, &apn_info_);
   store_.RegisterConstStringmap(flimflam::kCellularLastGoodApnProperty,
                                 &last_good_apn_info_);
-
   store_.RegisterConstString(flimflam::kNetworkTechnologyProperty,
                              &network_tech_);
-  store_.RegisterConstString(flimflam::kOperatorNameProperty, &operator_name_);
-  store_.RegisterConstString(flimflam::kOperatorCodeProperty, &operator_code_);
   store_.RegisterConstString(flimflam::kPaymentURLProperty, &payment_url_);
   store_.RegisterConstString(flimflam::kRoamingStateProperty, &roaming_state_);
-
+  store_.RegisterConstStringmap(flimflam::kServingOperatorProperty,
+                                &serving_operator_.ToDict());
   store_.RegisterConstUint8(flimflam::kSignalStrengthProperty, &strength_);
   store_.RegisterConstString(flimflam::kTypeProperty, &type_);
   store_.RegisterConstString(flimflam::kUsageURLProperty, &usage_url_);
@@ -59,4 +55,12 @@
   return cellular_->GetRpcIdentifier();
 }
 
+const Cellular::Operator &CellularService::serving_operator() const {
+  return serving_operator_;
+}
+
+void CellularService::set_serving_operator(const Cellular::Operator &oper) {
+  serving_operator_.CopyFrom(oper);
+}
+
 }  // namespace shill