KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > jaspersoft > jasperserver > api > engine > scheduling > hibernate > PersistentReportJobTrigger


1 /*
2  * Copyright (C) 2006 JasperSoft http://www.jaspersoft.com
3  *
4  * This program is free software; you can redistribute it and/or modify
5  * it under the terms of the GNU General Public License as published by
6  * the Free Software Foundation; either version 2 of the License, or
7  * (at your option) any later version.
8  *
9  * This program is distributed WITHOUT ANY WARRANTY; and without the
10  * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
11  * See the GNU General Public License for more details.
12  *
13  * You should have received a copy of the GNU General Public License
14  * along with this program; if not, see http://www.gnu.org/licenses/gpl.txt
15  * or write to:
16  *
17  * Free Software Foundation, Inc.,
18  * 59 Temple Place - Suite 330,
19  * Boston, MA USA 02111-1307
20  */

21 package com.jaspersoft.jasperserver.api.engine.scheduling.hibernate;
22
23 import java.sql.Timestamp JavaDoc;
24 import java.util.Date JavaDoc;
25
26 import com.jaspersoft.jasperserver.api.engine.scheduling.domain.ReportJob;
27 import com.jaspersoft.jasperserver.api.engine.scheduling.domain.ReportJobTrigger;
28
29 /**
30  * @author Lucian Chirita (lucianc@users.sourceforge.net)
31  * @version $Id: PersistentReportJobTrigger.java 3817 2006-06-23 18:27:28Z lucian $
32  */

33 public abstract class PersistentReportJobTrigger {
34
35     private long id;
36     private int version;
37     private String JavaDoc timezone;
38     private byte startType;
39     private Timestamp JavaDoc startDate;
40     private Timestamp JavaDoc endDate;
41     
42     public PersistentReportJobTrigger() {
43         version = ReportJob.VERSION_NEW;
44     }
45
46     public long getId() {
47         return id;
48     }
49
50     public void setId(long id) {
51         this.id = id;
52     }
53
54     public int getVersion() {
55         return version;
56     }
57
58     public void setVersion(int version) {
59         this.version = version;
60     }
61
62     public Timestamp JavaDoc getStartDate() {
63         return startDate;
64     }
65
66     public void setStartDate(Timestamp JavaDoc startDate) {
67         this.startDate = startDate;
68     }
69
70     public byte getStartType() {
71         return startType;
72     }
73
74     public void setStartType(byte startType) {
75         this.startType = startType;
76     }
77
78     public Timestamp JavaDoc getEndDate() {
79         return endDate;
80     }
81
82     public void setEndDate(Timestamp JavaDoc endDate) {
83         this.endDate = endDate;
84     }
85
86     public void copyFrom(ReportJobTrigger trigger) {
87         setTimezone(trigger.getTimezone());
88         setStartType(trigger.getStartType());
89         setStartDate(toTimestamp(trigger.getStartDate()));
90         setEndDate(toTimestamp(trigger.getEndDate()));
91     }
92     
93     protected Timestamp JavaDoc toTimestamp(Date JavaDoc date) {
94         return date == null ? null : new Timestamp JavaDoc(date.getTime());
95     }
96
97     public abstract ReportJobTrigger toClient();
98
99     protected final void copyTo(ReportJobTrigger trigger) {
100         trigger.setId(getId());
101         trigger.setVersion(getVersion());
102         trigger.setTimezone(getTimezone());
103         trigger.setStartType(getStartType());
104         trigger.setStartDate(getStartDate());
105         trigger.setEndDate(getEndDate());
106     }
107
108     public boolean isNew() {
109         return getVersion() == ReportJob.VERSION_NEW;
110     }
111     
112     public abstract boolean supports(Class JavaDoc triggerClass);
113
114     public String JavaDoc getTimezone() {
115         return timezone;
116     }
117
118     public void setTimezone(String JavaDoc timezone) {
119         this.timezone = timezone;
120     }
121     
122 }
123
Popular Tags