You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by mm...@apache.org on 2005/11/02 10:06:30 UTC

svn commit: r330220 - /myfaces/tomahawk/trunk/src/java/org/apache/myfaces/component/html/ext/HtmlSelectManyCheckbox.java

Author: mmarinschek
Date: Wed Nov  2 01:06:25 2005
New Revision: 330220

URL: http://svn.apache.org/viewcvs?rev=330220&view=rev
Log:
fixed forceId problem - this still needs some attention

Modified:
    myfaces/tomahawk/trunk/src/java/org/apache/myfaces/component/html/ext/HtmlSelectManyCheckbox.java

Modified: myfaces/tomahawk/trunk/src/java/org/apache/myfaces/component/html/ext/HtmlSelectManyCheckbox.java
URL: http://svn.apache.org/viewcvs/myfaces/tomahawk/trunk/src/java/org/apache/myfaces/component/html/ext/HtmlSelectManyCheckbox.java?rev=330220&r1=330219&r2=330220&view=diff
==============================================================================
--- myfaces/tomahawk/trunk/src/java/org/apache/myfaces/component/html/ext/HtmlSelectManyCheckbox.java (original)
+++ myfaces/tomahawk/trunk/src/java/org/apache/myfaces/component/html/ext/HtmlSelectManyCheckbox.java Wed Nov  2 01:06:25 2005
@@ -170,22 +170,29 @@
 
     public void setForceId(boolean b)
     {
-        getAttributes().put("forceId",Boolean.valueOf(b));
+        _forceId = Boolean.valueOf(b);
     }
 
+    private Boolean _forceId = null;
+
     public boolean getForceId()
     {
-        Object forceId = getAttributes().get("forceId");
+        if (_forceId != null) return _forceId.booleanValue();
+        ValueBinding vb = getValueBinding("forceId");
+        return vb != null && booleanFromObject(vb.getValue(getFacesContext()), false);
+    }
 
-        if(forceId instanceof Boolean)
+    private static boolean booleanFromObject(Object obj, boolean defaultValue)
+    {
+        if(obj instanceof Boolean)
         {
-            return ((Boolean) forceId).booleanValue();
+            return ((Boolean) obj).booleanValue();
         }
-        else if(forceId instanceof String)
+        else if(obj instanceof String)
         {
-            return Boolean.valueOf(((String) forceId)).booleanValue();
+            return Boolean.valueOf(((String) obj)).booleanValue();
         }
 
-        return false;
+        return defaultValue;
     }
 }