You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tapestry.apache.org by hl...@apache.org on 2007/01/10 23:28:37 UTC

svn commit: r495012 - in /tapestry/tapestry5/tapestry-core/trunk/src: main/java/org/apache/tapestry/internal/services/ test/java/org/apache/tapestry/internal/services/

Author: hlship
Date: Wed Jan 10 14:28:35 2007
New Revision: 495012

URL: http://svn.apache.org/viewvc?view=rev&rev=495012
Log:
Event handler methods that return an unexpected object type now result in a runtime exception.

Modified:
    tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/internal/services/ObjectComponentEventResultProcessor.java
    tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/internal/services/ServicesMessages.java
    tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/services/ObjectComponentEventResultProcessorTest.java

Modified: tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/internal/services/ObjectComponentEventResultProcessor.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/internal/services/ObjectComponentEventResultProcessor.java?view=diff&rev=495012&r1=495011&r2=495012
==============================================================================
--- tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/internal/services/ObjectComponentEventResultProcessor.java (original)
+++ tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/internal/services/ObjectComponentEventResultProcessor.java Wed Jan 10 14:28:35 2007
@@ -14,7 +14,7 @@
 
 package org.apache.tapestry.internal.services;
 
-import java.util.Set;
+import java.util.Collection;
 
 import org.apache.tapestry.ioc.internal.util.TapestryException;
 import org.apache.tapestry.runtime.Component;
@@ -24,9 +24,9 @@
 /** A catch-all for type Object that reports the return value as an error. */
 public class ObjectComponentEventResultProcessor implements ComponentEventResultProcessor<Object>
 {
-    private final Set<Class> _configuredClasses;
+    private final Collection<Class> _configuredClasses;
 
-    public ObjectComponentEventResultProcessor(final Set<Class> configuredClasses)
+    public ObjectComponentEventResultProcessor(final Collection<Class> configuredClasses)
     {
         _configuredClasses = configuredClasses;
     }

Modified: tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/internal/services/ServicesMessages.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/internal/services/ServicesMessages.java?view=diff&rev=495012&r1=495011&r2=495012
==============================================================================
--- tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/internal/services/ServicesMessages.java (original)
+++ tapestry/tapestry5/tapestry-core/trunk/src/main/java/org/apache/tapestry/internal/services/ServicesMessages.java Wed Jan 10 14:28:35 2007
@@ -17,7 +17,6 @@
 import java.net.URL;
 import java.util.Collection;
 import java.util.List;
-import java.util.Set;
 
 import javassist.CtClass;
 
@@ -315,7 +314,7 @@
     }
 
     static String invalidComponentEventResult(Component component, Object result,
-            String methodDescription, Set<Class> configuredResultTypes)
+            String methodDescription, Collection<Class> configuredResultTypes)
     {
         List<String> classNames = CollectionFactory.newList();
 

Modified: tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/services/ObjectComponentEventResultProcessorTest.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/services/ObjectComponentEventResultProcessorTest.java?view=diff&rev=495012&r1=495011&r2=495012
==============================================================================
--- tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/services/ObjectComponentEventResultProcessorTest.java (original)
+++ tapestry/tapestry5/tapestry-core/trunk/src/test/java/org/apache/tapestry/internal/services/ObjectComponentEventResultProcessorTest.java Wed Jan 10 14:28:35 2007
@@ -17,10 +17,8 @@
 import java.util.Arrays;
 import java.util.List;
 import java.util.Map;
-import java.util.Set;
 
 import org.apache.tapestry.ComponentResources;
-import org.apache.tapestry.ioc.internal.util.CollectionFactory;
 import org.apache.tapestry.ioc.internal.util.TapestryException;
 import org.apache.tapestry.runtime.Component;
 import org.apache.tapestry.services.ComponentEventResultProcessor;
@@ -40,10 +38,7 @@
         train_getComponentResources(component, resources);
         train_getCompleteId(resources, "foo.Bar:gnip.gnop");
 
-        Set<Class> classes = CollectionFactory.newSet(Arrays.asList(
-                String.class,
-                Map.class,
-                List.class));
+        List classes = Arrays.asList(String.class, List.class, Map.class);
 
         replay();
 



Re: svn commit: r495012 - in /tapestry/tapestry5/tapestry-core/trunk/src: main/java/org/apache/tapestry/internal/services/ test/java/org/apache/tapestry/internal/services/

Posted by Howard Lewis Ship <hl...@gmail.com>.
Sometimes I get a little sloppy and forget to run a clean maven build before
I check in.

There's some decided differences between the Eclipse compiler and the Sun
JDK compiler when it comes to generics.  From what I can tell, Eclipse is
wrong but it feels so right :-)   Seriously, Generics is a crock of shit.  I
did finally realize why Generics are so god awful complicated ... if you did
the right and simple thing (let the compiler introduce the necessary cast)
that would work most of the time, but it would make selecting the correct
method difficult when you have method overloading (lots of methods with the
same name but different parameters).  Java really wants to be able to
determine that at compile time, and with you start pulling out real typing,
it becomes a runtime decision.

On 1/10/07, Massimo Lusetti <ml...@gmail.com> wrote:
>
> On 1/10/07, hlship@apache.org <hl...@apache.org> wrote:
>
> > Author: hlship
> > Date: Wed Jan 10 14:28:35 2007
> > New Revision: 495012
> [..]
> >
> > -        Set<Class> classes = CollectionFactory.newSet(Arrays.asList(
> > -                String.class,
> > -                Map.class,
> > -                List.class));
> > +        List classes = Arrays.asList(String.class, List.class,
> Map.class);
> >
> >          replay();
> >
>
> Ah... Howard! I start to hate you ;) ...sorry for the noise in my previous
> post.
>
> Now compile pass even on maven.
>
> --
> Massimo
> http://meridio.blogspot.com
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
> For additional commands, e-mail: dev-help@tapestry.apache.org
>
>


-- 
Howard M. Lewis Ship
TWD Consulting, Inc.
Independent J2EE / Open-Source Java Consultant
Creator and PMC Chair, Apache Tapestry
Creator, Apache HiveMind

Professional Tapestry training, mentoring, support
and project work.  http://howardlewisship.com

Re: svn commit: r495012 - in /tapestry/tapestry5/tapestry-core/trunk/src: main/java/org/apache/tapestry/internal/services/ test/java/org/apache/tapestry/internal/services/

Posted by Massimo Lusetti <ml...@gmail.com>.
On 1/10/07, hlship@apache.org <hl...@apache.org> wrote:

> Author: hlship
> Date: Wed Jan 10 14:28:35 2007
> New Revision: 495012
[..]
>
> -        Set<Class> classes = CollectionFactory.newSet(Arrays.asList(
> -                String.class,
> -                Map.class,
> -                List.class));
> +        List classes = Arrays.asList(String.class, List.class, Map.class);
>
>          replay();
>

Ah... Howard! I start to hate you ;) ...sorry for the noise in my previous post.

Now compile pass even on maven.

-- 
Massimo
http://meridio.blogspot.com

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tapestry.apache.org
For additional commands, e-mail: dev-help@tapestry.apache.org