Revert deprecation of AbstractSingletonPFB and co

Removed formal deprecation warnings for AbstractSingletonFactoryBean and
its TransactionProxyFactoryBean and CacheProxyFactoryBean subclasses.

This is principally because TPFB is still used by Grails and could
conceivably be used to good effect by any third-party framework in a
similar fashion. CPFB is new with 3.1, but similar use is predictable.

Deprecations have been replaced by strong recommendations that users
avoid these types in modern Spring applications and favor the use of
namespaces and annotatinos, such as tx: and @Transactional (around
since Spring 2.x) and cache: and @Cacheable.

Issue: SPR-8680, SPR-8686
This commit is contained in:
Chris Beams
2011-10-09 07:54:54 +00:00
parent 9ba1d1437d
commit 1819bee35f
3 changed files with 24 additions and 31 deletions

View File

@@ -26,14 +26,19 @@ import org.springframework.aop.support.DefaultPointcutAdvisor;
* {@link org.springframework.aop.framework.ProxyFactoryBean}
* with a separate {@link CachingInterceptor} definition.
*
* <p>This class is intended to cover the <i>typical</i> case of declarative
* cache demarcation: namely, wrapping a singleton target object with a
* caching proxy, proxying all the interfaces that the target implements.
*
* <p>This class is designed to facilitate declarative cache demarcation: namely, wrapping
* a singleton target object with a caching proxy, proxying all the interfaces that the
* target implements. Exists primarily for third-party framework integration.
* <strong>Users should favor the {@code cache:} XML namespace
* {@link org.springframework.cache.annotation.Cacheable @Cacheable} annotation.</strong>
* See the <a href="http://bit.ly/p9rIvx">declarative annotation-based caching</a> section
* of the Spring reference documentation for more information.
*
* @author Costin Leau
* @see org.springframework.aop.framework.ProxyFactoryBean
* @see CachingInterceptor
*/
@SuppressWarnings("serial")
public class CacheProxyFactoryBean extends AbstractSingletonProxyFactoryBean {
private final CacheInterceptor cachingInterceptor = new CacheInterceptor();