1 package fr.ifremer.quadrige3.synchro.vo;
2
3 /*-
4 * #%L
5 * Quadrige3 Core :: Quadrige3 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 public static final String PROPERTY_WITH_PHOTO = "withPhoto";
53 /** Constant <code>PROPERTY_DATE_OPERATOR="dateOperator"</code> */
54 public static final String PROPERTY_DATE_OPERATOR = "dateOperator";
55 /** Constant <code>PROPERTY_START_DATE="startDate"</code> */
56 public static final String PROPERTY_START_DATE = "startDate";
57 /** Constant <code>PROPERTY_END_DATE="endDate"</code> */
58 public static final String PROPERTY_END_DATE = "endDate";
59
60 private String jobId;
61 private String fileName;
62 private Set<String> dataProgramCodes;
63 private Set<String> referentialProgramCodes;
64
65 /**
66 * Only used for file export (see mantis #27242)
67 */
68 private boolean dirtyOnly;
69 private boolean withPhoto = false;
70
71 /**
72 * Only used for file export (see mantis #27242)
73 */
74 private SynchroDateOperatorVO dateOperator;
75
76 private Date startDate;
77 private Date endDate;
78
79 /**
80 * <p>
81 * Constructor for SynchroExportContextVO.
82 * </p>
83 */
84 public SynchroExportContextVO() {
85 }
86
87 /**
88 * <p>
89 * Getter for the field <code>jobId</code>.
90 * </p>
91 *
92 * @return a {@link java.lang.String} object.
93 */
94 public String getJobId() {
95 return jobId;
96 }
97
98 /**
99 * <p>
100 * Setter for the field <code>jobId</code>.
101 * </p>
102 *
103 * @param jobId
104 * a {@link java.lang.String} object.
105 */
106 public void setJobId(String jobId) {
107 this.jobId = jobId;
108 }
109
110 /**
111 * <p>
112 * Getter for the field <code>fileName</code>.
113 * </p>
114 *
115 * @return a {@link java.lang.String} object.
116 */
117 public String getFileName() {
118 return fileName;
119 }
120
121 /**
122 * <p>
123 * Setter for the field <code>fileName</code>.
124 * </p>
125 *
126 * @param fileName
127 * a {@link java.lang.String} object.
128 */
129 public void setFileName(String fileName) {
130 this.fileName = fileName;
131 }
132
133 /**
134 * <p>
135 * Getter for the field <code>dataProgramCodes</code>.
136 * </p>
137 *
138 * @return a {@link java.util.Set} object.
139 */
140 public Set<String> getDataProgramCodes() {
141 return dataProgramCodes;
142 }
143
144 /**
145 * <p>
146 * Setter for the field <code>dataProgramCodes</code>.
147 * </p>
148 *
149 * @param programCodes
150 * a {@link java.util.Set} object.
151 */
152 public void setDataProgramCodes(Set<String> programCodes) {
153 this.dataProgramCodes = programCodes;
154 }
155
156 /**
157 * <p>
158 * Getter for the field <code>referentialProgramCodes</code>.
159 * </p>
160 *
161 * @return a {@link java.util.Set} object.
162 */
163 public Set<String> getReferentialProgramCodes() {
164 return referentialProgramCodes;
165 }
166
167 /**
168 * <p>
169 * Setter for the field <code>referentialProgramCodes</code>.
170 * </p>
171 *
172 * @param referentialProgramCodes
173 * a {@link java.util.Set} object.
174 */
175 public void setReferentialProgramCodes(Set<String> referentialProgramCodes) {
176 this.referentialProgramCodes = referentialProgramCodes;
177 }
178
179 /**
180 * <p>
181 * Getter for the field <code>dateOperator</code>.
182 * </p>
183 *
184 * @return a {@link fr.ifremer.quadrige3.synchro.vo.SynchroDateOperatorVO} object.
185 */
186 public SynchroDateOperatorVO getDateOperator() {
187 return dateOperator;
188 }
189
190 /**
191 * <p>
192 * Setter for the field <code>dateOperator</code>.
193 * </p>
194 *
195 * @param dateOperator
196 * a {@link fr.ifremer.quadrige3.synchro.vo.SynchroDateOperatorVO} object.
197 */
198 public void setDateOperator(SynchroDateOperatorVO dateOperator) {
199 this.dateOperator = dateOperator;
200 }
201
202 /**
203 * <p>
204 * Getter for the field <code>startDate</code>.
205 * </p>
206 *
207 * @return a {@link java.util.Date} object.
208 */
209 public Date getStartDate() {
210 return startDate;
211 }
212
213 /**
214 * <p>
215 * Setter for the field <code>startDate</code>.
216 * </p>
217 *
218 * @param startDate
219 * a {@link java.util.Date} object.
220 */
221 public void setStartDate(Date startDate) {
222 this.startDate = startDate;
223 }
224
225 /**
226 * <p>
227 * Getter for the field <code>endDate</code>.
228 * </p>
229 *
230 * @return a {@link java.util.Date} object.
231 */
232 public Date getEndDate() {
233 return endDate;
234 }
235
236 /**
237 * <p>
238 * Setter for the field <code>endDate</code>.
239 * </p>
240 *
241 * @param endDate
242 * a {@link java.util.Date} object.
243 */
244 public void setEndDate(Date endDate) {
245 this.endDate = endDate;
246 }
247
248 /**
249 * <p>
250 * isDirtyOnly.
251 * </p>
252 *
253 * @return a boolean.
254 */
255 public boolean isDirtyOnly() {
256 return dirtyOnly;
257 }
258
259 /**
260 * <p>
261 * Setter for the field <code>dirtyOnly</code>.
262 * </p>
263 *
264 * @param dirtyOnly
265 * a boolean.
266 */
267 public void setDirtyOnly(boolean dirtyOnly) {
268 this.dirtyOnly = dirtyOnly;
269 }
270
271 public boolean isWithPhoto() {
272 return withPhoto;
273 }
274
275 public void setWithPhoto(boolean withPhoto) {
276 this.withPhoto = withPhoto;
277 }
278 }