package com.taobao.zeus.jobs.sub.tool;
import org.springframework.context.ApplicationContext;
import com.taobao.zeus.broadcast.alarm.MailAlarm;
import com.taobao.zeus.jobs.AbstractJob;
import com.taobao.zeus.jobs.JobContext;
import com.taobao.zeus.model.processer.MailProcesser;
public class MailJob extends AbstractJob{
private MailAlarm mailAlarm;
private MailProcesser processer;
public MailJob(JobContext jobContext,MailProcesser p,ApplicationContext applicationContext) {
super(jobContext);
mailAlarm=(MailAlarm) applicationContext.getBean("mailAlarm");
this.processer=p;
}
@Override
public Integer run() throws Exception {
String render=processer.getTemplate();
jobContext.getJobHistory().getLog().appendZeus("开始执行发送邮件job");
try {
mailAlarm.alarm(getJobContext().getJobHistory().getId(), processer.getSubject(), render);
jobContext.getJobHistory().getLog().appendZeus("邮件发送成功");
} catch (Exception e) {
jobContext.getJobHistory().getLog().appendZeusException(e);
}
return 0;
}
@Override
public void cancel() {
canceled=true;
}
}