Title: [waffle-scm] [662] trunk/examples/freemarker-example/src/main/resources: Added DateProvider component to freemarker-example to show how it can centralise date format management.

Diff

Modified: trunk/examples/freemarker-example/src/main/java/org/codehaus/waffle/example/freemarker/FreemarkerRegistrar.java (661 => 662)

--- trunk/examples/freemarker-example/src/main/java/org/codehaus/waffle/example/freemarker/FreemarkerRegistrar.java	2008-04-29 16:31:30 UTC (rev 661)
+++ trunk/examples/freemarker-example/src/main/java/org/codehaus/waffle/example/freemarker/FreemarkerRegistrar.java	2008-04-29 16:46:18 UTC (rev 662)
@@ -7,6 +7,7 @@
 
 import org.codehaus.waffle.ComponentRegistry;
 import org.codehaus.waffle.bind.converters.DateValueConverter;
+import org.codehaus.waffle.example.freemarker.controller.DateProvider;
 import org.codehaus.waffle.example.freemarker.controller.PersonController;
 import org.codehaus.waffle.example.freemarker.persister.SimplePersonPersister;
 import org.codehaus.waffle.registrar.AbstractRegistrar;
@@ -21,15 +22,15 @@
     @Override
     public void application() {
         ComponentRegistry registry = getComponentRegistry();
+        DateProvider dateProvider = new DateProvider("dd/MM/yyyy", "hh:mm:ss", "dd/MM/yyyy");
         DateValueConverter converter = (DateValueConverter) registry.locateByType(DateValueConverter.class);
         if (converter != null) {
-            System.out.println("Default DateValueConverter patterns: " + converter.getPatterns());
             Properties patterns = new Properties();
-            patterns.setProperty(DAY_FORMAT_KEY, "dd/MM/yyyy");
-            patterns.setProperty(TIME_FORMAT_KEY, "hh:mm:ss");
+            patterns.setProperty(DAY_FORMAT_KEY, dateProvider.getDayPattern());
+            patterns.setProperty(TIME_FORMAT_KEY, dateProvider.getTimePattern());
             converter.changePatterns(patterns);
-            System.out.println("Updated DateValueConverter patterns: " + converter.getPatterns());
         }
+        registerInstance(dateProvider);
         register(SimplePersonPersister.class);
     }
 

Added: trunk/examples/freemarker-example/src/main/java/org/codehaus/waffle/example/freemarker/controller/DateProvider.java (0 => 662)

--- trunk/examples/freemarker-example/src/main/java/org/codehaus/waffle/example/freemarker/controller/DateProvider.java	                        (rev 0)
+++ trunk/examples/freemarker-example/src/main/java/org/codehaus/waffle/example/freemarker/controller/DateProvider.java	2008-04-29 16:46:18 UTC (rev 662)
@@ -0,0 +1,30 @@
+package org.codehaus.waffle.example.freemarker.controller;
+
+import java.io.Serializable;
+
[EMAIL PROTECTED]("serial")
+public class DateProvider implements Serializable {
+
+    private String dayPattern;
+    private String timePattern;
+    private String defaultPattern;
+
+    public DateProvider(String dayPattern, String timePattern, String defaultPattern) {
+        this.dayPattern = dayPattern;
+        this.timePattern = timePattern;
+        this.defaultPattern = defaultPattern;
+    }
+
+    public String getDayPattern() {
+        return dayPattern;
+    }
+
+    public String getTimePattern() {
+        return timePattern;
+    }
+
+    public String getDefaultPattern() {
+        return defaultPattern;
+    }
+
+}

Modified: trunk/examples/freemarker-example/src/main/java/org/codehaus/waffle/example/freemarker/controller/PersonController.java (661 => 662)

