Add new spam API which can query additional data.

Bug: 80303132
Test: InAppSpamTest, verified using Blueline device
PiperOrigin-RevId: 198801576
Change-Id: I30f8c0c7c850ac4bd7b6fcf2dad18c0d70f1b2d1
diff --git a/java/com/android/dialer/spam/Spam.java b/java/com/android/dialer/spam/Spam.java
index 028bda4..b797ce3 100644
--- a/java/com/android/dialer/spam/Spam.java
+++ b/java/com/android/dialer/spam/Spam.java
@@ -61,6 +61,19 @@
   ListenableFuture<SpamStatus> checkSpamStatus(String number, @Nullable String defaultCountryIso);
 
   /**
+   * Checks if the given number is suspected of being spam, checking additional information as
+   * needed for the in-call ui.
+   *
+   * <p>See {@link #checkSpamStatus(String, String)}.
+   *
+   * @param number the phone number.
+   * @param defaultCountryIso the default country to use if it's not part of the number.
+   * @return the {@link SpamStatus} for the given number.
+   */
+  ListenableFuture<SpamStatus> checkSpamStatusForInCallUi(
+      String number, @Nullable String defaultCountryIso);
+
+  /**
    * Called as an indication that the Spam implementation should check whether downloading a spam
    * list needs to occur or not.
    *
diff --git a/java/com/android/dialer/spam/stub/SpamStub.java b/java/com/android/dialer/spam/stub/SpamStub.java
index 5eeed45..7d48ca6 100644
--- a/java/com/android/dialer/spam/stub/SpamStub.java
+++ b/java/com/android/dialer/spam/stub/SpamStub.java
@@ -68,6 +68,12 @@
   }
 
   @Override
+  public ListenableFuture<SpamStatus> checkSpamStatusForInCallUi(
+      String number, @Nullable String defaultCountryIso) {
+    return checkSpamStatus(number, defaultCountryIso);
+  }
+
+  @Override
   public ListenableFuture<Void> updateSpamListDownload(boolean isEnabledByUser) {
     // no-op
     return Futures.immediateFuture(null);
diff --git a/java/com/android/incallui/call/CallList.java b/java/com/android/incallui/call/CallList.java
index 634a302..31afe71 100644
--- a/java/com/android/incallui/call/CallList.java
+++ b/java/com/android/incallui/call/CallList.java
@@ -150,7 +150,9 @@
     if (SpamComponent.get(context).spamSettings().isSpamEnabled()) {
       String number = TelecomCallUtil.getNumber(telecomCall);
       ListenableFuture<SpamStatus> futureSpamStatus =
-          SpamComponent.get(context).spam().checkSpamStatus(number, call.getCountryIso());
+          SpamComponent.get(context)
+              .spam()
+              .checkSpamStatusForInCallUi(number, call.getCountryIso());
 
       Futures.addCallback(
           futureSpamStatus,