You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tapestry.apache.org by jk...@apache.org on 2006/12/10 23:03:38 UTC

svn commit: r485281 - in /tapestry/tapestry4/trunk/tapestry-framework/src: java/org/apache/tapestry/form/ java/org/apache/tapestry/resolver/ java/org/apache/tapestry/valid/ test/org/apache/tapestry/resolver/

Author: jkuhnert
Date: Sun Dec 10 14:03:37 2006
New Revision: 485281

URL: http://svn.apache.org/viewvc?view=rev&rev=485281
Log:
Applied changes as per TAPESTRY-894 to change order of spec search from delegate first and then classloader.

Misc code style changes made while investigating another issue related to form validation.

Modified:
    tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/form/Form.java
    tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/form/FormSupportImpl.java
    tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/resolver/ComponentSpecificationResolverImpl.java
    tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/valid/ValidationDelegate.java
    tapestry/tapestry4/trunk/tapestry-framework/src/test/org/apache/tapestry/resolver/TestComponentSpecificationResolver.java

Modified: tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/form/Form.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/form/Form.java?view=diff&rev=485281&r1=485280&r2=485281
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/form/Form.java (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/form/Form.java Sun Dec 10 14:03:37 2006
@@ -216,7 +216,6 @@
         // Note: not safe to invoke getNamespace() in Portlet world
         // except during a RenderRequest.
         
-        // _name = getClientId() + getResponse().getNamespace();
         _name = getClientId() + getResponse().getNamespace();
         
         if (_renderInformalParameters == null)

Modified: tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/form/FormSupportImpl.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/form/FormSupportImpl.java?view=diff&rev=485281&r1=485280&r2=485281
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/form/FormSupportImpl.java (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/form/FormSupportImpl.java Sun Dec 10 14:03:37 2006
@@ -206,9 +206,8 @@
     }
     
     /**
-     * Adds an event handler for the form, of the given type.
+     * {@inheritDoc}
      */
-
     public void addEventHandler(FormEventType type, String functionName)
     {
         if (_events == null)
@@ -238,7 +237,7 @@
      * component whose id is 'page'. A certain number of ids are always reserved, and we find any
      * additional ids beyond that set.
      */
-
+    
     private void addHiddenFieldsForLinkParameters(ILink link)
     {
         String[] names = link.getParameterNames();
@@ -635,13 +634,13 @@
 
         
         runDeferredRunnables();
-
+        
         if (_submitModes.contains(mode))
             return mode;
-
+        
         // Either something wacky on the client side, or a client without
         // javascript enabled.
-
+        
         return FormConstants.SUBMIT_NORMAL;
 
     }

Modified: tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/resolver/ComponentSpecificationResolverImpl.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/resolver/ComponentSpecificationResolverImpl.java?view=diff&rev=485281&r1=485280&r2=485281
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/resolver/ComponentSpecificationResolverImpl.java (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/resolver/ComponentSpecificationResolverImpl.java Sun Dec 10 14:03:37 2006
@@ -212,6 +212,10 @@
                 return result;
         }
         
+        result = getDelegate().findComponentSpecification(cycle, namespace, _type);
+        if (result != null)
+            return result;
+        
         result = searchForComponentClass(namespace, _type);
 
         if (result != null)
@@ -219,13 +223,13 @@
 
         // Not in the library or app spec; does it match a component
         // provided by the Framework?
-
+        
         INamespace framework = getSpecificationSource().getFrameworkNamespace();
-
+        
         if (framework.containsComponentType(_type))
             return framework.getComponentSpecification(_type);
         
-        return getDelegate().findComponentSpecification(cycle, namespace, _type);
+        return null;
     }
 
     IComponentSpecification searchForComponentClass(INamespace namespace, String type)

Modified: tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/valid/ValidationDelegate.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/valid/ValidationDelegate.java?view=diff&rev=485281&r1=485280&r2=485281
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/valid/ValidationDelegate.java (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/java/org/apache/tapestry/valid/ValidationDelegate.java Sun Dec 10 14:03:37 2006
@@ -68,7 +68,8 @@
 
     public void clearErrors()
     {
-        if (_trackings == null) return;
+        if (_trackings == null) 
+            return;
 
         Iterator i = _trackings.iterator();
         while(i.hasNext())
@@ -212,7 +213,8 @@
 
         if (errorRenderer == null)
             record(ex.getMessage(), ex.getConstraint());
-        else record(errorRenderer, ex.getConstraint());
+        else 
+            record(errorRenderer, ex.getConstraint());
     }
 
     /**
@@ -342,7 +344,7 @@
             writer.end();
         }
     }
-
+    
     public boolean getHasErrors()
     {
         return getFirstError() != null;
@@ -460,7 +462,8 @@
 
             IRender errorRenderer = tracking.getErrorRenderer();
 
-            if (errorRenderer != null) result.add(errorRenderer);
+            if (errorRenderer != null) 
+                result.add(errorRenderer);
         }
 
         return result;

Modified: tapestry/tapestry4/trunk/tapestry-framework/src/test/org/apache/tapestry/resolver/TestComponentSpecificationResolver.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/test/org/apache/tapestry/resolver/TestComponentSpecificationResolver.java?view=diff&rev=485281&r1=485280&r2=485281
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/test/org/apache/tapestry/resolver/TestComponentSpecificationResolver.java (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/test/org/apache/tapestry/resolver/TestComponentSpecificationResolver.java Sun Dec 10 14:03:37 2006
@@ -69,7 +69,7 @@
         ISpecificationResolverDelegate delegate = newMock(ISpecificationResolverDelegate.class);
         checkOrder(delegate, false);
         
-        expect(delegate.findComponentSpecification(cycle, namespace, type)).andReturn(spec);
+        expect(delegate.findComponentSpecification(cycle, namespace, type)).andReturn(spec).anyTimes();
 
         return delegate;
     }
@@ -135,25 +135,25 @@
         
         IComponentSpecification spec = newSpec();
         INamespace namespace = newMock(INamespace.class);
-
+        
         expect(namespace.containsComponentType("MyComponent")).andReturn(true);
-
+        
         expect(namespace.getComponentSpecification("MyComponent")).andReturn(spec);
-
+        
         trainIsDeprecated(spec, true);
 
         Log log = newMock(Log.class);
-
+        
         log.warn(startsWith("Component 'MyComponent' ("));
         // at classpath:/org/apache/tapestry/resolver/TestComponentSpecificationResolver, line 1) is deprecated, and will likely be removed in a later release. Consult its documentation to find a replacement component.");
-
+        
         replay();
-
+        
         ComponentSpecificationResolverImpl resolver = new ComponentSpecificationResolverImpl();
         resolver.setLog(log);
-
+        
         resolver.resolve(cycle, namespace, "MyComponent", l);
-
+        
         assertSame(spec, resolver.getSpecification());
         assertSame(namespace, resolver.getNamespace());
 
@@ -232,13 +232,14 @@
         verify();
     }
 
-    public void testFoundInFrameworkNamespace()
+    public void test_Found_In_Framework_Namespace()
     {
         IRequestCycle cycle = newCycle();
         Location l = newLocation();
 
         IComponentSpecification spec = newSpec();
         INamespace namespace = newMock(INamespace.class);
+        ISpecificationResolverDelegate delegate = newMock(ISpecificationResolverDelegate.class);
         
         Log log = newMock(Log.class);
         INamespace framework = newMock(INamespace.class);
@@ -253,19 +254,21 @@
 
         train(log, ResolverMessages.checkingResource(namespaceLocation
                 .getRelativeResource("FrameworkComponent.jwc")));
-
+        
         expect(namespace.isApplicationNamespace()).andReturn(false);
-
+        
+        expect(delegate.findComponentSpecification(cycle, namespace, "FrameworkComponent")).andReturn(null);
+        
         trainGetPackages(namespace, "org.foo");
         
         ClassFinder finder = newClassFinder("org.foo", "FrameworkComponent", null);
-
+        
         ISpecificationSource source = newSource(framework);
 
         expect(framework.containsComponentType("FrameworkComponent")).andReturn(true);
 
         expect(framework.getComponentSpecification("FrameworkComponent")).andReturn(spec);
-
+        
         train(log, ResolverMessages
                 .installingComponent("FrameworkComponent", namespace, spec));
         namespace.installComponentSpecification("FrameworkComponent", spec);
@@ -278,7 +281,8 @@
         resolver.setLog(log);
         resolver.setSpecificationSource(source);
         resolver.setClassFinder(finder);
-
+        resolver.setDelegate(delegate);
+        
         resolver.resolve(cycle, namespace, "FrameworkComponent", l);
 
         assertSame(spec, resolver.getSpecification());
@@ -287,7 +291,7 @@
         verify();
     }
 
-    public void testProvidedByDelegate()
+    public void test_Provided_By_Delegate()
     {
         IRequestCycle cycle = newCycle();
         Location l = newLocation();
@@ -296,8 +300,8 @@
         INamespace namespace = newMock(INamespace.class);
         
         Log log = newMock(Log.class);
-        INamespace framework = newMock(INamespace.class);
-
+        //INamespace framework = newMock(INamespace.class);
+        
         ISpecificationResolverDelegate delegate = newDelegate(
                 cycle,
                 namespace,
@@ -316,33 +320,24 @@
                 .getRelativeResource("DelegateComponent.jwc")));
 
         expect(namespace.isApplicationNamespace()).andReturn(false);
-
-        expect(framework.containsComponentType("DelegateComponent")).andReturn(false);
-
-        expect(log.isDebugEnabled()).andReturn(false);
-
-        ClassFinder finder = newClassFinder("org.foo", "DelegateComponent", null);
-        trainGetPackages(namespace, "org.foo");
         
-        ISpecificationSource source = newSource(framework);
+        expect(log.isDebugEnabled()).andReturn(false);
         
         namespace.installComponentSpecification("DelegateComponent", spec);
-
+        
         trainIsDeprecated(spec, false);
-
+        
         replay();
 
         ComponentSpecificationResolverImpl resolver = new ComponentSpecificationResolverImpl();
         resolver.setLog(log);
-        resolver.setSpecificationSource(source);
         resolver.setDelegate(delegate);
-        resolver.setClassFinder(finder);
-
+        
         resolver.resolve(cycle, namespace, "DelegateComponent", l);
-
+        
         assertSame(spec, resolver.getSpecification());
         assertSame(namespace, resolver.getNamespace());
-
+        
         verify();
     }
 
@@ -361,7 +356,7 @@
         return finder;
     }
 
-    public void testNotFound()
+    public void test_Not_Found()
     {
         IRequestCycle cycle = newCycle();
         Location l = newLocation();
@@ -370,15 +365,15 @@
         
         INamespace namespace = newMock(INamespace.class);
         INamespace framework = newMock(INamespace.class);
-
+        
         ISpecificationResolverDelegate delegate = newDelegate(
                 cycle,
                 namespace,
                 "NotFoundComponent",
                 null);
-
+        
         Resource namespaceLocation = newResource("LibraryStandin.library");
-
+        
         expect(namespace.containsComponentType("NotFoundComponent")).andReturn(false);
 
         train(log, ResolverMessages.resolvingComponent("NotFoundComponent", namespace));
@@ -426,7 +421,7 @@
      * name).
      */
 
-    public void testFoundInAppFolder()
+    public void test_Found_In_App_Folder()
     {
         IRequestCycle cycle = newCycle();
         Location l = newLocation();
@@ -437,10 +432,10 @@
         Resource contextRoot = newResource("context/");
         
         INamespace namespace = newMock(INamespace.class);
-
+        
         Resource namespaceLocation = newResource("LibraryStandin.library");
         Resource specLocation = contextRoot.getRelativeResource("WEB-INF/myapp/MyAppComponent.jwc");
-
+        
         expect(namespace.containsComponentType("MyAppComponent")).andReturn(false);
 
         train(log, ResolverMessages.resolvingComponent("MyAppComponent", namespace));