es.mcu.yingo.context
Class BeanProcesadorIdAplicacion

java.lang.Object
  extended by es.mcu.yingo.context.BeanProcesadorIdAplicacion
All Implemented Interfaces:
org.springframework.beans.factory.config.BeanPostProcessor

public class BeanProcesadorIdAplicacion
extends java.lang.Object
implements org.springframework.beans.factory.config.BeanPostProcessor

Carga el id de aplicación procesando el nombre del bean si el objeto es instancia de IdAplicacionAware, después que se haya cargado los objetos definidos en la configuración de spring.
Primero comprobará que el objeto es instancia de IdAplicacionAware.
El nombre del bean que tendrá el formato 'idaplicacion.identificadorBean', ejempo 'patrexp.accionCorreo' donde patrexp es el identificador de la aplicación.
De este nombre obtendrá parseando la cadena, obteniendo el id de aplicación desde el principio de la cadena hasta el '.' (en el ejemplo patrexp ) y cargará este valor ejecutando el método setIdAplicacion siempre que el valor no haya sido cargado en la configuración de spring.
Esto simplifica la configuración de spring evitando tener que incluir el id de aplicación en todos los beans.
IMPORTANTE: Para que el procesador cargue el id de aplicación es necesario definir la propiedad 'id' en los beans de la configuración de spring

Author:
miguel.esteban
See Also:
IdAplicacionAware, ContextLocation

Constructor Summary
BeanProcesadorIdAplicacion()
           
 
Method Summary
 java.lang.Object postProcessAfterInitialization(java.lang.Object objeto, java.lang.String nombreBean)
           
 java.lang.Object postProcessBeforeInitialization(java.lang.Object objeto, java.lang.String nombreBean)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BeanProcesadorIdAplicacion

public BeanProcesadorIdAplicacion()
Method Detail

postProcessAfterInitialization

public java.lang.Object postProcessAfterInitialization(java.lang.Object objeto,
                                                       java.lang.String nombreBean)
                                                throws org.springframework.beans.BeansException
Specified by:
postProcessAfterInitialization in interface org.springframework.beans.factory.config.BeanPostProcessor
Throws:
org.springframework.beans.BeansException

postProcessBeforeInitialization

public java.lang.Object postProcessBeforeInitialization(java.lang.Object objeto,
                                                        java.lang.String nombreBean)
                                                 throws org.springframework.beans.BeansException
Specified by:
postProcessBeforeInitialization in interface org.springframework.beans.factory.config.BeanPostProcessor
Throws:
org.springframework.beans.BeansException