View Javadoc
1   package fr.ifremer.dali.ui.swing.content.manage.program.programs;
2   
3   /*
4    * #%L
5    * Dali :: UI
6    * $Id:$
7    * $HeadURL:$
8    * %%
9    * Copyright (C) 2014 - 2015 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 fr.ifremer.dali.dto.DaliBeanFactory;
27  import fr.ifremer.dali.dto.ErrorDTO;
28  import fr.ifremer.dali.dto.configuration.programStrategy.ProgramDTO;
29  import fr.ifremer.dali.dto.configuration.programStrategy.StrategyDTO;
30  import fr.ifremer.dali.dto.referential.DepartmentDTO;
31  import fr.ifremer.dali.dto.referential.LocationDTO;
32  import fr.ifremer.dali.dto.referential.PersonDTO;
33  import fr.ifremer.dali.ui.swing.util.table.AbstractDaliRowUIModel;
34  import fr.ifremer.quadrige3.ui.core.dto.referential.StatusDTO;
35  import org.nuiton.util.beans.Binder;
36  import org.nuiton.util.beans.BinderFactory;
37  
38  import java.util.Collection;
39  import java.util.Date;
40  import java.util.List;
41  
42  /**
43   * Modele pour le tableau de programmes.
44   */
45  public class ProgramsTableRowModel extends AbstractDaliRowUIModel<ProgramDTO, ProgramsTableRowModel> implements ProgramDTO {
46  
47      private static final Binder<ProgramDTO, ProgramsTableRowModel> FROM_BEAN_BINDER =
48              BinderFactory.newBinder(ProgramDTO.class, ProgramsTableRowModel.class);
49      private static final Binder<ProgramsTableRowModel, ProgramDTO> TO_BEAN_BINDER =
50              BinderFactory.newBinder(ProgramsTableRowModel.class, ProgramDTO.class);
51      private boolean currentUserIsManager;
52      private boolean strategiesValid = true;
53      private boolean locationsValid = true;
54  
55      /**
56       * Constructor.
57       */
58      public ProgramsTableRowModel() {
59          super(FROM_BEAN_BINDER, TO_BEAN_BINDER);
60      }
61  
62      /**
63       * <p>isCurrentUserIsManager.</p>
64       *
65       * @return a boolean.
66       */
67      public boolean isCurrentUserIsManager() {
68          return currentUserIsManager;
69      }
70  
71      /**
72       * <p>Setter for the field <code>currentUserIsManager</code>.</p>
73       *
74       * @param currentUserIsManager a boolean.
75       */
76      public void setCurrentUserIsManager(boolean currentUserIsManager) {
77          this.currentUserIsManager = currentUserIsManager;
78      }
79  
80      /**
81       * <p>isStrategiesValid.</p>
82       *
83       * @return a boolean.
84       */
85      public boolean isStrategiesValid() {
86          return strategiesValid;
87      }
88  
89      /**
90       * <p>Setter for the field <code>strategiesValid</code>.</p>
91       *
92       * @param strategiesValid a boolean.
93       */
94      public void setStrategiesValid(boolean strategiesValid) {
95          this.strategiesValid = strategiesValid;
96      }
97  
98      /**
99       * <p>isLocationsValid.</p>
100      *
101      * @return a boolean.
102      */
103     public boolean isLocationsValid() {
104         return locationsValid;
105     }
106 
107     /**
108      * <p>Setter for the field <code>locationsValid</code>.</p>
109      *
110      * @param locationsValid a boolean.
111      */
112     public void setLocationsValid(boolean locationsValid) {
113         this.locationsValid = locationsValid;
114     }
115 
116     /** {@inheritDoc} */
117     @Override
118     public boolean isEditable() {
119         return super.isEditable() && !isReadOnly() && isCurrentUserIsManager();
120     }
121 
122     /** {@inheritDoc} */
123     @Override
124     protected ProgramDTO newBean() {
125         return DaliBeanFactory.newProgramDTO();
126     }
127 
128     /** {@inheritDoc} */
129     @Override
130     public StatusDTO getStatus() {
131         return delegateObject.getStatus();
132     }
133 
134     /** {@inheritDoc} */
135     @Override
136     public void setStatus(StatusDTO status) {
137         delegateObject.setStatus(status);
138     }
139 
140     /** {@inheritDoc} */
141     @Override
142     public String getCode() {
143         return delegateObject.getCode();
144     }
145 
146     /** {@inheritDoc} */
147     @Override
148     public void setCode(String code) {
149         delegateObject.setCode(code);
150     }
151 
152     @Override
153     public String getDescription() {
154         return delegateObject.getDescription();
155     }
156 
157     @Override
158     public void setDescription(String description) {
159         delegateObject.setDescription(description);
160     }
161 
162     /** {@inheritDoc} */
163     @Override
164     public String getName() {
165         return delegateObject.getName();
166     }
167 
168     /** {@inheritDoc} */
169     @Override
170     public void setName(String name) {
171         delegateObject.setName(name);
172     }
173 
174     /** {@inheritDoc} */
175     @Override
176     public String getComment() {
177         return delegateObject.getComment();
178     }
179 
180     /** {@inheritDoc} */
181     @Override
182     public void setComment(String comment) {
183         delegateObject.setComment(comment);
184     }
185 
186     /** {@inheritDoc} */
187     @Override
188     public StrategyDTO getStrategies(int index) {
189         return delegateObject.getStrategies(index);
190     }
191 
192     /** {@inheritDoc} */
193     @Override
194     public boolean isStrategiesEmpty() {
195         return delegateObject.isStrategiesEmpty();
196     }
197 
198     /** {@inheritDoc} */
199     @Override
200     public int sizeStrategies() {
201         return delegateObject.sizeStrategies();
202     }
203 
204     /** {@inheritDoc} */
205     @Override
206     public void addStrategies(StrategyDTO strategy) {
207         delegateObject.addStrategies(strategy);
208     }
209 
210     /** {@inheritDoc} */
211     @Override
212     public void addAllStrategies(Collection<StrategyDTO> strategy) {
213         delegateObject.addAllStrategies(strategy);
214     }
215 
216     /** {@inheritDoc} */
217     @Override
218     public boolean removeStrategies(StrategyDTO strategy) {
219         return delegateObject.removeStrategies(strategy);
220     }
221 
222     /** {@inheritDoc} */
223     @Override
224     public boolean removeAllStrategies(Collection<StrategyDTO> strategy) {
225         return delegateObject.removeAllStrategies(strategy);
226     }
227 
228     /** {@inheritDoc} */
229     @Override
230     public boolean containsStrategies(StrategyDTO strategy) {
231         return delegateObject.containsStrategies(strategy);
232     }
233 
234     /** {@inheritDoc} */
235     @Override
236     public boolean containsAllStrategies(Collection<StrategyDTO> strategy) {
237         return delegateObject.containsAllStrategies(strategy);
238     }
239 
240     /** {@inheritDoc} */
241     @Override
242     public Collection<StrategyDTO> getStrategies() {
243         return delegateObject.getStrategies();
244     }
245 
246     /** {@inheritDoc} */
247     @Override
248     public void setStrategies(Collection<StrategyDTO> strategy) {
249         delegateObject.setStrategies(strategy);
250     }
251 
252     /** {@inheritDoc} */
253     @Override
254     public LocationDTO getLocations(int index) {
255         return delegateObject.getLocations(index);
256     }
257 
258     /** {@inheritDoc} */
259     @Override
260     public boolean isLocationsEmpty() {
261         return delegateObject.isLocationsEmpty();
262     }
263 
264     /** {@inheritDoc} */
265     @Override
266     public int sizeLocations() {
267         return delegateObject.sizeLocations();
268     }
269 
270     /** {@inheritDoc} */
271     @Override
272     public void addLocations(LocationDTO location) {
273         delegateObject.addLocations(location);
274     }
275 
276     /** {@inheritDoc} */
277     @Override
278     public void addAllLocations(Collection<LocationDTO> location) {
279         delegateObject.addAllLocations(location);
280     }
281 
282     /** {@inheritDoc} */
283     @Override
284     public boolean removeLocations(LocationDTO location) {
285         return delegateObject.removeLocations(location);
286     }
287 
288     /** {@inheritDoc} */
289     @Override
290     public boolean removeAllLocations(Collection<LocationDTO> location) {
291         return delegateObject.removeAllLocations(location);
292     }
293 
294     /** {@inheritDoc} */
295     @Override
296     public boolean containsLocations(LocationDTO location) {
297         return delegateObject.containsLocations(location);
298     }
299 
300     /** {@inheritDoc} */
301     @Override
302     public boolean containsAllLocations(Collection<LocationDTO> location) {
303         return delegateObject.containsAllLocations(location);
304     }
305 
306     /** {@inheritDoc} */
307     @Override
308     public List<LocationDTO> getLocations() {
309         return delegateObject.getLocations();
310     }
311 
312     /** {@inheritDoc} */
313     @Override
314     public void setLocations(List<LocationDTO> location) {
315         delegateObject.setLocations(location);
316     }
317 
318     /** {@inheritDoc} */
319     @Override
320     public ErrorDTO getErrors(int index) {
321         return delegateObject.getErrors(index);
322     }
323 
324     /** {@inheritDoc} */
325     @Override
326     public boolean isErrorsEmpty() {
327         return delegateObject.isErrorsEmpty();
328     }
329 
330     /** {@inheritDoc} */
331     @Override
332     public int sizeErrors() {
333         return delegateObject.sizeErrors();
334     }
335 
336     /** {@inheritDoc} */
337     @Override
338     public void addErrors(ErrorDTO errors) {
339         delegateObject.addErrors(errors);
340     }
341 
342     /** {@inheritDoc} */
343     @Override
344     public void addAllErrors(Collection<ErrorDTO> errors) {
345         delegateObject.addAllErrors(errors);
346     }
347 
348     /** {@inheritDoc} */
349     @Override
350     public boolean removeErrors(ErrorDTO errors) {
351         return delegateObject.removeErrors(errors);
352     }
353 
354     /** {@inheritDoc} */
355     @Override
356     public boolean removeAllErrors(Collection<ErrorDTO> errors) {
357         return delegateObject.removeAllErrors(errors);
358     }
359 
360     /** {@inheritDoc} */
361     @Override
362     public boolean containsErrors(ErrorDTO errors) {
363         return delegateObject.containsErrors(errors);
364     }
365 
366     /** {@inheritDoc} */
367     @Override
368     public boolean containsAllErrors(Collection<ErrorDTO> errors) {
369         return delegateObject.containsAllErrors(errors);
370     }
371 
372     /** {@inheritDoc} */
373     @Override
374     public Collection<ErrorDTO> getErrors() {
375         return delegateObject.getErrors();
376     }
377 
378     /** {@inheritDoc} */
379     @Override
380     public void setErrors(Collection<ErrorDTO> errors) {
381         delegateObject.setErrors(errors);
382     }
383 
384     /** {@inheritDoc} */
385     @Override
386     public PersonDTO getManagerPersons(int index) {
387         return delegateObject.getManagerPersons(index);
388     }
389 
390     /** {@inheritDoc} */
391     @Override
392     public boolean isManagerPersonsEmpty() {
393         return delegateObject.isManagerPersonsEmpty();
394     }
395 
396     /** {@inheritDoc} */
397     @Override
398     public int sizeManagerPersons() {
399         return delegateObject.sizeManagerPersons();
400     }
401 
402     /** {@inheritDoc} */
403     @Override
404     public void addManagerPersons(PersonDTO managerPersons) {
405         delegateObject.addManagerPersons(managerPersons);
406     }
407 
408     /** {@inheritDoc} */
409     @Override
410     public void addAllManagerPersons(Collection<PersonDTO> managerPersons) {
411         delegateObject.addAllManagerPersons(managerPersons);
412     }
413 
414     /** {@inheritDoc} */
415     @Override
416     public boolean removeManagerPersons(PersonDTO managerPersons) {
417         return delegateObject.removeManagerPersons(managerPersons);
418     }
419 
420     /** {@inheritDoc} */
421     @Override
422     public boolean removeAllManagerPersons(Collection<PersonDTO> managerPersons) {
423         return delegateObject.removeAllManagerPersons(managerPersons);
424     }
425 
426     /** {@inheritDoc} */
427     @Override
428     public boolean containsManagerPersons(PersonDTO managerPersons) {
429         return delegateObject.containsManagerPersons(managerPersons);
430     }
431 
432     /** {@inheritDoc} */
433     @Override
434     public boolean containsAllManagerPersons(Collection<PersonDTO> managerPersons) {
435         return delegateObject.containsAllManagerPersons(managerPersons);
436     }
437 
438     /** {@inheritDoc} */
439     @Override
440     public Collection<PersonDTO> getManagerPersons() {
441         return delegateObject.getManagerPersons();
442     }
443 
444     /** {@inheritDoc} */
445     @Override
446     public void setManagerPersons(Collection<PersonDTO> managerPersons) {
447         delegateObject.setManagerPersons(managerPersons);
448     }
449 
450     /** {@inheritDoc} */
451     @Override
452     public PersonDTO getRecorderPersons(int index) {
453         return delegateObject.getRecorderPersons(index);
454     }
455 
456     /** {@inheritDoc} */
457     @Override
458     public boolean isRecorderPersonsEmpty() {
459         return delegateObject.isRecorderPersonsEmpty();
460     }
461 
462     /** {@inheritDoc} */
463     @Override
464     public int sizeRecorderPersons() {
465         return delegateObject.sizeRecorderPersons();
466     }
467 
468     /** {@inheritDoc} */
469     @Override
470     public void addRecorderPersons(PersonDTO recorderPersons) {
471         delegateObject.addRecorderPersons(recorderPersons);
472     }
473 
474     /** {@inheritDoc} */
475     @Override
476     public void addAllRecorderPersons(Collection<PersonDTO> recorderPersons) {
477         delegateObject.addAllRecorderPersons(recorderPersons);
478     }
479 
480     /** {@inheritDoc} */
481     @Override
482     public boolean removeRecorderPersons(PersonDTO recorderPersons) {
483         return delegateObject.removeRecorderPersons(recorderPersons);
484     }
485 
486     /** {@inheritDoc} */
487     @Override
488     public boolean removeAllRecorderPersons(Collection<PersonDTO> recorderPersons) {
489         return delegateObject.removeAllRecorderPersons(recorderPersons);
490     }
491 
492     /** {@inheritDoc} */
493     @Override
494     public boolean containsRecorderPersons(PersonDTO recorderPersons) {
495         return delegateObject.containsRecorderPersons(recorderPersons);
496     }
497 
498     /** {@inheritDoc} */
499     @Override
500     public boolean containsAllRecorderPersons(Collection<PersonDTO> recorderPersons) {
501         return delegateObject.containsAllRecorderPersons(recorderPersons);
502     }
503 
504     /** {@inheritDoc} */
505     @Override
506     public Collection<PersonDTO> getRecorderPersons() {
507         return delegateObject.getRecorderPersons();
508     }
509 
510     /** {@inheritDoc} */
511     @Override
512     public void setRecorderPersons(Collection<PersonDTO> recorderPersons) {
513         delegateObject.setRecorderPersons(recorderPersons);
514     }
515 
516     /** {@inheritDoc} */
517     @Override
518     public DepartmentDTO getRecorderDepartments(int index) {
519         return delegateObject.getRecorderDepartments(index);
520     }
521 
522     /** {@inheritDoc} */
523     @Override
524     public boolean isRecorderDepartmentsEmpty() {
525         return delegateObject.isRecorderDepartmentsEmpty();
526     }
527 
528     /** {@inheritDoc} */
529     @Override
530     public int sizeRecorderDepartments() {
531         return delegateObject.sizeRecorderDepartments();
532     }
533 
534     /** {@inheritDoc} */
535     @Override
536     public void addRecorderDepartments(DepartmentDTO recorderDepartments) {
537         delegateObject.addRecorderDepartments(recorderDepartments);
538     }
539 
540     /** {@inheritDoc} */
541     @Override
542     public void addAllRecorderDepartments(Collection<DepartmentDTO> recorderDepartments) {
543         delegateObject.addAllRecorderDepartments(recorderDepartments);
544     }
545 
546     /** {@inheritDoc} */
547     @Override
548     public boolean removeRecorderDepartments(DepartmentDTO recorderDepartments) {
549         return delegateObject.removeRecorderDepartments(recorderDepartments);
550     }
551 
552     /** {@inheritDoc} */
553     @Override
554     public boolean removeAllRecorderDepartments(Collection<DepartmentDTO> recorderDepartments) {
555         return delegateObject.removeAllRecorderDepartments(recorderDepartments);
556     }
557 
558     /** {@inheritDoc} */
559     @Override
560     public boolean containsRecorderDepartments(DepartmentDTO recorderDepartments) {
561         return delegateObject.containsRecorderDepartments(recorderDepartments);
562     }
563 
564     /** {@inheritDoc} */
565     @Override
566     public boolean containsAllRecorderDepartments(Collection<DepartmentDTO> recorderDepartments) {
567         return delegateObject.containsAllRecorderDepartments(recorderDepartments);
568     }
569 
570     /** {@inheritDoc} */
571     @Override
572     public Collection<DepartmentDTO> getRecorderDepartments() {
573         return delegateObject.getRecorderDepartments();
574     }
575 
576     /** {@inheritDoc} */
577     @Override
578     public void setRecorderDepartments(Collection<DepartmentDTO> recorderDepartments) {
579         delegateObject.setRecorderDepartments(recorderDepartments);
580     }
581 
582     /** {@inheritDoc} */
583     @Override
584     public boolean isStrategiesLoaded() {
585         return delegateObject.isStrategiesLoaded();
586     }
587 
588     /** {@inheritDoc} */
589     @Override
590     public void setStrategiesLoaded(boolean strategiesLoaded) {
591         delegateObject.setStrategiesLoaded(strategiesLoaded);
592     }
593 
594     /** {@inheritDoc} */
595     @Override
596     public boolean isLocationsLoaded() {
597         return delegateObject.isLocationsLoaded();
598     }
599 
600     /** {@inheritDoc} */
601     @Override
602     public void setLocationsLoaded(boolean locationsLoaded) {
603         delegateObject.setLocationsLoaded(locationsLoaded);
604     }
605 
606     /** {@inheritDoc} */
607     @Override
608     public boolean isDirty() {
609         return delegateObject.isDirty();
610     }
611 
612     /** {@inheritDoc} */
613     @Override
614     public void setDirty(boolean dirty) {
615         delegateObject.setDirty(dirty);
616     }
617 
618     @Override
619     public boolean isReadOnly() {
620         return delegateObject.isReadOnly();
621     }
622 
623     @Override
624     public void setReadOnly(boolean readOnly) {
625         delegateObject.setReadOnly(readOnly);
626     }
627 
628     /** {@inheritDoc} */
629     @Override
630     public boolean isNewCode() {
631         return delegateObject.isNewCode();
632     }
633 
634     /** {@inheritDoc} */
635     @Override
636     public void setNewCode(boolean newCode) {
637         delegateObject.setNewCode(newCode);
638     }
639 
640     @Override
641     public boolean isDepartmentHermetic() {
642         return delegateObject.isDepartmentHermetic();
643     }
644 
645     @Override
646     public void setDepartmentHermetic(boolean departmentHermetic) {
647         delegateObject.setDepartmentHermetic(departmentHermetic);
648     }
649 
650     @Override
651     public Date getCreationDate() {
652         return delegateObject.getCreationDate();
653     }
654 
655     @Override
656     public void setCreationDate(Date creationDate) {
657         delegateObject.setCreationDate(creationDate);
658     }
659 
660     @Override
661     public Date getUpdateDate() {
662         return delegateObject.getUpdateDate();
663     }
664 
665     @Override
666     public void setUpdateDate(Date updateDate) {
667         delegateObject.setUpdateDate(updateDate);
668     }
669 
670 }