summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Treehugger Robot <treehugger-gerrit@google.com> 2020-11-17 20:07:47 +0000
committer Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> 2020-11-17 20:07:47 +0000
commit317c552a8060775dd2aca20a0fb72b78ace64bb0 (patch)
treeba0dcb48ec0d84b8694aeb183d6d77c24af4c8e8
parentd45305b25c434c5a2bcf6faef440862bd9cd760f (diff)
parentcc3f4cc083cdf6b8c657b83b539de7b8114e259d (diff)
Merge "Catch SSE when no subId is loaded" am: cc3f4cc083
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1501011 Change-Id: Ibda753abec714576986b5ca94e65eb64091d1e26
-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);