es.gob.afirma.standalone.ui.pdf.SignPdfUiMessages Maven / Gradle / Ivy
/* Copyright (C) 2011 [Gobierno de Espana]
* This file is part of "Cliente @Firma".
* "Cliente @Firma" is free software; you can redistribute it and/or modify it under the terms of:
* - the GNU General Public License as published by the Free Software Foundation;
* either version 2 of the License, or (at your option) any later version.
* - or The European Software License; either version 1.1 or (at your option) any later version.
* You may contact the copyright holder at: [email protected]
*/
package es.gob.afirma.standalone.ui.pdf;
import java.util.ResourceBundle;
import java.util.logging.Logger;
final class SignPdfUiMessages {
private static final String BUNDLE_NAME = "properties.signpdfuimessages"; //$NON-NLS-1$
private static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle.getBundle(BUNDLE_NAME);
private SignPdfUiMessages() {
// No instanciable
}
static String getString(final String key) {
try {
return RESOURCE_BUNDLE.getString(key);
}
catch (final Exception e) {
Logger.getLogger("es.gob.afirma").warning( //$NON-NLS-1$
"Texto '" + key + "' del UI de firma de PDF no encontrado: " + e //$NON-NLS-1$ //$NON-NLS-2$
);
return '!' + key + '!';
}
}
/** Recupera el texto identificado con la clave proporcionada y sustituye las
* subcadenas de tipo "%i" por el texto correspondiente segun posición de los
* parámetros indicados después de la clave. Las posiciones empiezan a contar
* por 0. Así, el texto "%0" se sustituirá por el segundo paráametro
* de la función, el texto "%1" por el siguiente,...
* Introducir más de 10 cadenas distintas para sustituir
* conllevará errores en el resultado.
* @param key Clave del texto.
* @param params Parámetros que se desean insertar.
* @return Recurso textual con las subcadenas sustituidas. */
public static String getString(final String key, final String... params) {
String text;
try {
text = RESOURCE_BUNDLE.getString(key);
}
catch (final Exception e) {
return '!' + key + '!';
}
if (params != null && params.length > 0) {
for (int i = 0; i < params.length; i++) {
if (params[i] != null) {
text = text.replace("%" + i, params[i]); //$NON-NLS-1$
}
}
}
return text;
}
}