summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Treehugger Robot <treehugger-gerrit@google.com> 2020-11-17 20:28:44 +0000
committer Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> 2020-11-17 20:28:44 +0000
commit0295cca6a47781b1ac97df12c70f0b6e95ea947c (patch)
tree8095bff8e09f8436bfa660bc2cb2340e39d12752
parentfcf66c36d862b5fd759b5526dfea392b3b82c9d9 (diff)
parent317c552a8060775dd2aca20a0fb72b78ace64bb0 (diff)
Merge "Catch SSE when no subId is loaded" am: cc3f4cc083 am: 317c552a80
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1501011 Change-Id: If28ef033201d54439b6a5b01a7c8196d8af0b18f
-rw-r--r--telephony/java/android/telephony/ims/ImsRcsManager.java6
-rw-r--r--telephony/java/android/telephony/ims/RcsUceAdapter.java9
2 files changed, 13 insertions, 2 deletions
diff --git a/telephony/java/android/telephony/ims/ImsRcsManager.java b/telephony/java/android/telephony/ims/ImsRcsManager.java
index 4292aae59515..0d8e5bceaf2b 100644
--- a/telephony/java/android/telephony/ims/ImsRcsManager.java
+++ b/telephony/java/android/telephony/ims/ImsRcsManager.java
@@ -26,6 +26,7 @@ import android.content.Intent;
import android.os.Binder;
import android.os.IBinder;
import android.os.RemoteException;
+import android.os.ServiceSpecificException;
import android.provider.Settings;
import android.telephony.AccessNetworkConstants;
import android.telephony.BinderCacheManager;
@@ -198,6 +199,8 @@ public class ImsRcsManager {
c.setExecutor(executor);
try {
imsRcsController.registerImsRegistrationCallback(mSubId, c.getBinder());
+ } catch (ServiceSpecificException e) {
+ throw new ImsException(e.toString(), e.errorCode);
} catch (RemoteException | IllegalStateException e) {
throw new ImsException(e.getMessage(), ImsException.CODE_ERROR_SERVICE_UNAVAILABLE);
}
@@ -333,6 +336,9 @@ public class ImsRcsManager {
c.setExecutor(executor);
try {
imsRcsController.registerRcsAvailabilityCallback(mSubId, c.getBinder());
+
+ } catch (ServiceSpecificException e) {
+ throw new ImsException(e.toString(), e.errorCode);
} catch (RemoteException e) {
Log.e(TAG, "Error calling IImsRcsController#registerRcsAvailabilityCallback", e);
throw new ImsException("Remote IMS Service is not available",
diff --git a/telephony/java/android/telephony/ims/RcsUceAdapter.java b/telephony/java/android/telephony/ims/RcsUceAdapter.java
index 0aeaecc2af5e..ada069666547 100644
--- a/telephony/java/android/telephony/ims/RcsUceAdapter.java
+++ b/telephony/java/android/telephony/ims/RcsUceAdapter.java
@@ -27,6 +27,7 @@ import android.net.Uri;
import android.os.Binder;
import android.os.IBinder;
import android.os.RemoteException;
+import android.os.ServiceSpecificException;
import android.telephony.TelephonyFrameworkInitializer;
import android.telephony.ims.aidl.IImsRcsController;
import android.telephony.ims.aidl.IRcsUceControllerCallback;
@@ -463,6 +464,8 @@ public class RcsUceAdapter {
try {
imsRcsController.requestCapabilities(mSubId, mContext.getOpPackageName(),
mContext.getAttributionTag(), contactNumbers, internalCallback);
+ } catch (ServiceSpecificException e) {
+ throw new ImsException(e.toString(), e.errorCode);
} catch (RemoteException e) {
Log.e(TAG, "Error calling IImsRcsController#requestCapabilities", e);
throw new ImsException("Remote IMS Service is not available",
@@ -545,6 +548,8 @@ public class RcsUceAdapter {
try {
imsRcsController.requestNetworkAvailability(mSubId, mContext.getOpPackageName(),
mContext.getAttributionTag(), contactNumber, internalCallback);
+ } catch (ServiceSpecificException e) {
+ throw new ImsException(e.toString(), e.errorCode);
} catch (RemoteException e) {
Log.e(TAG, "Error calling IImsRcsController#requestNetworkAvailability", e);
throw new ImsException("Remote IMS Service is not available",
@@ -574,7 +579,7 @@ public class RcsUceAdapter {
try {
return imsRcsController.getUcePublishState(mSubId);
- } catch (android.os.ServiceSpecificException e) {
+ } catch (ServiceSpecificException e) {
throw new ImsException(e.getMessage(), e.errorCode);
} catch (RemoteException e) {
Log.e(TAG, "Error calling IImsRcsController#getUcePublishState", e);
@@ -621,7 +626,7 @@ public class RcsUceAdapter {
c.setExecutor(executor);
try {
imsRcsController.registerUcePublishStateCallback(mSubId, c.getBinder());
- } catch (android.os.ServiceSpecificException e) {
+ } catch (ServiceSpecificException e) {
throw new ImsException(e.getMessage(), e.errorCode);
} catch (RemoteException e) {
Log.e(TAG, "Error calling IImsRcsController#registerUcePublishStateCallback", e);