You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@empire-db.apache.org by do...@apache.org on 2013/07/11 12:21:39 UTC

svn commit: r1502179 - in /empire-db/trunk: empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/ empire-db/src/main/java/org/apache/empire/commons/

Author: doebele
Date: Thu Jul 11 10:21:38 2013
New Revision: 1502179

URL: http://svn.apache.org/r1502179
Log:
EMPIREDB-186
special enum handling with select tag

Modified:
    empire-db/trunk/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/SelectTag.java
    empire-db/trunk/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/ValueTag.java
    empire-db/trunk/empire-db/src/main/java/org/apache/empire/commons/OptionEntry.java

Modified: empire-db/trunk/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/SelectTag.java
URL: http://svn.apache.org/viewvc/empire-db/trunk/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/SelectTag.java?rev=1502179&r1=1502178&r2=1502179&view=diff
==============================================================================
--- empire-db/trunk/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/SelectTag.java (original)
+++ empire-db/trunk/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/SelectTag.java Thu Jul 11 10:21:38 2013
@@ -73,6 +73,7 @@ public class SelectTag extends UIInput i
                 Options options = getOptionList();
                 boolean hasEmpty = isAllowNull() && !options.contains("");
                 control.syncOptions((HtmlSelectOneMenu)inputComponent, textResolver, options, hasEmpty, getNullText());
+                setInputValue((HtmlSelectOneMenu)inputComponent);
             }
             else
             {   // Something's wrong here?
@@ -183,9 +184,22 @@ public class SelectTag extends UIInput i
         // input.setLabel(getLabelString());
         // input.setRequired(col.isRequired() && !col.isAutoGenerated());
         // input.setId(this.getId() + INPUT_SUFFIX);
-        input.setValue(getValue());
+        setInputValue(input);
         return input;
     }
+    
+    private void setInputValue(HtmlSelectOneMenu input)
+    {
+        Object value = getValue();
+        if (value!=null)
+        {
+            if (value.getClass().isEnum())
+                value = ((Enum<?>)value).name();
+            else
+                value = String.valueOf(value);
+        }
+        input.setValue(value);
+    }
 
     private void copyAttributes(HtmlSelectOneMenu input)
     {

Modified: empire-db/trunk/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/ValueTag.java
URL: http://svn.apache.org/viewvc/empire-db/trunk/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/ValueTag.java?rev=1502179&r1=1502178&r2=1502179&view=diff
==============================================================================
--- empire-db/trunk/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/ValueTag.java (original)
+++ empire-db/trunk/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/components/ValueTag.java Thu Jul 11 10:21:38 2013
@@ -19,7 +19,6 @@
 package org.apache.empire.jsf2.components;
 
 import java.io.IOException;
-import java.util.Map;
 
 import javax.faces.component.UIOutput;
 import javax.faces.context.FacesContext;
@@ -75,11 +74,11 @@ public class ValueTag extends UIOutput /
     protected String writeStartElement(InputControl.ValueInfo vi, ResponseWriter writer)
         throws IOException
     {
-        Map<String, Object> map = getAttributes();
-        String tag   = StringUtils.toString(map.get("tag"));
-        String title = StringUtils.toString(map.get("title"));
+        // Map<String, Object> map = getAttributes();
+        String tag   = helper.getTagAttributeString("tag");
+        Object title = helper.getTagAttributeValue("title");
         // Check
-        if (tag == null && title == null && !map.containsKey("styleClass"))
+        if (tag == null && title == null && helper.getTagAttributeValue("styleClass")==null)
             return null;
         // Write tag
         if (StringUtils.isEmpty(tag))
@@ -99,7 +98,7 @@ public class ValueTag extends UIOutput /
         }
         // render attributes
         helper.writeAttribute(writer, "class", helper.getTagStyleClass(dataType, addlStyle));
-        helper.writeAttribute(writer, "style", map.get("style"));
+        helper.writeAttribute(writer, "style", helper.getTagAttributeString("style"));
         helper.writeAttribute(writer, "title", helper.getValueTooltip(title));
         return tag;
     }

Modified: empire-db/trunk/empire-db/src/main/java/org/apache/empire/commons/OptionEntry.java
URL: http://svn.apache.org/viewvc/empire-db/trunk/empire-db/src/main/java/org/apache/empire/commons/OptionEntry.java?rev=1502179&r1=1502178&r2=1502179&view=diff
==============================================================================
--- empire-db/trunk/empire-db/src/main/java/org/apache/empire/commons/OptionEntry.java (original)
+++ empire-db/trunk/empire-db/src/main/java/org/apache/empire/commons/OptionEntry.java Thu Jul 11 10:21:38 2013
@@ -52,8 +52,14 @@ public class OptionEntry implements Seri
      */
     public String getValueString()
     {
-        // Convenience Function
-        return (value != null ? String.valueOf(value) : "");
+        // check null
+        if (value==null)
+            return "";
+        // check enum
+        if (value.getClass().isEnum())
+            return ((Enum<?>)value).name();
+        // convert
+        return String.valueOf(value);
     }
     
     public String getText()