summaryrefslogtreecommitdiff
path: root/rcs/rcsservice/src/com/android/service/ims/presence/PresenceSubscriber.java
diff options
context:
space:
mode:
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.java12
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 =