Merge "Disable WFC in case of "permanent" registration failures." into lmp-mr1-wfc-dev
diff --git a/src/java/com/android/internal/telephony/Phone.java b/src/java/com/android/internal/telephony/Phone.java
index 1c6a0c2..59e932b 100644
--- a/src/java/com/android/internal/telephony/Phone.java
+++ b/src/java/com/android/internal/telephony/Phone.java
@@ -1979,4 +1979,16 @@
      * @return true if IMS is Registered
      */
     public boolean isImsRegistered();
+
+    /**
+     * Returns the Status of Wi-Fi Calling
+     *@hide
+     */
+    public boolean isWifiCallingEnabled();
+
+     /**
+     * Returns the Status of Volte
+     *@hide
+     */
+    public boolean isVolteEnabled();
 }
diff --git a/src/java/com/android/internal/telephony/PhoneBase.java b/src/java/com/android/internal/telephony/PhoneBase.java
index 35ee313..0148891 100644
--- a/src/java/com/android/internal/telephony/PhoneBase.java
+++ b/src/java/com/android/internal/telephony/PhoneBase.java
@@ -2086,6 +2086,34 @@
         return isImsRegistered;
     }
 
+    /**
+     * Get Wifi Calling Feature Availability
+     */
+    @Override
+    public boolean isWifiCallingEnabled() {
+        ImsPhone imsPhone = mImsPhone;
+        boolean isWifiCallingEnabled = false;
+        if (imsPhone != null) {
+            isWifiCallingEnabled = imsPhone.isVowifiEnabled();
+        }
+        Rlog.d(LOG_TAG, "isWifiCallingEnabled =" + isWifiCallingEnabled);
+        return isWifiCallingEnabled;
+    }
+
+    /**
+     * Get Volte Feature Availability
+     */
+    @Override
+    public boolean isVolteEnabled() {
+        ImsPhone imsPhone = mImsPhone;
+        boolean isVolteEnabled = false;
+        if (imsPhone != null) {
+            isVolteEnabled = imsPhone.isVolteEnabled();
+        }
+        Rlog.d(LOG_TAG, "isImsRegistered =" + isVolteEnabled);
+        return isVolteEnabled;
+    }
+
     private boolean getRoamingOverrideHelper(String prefix, String key) {
         String iccId = getIccSerialNumber();
         if (TextUtils.isEmpty(iccId) || TextUtils.isEmpty(key)) {
diff --git a/src/java/com/android/internal/telephony/PhoneProxy.java b/src/java/com/android/internal/telephony/PhoneProxy.java
index 152df18..70ee3db 100644
--- a/src/java/com/android/internal/telephony/PhoneProxy.java
+++ b/src/java/com/android/internal/telephony/PhoneProxy.java
@@ -1512,6 +1512,14 @@
         return mActivePhone.isImsRegistered();
     }
 
+    public boolean isVolteEnabled() {
+        return mActivePhone.isVolteEnabled();
+    }
+
+    public boolean isWifiCallingEnabled() {
+        return mActivePhone.isWifiCallingEnabled();
+    }
+
     public void dump(FileDescriptor fd, PrintWriter pw, String[] args) {
         try {
             ((PhoneBase)mActivePhone).dump(fd, pw, args);