Revision: 1451
          http://stripes.svn.sourceforge.net/stripes/?rev=1451&view=rev
Author:   bengunter
Date:     2011-12-01 22:05:36 +0000 (Thu, 01 Dec 2011)
Log Message:
-----------
Fixed STS-830: Handling EnumSets in DefaultActionBeanPropertyBinder

Modified Paths:
--------------
    
trunk/stripes/src/net/sourceforge/stripes/controller/DefaultActionBeanPropertyBinder.java

Modified: 
trunk/stripes/src/net/sourceforge/stripes/controller/DefaultActionBeanPropertyBinder.java
===================================================================
--- 
trunk/stripes/src/net/sourceforge/stripes/controller/DefaultActionBeanPropertyBinder.java
   2011-12-01 21:42:04 UTC (rev 1450)
+++ 
trunk/stripes/src/net/sourceforge/stripes/controller/DefaultActionBeanPropertyBinder.java
   2011-12-01 22:05:36 UTC (rev 1451)
@@ -42,6 +42,7 @@
 import java.util.ArrayList;
 import java.util.Collection;
 import java.util.Collections;
+import java.util.EnumSet;
 import java.util.Enumeration;
 import java.util.HashMap;
 import java.util.HashSet;
@@ -373,8 +374,15 @@
         }
         else if (Collection.class.isAssignableFrom(targetType)
                 && !Collection.class.isAssignableFrom(valueType)) {
-            Collection collection = 
getConfiguration().getObjectFactory().newInstance(
-                    (Class<? extends Collection>) targetType);
+            Collection collection;
+            if (EnumSet.class.isAssignableFrom(targetType) && 
Enum.class.isAssignableFrom(scalarType)) {
+                collection = EnumSet.noneOf(scalarType.asSubclass(Enum.class));
+            }
+            else {
+                collection = getConfiguration().getObjectFactory().newInstance(
+                        (Class<? extends Collection>) targetType);
+            }
+
             collection.addAll(valueOrValues);
             propertyEvaluation.setValue(collection);
         }

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


------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure 
contains a definitive record of customers, application performance, 
security threats, fraudulent activity, and more. Splunk takes this 
data and makes sense of it. IT sense. And common sense.
http://p.sf.net/sfu/splunk-novd2d
_______________________________________________
Stripes-development mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/stripes-development

Reply via email to