//$Id$
package org.hibernate.test.annotations.reflection;
import javax.persistence.Basic;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.JoinColumns;
import javax.persistence.OneToOne;
import javax.persistence.PostLoad;
import javax.persistence.SecondaryTable;
import javax.persistence.Table;
/**
* @author Emmanuel Bernard
*/
@Entity(name = "JavaAdministration")
@Table(name = "JavaAdministration")
@SecondaryTable(name = "Extend")
public class Administration extends Organization {
@Id
private Integer id;
private String firstname;
private String lastname;
private String address;
private Integer version;
@Basic
private String transientField;
@OneToOne
@JoinColumns({@JoinColumn(name = "busNumber_fk"), @JoinColumn(name = "busDriver_fk")})
private BusTrip defaultBusTrip;
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
public Integer getVersion() {
return version;
}
public void setVersion(Integer version) {
this.version = version;
}
public String getFirstname() {
return firstname;
}
public void setFirstname(String firstname) {
this.firstname = firstname;
}
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getLastname() {
return lastname;
}
public void setLastname(String lastname) {
this.lastname = lastname;
}
@PostLoad
public void calculate() {
//...
}
}