diff options
Diffstat (limited to 'rcs/rcsservice/src/com/android/service/ims/presence/PresenceSubscriber.java')
-rw-r--r-- | rcs/rcsservice/src/com/android/service/ims/presence/PresenceSubscriber.java | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/rcs/rcsservice/src/com/android/service/ims/presence/PresenceSubscriber.java b/rcs/rcsservice/src/com/android/service/ims/presence/PresenceSubscriber.java index 2071567..c804675 100644 --- a/rcs/rcsservice/src/com/android/service/ims/presence/PresenceSubscriber.java +++ b/rcs/rcsservice/src/com/android/service/ims/presence/PresenceSubscriber.java @@ -132,6 +132,12 @@ public class PresenceSubscriber extends PresenceBase { return ResultCode.SUBSCRIBE_NOT_REGISTERED; } + if (!RcsSettingUtils.hasUserEnabledContactDiscovery(mContext, mAssociatedSubscription)) { + logger.warn("requestCapability request has been denied due to contact discovery being " + + "disabled by the user"); + return ResultCode.ERROR_SERVICE_NOT_ENABLED; + } + int ret = subscriber.getStackStatusForCapabilityRequest(); if (ret < ResultCode.SUCCESS) { logger.error("requestCapability ret=" + ret); @@ -197,6 +203,12 @@ public class PresenceSubscriber extends PresenceBase { return ret; } + if (!RcsSettingUtils.hasUserEnabledContactDiscovery(mContext, mAssociatedSubscription)) { + logger.warn("requestCapability request has been denied due to contact discovery being " + + "disabled by the user"); + return ResultCode.ERROR_SERVICE_NOT_ENABLED; + } + if(!forceToNetwork){ logger.debug("check if we can use the value in cache"); int availabilityExpire = |