Author: ivaynberg
Date: Fri Mar 16 16:08:50 2007
New Revision: 519175

URL: http://svn.apache.org/viewvc?view=rev&rev=519175
Log:
fixed patch to work with tests

Modified:
    
incubator/wicket/branches/wicket-1.x/jdk-1.4/wicket-spring/src/main/java/wicket/spring/SpringBeanLocator.java
    
incubator/wicket/branches/wicket-1.x/jdk-1.4/wicket-spring/src/main/java/wicket/spring/test/ApplicationContextMock.java

Modified: 
incubator/wicket/branches/wicket-1.x/jdk-1.4/wicket-spring/src/main/java/wicket/spring/SpringBeanLocator.java
URL: 
http://svn.apache.org/viewvc/incubator/wicket/branches/wicket-1.x/jdk-1.4/wicket-spring/src/main/java/wicket/spring/SpringBeanLocator.java?view=diff&rev=519175&r1=519174&r2=519175
==============================================================================
--- 
incubator/wicket/branches/wicket-1.x/jdk-1.4/wicket-spring/src/main/java/wicket/spring/SpringBeanLocator.java
 (original)
+++ 
incubator/wicket/branches/wicket-1.x/jdk-1.4/wicket-spring/src/main/java/wicket/spring/SpringBeanLocator.java
 Fri Mar 16 16:08:50 2007
@@ -41,7 +41,7 @@
 
        private ISpringContextLocator springContextLocator;
 
-       private boolean singletonBean;
+       private Boolean singletonCache = null;
 
        /**
         * Constructor
@@ -81,18 +81,8 @@
                this.beanTypeCache = beanType;
                this.beanTypeName = beanType.getName();
                this.springContextLocator = locator;
-
-               if (beanName == null || beanName.equals(""))
-               {
-                       this.beanName = 
getBeanNameOfClass(locator.getSpringContext(), beanType);
-               }
-               else
-               {
-                       this.beanName = beanName;
-               }
+               this.beanName = beanName;
                this.springContextLocator = locator;
-
-               singletonBean = 
locator.getSpringContext().isSingleton(this.beanName);
        }
 
        /**
@@ -130,7 +120,12 @@
         */
        public boolean isSingletonBean()
        {
-               return singletonBean;
+               if (singletonCache == null)
+               {
+                       singletonCache = Boolean.valueOf(getSpringContext()
+                                       .isSingleton(getBeanName()));
+               }
+               return singletonCache.booleanValue();
        }
 
        /**
@@ -161,13 +156,7 @@
         */
        public Object locateProxyTarget()
        {
-               final ApplicationContext context = 
springContextLocator.getSpringContext();
-
-               if (context == null)
-               {
-                       throw new IllegalStateException(
-                                       "spring application context locator 
returned null");
-               }
+               final ApplicationContext context = getSpringContext();
 
                if (beanName != null && beanName.length() > 0)
                {
@@ -179,11 +168,28 @@
                }
        }
 
+       private ApplicationContext getSpringContext()
+       {
+               final ApplicationContext context = 
springContextLocator.getSpringContext();
+
+               if (context == null)
+               {
+                       throw new IllegalStateException(
+                                       "spring application context locator 
returned null");
+               }
+               return context;
+       }
+
        /**
         * @return bean name this locator is configured with
         */
        public final String getBeanName()
        {
+               if (beanName == null)
+               {
+                       beanName = getBeanNameOfClass(getSpringContext(), 
getBeanType());
+
+               }
                return beanName;
        }
 

Modified: 
incubator/wicket/branches/wicket-1.x/jdk-1.4/wicket-spring/src/main/java/wicket/spring/test/ApplicationContextMock.java
URL: 
http://svn.apache.org/viewvc/incubator/wicket/branches/wicket-1.x/jdk-1.4/wicket-spring/src/main/java/wicket/spring/test/ApplicationContextMock.java?view=diff&rev=519175&r1=519174&r2=519175
==============================================================================
--- 
incubator/wicket/branches/wicket-1.x/jdk-1.4/wicket-spring/src/main/java/wicket/spring/test/ApplicationContextMock.java
 (original)
+++ 
incubator/wicket/branches/wicket-1.x/jdk-1.4/wicket-spring/src/main/java/wicket/spring/test/ApplicationContextMock.java
 Fri Mar 16 16:08:50 2007
@@ -18,6 +18,7 @@
 
 import java.io.IOException;
 import java.io.Serializable;
+import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.Iterator;
 import java.util.Locale;
@@ -192,7 +193,20 @@
         */
        public String[] getBeanNamesForType(Class type)
        {
-               throw new UnsupportedOperationException();
+               ArrayList names = new ArrayList();
+               Iterator entries = beans.entrySet().iterator();
+               while (entries.hasNext())
+               {
+                       Entry entry = (Entry) entries.next();
+                       Object bean = entry.getValue();
+
+                       if (type.isAssignableFrom(bean.getClass()))
+                       {
+                               String name = (String) entry.getKey();
+                               names.add(name);
+                       }
+               }
+               return (String[]) names.toArray(new String[names.size()]);
        }
 
        /**
@@ -228,7 +242,7 @@
         */
        public boolean isSingleton(String name) throws 
NoSuchBeanDefinitionException
        {
-               throw new UnsupportedOperationException();
+               return true;
        }
 
        /**


Reply via email to