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;