Loading data/src/main/java/com/moez/QKSMS/blocking/BlockingManager.kt +3 −1 Original line number Diff line number Diff line Loading @@ -30,7 +30,9 @@ class BlockingManager @Inject constructor( override fun getClientCapability(): BlockingClient.Capability = client.getClientCapability() override fun getAction(address: String): Single<BlockingClient.Action> = client.getAction(address) override fun shouldBlock(address: String): Single<BlockingClient.Action> = client.shouldBlock(address) override fun isBlacklisted(address: String): Single<BlockingClient.Action> = client.isBlacklisted(address) override fun block(addresses: List<String>): Completable = client.block(addresses) Loading data/src/main/java/com/moez/QKSMS/blocking/CallBlockerBlockingClient.kt +16 −3 Original line number Diff line number Diff line Loading @@ -43,11 +43,24 @@ class CallBlockerBlockingClient @Inject constructor( override fun getClientCapability() = BlockingClient.Capability.BLOCK_WITH_PERMISSION override fun getAction(address: String): Single<BlockingClient.Action> = Single.fromCallable { override fun shouldBlock(address: String): Single<BlockingClient.Action> = Single.fromCallable { val uri = Uri.parse("content://com.cuiet.blockCalls.ContProvBlockCalls/lookup/is.blocked.lookup") val blockReason = tryOrNull { context.contentResolver.query(uri, arrayOf("result"), "incomingNumber", arrayOf(address), null) context.contentResolver.query(uri, arrayOf("result"), "incomingNumber", arrayOf(address), null) ?.use { cursor -> cursor.map(::LookupResult) } ?.find { result -> result.blockReason != null } }?.blockReason when (blockReason) { "true" -> BlockingClient.Action.Block() else -> BlockingClient.Action.Unblock } } override fun isBlacklisted(address: String): Single<BlockingClient.Action> = Single.fromCallable { val uri = Uri.parse("content://com.cuiet.blockCalls.ContProvBlockCalls/lookup/is.blocked.lookup") val blockReason = tryOrNull { context.contentResolver.query(uri, arrayOf("result"), "blacklistLookup", arrayOf(address), null) ?.use { cursor -> cursor.map(::LookupResult) } ?.find { result -> result.blockReason != null } }?.blockReason Loading data/src/main/java/com/moez/QKSMS/blocking/CallControlBlockingClient.kt +3 −1 Original line number Diff line number Diff line Loading @@ -48,7 +48,9 @@ class CallControlBlockingClient @Inject constructor( override fun getClientCapability() = BlockingClient.Capability.BLOCK_WITH_PERMISSION override fun getAction(address: String): Single<BlockingClient.Action> = Single.fromCallable { override fun shouldBlock(address: String): Single<BlockingClient.Action> = isBlacklisted(address) override fun isBlacklisted(address: String): Single<BlockingClient.Action> = Single.fromCallable { val uri = Uri.withAppendedPath(CallControl.LOOKUP_TEXT_URI, address) val blockReason = tryOrNull { context.contentResolver.query(uri, projection, null, null, null) // Query URI Loading data/src/main/java/com/moez/QKSMS/blocking/QksmsBlockingClient.kt +3 −1 Original line number Diff line number Diff line Loading @@ -31,7 +31,9 @@ class QksmsBlockingClient @Inject constructor( override fun getClientCapability() = BlockingClient.Capability.BLOCK_WITHOUT_PERMISSION override fun getAction(address: String): Single<BlockingClient.Action> = Single.fromCallable { override fun shouldBlock(address: String): Single<BlockingClient.Action> = isBlacklisted(address) override fun isBlacklisted(address: String): Single<BlockingClient.Action> = Single.fromCallable { when (blockingRepo.isBlocked(address)) { true -> BlockingClient.Action.Block() false -> BlockingClient.Action.Unblock Loading data/src/main/java/com/moez/QKSMS/blocking/ShouldIAnswerBlockingClient.kt +3 −1 Original line number Diff line number Diff line Loading @@ -55,7 +55,9 @@ class ShouldIAnswerBlockingClient @Inject constructor( override fun getClientCapability() = BlockingClient.Capability.CANT_BLOCK override fun getAction(address: String): Single<BlockingClient.Action> { override fun shouldBlock(address: String): Single<BlockingClient.Action> = isBlacklisted(address) override fun isBlacklisted(address: String): Single<BlockingClient.Action> { return Binder(context, address).isBlocked() .map { blocked -> when (blocked) { Loading Loading
data/src/main/java/com/moez/QKSMS/blocking/BlockingManager.kt +3 −1 Original line number Diff line number Diff line Loading @@ -30,7 +30,9 @@ class BlockingManager @Inject constructor( override fun getClientCapability(): BlockingClient.Capability = client.getClientCapability() override fun getAction(address: String): Single<BlockingClient.Action> = client.getAction(address) override fun shouldBlock(address: String): Single<BlockingClient.Action> = client.shouldBlock(address) override fun isBlacklisted(address: String): Single<BlockingClient.Action> = client.isBlacklisted(address) override fun block(addresses: List<String>): Completable = client.block(addresses) Loading
data/src/main/java/com/moez/QKSMS/blocking/CallBlockerBlockingClient.kt +16 −3 Original line number Diff line number Diff line Loading @@ -43,11 +43,24 @@ class CallBlockerBlockingClient @Inject constructor( override fun getClientCapability() = BlockingClient.Capability.BLOCK_WITH_PERMISSION override fun getAction(address: String): Single<BlockingClient.Action> = Single.fromCallable { override fun shouldBlock(address: String): Single<BlockingClient.Action> = Single.fromCallable { val uri = Uri.parse("content://com.cuiet.blockCalls.ContProvBlockCalls/lookup/is.blocked.lookup") val blockReason = tryOrNull { context.contentResolver.query(uri, arrayOf("result"), "incomingNumber", arrayOf(address), null) context.contentResolver.query(uri, arrayOf("result"), "incomingNumber", arrayOf(address), null) ?.use { cursor -> cursor.map(::LookupResult) } ?.find { result -> result.blockReason != null } }?.blockReason when (blockReason) { "true" -> BlockingClient.Action.Block() else -> BlockingClient.Action.Unblock } } override fun isBlacklisted(address: String): Single<BlockingClient.Action> = Single.fromCallable { val uri = Uri.parse("content://com.cuiet.blockCalls.ContProvBlockCalls/lookup/is.blocked.lookup") val blockReason = tryOrNull { context.contentResolver.query(uri, arrayOf("result"), "blacklistLookup", arrayOf(address), null) ?.use { cursor -> cursor.map(::LookupResult) } ?.find { result -> result.blockReason != null } }?.blockReason Loading
data/src/main/java/com/moez/QKSMS/blocking/CallControlBlockingClient.kt +3 −1 Original line number Diff line number Diff line Loading @@ -48,7 +48,9 @@ class CallControlBlockingClient @Inject constructor( override fun getClientCapability() = BlockingClient.Capability.BLOCK_WITH_PERMISSION override fun getAction(address: String): Single<BlockingClient.Action> = Single.fromCallable { override fun shouldBlock(address: String): Single<BlockingClient.Action> = isBlacklisted(address) override fun isBlacklisted(address: String): Single<BlockingClient.Action> = Single.fromCallable { val uri = Uri.withAppendedPath(CallControl.LOOKUP_TEXT_URI, address) val blockReason = tryOrNull { context.contentResolver.query(uri, projection, null, null, null) // Query URI Loading
data/src/main/java/com/moez/QKSMS/blocking/QksmsBlockingClient.kt +3 −1 Original line number Diff line number Diff line Loading @@ -31,7 +31,9 @@ class QksmsBlockingClient @Inject constructor( override fun getClientCapability() = BlockingClient.Capability.BLOCK_WITHOUT_PERMISSION override fun getAction(address: String): Single<BlockingClient.Action> = Single.fromCallable { override fun shouldBlock(address: String): Single<BlockingClient.Action> = isBlacklisted(address) override fun isBlacklisted(address: String): Single<BlockingClient.Action> = Single.fromCallable { when (blockingRepo.isBlocked(address)) { true -> BlockingClient.Action.Block() false -> BlockingClient.Action.Unblock Loading
data/src/main/java/com/moez/QKSMS/blocking/ShouldIAnswerBlockingClient.kt +3 −1 Original line number Diff line number Diff line Loading @@ -55,7 +55,9 @@ class ShouldIAnswerBlockingClient @Inject constructor( override fun getClientCapability() = BlockingClient.Capability.CANT_BLOCK override fun getAction(address: String): Single<BlockingClient.Action> { override fun shouldBlock(address: String): Single<BlockingClient.Action> = isBlacklisted(address) override fun isBlacklisted(address: String): Single<BlockingClient.Action> { return Binder(context, address).isBlocked() .map { blocked -> when (blocked) { Loading