本文整理汇总了Java中org.quartz.Scheduler.getJobKeys方法的典型用法代码示例。如果您正苦于以下问题:Java Scheduler.getJobKeys方法的具体用法?Java Scheduler.getJobKeys怎么用?Java Scheduler.getJobKeys使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.quartz.Scheduler
的用法示例。
在下文中一共展示了Scheduler.getJobKeys方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: getAllJob
import org.quartz.Scheduler; //导入方法依赖的package包/类
/**
* 获取所有计划中的任务列表
*
* @return
* @throws SchedulerException
*/
public List<ScheduleJob> getAllJob() throws SchedulerException {
Scheduler scheduler = schedulerFactoryBean.getScheduler();
GroupMatcher<JobKey> matcher = GroupMatcher.anyJobGroup();
Set<JobKey> jobKeys = scheduler.getJobKeys(matcher);
List<ScheduleJob> jobList = new ArrayList<ScheduleJob>();
for (JobKey jobKey : jobKeys) {
List<? extends Trigger> triggers = scheduler.getTriggersOfJob(jobKey);
for (Trigger trigger : triggers) {
ScheduleJob job = new ScheduleJob();
job.setName(jobKey.getName());
job.setGroup(jobKey.getGroup());
job.setDescription("触发器:" + trigger.getKey());
Trigger.TriggerState triggerState = scheduler.getTriggerState(trigger.getKey());
job.setStatus(triggerState.name());
if (trigger instanceof CronTrigger) {
CronTrigger cronTrigger = (CronTrigger) trigger;
String cronExpression = cronTrigger.getCronExpression();
job.setCron(cronExpression);
}
jobList.add(job);
}
}
return jobList;
}
示例2: getAllJobsOfScheduler
import org.quartz.Scheduler; //导入方法依赖的package包/类
/**
* 获取scheduler下所有的jobDetail
* @param scheduler
* @return
* @throws SchedulerException
*/
public static List<JobDetail> getAllJobsOfScheduler(Scheduler scheduler) throws SchedulerException {
List<JobDetail> result = new ArrayList<JobDetail>();
List<String> jobGroupNames = scheduler.getJobGroupNames();
for (String groupName : jobGroupNames) {
Set<JobKey> jobKeys = scheduler.getJobKeys(GroupMatcher.<JobKey>groupEquals(groupName));
for (JobKey jobKey : jobKeys) {
JobDetail jobDetail = scheduler.getJobDetail(jobKey);
result.add(jobDetail);
}
}
return result;
}
示例3: execute
import org.quartz.Scheduler; //导入方法依赖的package包/类
/**
* Get all waitting queue jobs scheduled in Quartz table and display job name, job start time and description. The
* description will be in format "Lesson Name":"the lesson creator", or "The gate name":"The relatived lesson name".
*
* @param mapping
* The ActionMapping used to select this instance
* @param actionForm
* The optional ActionForm bean for this request (if any)
* @param request
* The HTTP request we are processing
* @param response
* The HTTP response we are creating
*
* @exception IOException
* if an input/output error occurs
* @exception ServletException
* if a servlet exception occurs
*
*/
@SuppressWarnings("unchecked")
@Override
public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request,
HttpServletResponse response) throws Exception {
WebApplicationContext ctx = WebApplicationContextUtils
.getWebApplicationContext(this.getServlet().getServletContext());
Scheduler scheduler = (Scheduler) ctx.getBean("scheduler");
ArrayList<ScheduledJobDTO> jobList = new ArrayList<ScheduledJobDTO>();
try {
Set<JobKey> jobKeys = scheduler.getJobKeys(GroupMatcher.jobGroupEquals(Scheduler.DEFAULT_GROUP));
for (JobKey jobKey : jobKeys) {
ScheduledJobDTO jobDto = new ScheduledJobDTO();
JobDetail detail = scheduler.getJobDetail(jobKey);
jobDto.setName(jobKey.getName());
jobDto.setDescription(detail.getDescription());
List<Trigger> triggers = (List<Trigger>) scheduler.getTriggersOfJob(jobKey);
for (Trigger trigger : triggers) {
jobDto.setStartDate(trigger.getStartTime());
jobList.add(jobDto);
}
}
} catch (SchedulerException e) {
ScheduledJobListAction.log.equals("Failed get job names:" + e.getMessage());
}
request.setAttribute("jobList", jobList);
return mapping.findForward("list");
}
示例4: getPlanJobList
import org.quartz.Scheduler; //导入方法依赖的package包/类
@Override
public List<ScheduleJobEntity> getPlanJobList() {
List<ScheduleJobEntity> jobList = new ArrayList<>();
Scheduler scheduler = schedulerFactoryBean.getScheduler();
try {
GroupMatcher<JobKey> matcher = GroupMatcher.anyJobGroup();
Set<JobKey> jobKeySet = scheduler.getJobKeys(matcher);
for (JobKey jobKey : jobKeySet) {
/*
List<? extends Trigger> triggers = scheduler.getTriggersOfJob(jobKey);
for (Trigger trigger : triggers) {
ScheduleJobEntity scheduleJob = new ScheduleJobEntity();
this.wrapScheduleJob(scheduleJob, scheduler, jobKey, trigger);
jobList.add(scheduleJob);
}
*/
JobDetail jobDetail = scheduler.getJobDetail(jobKey);
ScheduleJobEntity scheduleJob = new ScheduleJobEntity();
scheduleJob.setJobName(jobKey.getName());
scheduleJob.setJobGroup(jobKey.getGroup());
scheduleJob.setJobClassName(jobDetail.getJobClass().getName());
scheduleJob.setJobDesc(jobDetail.getDescription());
jobList.add(scheduleJob);
}
} catch (SchedulerException e) {
logger.error("获取计划任务列表失败", e);
throw new ServiceException("获取计划任务列表失败", e);
}
return jobList;
}
示例5: doHandleRequest
import org.quartz.Scheduler; //导入方法依赖的package包/类
@Override
protected ModelAndView doHandleRequest(HttpServletRequest req,HttpServletResponse res) throws Exception {
SimpleDateFormat sd=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Scheduler scheduler=instanceDetection.getScheduler();
StringBuffer sb=new StringBuffer();
sb.append("<strong>Status</strong>:");
if(scheduler.isInStandbyMode()){
sb.append("Standby");
}
if(scheduler.isShutdown()){
sb.append("Shutdown");
}
if(scheduler.isStarted()){
sb.append("Started");
}
sb.append("<br>");
for (String groupName : scheduler.getJobGroupNames()) {
for (JobKey jobKey : scheduler.getJobKeys(GroupMatcher.jobGroupEquals(groupName))) {
JobDetail jobDetail=scheduler.getJobDetail(jobKey);
sb.append("<strong>JobClass:</strong>");
sb.append(jobDetail.getJobClass().getName());
Trigger trigger=scheduler.getTriggersOfJob(jobDetail.getKey()).get(0);
sb.append("<br><strong>PreviousFireDate:</strong>");
if(trigger.getPreviousFireTime()!=null){
sb.append(sd.format(trigger.getPreviousFireTime()));
}
sb.append("<br><strong>NextFireDate:</strong>");
if(sd.format(trigger.getNextFireTime())!=null){
sb.append(sd.format(trigger.getNextFireTime()));
}
if(trigger instanceof CronTriggerImpl){
CronTriggerImpl cron=(CronTriggerImpl)trigger;
sb.append("<br><strong>CronExpression:</strong>");
sb.append(cron.getCronExpression());
}
}
}
res.setContentType("text/html; charset=utf-8");
PrintWriter pw=res.getWriter();
pw.write(sb.toString());
pw.flush();
pw.close();
return null;
}
示例6: jobs
import org.quartz.Scheduler; //导入方法依赖的package包/类
@Override
public Collection<JobDetailInfo> jobs() throws SchedulerException {
List<JobDetailInfo> jobDetailInfoes = new ArrayList<>();
Scheduler scheduler = schedulerFactoryBean.getScheduler();
GroupMatcher<JobKey> jobMatcher = GroupMatcher.anyJobGroup();
Set<JobKey> jobKeys = scheduler.getJobKeys(jobMatcher);
for (JobKey jobKey : jobKeys) {
JobDetail jobDetail = scheduler.getJobDetail(jobKey);
List<? extends Trigger> triggers = scheduler.getTriggersOfJob(jobKey);
for (Trigger trigger : triggers) {
JobDetailInfo jobDetailInfo = new JobDetailInfo();
jobDetailInfo.setJobName(jobKey.getName());
jobDetailInfo.setJobGroupName(jobKey.getGroup());
jobDetailInfo.setJobDescription(jobDetail.getDescription());
jobDetailInfo.setJobClassName(jobDetail.getJobClass().getName());
jobDetailInfo.setTriggerName(trigger.getKey().getName());
jobDetailInfo.setTriggerGroupName(trigger.getKey().getGroup());
jobDetailInfo.setTriggerDescription(trigger.getDescription());
CronTrigger cronTrigger = (CronTrigger) trigger;
jobDetailInfo.setTriggerCronExpression(cronTrigger.getCronExpression());
jobDetailInfo.setStartTime(new DateTime(trigger.getStartTime()).toString("yyyy-MM-dd HH:mm:ss"));
jobDetailInfo.setEndTime(new DateTime(trigger.getEndTime()).toString("yyyy-MM-dd HH:mm:ss"));
jobDetailInfo
.setFinalFireTime(new DateTime(trigger.getFinalFireTime()).toString("yyyy-MM-dd HH:mm:ss"));
jobDetailInfo.setPreviousFireTime(
new DateTime(trigger.getPreviousFireTime()).toString("yyyy-MM-dd HH:mm:ss"));
jobDetailInfo.setNextFireTime(new DateTime(trigger.getNextFireTime()).toString("yyyy-MM-dd HH:mm:ss"));
jobDetailInfo.setMisfireInstruction(trigger.getMisfireInstruction());
TriggerState triggerState = scheduler.getTriggerState(trigger.getKey());
jobDetailInfo.setJobState(triggerState.name());
jobDetailInfoes.add(jobDetailInfo);
}
}
return jobDetailInfoes;
}
示例7: getAllJobs
import org.quartz.Scheduler; //导入方法依赖的package包/类
/**
* Get all jobs
*/
@Override
public List<Map<String, Object>> getAllJobs() {
List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
try {
Scheduler scheduler = schedulerFactoryBean.getScheduler();
for (String groupName : scheduler.getJobGroupNames()) {
for (JobKey jobKey : scheduler.getJobKeys(GroupMatcher.jobGroupEquals(groupName))) {
String jobName = jobKey.getName();
String jobGroup = jobKey.getGroup();
//get job's trigger
List<Trigger> triggers = (List<Trigger>) scheduler.getTriggersOfJob(jobKey);
Date scheduleTime = triggers.get(0).getStartTime();
Date nextFireTime = triggers.get(0).getNextFireTime();
Date lastFiredTime = triggers.get(0).getPreviousFireTime();
Map<String, Object> map = new HashMap<String, Object>();
map.put("jobName", jobName);
map.put("groupName", jobGroup);
map.put("scheduleTime", scheduleTime);
map.put("lastFiredTime", lastFiredTime);
map.put("nextFireTime", nextFireTime);
if(isJobRunning(jobName)){
map.put("jobStatus", "RUNNING");
}else{
String jobState = getJobState(jobName);
map.put("jobStatus", jobState);
}
/* Date currentDate = new Date();
if (scheduleTime.compareTo(currentDate) > 0) {
map.put("jobStatus", "scheduled");
} else if (scheduleTime.compareTo(currentDate) < 0) {
map.put("jobStatus", "Running");
} else if (scheduleTime.compareTo(currentDate) == 0) {
map.put("jobStatus", "Running");
}*/
list.add(map);
System.out.println("Job details:");
System.out.println("Job Name:"+jobName + ", Group Name:"+ groupName + ", Schedule Time:"+scheduleTime);
}
}
} catch (SchedulerException e) {
System.out.println("SchedulerException while fetching all jobs. error message :"+e.getMessage());
e.printStackTrace();
}
return list;
}
示例8: loadScheduerInfo
import org.quartz.Scheduler; //导入方法依赖的package包/类
@DataProvider
public SchedulerInfo loadScheduerInfo() throws Exception{
SchedulerInfo info=new SchedulerInfo();
info.setRunJob(schedulerService.isRunJobInCurrentInstance());
Scheduler scheduler=schedulerService.getCurrentScheduler();
if(scheduler!=null){
if(scheduler.isStarted()){
info.setState(SchedulerState.started);
}else if(scheduler.isShutdown()){
info.setState(SchedulerState.shutdown);
}else if(scheduler.isInStandbyMode()){
info.setState(SchedulerState.standby);
}
info.setJobInstanceName(schedulerService.getJobInstanceName());
List<JobInfo> jobs=new ArrayList<JobInfo>();
for (String groupName : scheduler.getJobGroupNames()) {
for (JobKey jobKey : scheduler.getJobKeys(GroupMatcher.jobGroupEquals(groupName))) {
JobInfo jobInfo=new JobInfo();
JobDetail jobDetail=scheduler.getJobDetail(jobKey);
if(jobDetail instanceof SpringBeanJobExecutorDetail){
SpringBeanJobExecutorDetail springBeanDetail=(SpringBeanJobExecutorDetail)jobDetail;
jobInfo.setTargetJobInfo("SpringBean:"+springBeanDetail.getTargetJobBeanId());
jobInfo.setType(JobType.definition);
}else if(jobDetail instanceof ScanJobExecutorDetail){
jobInfo.setType(JobType.scan);
jobInfo.setTargetJobInfo(jobDetail.getJobClass().getName());
}
Trigger trigger=scheduler.getTriggersOfJob(jobKey).get(0);
jobInfo.setName(jobDetail.getKey().getName());
jobInfo.setGroup(jobDetail.getKey().getGroup());
jobInfo.setNextFireDate(trigger.getNextFireTime());
jobInfo.setPreviousFireDate(trigger.getPreviousFireTime());
if(trigger instanceof CronTriggerImpl){
CronTriggerImpl cron=(CronTriggerImpl)trigger;
jobInfo.setTriggerInfo("Cron表达式类型触发器["+cron.getCronExpression()+"]");
}else{
jobInfo.setTriggerInfo("触发器类型:"+trigger.getClass());
}
jobs.add(jobInfo);
}
info.setJobs(jobs);
}
}
return info;
}