- Revision
- 608
- Author
- mauro
- Date
- 2008-04-14 05:28:25 -0500 (Mon, 14 Apr 2008)
Log Message
[freemarker-example]: made Person an interface with corresponding persistable implementation.
Modified Paths
- trunk/examples/freemarker-example/src/main/java/org/codehaus/waffle/example/freemarker/controller/PersonController.java
- trunk/examples/freemarker-example/src/main/java/org/codehaus/waffle/example/freemarker/model/Person.java
- trunk/examples/freemarker-example/src/main/java/org/codehaus/waffle/example/freemarker/persister/SimplePersonPersister.java
Added Paths
Diff
Modified: trunk/examples/freemarker-example/src/main/java/org/codehaus/waffle/example/freemarker/controller/PersonController.java (607 => 608)
--- trunk/examples/freemarker-example/src/main/java/org/codehaus/waffle/example/freemarker/controller/PersonController.java 2008-04-14 10:20:48 UTC (rev 607) +++ trunk/examples/freemarker-example/src/main/java/org/codehaus/waffle/example/freemarker/controller/PersonController.java 2008-04-14 10:28:25 UTC (rev 608) @@ -1,12 +1,13 @@ package org.codehaus.waffle.example.freemarker.controller; -import org.codehaus.waffle.example.freemarker.model.Person; -import org.codehaus.waffle.example.freemarker.persister.PersonPersister; - import java.util.ArrayList; import java.util.Collection; import java.util.List; +import org.codehaus.waffle.example.freemarker.model.Person; +import org.codehaus.waffle.example.freemarker.persister.PersistablePerson; +import org.codehaus.waffle.example.freemarker.persister.PersonPersister; + public class PersonController { private final PersonPersister persister; private Person person; @@ -53,7 +54,7 @@ } public void create() { - person = new Person(); + person = new PersistablePerson(); } public void cancel() {
Modified: trunk/examples/freemarker-example/src/main/java/org/codehaus/waffle/example/freemarker/model/Person.java (607 => 608)
--- trunk/examples/freemarker-example/src/main/java/org/codehaus/waffle/example/freemarker/model/Person.java 2008-04-14 10:20:48 UTC (rev 607) +++ trunk/examples/freemarker-example/src/main/java/org/codehaus/waffle/example/freemarker/model/Person.java 2008-04-14 10:28:25 UTC (rev 608) @@ -2,66 +2,16 @@ import java.util.Date; -public class Person { - private Long id; - private String firstName; - private String lastName; - private String email; - private Date dateOfBirth; +public interface Person { - public Person() { - id = new Long(0); - firstName = ""; - lastName = ""; - email = ""; - dateOfBirth = new Date(); - } + public Long getId(); - public Person(Person person) { - this.id = person.getId(); - this.firstName = person.getFirstName(); - this.lastName = person.getLastName(); - this.email = person.getEmail(); - this.dateOfBirth = person.getDateOfBirth(); - } + public String getFirstName(); - public Long getId() { - return id; - } + public String getLastName(); - public void setId(Long id) { - this.id = id; - } + public String getEmail(); - public String getFirstName() { - return firstName; - } + public Date getDateOfBirth(); - public void setFirstName(String firstName) { - this.firstName = firstName; - } - - public String getLastName() { - return lastName; - } - - public void setLastName(String lastName) { - this.lastName = lastName; - } - - public String getEmail() { - return email; - } - - public void setEmail(String email) { - this.email = email; - } - - public Date getDateOfBirth() { - return dateOfBirth; - } - - public void setDateOfBirth(Date dateOfBirth) { - this.dateOfBirth = dateOfBirth; - } }
Added: trunk/examples/freemarker-example/src/main/java/org/codehaus/waffle/example/freemarker/persister/PersistablePerson.java (0 => 608)
--- trunk/examples/freemarker-example/src/main/java/org/codehaus/waffle/example/freemarker/persister/PersistablePerson.java (rev 0) +++ trunk/examples/freemarker-example/src/main/java/org/codehaus/waffle/example/freemarker/persister/PersistablePerson.java 2008-04-14 10:28:25 UTC (rev 608) @@ -0,0 +1,70 @@ +package org.codehaus.waffle.example.freemarker.persister; + +import java.util.Date; + +import org.codehaus.waffle.example.freemarker.model.Person; + +public class PersistablePerson implements Person { + + private Long id; + private String firstName; + private String lastName; + private String email; + private Date dateOfBirth; + + public PersistablePerson() { + id = new Long(0); + firstName = ""; + lastName = ""; + email = ""; + dateOfBirth = new Date(); + } + + public PersistablePerson(Person person) { + this.id = person.getId(); + this.firstName = person.getFirstName(); + this.lastName = person.getLastName(); + this.email = person.getEmail(); + this.dateOfBirth = person.getDateOfBirth(); + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getFirstName() { + return firstName; + } + + public void setFirstName(String firstName) { + this.firstName = firstName; + } + + public String getLastName() { + return lastName; + } + + public void setLastName(String lastName) { + this.lastName = lastName; + } + + public String getEmail() { + return email; + } + + public void setEmail(String email) { + this.email = email; + } + + public Date getDateOfBirth() { + return dateOfBirth; + } + + public void setDateOfBirth(Date dateOfBirth) { + this.dateOfBirth = dateOfBirth; + } +}
Modified: trunk/examples/freemarker-example/src/main/java/org/codehaus/waffle/example/freemarker/persister/SimplePersonPersister.java (607 => 608)
--- trunk/examples/freemarker-example/src/main/java/org/codehaus/waffle/example/freemarker/persister/SimplePersonPersister.java 2008-04-14 10:20:48 UTC (rev 607) +++ trunk/examples/freemarker-example/src/main/java/org/codehaus/waffle/example/freemarker/persister/SimplePersonPersister.java 2008-04-14 10:28:25 UTC (rev 608) @@ -22,7 +22,7 @@ } private void addPerson(Long id, String firstName, String lastName, String email) { - Person person = new Person(); + PersistablePerson person = new PersistablePerson(); person.setId(id); person.setFirstName(firstName); person.setLastName(lastName); @@ -32,7 +32,7 @@ public Person findById(Long personId) { // create a copy so that edits don't propogate to the map - return new Person(map.get(personId)); + return new PersistablePerson(map.get(personId)); } public Collection<Person> findAll() { @@ -40,10 +40,12 @@ } public void save(Person person) { - if(person.getId().equals(new Long(0))) { - person.setId(++COUNT); + if ( person instanceof PersistablePerson ){ + if(person.getId().equals(new Long(0))) { + ((PersistablePerson)person).setId(++COUNT); + } + map.put(person.getId(), person); } - map.put(person.getId(), person); } public void delete(Long personId) {
To unsubscribe from this list please visit:
