org.springframework.web.portlet.context

## Class PortletContextAwareProcessor

- java.lang.Object
- - org.springframework.web.portlet.context.PortletContextAwareProcessor

- All Implemented Interfaces:
    BeanPostProcessor

      public class PortletContextAwareProcessor
      extends Object
      implements BeanPostProcessor

  `BeanPostProcessor` implementation that passes the PortletContext to beans that implement the `PortletContextAware` interface.

  Portlet application contexts will automatically register this with their underlying bean factory. Applications do not use this directly.

  Since:
    2.0
  Author:
    Juergen Hoeller, John A. Lewis
  See Also:
    `PortletContextAware`, `AbstractRefreshablePortletApplicationContext.postProcessBeanFactory(org.springframework.beans.factory.config.ConfigurableListableBeanFactory)`

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `PortletContextAwareProcessor(PortletConfig portletConfig)` Create a new PortletContextAwareProcessor for the given config.
    `PortletContextAwareProcessor(PortletContext portletContext)` Create a new PortletContextAwareProcessor for the given context.
    `PortletContextAwareProcessor(PortletContext portletContext, PortletConfig portletConfig)` Create a new PortletContextAwareProcessor for the given context and config.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `Object` | `postProcessAfterInitialization(Object bean, String beanName)` Apply this BeanPostProcessor to the given new bean instance after any bean initialization callbacks (like InitializingBean's `afterPropertiesSet` or a custom init-method).
    `Object` | `postProcessBeforeInitialization(Object bean, String beanName)` Apply this BeanPostProcessor to the given new bean instance before any bean initialization callbacks (like InitializingBean's `afterPropertiesSet` or a custom init-method).

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### PortletContextAwareProcessor

          public PortletContextAwareProcessor(PortletContext portletContext)

      Create a new PortletContextAwareProcessor for the given context.

    - #### PortletContextAwareProcessor

          public PortletContextAwareProcessor(PortletConfig portletConfig)

      Create a new PortletContextAwareProcessor for the given config.

    - #### PortletContextAwareProcessor

          public PortletContextAwareProcessor(PortletContext portletContext,
                                              PortletConfig portletConfig)

      Create a new PortletContextAwareProcessor for the given context and config.

  - ### Method Detail

    - #### postProcessBeforeInitialization

          public Object postProcessBeforeInitialization(Object bean,
                                                        String beanName)
                                                 throws BeansException

      Description copied from interface: `BeanPostProcessor`
      Apply this BeanPostProcessor to the given new bean instance before any bean initialization callbacks (like InitializingBean's `afterPropertiesSet` or a custom init-method). The bean will already be populated with property values. The returned bean instance may be a wrapper around the original.
      Specified by:
        `postProcessBeforeInitialization` in interface `BeanPostProcessor`
      Parameters:
        `bean` - the new bean instance
        `beanName` - the name of the bean
      Returns:
        the bean instance to use, either the original or a wrapped one; if `null`, no subsequent BeanPostProcessors will be invoked
      Throws:
        `BeansException` - in case of errors
      See Also:
        `InitializingBean.afterPropertiesSet()`

    - #### postProcessAfterInitialization

          public Object postProcessAfterInitialization(Object bean,
                                                       String beanName)

      Description copied from interface: `BeanPostProcessor`
      Apply this BeanPostProcessor to the given new bean instance after any bean initialization callbacks (like InitializingBean's `afterPropertiesSet` or a custom init-method). The bean will already be populated with property values. The returned bean instance may be a wrapper around the original.

      In case of a FactoryBean, this callback will be invoked for both the FactoryBean instance and the objects created by the FactoryBean (as of Spring 2.0). The post-processor can decide whether to apply to either the FactoryBean or created objects or both through corresponding `bean instanceof FactoryBean` checks.

      This callback will also be invoked after a short-circuiting triggered by a `InstantiationAwareBeanPostProcessor.postProcessBeforeInstantiation(java.lang.Class<?>, java.lang.String)` method, in contrast to all other BeanPostProcessor callbacks.

      Specified by:
        `postProcessAfterInitialization` in interface `BeanPostProcessor`
      Parameters:
        `bean` - the new bean instance
        `beanName` - the name of the bean
      Returns:
        the bean instance to use, either the original or a wrapped one; if `null`, no subsequent BeanPostProcessors will be invoked
      See Also:
        `InitializingBean.afterPropertiesSet()`, `FactoryBean`