Author: pete
Date: Wed Sep 15 22:56:31 2010
New Revision: 997534

URL: http://svn.apache.org/viewvc?rev=997534&view=rev
Log:
WICKET-3049: enforce usage of proper type for CompoundPropertyModel<T> which is 
either IModel<T> or <T> (before it swallowed any type of object and threw a 
class cast exception later)

Modified:
    
wicket/trunk/wicket-auth-roles/src/main/java/org/apache/wicket/authentication/panel/SignInPanel.java
    
wicket/trunk/wicket/src/main/java/org/apache/wicket/model/CompoundPropertyModel.java
    
wicket/trunk/wicket/src/test/java/org/apache/wicket/model/ModelToStringTest.java

Modified: 
wicket/trunk/wicket-auth-roles/src/main/java/org/apache/wicket/authentication/panel/SignInPanel.java
URL: 
http://svn.apache.org/viewvc/wicket/trunk/wicket-auth-roles/src/main/java/org/apache/wicket/authentication/panel/SignInPanel.java?rev=997534&r1=997533&r2=997534&view=diff
==============================================================================
--- 
wicket/trunk/wicket-auth-roles/src/main/java/org/apache/wicket/authentication/panel/SignInPanel.java
 (original)
+++ 
wicket/trunk/wicket-auth-roles/src/main/java/org/apache/wicket/authentication/panel/SignInPanel.java
 Wed Sep 15 22:56:31 2010
@@ -242,7 +242,7 @@ public class SignInPanel extends Panel
        /**
         * Sign in form.
         */
-       public final class SignInForm extends StatelessForm<Void>
+       public final class SignInForm extends StatelessForm<SignInPanel>
        {
                private static final long serialVersionUID = 1L;
 
@@ -256,7 +256,7 @@ public class SignInPanel extends Panel
                {
                        super(id);
 
-                       setModel(new 
CompoundPropertyModel<Void>(SignInPanel.this));
+                       setModel(new 
CompoundPropertyModel<SignInPanel>(SignInPanel.this));
 
                        // Attach textfields for username and password
                        add(new TextField<String>("username"));

Modified: 
wicket/trunk/wicket/src/main/java/org/apache/wicket/model/CompoundPropertyModel.java
URL: 
http://svn.apache.org/viewvc/wicket/trunk/wicket/src/main/java/org/apache/wicket/model/CompoundPropertyModel.java?rev=997534&r1=997533&r2=997534&view=diff
==============================================================================
--- 
wicket/trunk/wicket/src/main/java/org/apache/wicket/model/CompoundPropertyModel.java
 (original)
+++ 
wicket/trunk/wicket/src/main/java/org/apache/wicket/model/CompoundPropertyModel.java
 Wed Sep 15 22:56:31 2010
@@ -45,10 +45,21 @@ public class CompoundPropertyModel<T> im
        /**
         * Constructor
         * 
+        * @param model
+        *            The model
+        */
+       public CompoundPropertyModel(final IModel<T> model)
+       {
+               target = model;
+       }
+
+       /**
+        * Constructor
+        *
         * @param object
-        *            The model object, which may or may not implement IModel
+        *            The model object
         */
-       public CompoundPropertyModel(final Object object)
+       public CompoundPropertyModel(final T object)
        {
                target = object;
        }

Modified: 
wicket/trunk/wicket/src/test/java/org/apache/wicket/model/ModelToStringTest.java
URL: 
http://svn.apache.org/viewvc/wicket/trunk/wicket/src/test/java/org/apache/wicket/model/ModelToStringTest.java?rev=997534&r1=997533&r2=997534&view=diff
==============================================================================
--- 
wicket/trunk/wicket/src/test/java/org/apache/wicket/model/ModelToStringTest.java
 (original)
+++ 
wicket/trunk/wicket/src/test/java/org/apache/wicket/model/ModelToStringTest.java
 Wed Sep 15 22:56:31 2010
@@ -87,7 +87,7 @@ public class ModelToStringTest extends W
 
                Properties properties = new Properties();
                properties.put("name", "foo");
-               CompoundPropertyModel<String> stringProperty = new 
CompoundPropertyModel<String>(properties);
+               CompoundPropertyModel<Properties> stringProperty = new 
CompoundPropertyModel<Properties>(properties);
 
                expected = 
"Model:classname=[org.apache.wicket.model.CompoundPropertyModel]:nestedModel=[{name=foo}]";
                assertEquals(expected, stringProperty.toString());


Reply via email to