package net.tooan.ynpay.core.ejb.job;
import net.tooan.ynpay.core.ejb.dao.user.SessionDao;
import net.tooan.ynpay.core.ejb.helper.MongoDBInterceptorBean;
import net.tooan.ynpay.third.jfinal.log.Logger;
import javax.ejb.Schedule;
import javax.ejb.Stateless;
import javax.interceptor.Interceptors;
/**
* Created with IntelliJ IDEA.
* User: Jing
* Date: 13-11-22
* Time: 下午4:31
*/
@Stateless
@Interceptors(MongoDBInterceptorBean.class)
public class CleanSession {
private static final Logger logger = Logger.getLogger(CleanSession.class);
private Boolean running = Boolean.FALSE;
@Schedule(second = "0", minute = "*/15", hour = "*", persistent = false)
public void exec() {
synchronized (CleanSession.class) {
if (running) {
logger.info("[TimerTask] 清理过期 Session : 之前的任务还未完成,跳过");
}
running = Boolean.TRUE;
logger.info("[TimerTask] 清理过期 Session : 开始");
SessionDao.dao.cleanExpire();
logger.info("[TimerTask] 清理过期 Session : 完毕");
running = Boolean.FALSE;
}
}
}