001    package org.kuali.spring.util;
002    
003    import org.springframework.beans.BeanUtils;
004    import org.springframework.beans.BeansException;
005    import org.springframework.beans.factory.config.ConfigurableListableBeanFactory;
006    import org.springframework.util.Assert;
007    
008    public class DelegatingPropertyPlaceholderConfigurer extends ConfigurablePropertyPlaceholderConfigurer {
009    
010            ConfigurablePropertyPlaceholderConfigurer delegate;
011    
012            @Override
013            public void postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory) throws BeansException {
014                    Assert.notNull(delegate);
015                    BeanUtils.copyProperties(this, delegate);
016                    delegate.postProcessBeanFactory(beanFactory);
017            }
018    
019            public ConfigurablePropertyPlaceholderConfigurer getDelegate() {
020                    return delegate;
021            }
022    
023            public void setDelegate(ConfigurablePropertyPlaceholderConfigurer delegate) {
024                    this.delegate = delegate;
025            }
026    
027    }