shill: cellular: Indicate if service is activated over non-cellular network.

BUG=chromium-os:37117
TEST=Tested the following:
1. Build and run unit tests.
2. Verify existing GSM and CDMA cellular services work as expected.
3. Verify a cellular service that requires activation is activated over
   a non-cellular network.

Change-Id: I15a3d36220d5e81c7eca724b8778514910a21988
Reviewed-on: https://gerrit.chromium.org/gerrit/39498
Reviewed-by: Darin Petkov <petkov@chromium.org>
Commit-Ready: Ben Chan <benchan@chromium.org>
Tested-by: Ben Chan <benchan@chromium.org>
diff --git a/cellular_service.h b/cellular_service.h
index d8153f6..fac61a9 100644
--- a/cellular_service.h
+++ b/cellular_service.h
@@ -70,6 +70,11 @@
   virtual std::string GetStorageIdentifier() const;
   void SetStorageIdentifier(const std::string &identifier);
 
+  void SetActivateOverNonCellularNetwork(bool state);
+  bool activate_over_non_cellular_network() const {
+    return activate_over_non_cellular_network_;
+  }
+
   void SetActivationState(const std::string &state);
   const std::string &activation_state() const { return activation_state_; }
 
@@ -146,6 +151,7 @@
                            Stringmap *apn_info);
 
   // Properties
+  bool activate_over_non_cellular_network_;
   std::string activation_state_;
   Cellular::Operator serving_operator_;
   std::string network_technology_;