doc / ch.tutteli.atrium.reporting.translating / PropertiesPerLocaleTranslationSupplier

PropertiesPerLocaleTranslationSupplier

class PropertiesPerLocaleTranslationSupplier : PropertiesBasedTranslationSupplier<Locale> (source)

Represents a TranslationSupplier which is based on properties-files which are structured per Locale.

For instance, the translations for ch.tutteli.atrium.DescriptionAnyAssertion and the Locale de_CH are stored in a properties file named Atrium_de_CH.properties in the folder /ch/tutteli/atrium/reporting/translating.

For instance, the translations for the Locale de_CH are stored in a properties file named .

An entry in such a file would look like the following: ch.tutteli.atrium.DescriptionAnyAssertion-TO_BE = a translation for TO_BE

It is compatible with Java's Properties - thus properties files should also use ISO-8859-1 as encoding.

Constructors

<init>

PropertiesPerLocaleTranslationSupplier()

Represents a TranslationSupplier which is based on properties-files which are structured per Locale.

Functions

get

fun get(translatable: Translatable, locale: Locale): String?

Returns the translation for the given translatable and the given locale or null if it does not have any translation.

Inherited Functions

getFileNameFor

fun getFileNameFor(baseName: String, locale: Locale): String

Returns the name of the properties file without extension -- including the package (as prefixed relative path) in which it resides if necessary -- in which we expect to find a translation in the given locale for baseName.

getOrLoadProperties

fun getOrLoadProperties(key: T, fileName: String, keyCreator: (String) -> String): Map<String, String>

Gets the cached Properties content as Map for the given key or loads the properties file with the given fileName and creates a map out of it using the given keyCreator function to create the keys of the map, based on a key of a property.