- Revision
- 662
- Author
- mauro
- Date
- 2008-04-29 11:46:18 -0500 (Tue, 29 Apr 2008)
Log Message
Added DateProvider component to freemarker-example to show how it can centralise date format management.
Modified Paths
- trunk/examples/freemarker-example/src/main/java/org/codehaus/waffle/example/freemarker/FreemarkerRegistrar.java
- trunk/examples/freemarker-example/src/main/java/org/codehaus/waffle/example/freemarker/controller/PersonController.java
- trunk/examples/freemarker-example/src/main/resources/ApplicationResources.properties
- trunk/examples/freemarker-example/src/main/webapp/people/edit.ftl
Added Paths
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:
