package net.sf.jeasyorm.model;
import java.util.ArrayList;
import java.util.List;
import net.sf.jeasyorm.EntityManager;
import net.sf.jeasyorm.annotation.Transient;
public class Person {
private EntityManager em;
private Long id;
private String firstName;
private String lastName;
@Transient private List<Address> addresses;
public Person() {
addresses = new ArrayList<Address>();
}
public Person(EntityManager em) {
this.em = em;
}
public Person(String firstName, String lastName) {
this.firstName = firstName;
this.lastName = lastName;
}
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 List<Address> getAddresses() {
if (addresses == null && em != null) {
setAddresses(em.find(Address.class, "where person_id = ?", id));
}
return addresses;
}
public void setAddresses(List<Address> addresses) {
this.addresses = addresses;
for (Address address : addresses) address.setPerson(this);
}
}