List of usage examples for com.liferay.portal.kernel.scheduler.messaging SchedulerResponse toString
@Override
public String toString()
From source file:de.uhh.l2g.plugins.util.PortletScheduler.java
License:Open Source License
/** * Unschedules Quartz Job but keeps SchedulerEntry in Memory (Scheduler will * be not correctly (re)deployed if in state UNSCHEDULED * //from ww w . j a va 2 s.c o m */ public void unschedule() { try { List<SchedulerResponse> scheduledJobs = SchedulerEngineHelperUtil.getScheduledJobs(); for (SchedulerResponse resp : scheduledJobs) { if (resp.getJobName().equalsIgnoreCase(this.schedulerClassName)) { LOG.info("Stopping :" + resp.toString()); Map<String, Object> map = resp.getMessage().getValues(); String portletId = ""; String listenerName = ""; if (map.containsKey(SchedulerEngine.PORTLET_ID)) portletId = map.get(SchedulerEngine.PORTLET_ID).toString(); if (map.containsKey(SchedulerEngine.MESSAGE_LISTENER_CLASS_NAME)) listenerName = map.get(SchedulerEngine.MESSAGE_LISTENER_CLASS_NAME).toString(); LOG.info("Associated to :" + portletId + " " + listenerName + " " + this.destination); TriggerState state = SchedulerEngineHelperUtil.getJobState(resp.getJobName(), resp.getGroupName(), resp.getStorageType()); if (state != (TriggerState.UNSCHEDULED)) { Thread thread = Thread.currentThread(); LOG.info("Thread :" + thread.getContextClassLoader() + thread.toString()); LOG.info("Unscheduling :" + this.schedulerClassName + " " + resp.getTrigger().toString()); SchedulerEngineHelperUtil.unschedule(schedulerEntry, resp.getStorageType()); // TODO: Check Workaround // This removes the SchedulerEntry from Liferay's // Scheduler List so it is not started aditionally on // re-deploy // BUT, removing this entry will also destroy our // Trigger (as Quartz unschedule(), removes the Trigger // from QuartzJob this.removeFromEntries(); } else { LOG.warn("Scheduler could not be unscheduled beacuse it was in state " + state); } } } } catch (SchedulerException e) { LOG.warn("Failed to unschedule job" + this.schedulerClassName, e); } }
From source file:de.uhh.l2g.plugins.util.PortletScheduler.java
License:Open Source License
/** * Deletes the Scheduler thoroughly until server restart! * /*from ww w .j a v a 2 s . co m*/ */ public void delete() { try { List<SchedulerResponse> scheduledJobs = SchedulerEngineHelperUtil.getScheduledJobs(); for (SchedulerResponse resp : scheduledJobs) { if (resp.getJobName().equalsIgnoreCase(this.schedulerClassName)) { LOG.info("Stopping :" + resp.toString()); Map<String, Object> map = resp.getMessage().getValues(); String portletId = ""; String listenerName = ""; if (map.containsKey(SchedulerEngine.PORTLET_ID)) portletId = map.get(SchedulerEngine.PORTLET_ID).toString(); if (map.containsKey(SchedulerEngine.MESSAGE_LISTENER_CLASS_NAME)) listenerName = map.get(SchedulerEngine.MESSAGE_LISTENER_CLASS_NAME).toString(); LOG.info("Associated to :" + portletId + " " + listenerName + " " + this.destination); TriggerState state = SchedulerEngineHelperUtil.getJobState(resp.getJobName(), resp.getGroupName(), resp.getStorageType()); if (state.equals(TriggerState.NORMAL)) { Thread thread = Thread.currentThread(); LOG.info("Thread :" + thread.getContextClassLoader() + thread.toString()); LOG.info("Unscheduling :" + this.schedulerClassName + " " + resp.getTrigger().toString()); SchedulerEngineHelperUtil.delete(schedulerEntry, resp.getStorageType()); // This removes the SchedulerEntry from Liferay's // Scheduler List so it is not started aditionally on // re-deploy // Removing this entry will also destroy our Trigger (as // Quartz unschedule(), removes the Trigger from // QuartzJob this.removeFromEntries(); } else { LOG.warn("Scheduler could not be unscheduled beacuse it was in state " + state); } } } } catch (SchedulerException e) { LOG.warn("Failed to unschedule job" + this.schedulerClassName, e); } }
From source file:de.uhh.l2g.plugins.util.PortletScheduler.java
License:Open Source License
public static List<PortletScheduler> ListSchedulers() { List<PortletScheduler> schedulers = new LinkedList<PortletScheduler>(); PortletScheduler psch = null;// ww w .j a v a 2s . com try { List<SchedulerResponse> scheduledJobs = SchedulerEngineHelperUtil.getScheduledJobs(); for (SchedulerResponse resp : scheduledJobs) { if (resp != null && resp.getJobName().contains(PortletScheduler.class.getPackage().getName())) { psch = new PortletScheduler(); LOG.info(resp.toString()); psch.setJobName(resp.getJobName()); psch.setGroupName(resp.getGroupName()); psch.setStorageType(resp.getStorageType()); psch.setDescription(resp.getDescription()); psch.setMessage(resp.getMessage()); psch.setTrigger(resp.getTrigger()); TriggerState state = SchedulerEngineHelperUtil.getJobState(resp.getJobName(), resp.getGroupName(), resp.getStorageType()); schedulers.add(psch); LOG.info("SchedulerResponse: " + psch.getJobName()); } } } catch (SchedulerException e) { LOG.error("Could not retrieve ScheduledJobs"); } return schedulers; }