abstract class ArgumentsSupportingTranslator : Translator
Represents a Translator which supports TranslatableWithArgs.
Therefore, it provides a default implementation for translate but in turn defines an abstract method translateWithoutArgs which sub-classes have to implement.
ArgumentsSupportingTranslator(primaryLocale: Locale, fallbackLocales: List<Locale>) |
val fallbackLocales: List<Locale>
Used in case a translation for a given Translatable is not defined for primaryLocale or one of its secondary alternatives -- the fallback Locales are used in the given order. |
|
val primaryLocale: Locale
The Locale to which the translator translates per default as well as the Locale which will be used in String.format, which in turn is used to substitute the placeholders in the resulting translation of TranslatableWithArgs.translatable with the TranslatableWithArgs.arguments. |
fun translate(translatable: Translatable): String
Returns the translation of the given translatable or its getDefault in case there is not a translation defined for it. |
|
abstract fun translateWithoutArgs(translatable: Translatable): String
Do not call this method in case you want to translate a TranslatableWithArgs use translate in this case. |
class UsingDefaultTranslator : ArgumentsSupportingTranslator
This translator does not translate but uses Translatable.getDefault instead and uses getDefaultLocale as primaryLocale if not defined differently via constructor parameter. |