Revision: 1093
Author:   jhoskens
Date:     2006-04-26 00:32:23 -0700 (Wed, 26 Apr 2006)
ViewCVS:  http://svn.sourceforge.net/spring-rich-c/?rev=1093&view=rev

Log Message:
-----------
DefaultFormModel now registers a listener on the enabled property to turn 
on/off the validation.
Listener is attached in init().

Modified Paths:
--------------
    
trunk/spring-richclient/support/src/main/java/org/springframework/binding/form/support/DefaultFormModel.java
    
trunk/spring-richclient/support/src/test/java/org/springframework/binding/form/support/DefaultFormModelTests.java
Modified: 
trunk/spring-richclient/support/src/main/java/org/springframework/binding/form/support/DefaultFormModel.java
===================================================================
--- 
trunk/spring-richclient/support/src/main/java/org/springframework/binding/form/support/DefaultFormModel.java
        2006-04-26 06:46:47 UTC (rev 1092)
+++ 
trunk/spring-richclient/support/src/main/java/org/springframework/binding/form/support/DefaultFormModel.java
        2006-04-26 07:32:23 UTC (rev 1093)
@@ -68,32 +68,56 @@
     private BindingErrorMessageProvider bindingErrorMessageProvider = new 
DefaultBindingErrorMessageProvider();
 
     public DefaultFormModel() {
+        init();
     }
 
     public DefaultFormModel(Object domainObject) {
         super(domainObject);
+        init();
     }
     
     public DefaultFormModel(Object domainObject, boolean buffered) {
         super(domainObject, buffered);
+        init();
     }
 
     public DefaultFormModel(ValueModel domainObjectHolder) {
         super(domainObjectHolder);
+        init();
     }
     
     public DefaultFormModel(ValueModel domainObjectHolder, boolean buffered) {
         super(domainObjectHolder, buffered);
+        init();
     }
 
     public DefaultFormModel(MutablePropertyAccessStrategy 
domainObjectAccessStrategy) {
         super(domainObjectAccessStrategy, true);
+        init();
     }
 
     public DefaultFormModel(MutablePropertyAccessStrategy 
domainObjectAccessStrategy, boolean bufferChanges) {
         super(domainObjectAccessStrategy, bufferChanges);
+        init();
     }
+    
+    /**
+     * Initialization of DefaultFormModel.
+     * Adds a listener on the Enabled property in order to switch validating 
state
+     * on or off. When disabling a formModel, no validation will happen.
+     */
+    protected void init()
+    {
+        addPropertyChangeListener(ENABLED_PROPERTY, new 
PropertyChangeListener(){
 
+            public void propertyChange(PropertyChangeEvent evt)
+            {
+                setValidating(evt.getNewValue() == Boolean.TRUE ? true : 
false);                
+            }
+            
+        });
+    }
+
     public boolean isValidating() {
         return validating;
     }
@@ -149,9 +173,7 @@
         if (!(formValueModel instanceof ValidatingFormValueModel)) {
             return new ValidatingFormValueModel(formProperty, formValueModel, 
true);
         }
-        else {
-            return formValueModel;
-        }
+        return formValueModel;
     }
 
     protected void postProcessNewValueModel(String formProperty, ValueModel 
valueModel) {

Modified: 
trunk/spring-richclient/support/src/test/java/org/springframework/binding/form/support/DefaultFormModelTests.java
===================================================================
--- 
trunk/spring-richclient/support/src/test/java/org/springframework/binding/form/support/DefaultFormModelTests.java
   2006-04-26 06:46:47 UTC (rev 1092)
+++ 
trunk/spring-richclient/support/src/test/java/org/springframework/binding/form/support/DefaultFormModelTests.java
   2006-04-26 07:32:23 UTC (rev 1093)
@@ -309,15 +309,14 @@
     private static class TestDefaultFormModel extends DefaultFormModel {
         public TestDefaultFormModel(Object bean) {
             super(bean, false);
-            init();
         }
 
         public TestDefaultFormModel(BeanPropertyAccessStrategy pas, boolean 
buffering) {
             super(pas, buffering);
-            init();
         }
 
-        private void init() {
+        public void init() {
+            super.init();
             setValidator(new TestValidator());
             setBindingErrorMessageProvider(new BindingErrorMessageProvider() {
 


This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.



-------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
spring-rich-c-cvs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/spring-rich-c-cvs

Reply via email to