Expose user home country code as public method in Mediator Interface.

This will be used in a subsequent change to show the user
the default/predetected country code in the assisted dialing
settings.

Bug: 68775522
Test: unit tests
PiperOrigin-RevId: 177168946
Change-Id: Ic738a6ddde8766962a725668f6db5056ab0bcafd
diff --git a/java/com/android/dialer/assisteddialing/AssistedDialingMediator.java b/java/com/android/dialer/assisteddialing/AssistedDialingMediator.java
index 004d2f7..756fd61 100644
--- a/java/com/android/dialer/assisteddialing/AssistedDialingMediator.java
+++ b/java/com/android/dialer/assisteddialing/AssistedDialingMediator.java
@@ -27,6 +27,11 @@
   /** Returns {@code true} if the current client platform supports Assisted Dialing. */
   public boolean isPlatformEligible();
 
+  /** Returns the country code in which the library thinks the user typically resides. */
+  @SuppressWarnings("AndroidApiChecker") // Use of optional
+  @TargetApi(VERSION_CODES.N)
+  public Optional<String> userHomeCountryCode();
+
   @SuppressWarnings("AndroidApiChecker") // Use of optional
   @TargetApi(VERSION_CODES.N)
   public Optional<TransformationInfo> attemptAssistedDial(@NonNull String numberToTransform);
diff --git a/java/com/android/dialer/assisteddialing/AssistedDialingMediatorImpl.java b/java/com/android/dialer/assisteddialing/AssistedDialingMediatorImpl.java
index 1cc9732..7214437 100644
--- a/java/com/android/dialer/assisteddialing/AssistedDialingMediatorImpl.java
+++ b/java/com/android/dialer/assisteddialing/AssistedDialingMediatorImpl.java
@@ -56,6 +56,14 @@
     return true;
   }
 
+  /** Returns the country code in which the library thinks the user typically resides. */
+  @Override
+  @SuppressWarnings("AndroidApiChecker") // Use of optional
+  @TargetApi(VERSION_CODES.N)
+  public Optional<String> userHomeCountryCode() {
+    return locationDetector.getUpperCaseUserHomeCountry();
+  }
+
   /**
    * Returns an Optional of type String containing the transformed number that was provided. The
    * transformed number should be capable of dialing out of the User's current country and
diff --git a/java/com/android/dialer/assisteddialing/AssistedDialingMediatorStub.java b/java/com/android/dialer/assisteddialing/AssistedDialingMediatorStub.java
index fe32e2c..9a40e05 100644
--- a/java/com/android/dialer/assisteddialing/AssistedDialingMediatorStub.java
+++ b/java/com/android/dialer/assisteddialing/AssistedDialingMediatorStub.java
@@ -32,6 +32,14 @@
     return Optional.empty();
   }
 
+  /** Always returns an empty Optional. */
+  @Override
+  @SuppressWarnings("AndroidApiChecker") // Use of optional
+  @TargetApi(VERSION_CODES.N)
+  public Optional<String> userHomeCountryCode() {
+    return Optional.empty();
+  }
+
   @Override
   public boolean isPlatformEligible() {
     return false;