shill: Move CDMA activation to capability delegates.

BUG=chromium-os:18735
TEST=unit tests

Change-Id: If69af7576c939eed8397797de3a2a88f7fd079e6
Reviewed-on: https://gerrit.chromium.org/gerrit/11632
Tested-by: Darin Petkov <petkov@chromium.org>
Reviewed-by: Jason Glasgow <jglasgow@chromium.org>
Commit-Ready: Darin Petkov <petkov@chromium.org>
diff --git a/cellular_capability.h b/cellular_capability.h
index 4030d62..9c9e1d1 100644
--- a/cellular_capability.h
+++ b/cellular_capability.h
@@ -31,6 +31,10 @@
   // Initialize RPC proxies.
   virtual void InitProxies() = 0;
 
+  // Activates the modem. Populates |error| on failure, leaves it unchanged
+  // otherwise. The default implementation fails by populating |error|.
+  virtual void Activate(const std::string &carrier, Error *error);
+
   // Retrieves identifiers associated with the modem and the capability.
   virtual void GetIdentifiers() = 0;