1   
2   
3   
4   
5   
6   
7   
8   
9   
10  
11  
12  
13  
14  
15  
16  package org.kuali.student.common.ui.client.validator;
17  
18  import java.util.Date;
19  
20  import org.kuali.student.common.validator.DateParseException;
21  import org.kuali.student.common.validator.DateParser;
22  
23  import com.google.gwt.i18n.client.DateTimeFormat;
24  
25  public class ClientDateParser implements DateParser {
26      DateTimeFormat[] formats = {DateTimeFormat.getFormat("yyyy-MM-dd"), DateTimeFormat.getFormat("yyyy-MM-ddTHH:mm:ss,SSS")};
27      
28      public Date parseDate(String input) {
29          Date result = null;
30          
31          for (DateTimeFormat format : formats) {
32                  try {
33                      result = format.parseStrict(input);
34                  } catch (IllegalArgumentException e) {
35                      
36                  }
37                  if (result != null) {
38                      break;
39                  }
40              
41          }
42          
43          if (result == null) {
44              throw new DateParseException("Invalid date value: " + input);
45          }
46          
47          return result;
48      }
49      
50      public String toString(Date date){
51          String result = null;
52          DateTimeFormat format = DateTimeFormat.getFormat("yyyy-MM-ddTHH:mm:ss,SSS");
53          result = format.format(date);
54  
55          return result;        
56      }
57      
58      
59  }