Author: ivaynberg
Date: Fri Mar 16 14:48:31 2007
New Revision: 519150
URL: http://svn.apache.org/viewvc?view=rev&rev=519150
Log:
WICKET-371 support for singleton beans
Modified:
incubator/wicket/branches/wicket-1.x/jdk-1.5/wicket-spring-annot/src/main/java/wicket/spring/injection/annot/AnnotProxyFieldValueFactory.java
Modified:
incubator/wicket/branches/wicket-1.x/jdk-1.5/wicket-spring-annot/src/main/java/wicket/spring/injection/annot/AnnotProxyFieldValueFactory.java
URL:
http://svn.apache.org/viewvc/incubator/wicket/branches/wicket-1.x/jdk-1.5/wicket-spring-annot/src/main/java/wicket/spring/injection/annot/AnnotProxyFieldValueFactory.java?view=diff&rev=519150&r1=519149&r2=519150
==============================================================================
---
incubator/wicket/branches/wicket-1.x/jdk-1.5/wicket-spring-annot/src/main/java/wicket/spring/injection/annot/AnnotProxyFieldValueFactory.java
(original)
+++
incubator/wicket/branches/wicket-1.x/jdk-1.5/wicket-spring-annot/src/main/java/wicket/spring/injection/annot/AnnotProxyFieldValueFactory.java
Fri Mar 16 14:48:31 2007
@@ -54,6 +54,7 @@
* @see SpringBeanLocator
*
* @author Igor Vaynberg (ivaynberg)
+ * @author Istvan Devai
*
*/
public class AnnotProxyFieldValueFactory implements IFieldValueFactory {
@@ -87,7 +88,8 @@
SpringBeanLocator locator = new
SpringBeanLocator(annot.name(),
field.getType(), contextLocator);
- if (cache.containsKey(locator)) {
+ // only check the cache if the bean is a singleton
+ if (locator.isSingletonBean() &&
cache.containsKey(locator)) {
return cache.get(locator);
}
@@ -98,7 +100,10 @@
Object proxy =
LazyInitProxyFactory.createProxy(field.getType(),
locator);
- cache.put(locator, proxy);
+ // only put the proxy into the cache if the bean is a
singleton
+ if (locator.isSingletonBean()) {
+ cache.put(locator, proxy);
+ }
return proxy;
} else {
return null;