Composición de series complejas
Ejecute esta tarea para insertar subseries de variables en una serie localizada.
Antes de empezar
Acerca de esta tarea
Procedimiento
- En el catálogo de mensajes, especifique la ubicación de la sustitución en la serie que se va a recuperar. Los componentes variables se designan entre llaves (por ejemplo, {0}).
- En código de aplicación, cree una instancia de LocalizableTextFormatter, transfiriendo una matriz que contiene el valor de la variable. Si la subserie de variable debe adaptarse al entorno local, puede crear una instancia anidada de LocalizableTextFormatter y transferir la instancia en lugar de un valor.
- Genere una serie adaptada al entorno local. Cuando se llama al método de formato en una instancia del formateador, el formateador toma cada elemento de la matriz transferida en el paso anterior y lo sustituye por el representante con el índice coincidente en la serie que se recupera del catálogo de mensajes. Por ejemplo, el valor en el índice 0 de la matriz sustituye la variable {0} de la serie recuperada.
Ejemplo
La línea siguiente de un catálogo de mensajes españoles muestra una serie con
una sustitución sencilla:
successfulTransaction = La operación sobre la cuenta {0} ha sido satisfactorio.
La misma clave de catálogos de mensajes para otros idiomas tiene una traducción de esta serie con la variable en la ubicación adecuada para cada idioma.
En el código siguiente se muestra la creación de una matriz de argumentos de un solo elemento y la creación y el uso de una instancia de LocalizableTextFormatter:
public void updateAccount(String transactionType) {
...
Object[] arg = {new String(this.accountNumber)};
...
LocalizableTextFormatter successLTF =
new LocalizableTextFormatter ("BankingResources",
"successfulTransaction",
"BankingSample",
arg);
...
successLTF.format(this.applicationLocale);
...
}