com.ejie.r01f.util
Class TextCustomizer

java.lang.Object
  extended bycom.ejie.r01f.util.TextCustomizer

public class TextCustomizer
extends java.lang.Object

Clase que "customiza" el contenido de un texto en base a variables que se pasan en un mapa (variable-valor) El texto a customizar contendrá variables del tipo $[guidGenerator.sequence.length]$, como por ejemplo, el texto: $propName1$ local com.ejie.r01f.guids.SimpleGUIDDispenser $[guidGenerator.sequence.length]$ /html/datos/$[entorno]$/r01kQueryIndexerMapping.xml Adicionalmente, en el texto se pueden definir secciones dependientes del valor de variables utilizando la notación: OJO!!! Las variables se indican como $var$ y no como $[var]$ que es como se indican las variables para la sustitución NOTA: 1.- Se pueden indicar varios valores de la variable separandolos por | Ej El proceso de customización de texto se hace en dos pasos: 1.- Se sustituyen los valores de todas las variables 2.- Se computan las condiciones de inclusion


Constructor Summary
TextCustomizer()
          Constructor vacio
TextCustomizer(boolean keepNotMatchingIfs)
          Constructor en base a si el proceso tiene que conservar los ifs que no machean
TextCustomizer(java.lang.String varBegin, java.lang.String varEnd, java.lang.String ifBegin, java.lang.String ifEnd, boolean keepNotMatchingIfs)
          Constructor en base a los delimitadores
 
Method Summary
 java.lang.String composeVarsDebugInfo(java.util.Properties vars)
          Obtiene información de depuración acerca de las variables de sustitución
 java.lang.String customize(java.io.Reader textReader, java.util.Properties vars)
          Realiza la customización de un texto: 1.- Sustituye los valores de las variables 2.- Procesa las condiciones
 boolean isKeepNotMatchingIfs()
          Devuelve si se conservan los ifs que no machean en el texto resultante
static void main(java.lang.String[] args)
          Main Method
 void setKeepNotMatchingIfs(boolean keepNotMatchingIfs)
          Establece si se conservan los ifs que no machean en el texto resultante
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

TextCustomizer

public TextCustomizer()
Constructor vacio


TextCustomizer

public TextCustomizer(boolean keepNotMatchingIfs)
Constructor en base a si el proceso tiene que conservar los ifs que no machean

Parameters:
keepNotMatchingIfs - true si tiene que conservar los ifs que no machean

TextCustomizer

public TextCustomizer(java.lang.String varBegin,
                      java.lang.String varEnd,
                      java.lang.String ifBegin,
                      java.lang.String ifEnd,
                      boolean keepNotMatchingIfs)
Constructor en base a los delimitadores

Parameters:
varBegin - delimitador de comienzo de variable
varEnd - delimitador de fin de variable
ifBegin - delimitador de comienzo de if
ifEnd - delimitador de fin de if
keepNotMatchingIfs - true si tiene que conservar los ifs que no machean
Method Detail

isKeepNotMatchingIfs

public boolean isKeepNotMatchingIfs()
Devuelve si se conservan los ifs que no machean en el texto resultante

Returns:
true si hay que conservar los ifs y su contenido

setKeepNotMatchingIfs

public void setKeepNotMatchingIfs(boolean keepNotMatchingIfs)
Establece si se conservan los ifs que no machean en el texto resultante

Parameters:
keepNotMatchingIfs - true si hay que conservar los ifs y su contenido

customize

public java.lang.String customize(java.io.Reader textReader,
                                  java.util.Properties vars)
                           throws java.io.IOException
Realiza la customización de un texto: 1.- Sustituye los valores de las variables 2.- Procesa las condiciones

Parameters:
textReader - Reader a al texto a customizar
vars - mapa con los valores de las propiedades prop:valor
Returns:
el texto customizado
Throws:
java.io.IOException - si ocurre algún error al customizar

composeVarsDebugInfo

public java.lang.String composeVarsDebugInfo(java.util.Properties vars)
Obtiene información de depuración acerca de las variables de sustitución

Parameters:
vars - variables
Returns:
una cadena de depuración

main

public static void main(java.lang.String[] args)
Main Method

Parameters:
args -