1 package fr.ifremer.quadrige2.synchro.vo;
2
3 /*-
4 * #%L
5 * Quadrige2 Core :: Quadrige2 Synchro Core
6 * $Id:$
7 * $HeadURL:$
8 * %%
9 * Copyright (C) 2017 Ifremer
10 * %%
11 * This program is free software: you can redistribute it and/or modify
12 * it under the terms of the GNU Affero General Public License as published by
13 * the Free Software Foundation, either version 3 of the License, or
14 * (at your option) any later version.
15 *
16 * This program is distributed in the hope that it will be useful,
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 * GNU General Public License for more details.
20 *
21 * You should have received a copy of the GNU Affero General Public License
22 * along with this program. If not, see <http://www.gnu.org/licenses/>.
23 * #L%
24 */
25
26 import java.io.Serializable;
27 import java.util.Date;
28 import java.util.Set;
29
30 /**
31 * <p>
32 * SynchroExportContextVO class.
33 * </p>
34 *
35 * @author Ludovic Pecquot <ludovic.pecquot@e-is.pro>
36 * @since 3.7.0
37 */
38 public class SynchroExportContextVO implements Serializable {
39
40 private static final long serialVersionUID = 1L;
41
42 /** Constant <code>PROPERTY_JOB_ID="jobId"</code> */
43 public static final String PROPERTY_JOB_ID = "jobId";
44 /** Constant <code>PROPERTY_FILE_NAME="fileName"</code> */
45 public static final String PROPERTY_FILE_NAME = "fileName";
46 /** Constant <code>PROPERTY_DATA_PROGRAM_CODES="dataProgramCodes"</code> */
47 public static final String PROPERTY_DATA_PROGRAM_CODES = "dataProgramCodes";
48 /** Constant <code>PROPERTY_REFERENTIAL_PROGRAM_CODES="referentialProgramCodes"</code> */
49 public static final String PROPERTY_REFERENTIAL_PROGRAM_CODES = "referentialProgramCodes";
50 /** Constant <code>PROPERTY_DIRTY_ONLY="dirtyOnly"</code> */
51 public static final String PROPERTY_DIRTY_ONLY = "dirtyOnly";
52 /** Constant <code>PROPERTY_DATE_OPERATOR="dateOperator"</code> */
53 public static final String PROPERTY_DATE_OPERATOR = "dateOperator";
54 /** Constant <code>PROPERTY_START_DATE="startDate"</code> */
55 public static final String PROPERTY_START_DATE = "startDate";
56 /** Constant <code>PROPERTY_END_DATE="endDate"</code> */
57 public static final String PROPERTY_END_DATE = "endDate";
58
59 private String jobId;
60 private String fileName;
61 private Set<String> dataProgramCodes;
62 private Set<String> referentialProgramCodes;
63
64 /**
65 * Only used for file export (see mantis #27242)
66 */
67 private boolean dirtyOnly;
68
69 /**
70 * Only used for file export (see mantis #27242)
71 */
72 private SynchroDateOperatorVO dateOperator;
73
74 private Date startDate;
75 private Date endDate;
76
77 /**
78 * <p>
79 * Constructor for SynchroExportContextVO.
80 * </p>
81 */
82 public SynchroExportContextVO() {
83 }
84
85 /**
86 * <p>
87 * Getter for the field <code>jobId</code>.
88 * </p>
89 *
90 * @return a {@link java.lang.String} object.
91 */
92 public String getJobId() {
93 return jobId;
94 }
95
96 /**
97 * <p>
98 * Setter for the field <code>jobId</code>.
99 * </p>
100 *
101 * @param jobId
102 * a {@link java.lang.String} object.
103 */
104 public void setJobId(String jobId) {
105 this.jobId = jobId;
106 }
107
108 /**
109 * <p>
110 * Getter for the field <code>fileName</code>.
111 * </p>
112 *
113 * @return a {@link java.lang.String} object.
114 */
115 public String getFileName() {
116 return fileName;
117 }
118
119 /**
120 * <p>
121 * Setter for the field <code>fileName</code>.
122 * </p>
123 *
124 * @param fileName
125 * a {@link java.lang.String} object.
126 */
127 public void setFileName(String fileName) {
128 this.fileName = fileName;
129 }
130
131 /**
132 * <p>
133 * Getter for the field <code>dataProgramCodes</code>.
134 * </p>
135 *
136 * @return a {@link java.util.Set} object.
137 */
138 public Set<String> getDataProgramCodes() {
139 return dataProgramCodes;
140 }
141
142 /**
143 * <p>
144 * Setter for the field <code>dataProgramCodes</code>.
145 * </p>
146 *
147 * @param programCodes
148 * a {@link java.util.Set} object.
149 */
150 public void setDataProgramCodes(Set<String> programCodes) {
151 this.dataProgramCodes = programCodes;
152 }
153
154 /**
155 * <p>
156 * Getter for the field <code>referentialProgramCodes</code>.
157 * </p>
158 *
159 * @return a {@link java.util.Set} object.
160 */
161 public Set<String> getReferentialProgramCodes() {
162 return referentialProgramCodes;
163 }
164
165 /**
166 * <p>
167 * Setter for the field <code>referentialProgramCodes</code>.
168 * </p>
169 *
170 * @param referentialProgramCodes
171 * a {@link java.util.Set} object.
172 */
173 public void setReferentialProgramCodes(Set<String> referentialProgramCodes) {
174 this.referentialProgramCodes = referentialProgramCodes;
175 }
176
177 /**
178 * <p>
179 * Getter for the field <code>dateOperator</code>.
180 * </p>
181 *
182 * @return a {@link fr.ifremer.quadrige2.synchro.vo.SynchroDateOperatorVO} object.
183 */
184 public SynchroDateOperatorVO getDateOperator() {
185 return dateOperator;
186 }
187
188 /**
189 * <p>
190 * Setter for the field <code>dateOperator</code>.
191 * </p>
192 *
193 * @param dateOperator
194 * a {@link fr.ifremer.quadrige2.synchro.vo.SynchroDateOperatorVO} object.
195 */
196 public void setDateOperator(SynchroDateOperatorVO dateOperator) {
197 this.dateOperator = dateOperator;
198 }
199
200 /**
201 * <p>
202 * Getter for the field <code>startDate</code>.
203 * </p>
204 *
205 * @return a {@link java.util.Date} object.
206 */
207 public Date getStartDate() {
208 return startDate;
209 }
210
211 /**
212 * <p>
213 * Setter for the field <code>startDate</code>.
214 * </p>
215 *
216 * @param startDate
217 * a {@link java.util.Date} object.
218 */
219 public void setStartDate(Date startDate) {
220 this.startDate = startDate;
221 }
222
223 /**
224 * <p>
225 * Getter for the field <code>endDate</code>.
226 * </p>
227 *
228 * @return a {@link java.util.Date} object.
229 */
230 public Date getEndDate() {
231 return endDate;
232 }
233
234 /**
235 * <p>
236 * Setter for the field <code>endDate</code>.
237 * </p>
238 *
239 * @param endDate
240 * a {@link java.util.Date} object.
241 */
242 public void setEndDate(Date endDate) {
243 this.endDate = endDate;
244 }
245
246 /**
247 * <p>
248 * isDirtyOnly.
249 * </p>
250 *
251 * @return a boolean.
252 */
253 public boolean isDirtyOnly() {
254 return dirtyOnly;
255 }
256
257 /**
258 * <p>
259 * Setter for the field <code>dirtyOnly</code>.
260 * </p>
261 *
262 * @param dirtyOnly
263 * a boolean.
264 */
265 public void setDirtyOnly(boolean dirtyOnly) {
266 this.dirtyOnly = dirtyOnly;
267 }
268 }