blob: bd89f928deef0b32059cefc3e882b90a595aa95f [file] [log] [blame]
package model;
import javax.persistence.*;
import java.util.EventListener;
public class EmployeeListener implements EventListener {
public static int PRE_PERSIST_COUNT = 0;
public static int POST_PERSIST_COUNT = 0;
public static int PRE_REMOVE_COUNT = 0;
public static int POST_REMOVE_COUNT = 0;
public static int PRE_UPDATE_COUNT = 0;
public static int POST_UPDATE_COUNT = 0;
public static int POST_LOAD_COUNT = 0;
public static String PRE_UPDATE_NAME_PREFIX = "PRE_UPDATE_NAME_PREFIX";
@PrePersist
public void prePersist(Object emp) {
PRE_PERSIST_COUNT++;
}
@PreRemove
public void preRemove(Object emp) {
PRE_REMOVE_COUNT++;
}
@PreUpdate
public void preUpdate(Object emp) {
PRE_UPDATE_COUNT++;
Employee employee = (Employee)emp;
if(employee.getFirstName() != null && employee.getFirstName().startsWith(PRE_UPDATE_NAME_PREFIX)) {
employee.setFirstName(employee.getFirstName().substring(PRE_UPDATE_NAME_PREFIX.length()));
}
if(employee.getLastName() != null && employee.getLastName().startsWith(PRE_UPDATE_NAME_PREFIX)) {
employee.setLastName(employee.getLastName().substring(PRE_UPDATE_NAME_PREFIX.length()));
}
}
@PostLoad
public void postLoad(Employee emp) {
POST_LOAD_COUNT++;
}
@PostPersist
public void postPersist(Object emp) {
POST_PERSIST_COUNT++;
}
@PostRemove
public void postRemove(Object emp) {
POST_REMOVE_COUNT++;
}
@PostUpdate
public void postUpdate(Object emp) {
POST_UPDATE_COUNT++;
}
}