Bug 1052848 - Part 1: Use enums for MobileRoamingMode in nsIMobileConnectionProvider.idl (idl). r=hsinyi
authorJessica Jong <jjong@mozilla.com>
Mon, 10 Nov 2014 17:56:12 +0800
changeset 214879 8e85aaab3c1102b34707db241b65322ec878e593
parent 214878 db84f249cb6606cdf8e3ce45f400aec02309fcaf
child 214880 c456b65bdc62598dd7a7575cab28ae0fb5c3f7e7
push id27799
push userkwierso@gmail.com
push dateTue, 11 Nov 2014 02:14:10 +0000
treeherderautoland@cbe6afcae26c [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewershsinyi
bugs1052848
milestone36.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1052848 - Part 1: Use enums for MobileRoamingMode in nsIMobileConnectionProvider.idl (idl). r=hsinyi
dom/mobileconnection/interfaces/nsIMobileConnectionService.idl
--- a/dom/mobileconnection/interfaces/nsIMobileConnectionService.idl
+++ b/dom/mobileconnection/interfaces/nsIMobileConnectionService.idl
@@ -119,26 +119,24 @@ interface nsIMobileConnectionListener : 
    */
   void notifyNetworkSelectionModeChanged();
 };
 
 %{C++
 #define NO_ADDITIONAL_INFORMATION 0
 %}
 
-[scriptable, builtinclass, uuid(413e8bff-9f65-41a0-953f-b82e6cdbc00d)]
+[scriptable, builtinclass, uuid(16e77f19-0298-46de-ae49-9b2fb92a28c0)]
 interface nsIMobileConnectionCallback : nsISupports
 {
   /**
    * notify*Success*() will be called, when request is succeed.
    */
   void notifySuccess();
 
-  void notifySuccessWithString(in DOMString result);
-
   void notifySuccessWithBoolean(in boolean result);
 
   void notifyGetNetworksSuccess(in uint32_t count,
                                 [array, size_is(count)] in nsIMobileNetworkInfo networks);
 
   void notifySendCancelMmiSuccess(in DOMString aServiceCode,
                                   in DOMString aStatusMessage);
 
@@ -163,16 +161,18 @@ interface nsIMobileConnectionCallback : 
   void notifyGetCallBarringSuccess(in unsigned short program,
                                    in boolean enabled,
                                    in unsigned short serviceClass);
 
   void notifyGetClirStatusSuccess(in unsigned short n, in unsigned short m);
 
   void notifyGetPreferredNetworkTypeSuccess(in long type);
 
+  void notifyGetRoamingPreferenceSuccess(in long mode);
+
   /**
    * notifyError() will be called, when request is failed.
    */
   [optional_argc]
   void notifyError(in DOMString name,
                    [optional] in DOMString message,
                    [optional] in DOMString serviceCode,
                    [optional] in unsigned short additionalInformation);
@@ -230,17 +230,17 @@ interface nsIMobileConnectionService : n
 
 %{C++
 template<typename T> struct already_AddRefed;
 
 already_AddRefed<nsIMobileConnectionService>
 NS_CreateMobileConnectionService();
 %}
 
-[scriptable, uuid(d6b15551-d290-4e38-9749-d21eb35cdaf1)]
+[scriptable, uuid(5250a0ba-19a2-4e5b-a5ee-1e69ba2897a9)]
 interface nsIMobileConnection : nsISupports
 {
   /*
    * ICC service class.
    */
   const long ICC_SERVICE_CLASS_NONE       = 0; // not available
   const long ICC_SERVICE_CLASS_VOICE      = (1 << 0);
   const long ICC_SERVICE_CLASS_DATA       = (1 << 1);
@@ -323,16 +323,23 @@ interface nsIMobileConnection : nsISuppo
   const long PREFERRED_NETWORK_TYPE_CDMA_ONLY               = 5;
   const long PREFERRED_NETWORK_TYPE_EVDO_ONLY               = 6;
   const long PREFERRED_NETWORK_TYPE_WCDMA_GSM_CDMA_EVDO     = 7;
   const long PREFERRED_NETWORK_TYPE_LTE_CDMA_EVDO           = 8;
   const long PREFERRED_NETWORK_TYPE_LTE_WCDMA_GSM           = 9;
   const long PREFERRED_NETWORK_TYPE_LTE_WCDMA_GSM_CDMA_EVDO = 10;
   const long PREFERRED_NETWORK_TYPE_LTE_ONLY                = 11;
 
+  /**
+   * CDMA roaming preference.
+   */
+  const long CDMA_ROAMING_PREFERENCE_HOME       = 0;
+  const long CDMA_ROAMING_PREFERENCE_AFFILIATED = 1;
+  const long CDMA_ROAMING_PREFERENCE_ANY        = 2;
+
   readonly attribute unsigned long serviceId;
 
   /**
    * Called when any one who is interested in receiving unsolicited messages
    * from this nsIMobileConnection instance.
    */
   void registerListener(in nsIMobileConnectionListener listener);
   void unregisterListener(in nsIMobileConnectionListener listener);
@@ -465,39 +472,39 @@ interface nsIMobileConnection : nsISuppo
    * 'GenericFailure'.
    */
   void getPreferredNetworkType(in nsIMobileConnectionCallback requestCallback);
 
   /**
    * Set roaming preference.
    *
    * @param mode
-   *        DOMString indicates the desired roaming preference.
-   *        Possible values: 'home', 'affiliated', or 'any'.
+   *        One of the nsIMobileConnection.CDMA_ROAMING_PREFERENCE_* values.
    * @param requestCallback
    *        Called when request is finished.
    *
    * If successful, the notifySuccess() will be called.
    *
    * Otherwise, the notifyError() will be called, and the error will be either
    * 'RadioNotAvailable', 'RequestNotSupported', InvalidParameter',
    * 'IllegalSIMorME', or 'GenericFailure'.
    */
-  void setRoamingPreference(in DOMString mode,
+  void setRoamingPreference(in long mode,
                             in nsIMobileConnectionCallback requestCallback);
 
   /**
    * Query current roaming preference.
    *
    * @param requestCallback
    *        Called when request is finished.
    *
-   * If successful, the notifySuccessWithString() will be called. And the result
-   * will be a string indicating the current roaming preference. The value will
-   * be either 'home', 'affiliated', or 'any'.
+   * If successful, the notifyGetRoamingPreferenceSuccess() will be called, and
+   * the result 'mode' will be one of the
+   * nsIMobileConnection.CDMA_ROAMING_PREFERENCE_* values, indicating the
+   * current roaming preference.
    *
    * Otherwise, the notifyError() will be called, and the error will be either
    * 'RadioNotAvailable', 'RequestNotSupported', 'IllegalSIMorME', or
    * 'GenericFailure'.
    */
   void getRoamingPreference(in nsIMobileConnectionCallback requestCallback);
 
   /**