You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by ma...@apache.org on 2007/12/07 10:10:12 UTC

svn commit: r602039 - in /myfaces/trinidad/trunk/trinidad: trinidad-api/src/main/java/org/apache/myfaces/trinidad/webapp/ trinidad-build/src/main/resources/META-INF/maven-faces-plugin/components/trinidad/core/ trinidad-build/src/main/resources/META-INF...

Author: matzew
Date: Fri Dec  7 01:10:11 2007
New Revision: 602039

URL: http://svn.apache.org/viewvc?rev=602039&view=rev
Log:
TRINIDAD-61
fix from Yee-Wah Lee, for the 1.1-trunk

Modified:
    myfaces/trinidad/trunk/trinidad/trinidad-api/src/main/java/org/apache/myfaces/trinidad/webapp/UIXComponentTag.java
    myfaces/trinidad/trunk/trinidad/trinidad-build/src/main/resources/META-INF/maven-faces-plugin/components/trinidad/core/CoreChooseDate.xml
    myfaces/trinidad/trunk/trinidad/trinidad-build/src/main/resources/META-INF/maven-faces-plugin/validators/trinidad/DateTimeRange.xml
    myfaces/trinidad/trunk/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/taglib/util/TagUtils.java

Modified: myfaces/trinidad/trunk/trinidad/trinidad-api/src/main/java/org/apache/myfaces/trinidad/webapp/UIXComponentTag.java
URL: http://svn.apache.org/viewvc/myfaces/trinidad/trunk/trinidad/trinidad-api/src/main/java/org/apache/myfaces/trinidad/webapp/UIXComponentTag.java?rev=602039&r1=602038&r2=602039&view=diff
==============================================================================
--- myfaces/trinidad/trunk/trinidad/trinidad-api/src/main/java/org/apache/myfaces/trinidad/webapp/UIXComponentTag.java (original)
+++ myfaces/trinidad/trunk/trinidad/trinidad-api/src/main/java/org/apache/myfaces/trinidad/webapp/UIXComponentTag.java Fri Dec  7 01:10:11 2007
@@ -23,6 +23,7 @@
 import java.text.SimpleDateFormat;
 
 import java.util.ArrayList;
+import java.util.Calendar;
 import java.util.Date;
 import java.util.Iterator;
 
@@ -439,6 +440,38 @@
     else
     {
       bean.setProperty(key, _parseISODate(value));
+    }
+  }
+
+  /**
+   * Set a property of type java.util.Date.  If the value
+   * is an EL expression, it will be stored as a ValueBinding.
+   * Otherwise, it will parsed as an ISO 8601 date (yyyy-MM-dd)
+   * and the time components (hour, min, second, millisecond) maximized.
+   * Null values are ignored.
+   */
+  protected void setMaxDateProperty(
+    FacesBean   bean,
+    PropertyKey key,
+    String      value)
+  {
+    if (value == null)
+      return;
+
+    if (isValueReference(value))
+    {
+      bean.setValueBinding(key, createValueBinding(value));
+    }
+    else
+    {
+      Date d = _parseISODate(value);
+      Calendar c = Calendar.getInstance();
+      c.setTime(d);
+      c.set (Calendar.HOUR_OF_DAY, 23);
+      c.set (Calendar.MINUTE, 59);
+      c.set (Calendar.SECOND, 59);
+      c.set (Calendar.MILLISECOND, 999);
+      bean.setProperty(key, c.getTime());
     }
   }
 

Modified: myfaces/trinidad/trunk/trinidad/trinidad-build/src/main/resources/META-INF/maven-faces-plugin/components/trinidad/core/CoreChooseDate.xml
URL: http://svn.apache.org/viewvc/myfaces/trinidad/trunk/trinidad/trinidad-build/src/main/resources/META-INF/maven-faces-plugin/components/trinidad/core/CoreChooseDate.xml?rev=602039&r1=602038&r2=602039&view=diff
==============================================================================
--- myfaces/trinidad/trunk/trinidad/trinidad-build/src/main/resources/META-INF/maven-faces-plugin/components/trinidad/core/CoreChooseDate.xml (original)
+++ myfaces/trinidad/trunk/trinidad/trinidad-build/src/main/resources/META-INF/maven-faces-plugin/components/trinidad/core/CoreChooseDate.xml Fri Dec  7 01:10:11 2007
@@ -65,6 +65,7 @@
       <property-extension>
         <mfp:property-metadata>
           <mfp:preferred>true</mfp:preferred>
+          <mfp:use-max-time>true</mfp:use-max-time>
         </mfp:property-metadata>
       </property-extension>
     </property>

Modified: myfaces/trinidad/trunk/trinidad/trinidad-build/src/main/resources/META-INF/maven-faces-plugin/validators/trinidad/DateTimeRange.xml
URL: http://svn.apache.org/viewvc/myfaces/trinidad/trunk/trinidad/trinidad-build/src/main/resources/META-INF/maven-faces-plugin/validators/trinidad/DateTimeRange.xml?rev=602039&r1=602038&r2=602039&view=diff
==============================================================================
--- myfaces/trinidad/trunk/trinidad/trinidad-build/src/main/resources/META-INF/maven-faces-plugin/validators/trinidad/DateTimeRange.xml (original)
+++ myfaces/trinidad/trunk/trinidad/trinidad-build/src/main/resources/META-INF/maven-faces-plugin/validators/trinidad/DateTimeRange.xml Fri Dec  7 01:10:11 2007
@@ -39,6 +39,7 @@
       <property-extension>
         <mfp:property-metadata>
           <mfp:preferred>true</mfp:preferred>
+          <mfp:use-max-time>true</mfp:use-max-time>
         </mfp:property-metadata>
       </property-extension>
     </property>

Modified: myfaces/trinidad/trunk/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/taglib/util/TagUtils.java
URL: http://svn.apache.org/viewvc/myfaces/trinidad/trunk/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/taglib/util/TagUtils.java?rev=602039&r1=602038&r2=602039&view=diff
==============================================================================
--- myfaces/trinidad/trunk/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/taglib/util/TagUtils.java (original)
+++ myfaces/trinidad/trunk/trinidad/trinidad-impl/src/main/java/org/apache/myfaces/trinidadinternal/taglib/util/TagUtils.java Fri Dec  7 01:10:11 2007
@@ -25,6 +25,7 @@
 import java.text.SimpleDateFormat;
 
 import java.util.ArrayList;
+import java.util.Calendar;
 import java.util.Date;
 import java.util.List;
 import java.util.Locale;
@@ -159,6 +160,24 @@
     String      value)
   {
      return _parseISODate(value);
+  }
+
+  /**
+   *  ISO Date String --> Date with time components maximized
+   * @param value
+   * @return
+   */
+  public static Date getDateWithMaxTime(
+    String      value)
+  {
+     Calendar c = Calendar.getInstance();
+     Date d = _parseISODate(value);
+     c.setTime(d);
+     c.set (Calendar.HOUR_OF_DAY, 23);
+     c.set (Calendar.MINUTE, 59);
+     c.set (Calendar.SECOND, 59);
+     c.set (Calendar.MILLISECOND, 999);
+     return (c.getTime());
   }
 
   /**