GigaSpaces - Open Spaces

org.openspaces.core.properties
Class BeanLevelPropertyBeanPostProcessor

java.lang.Object
  extended by org.openspaces.core.properties.BeanLevelPropertyBeanPostProcessor
All Implemented Interfaces:
BeanPostProcessor

public class BeanLevelPropertyBeanPostProcessor
extends Object
implements BeanPostProcessor

A Spring BeanPostProcessor that process beans that implement BeanLevelPropertiesAware or BeanLevelMergedPropertiesAware based on the provided BeanLevelProperties.

Author:
kimchy
See Also:
BeanLevelProperties, BeanLevelMergedPropertiesAware, BeanLevelPropertiesAware

Constructor Summary
BeanLevelPropertyBeanPostProcessor(BeanLevelProperties beanLevelProperties)
          Constructs a new bean level bean post processor based on the provided bean level properties.
 
Method Summary
 Object postProcessAfterInitialization(Object bean, String beanName)
          A no op, just returned the bean itself.
 Object postProcessBeforeInitialization(Object bean, String beanName)
          Post process a given bean.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BeanLevelPropertyBeanPostProcessor

public BeanLevelPropertyBeanPostProcessor(BeanLevelProperties beanLevelProperties)
Constructs a new bean level bean post processor based on the provided bean level properties.

Parameters:
beanLevelProperties - The bean level properties to be used for injection
Method Detail

postProcessBeforeInitialization

public Object postProcessBeforeInitialization(Object bean,
                                              String beanName)
                                       throws BeansException
Post process a given bean. If the bean implements BeanLevelPropertiesAware the provided BeanLevelProperties will be injected to it. If the bean implements BeanLevelMergedPropertiesAware then the merged properties based on the provided beanName will be injected (using BeanLevelProperties.getMergedBeanProperties(String)).

Specified by:
postProcessBeforeInitialization in interface BeanPostProcessor
Parameters:
bean - The bean to possibly perform injection of BeanLevelProperties
beanName - The bean name
Returns:
The bean unmodified
Throws:
BeansException

postProcessAfterInitialization

public Object postProcessAfterInitialization(Object bean,
                                             String beanName)
                                      throws BeansException
A no op, just returned the bean itself.

Specified by:
postProcessAfterInitialization in interface BeanPostProcessor
Throws:
BeansException

GigaSpaces - Open Spaces

Copyright © GigaSpaces.