summaryrefslogtreecommitdiff
path: root/java/com/android/dialer/dialpadview/DialpadCharMappings.java
diff options
context:
space:
mode:
Diffstat (limited to 'java/com/android/dialer/dialpadview/DialpadCharMappings.java')
-rw-r--r--java/com/android/dialer/dialpadview/DialpadCharMappings.java17
1 files changed, 17 insertions, 0 deletions
diff --git a/java/com/android/dialer/dialpadview/DialpadCharMappings.java b/java/com/android/dialer/dialpadview/DialpadCharMappings.java
index 03bc2e728..0bb28ae0d 100644
--- a/java/com/android/dialer/dialpadview/DialpadCharMappings.java
+++ b/java/com/android/dialer/dialpadview/DialpadCharMappings.java
@@ -147,6 +147,23 @@ public class DialpadCharMappings {
: null;
}
+ /**
+ * Returns the character-key map of the provided ISO 639-2 language code.
+ *
+ * <p>Note: this method is for implementations of {@link
+ * com.android.dialer.smartdial.map.SmartDialMap} only. {@link #getCharToKeyMap(Context)} should
+ * be used for all other purposes.
+ *
+ * <p>It is the caller's responsibility to ensure the language code is valid and a character
+ * mapping is defined for that language. Otherwise, an exception will be thrown.
+ */
+ public static SimpleArrayMap<Character, Character> getCharToKeyMap(String languageCode) {
+ SimpleArrayMap<Character, Character> charToKeyMap = CHAR_TO_KEY_MAPS.get(languageCode);
+
+ return Assert.isNotNull(
+ charToKeyMap, "No character mappings can be found for language code '%s'", languageCode);
+ }
+
/** Returns the default character-key map (the one that uses the Latin alphabet). */
public static SimpleArrayMap<Character, Character> getDefaultCharToKeyMap() {
return Latin.CHAR_TO_KEY;