1 21 package com.jaspersoft.jasperserver.api.engine.scheduling.hibernate; 22 23 import java.sql.Timestamp ; 24 import java.util.Date ; 25 26 import com.jaspersoft.jasperserver.api.engine.scheduling.domain.ReportJob; 27 import com.jaspersoft.jasperserver.api.engine.scheduling.domain.ReportJobTrigger; 28 29 33 public abstract class PersistentReportJobTrigger { 34 35 private long id; 36 private int version; 37 private String timezone; 38 private byte startType; 39 private Timestamp startDate; 40 private Timestamp 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 getStartDate() { 63 return startDate; 64 } 65 66 public void setStartDate(Timestamp 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 getEndDate() { 79 return endDate; 80 } 81 82 public void setEndDate(Timestamp 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 toTimestamp(Date date) { 94 return date == null ? null : new Timestamp (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 triggerClass); 113 114 public String getTimezone() { 115 return timezone; 116 } 117 118 public void setTimezone(String timezone) { 119 this.timezone = timezone; 120 } 121 122 } 123 | Popular Tags |