001: /*
002: * Copyright 2004-2005 OpenSymphony
003: *
004: * Licensed under the Apache License, Version 2.0 (the "License"); you may not
005: * use this file except in compliance with the License. You may obtain a copy
006: * of the License at
007: *
008: * http://www.apache.org/licenses/LICENSE-2.0
009: *
010: * Unless required by applicable law or agreed to in writing, software
011: * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
012: * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
013: * License for the specific language governing permissions and limitations
014: * under the License.
015: *
016: */
017:
018: /*
019: * Previously Copyright (c) 2001-2004 James House
020: */
021: package org.quartz.spi;
022:
023: import java.util.Date;
024:
025: import org.quartz.Calendar;
026: import org.quartz.JobDetail;
027: import org.quartz.Trigger;
028:
029: /**
030: * <p>
031: * A simple class (structure) used for returning execution-time data from the
032: * JobStore to the <code>QuartzSchedulerThread</code>.
033: * </p>
034: *
035: * @see org.quartz.core.QuartzScheduler
036: *
037: * @author James House
038: */
039: public class TriggerFiredBundle implements java.io.Serializable {
040:
041: /*
042: * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
043: *
044: * Data members.
045: *
046: * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
047: */
048:
049: private JobDetail job;
050:
051: private Trigger trigger;
052:
053: private Calendar cal;
054:
055: private boolean jobIsRecovering;
056:
057: private Date fireTime;
058:
059: private Date scheduledFireTime;
060:
061: private Date prevFireTime;
062:
063: private Date nextFireTime;
064:
065: /*
066: * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
067: *
068: * Constructors.
069: *
070: * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
071: */
072:
073: public TriggerFiredBundle(JobDetail job, Trigger trigger,
074: Calendar cal, boolean jobIsRecovering, Date fireTime,
075: Date scheduledFireTime, Date prevFireTime, Date nextFireTime) {
076: this .job = job;
077: this .trigger = trigger;
078: this .cal = cal;
079: this .jobIsRecovering = jobIsRecovering;
080: this .fireTime = fireTime;
081: this .scheduledFireTime = scheduledFireTime;
082: this .prevFireTime = prevFireTime;
083: this .nextFireTime = nextFireTime;
084: }
085:
086: /*
087: * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
088: *
089: * Interface.
090: *
091: * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
092: */
093:
094: public JobDetail getJobDetail() {
095: return job;
096: }
097:
098: public Trigger getTrigger() {
099: return trigger;
100: }
101:
102: public Calendar getCalendar() {
103: return cal;
104: }
105:
106: public boolean isRecovering() {
107: return jobIsRecovering;
108: }
109:
110: /**
111: * @return Returns the fireTime.
112: */
113: public Date getFireTime() {
114: return fireTime;
115: }
116:
117: /**
118: * @return Returns the nextFireTime.
119: */
120: public Date getNextFireTime() {
121: return nextFireTime;
122: }
123:
124: /**
125: * @return Returns the prevFireTime.
126: */
127: public Date getPrevFireTime() {
128: return prevFireTime;
129: }
130:
131: /**
132: * @return Returns the scheduledFireTime.
133: */
134: public Date getScheduledFireTime() {
135: return scheduledFireTime;
136: }
137:
138: }
|