--- trunk/examples/freemarker-example/src/main/java/org/codehaus/waffle/example/freemarker/controller/PersonController.java	2008-04-29 16:31:30 UTC (rev 661)
+++ trunk/examples/freemarker-example/src/main/java/org/codehaus/waffle/example/freemarker/controller/PersonController.java	2008-04-29 16:46:18 UTC (rev 662)
@@ -15,23 +15,29 @@
 @SuppressWarnings("serial")
 public class PersonController implements Serializable {
     private final PersonPersister persister;
+    private final DateProvider dateProvider;
     private Person person;
     private List<Long> selectedIds = new ArrayList<Long>();
     private List<String> skills = Arrays.asList("Magician", "Apprentice");
-    
-    public PersonController(PersonPersister persister) {
+
+    public PersonController(PersonPersister persister, DateProvider dateProvider) {
         this.persister = persister;
+        this.dateProvider = dateProvider;
     }
 
+    public DateProvider getDateProvider() {
+        return dateProvider;
+    }
+
     public Collection<Person> getPeople() {
         return persister.findAll();
     }
 
-    public List<Long> getSelectedIds(){
+    public List<Long> getSelectedIds() {
         return selectedIds;
     }
-    
-    public void setSelectedIds(List<Long> ids){
+
+    public void setSelectedIds(List<Long> ids) {
         selectedIds = ids;
     }
 
@@ -54,7 +60,7 @@
     public List<String> getSkills() {
         return skills;
     }
-    
+
     public void remove(Long personId) {
         persister.delete(personId);
     }
@@ -64,13 +70,13 @@
     }
 
     public void show() {
-        //do nothing:  the selected Ids and people are automatically populated
+        // do nothing: the selected Ids and people are automatically populated
     }
-    
+
     public void save() {
         persister.save(person);
     }
-    
+
     public void create() {
         person = new PersistablePerson();
     }
@@ -82,7 +88,7 @@
     public View export() {
         StringBuffer sb = new StringBuffer();
         sb.append("Id,First Name,Last Name,Date of Birth\n");
-        for ( Person person : getSelectedPeople() ){
+        for (Person person : getSelectedPeople()) {
             sb.append(person.getId());
             sb.append(",");
             sb.append(person.getFirstName());

Modified: trunk/examples/freemarker-example/src/main/resources/ApplicationResources.properties (661 => 662)

--- trunk/examples/freemarker-example/src/main/resources/ApplicationResources.properties	2008-04-29 16:31:30 UTC (rev 661)
+++ trunk/examples/freemarker-example/src/main/resources/ApplicationResources.properties	2008-04-29 16:46:18 UTC (rev 662)
@@ -9,7 +9,4 @@
 dateOfBirth=Date of Birth
 
 # Other properties
-date.format=dd-MM-yyyy
-date.format.day=dd
-date.format.time=HH:mm:ss
 

Modified: trunk/examples/freemarker-example/src/main/webapp/people/edit.ftl (661 => 662)

--- trunk/examples/freemarker-example/src/main/webapp/people/edit.ftl	2008-04-29 16:31:30 UTC (rev 661)
+++ trunk/examples/freemarker-example/src/main/webapp/people/edit.ftl	2008-04-29 16:46:18 UTC (rev 662)
@@ -25,7 +25,8 @@
         <p class="fieldRow">
             <label for="" Of Birth:</label>
             <#if person.dateOfBirth??>
-                <@w.text "person.dateOfBirth" "${person.dateOfBirth?string('dd-MM-yyyy')}"/>
+                <#assign defaultPattern=controller.dateProvider.defaultPattern>
+                <@w.text "person.dateOfBirth" "${person.dateOfBirth?string(defaultPattern)}"/>
             <#else>
                 <@w.text "person.dateOfBirth" ""/>
             </#if> 
@@ -33,7 +34,8 @@
         <p class="fieldRow">
             <label for="" Day:</label>
             <#if person.birthDay??>
-                <@w.text "person.birthDay" "${person.birthDay?string('dd')}"/>
+                <#assign dayPattern=controller.dateProvider.dayPattern>
+                <@w.text "person.birthDay" "${person.birthDay?string(dayPattern)}"/>
             <#else>
                 <@w.text "person.birthDay" ""/>
             </#if> 
@@ -41,7 +43,8 @@
         <p class="fieldRow">
             <label for="" Time:</label>
             <#if person.birthTime??>
-                <@w.text "person.birthTime" "${person.birthTime?string('HH:mm:ss')}"/>
+                <#assign timePattern=controller.dateProvider.timePattern>
+                <@w.text "person.birthTime" "${person.birthTime?string(timePattern)}"/>
             <#else>
                 <@w.text "person.birthTime" ""/>
             </#if> 


To unsubscribe from this list please visit:

http://xircles.codehaus.org/manage_email

Reply via email to