1
2
3
4
5
6 package fr.ifremer.quadrige2.core.dao.referential.taxon;
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29 import java.io.Serializable;
30 import java.sql.Timestamp;
31 import java.util.Collection;
32 import java.util.Date;
33 import java.util.HashSet;
34
35
36
37
38
39 public abstract class TaxonName
40 implements Serializable, Comparable<TaxonName>
41 {
42
43
44
45 private static final long serialVersionUID = -2916293180423349086L;
46
47
48 private Integer taxonNameId;
49
50
51
52
53
54 public Integer getTaxonNameId()
55 {
56 return this.taxonNameId;
57 }
58
59
60
61
62
63 public void setTaxonNameId(Integer taxonNameIdIn)
64 {
65 this.taxonNameId = taxonNameIdIn;
66 }
67
68 private String taxonNameNm;
69
70
71
72
73
74 public String getTaxonNameNm()
75 {
76 return this.taxonNameNm;
77 }
78
79
80
81
82
83 public void setTaxonNameNm(String taxonNameNmIn)
84 {
85 this.taxonNameNm = taxonNameNmIn;
86 }
87
88 private String taxonNameCompleteNm;
89
90
91
92
93
94 public String getTaxonNameCompleteNm()
95 {
96 return this.taxonNameCompleteNm;
97 }
98
99
100
101
102
103 public void setTaxonNameCompleteNm(String taxonNameCompleteNmIn)
104 {
105 this.taxonNameCompleteNm = taxonNameCompleteNmIn;
106 }
107
108 private Boolean taxonNameIsNaming;
109
110
111
112
113
114 public Boolean getTaxonNameIsNaming()
115 {
116 return this.taxonNameIsNaming;
117 }
118
119
120
121
122
123 public void setTaxonNameIsNaming(Boolean taxonNameIsNamingIn)
124 {
125 this.taxonNameIsNaming = taxonNameIsNamingIn;
126 }
127
128 private String taxonNameCm;
129
130
131
132
133
134 public String getTaxonNameCm()
135 {
136 return this.taxonNameCm;
137 }
138
139
140
141
142
143 public void setTaxonNameCm(String taxonNameCmIn)
144 {
145 this.taxonNameCm = taxonNameCmIn;
146 }
147
148 private Integer taxonNameUpperRk;
149
150
151
152
153
154 public Integer getTaxonNameUpperRk()
155 {
156 return this.taxonNameUpperRk;
157 }
158
159
160
161
162
163 public void setTaxonNameUpperRk(Integer taxonNameUpperRkIn)
164 {
165 this.taxonNameUpperRk = taxonNameUpperRkIn;
166 }
167
168 private Boolean taxonNameIsRefer;
169
170
171
172
173
174 public Boolean getTaxonNameIsRefer()
175 {
176 return this.taxonNameIsRefer;
177 }
178
179
180
181
182
183 public void setTaxonNameIsRefer(Boolean taxonNameIsReferIn)
184 {
185 this.taxonNameIsRefer = taxonNameIsReferIn;
186 }
187
188 private Boolean taxonNameIsVirtual;
189
190
191
192
193
194 public Boolean getTaxonNameIsVirtual()
195 {
196 return this.taxonNameIsVirtual;
197 }
198
199
200
201
202
203 public void setTaxonNameIsVirtual(Boolean taxonNameIsVirtualIn)
204 {
205 this.taxonNameIsVirtual = taxonNameIsVirtualIn;
206 }
207
208 private Boolean taxonNameObsol;
209
210
211
212
213
214 public Boolean getTaxonNameObsol()
215 {
216 return this.taxonNameObsol;
217 }
218
219
220
221
222
223 public void setTaxonNameObsol(Boolean taxonNameObsolIn)
224 {
225 this.taxonNameObsol = taxonNameObsolIn;
226 }
227
228 private Boolean taxonNameTempor;
229
230
231
232
233
234 public Boolean getTaxonNameTempor()
235 {
236 return this.taxonNameTempor;
237 }
238
239
240
241
242
243 public void setTaxonNameTempor(Boolean taxonNameTemporIn)
244 {
245 this.taxonNameTempor = taxonNameTemporIn;
246 }
247
248 private Date taxonNameCreationDt;
249
250
251
252
253
254 public Date getTaxonNameCreationDt()
255 {
256 return this.taxonNameCreationDt;
257 }
258
259
260
261
262
263 public void setTaxonNameCreationDt(Date taxonNameCreationDtIn)
264 {
265 this.taxonNameCreationDt = taxonNameCreationDtIn;
266 }
267
268 private Timestamp updateDt;
269
270
271
272
273
274 public Timestamp getUpdateDt()
275 {
276 return this.updateDt;
277 }
278
279
280
281
282
283 public void setUpdateDt(Timestamp updateDtIn)
284 {
285 this.updateDt = updateDtIn;
286 }
287
288 private Date taxonStartDt;
289
290
291
292
293
294 public Date getTaxonStartDt()
295 {
296 return this.taxonStartDt;
297 }
298
299
300
301
302
303 public void setTaxonStartDt(Date taxonStartDtIn)
304 {
305 this.taxonStartDt = taxonStartDtIn;
306 }
307
308 private Date taxonEndDt;
309
310
311
312
313
314 public Date getTaxonEndDt()
315 {
316 return this.taxonEndDt;
317 }
318
319
320
321
322
323 public void setTaxonEndDt(Date taxonEndDtIn)
324 {
325 this.taxonEndDt = taxonEndDtIn;
326 }
327
328
329 private Citation citId;
330
331
332
333
334
335 public Citation getCitId()
336 {
337 return this.citId;
338 }
339
340
341
342
343
344 public void setCitId(Citation citIdIn)
345 {
346 this.citId = citIdIn;
347 }
348
349 private Collection<AlternativeTaxon> alternativeTaxons = new HashSet<AlternativeTaxon>();
350
351
352
353
354
355
356 public Collection<AlternativeTaxon> getAlternativeTaxons()
357 {
358 return this.alternativeTaxons;
359 }
360
361
362
363
364
365
366 public void setAlternativeTaxons(Collection<AlternativeTaxon> alternativeTaxonsIn)
367 {
368 this.alternativeTaxons = alternativeTaxonsIn;
369 }
370
371
372
373
374
375
376
377
378 public boolean addAlternativeTaxons(AlternativeTaxon elementToAdd)
379 {
380 return this.alternativeTaxons.add(elementToAdd);
381 }
382
383
384
385
386
387
388
389
390 public boolean removeAlternativeTaxons(AlternativeTaxon elementToRemove)
391 {
392 return this.alternativeTaxons.remove(elementToRemove);
393 }
394
395 private Collection<TaxonNameHistory> taxonNameHistories = new HashSet<TaxonNameHistory>();
396
397
398
399
400
401 public Collection<TaxonNameHistory> getTaxonNameHistories()
402 {
403 return this.taxonNameHistories;
404 }
405
406
407
408
409
410 public void setTaxonNameHistories(Collection<TaxonNameHistory> taxonNameHistoriesIn)
411 {
412 this.taxonNameHistories = taxonNameHistoriesIn;
413 }
414
415
416
417
418
419
420
421 public boolean addTaxonNameHistories(TaxonNameHistory elementToAdd)
422 {
423 return this.taxonNameHistories.add(elementToAdd);
424 }
425
426
427
428
429
430
431
432 public boolean removeTaxonNameHistories(TaxonNameHistory elementToRemove)
433 {
434 return this.taxonNameHistories.remove(elementToRemove);
435 }
436
437 private Collection<TaxonName> taxonNames = new HashSet<TaxonName>();
438
439
440
441
442
443 public Collection<TaxonName> getTaxonNames()
444 {
445 return this.taxonNames;
446 }
447
448
449
450
451
452 public void setTaxonNames(Collection<TaxonName> taxonNamesIn)
453 {
454 this.taxonNames = taxonNamesIn;
455 }
456
457
458
459
460
461
462
463 public boolean addTaxonNames(TaxonName elementToAdd)
464 {
465 return this.taxonNames.add(elementToAdd);
466 }
467
468
469
470
471
472
473
474 public boolean removeTaxonNames(TaxonName elementToRemove)
475 {
476 return this.taxonNames.remove(elementToRemove);
477 }
478
479 private TaxonName parentTaxonName;
480
481
482
483
484
485 public TaxonName getParentTaxonName()
486 {
487 return this.parentTaxonName;
488 }
489
490
491
492
493
494 public void setParentTaxonName(TaxonName parentTaxonNameIn)
495 {
496 this.parentTaxonName = parentTaxonNameIn;
497 }
498
499 private TaxonomicLevel taxonomicLevel;
500
501
502
503
504
505 public TaxonomicLevel getTaxonomicLevel()
506 {
507 return this.taxonomicLevel;
508 }
509
510
511
512
513
514 public void setTaxonomicLevel(TaxonomicLevel taxonomicLevelIn)
515 {
516 this.taxonomicLevel = taxonomicLevelIn;
517 }
518
519 private Collection<TaxonGroupHistoricalRecord> taxonGroupHistoricalRecords = new HashSet<TaxonGroupHistoricalRecord>();
520
521
522
523
524
525 public Collection<TaxonGroupHistoricalRecord> getTaxonGroupHistoricalRecords()
526 {
527 return this.taxonGroupHistoricalRecords;
528 }
529
530
531
532
533
534 public void setTaxonGroupHistoricalRecords(Collection<TaxonGroupHistoricalRecord> taxonGroupHistoricalRecordsIn)
535 {
536 this.taxonGroupHistoricalRecords = taxonGroupHistoricalRecordsIn;
537 }
538
539
540
541
542
543
544
545 public boolean addTaxonGroupHistoricalRecords(TaxonGroupHistoricalRecord elementToAdd)
546 {
547 return this.taxonGroupHistoricalRecords.add(elementToAdd);
548 }
549
550
551
552
553
554
555
556 public boolean removeTaxonGroupHistoricalRecords(TaxonGroupHistoricalRecord elementToRemove)
557 {
558 return this.taxonGroupHistoricalRecords.remove(elementToRemove);
559 }
560
561 private ReferenceTaxon referenceTaxon;
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599 public ReferenceTaxon getReferenceTaxon()
600 {
601 return this.referenceTaxon;
602 }
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640 public void setReferenceTaxon(ReferenceTaxon referenceTaxonIn)
641 {
642 this.referenceTaxon = referenceTaxonIn;
643 }
644
645 private Collection<VirtualComponent> virtualComponents = new HashSet<VirtualComponent>();
646
647
648
649
650
651 public Collection<VirtualComponent> getVirtualComponents()
652 {
653 return this.virtualComponents;
654 }
655
656
657
658
659
660 public void setVirtualComponents(Collection<VirtualComponent> virtualComponentsIn)
661 {
662 this.virtualComponents = virtualComponentsIn;
663 }
664
665
666
667
668
669
670
671 public boolean addVirtualComponents(VirtualComponent elementToAdd)
672 {
673 return this.virtualComponents.add(elementToAdd);
674 }
675
676
677
678
679
680
681
682 public boolean removeVirtualComponents(VirtualComponent elementToRemove)
683 {
684 return this.virtualComponents.remove(elementToRemove);
685 }
686
687
688
689
690
691 @Override
692 public boolean equals(Object object)
693 {
694 if (this == object)
695 {
696 return true;
697 }
698 if (!(object instanceof TaxonName))
699 {
700 return false;
701 }
702 final TaxonName that = (TaxonName)object;
703 if (this.taxonNameId == null || that.getTaxonNameId() == null || !this.taxonNameId.equals(that.getTaxonNameId()))
704 {
705 return false;
706 }
707 return true;
708 }
709
710
711
712
713 @Override
714 public int hashCode()
715 {
716 int hashCode = 0;
717 hashCode = 29 * hashCode + (this.taxonNameId == null ? 0 : this.taxonNameId.hashCode());
718
719 return hashCode;
720 }
721
722
723
724
725 public static final class Factory
726 {
727
728
729
730
731 public static TaxonName newInstance()
732 {
733 return new TaxonNameImpl();
734 }
735
736
737
738
739
740
741
742
743
744 public static TaxonName newInstance(Timestamp updateDt, TaxonomicLevel taxonomicLevel, ReferenceTaxon referenceTaxon)
745 {
746 final TaxonName entity = new TaxonNameImpl();
747 entity.setUpdateDt(updateDt);
748 entity.setTaxonomicLevel(taxonomicLevel);
749 entity.setReferenceTaxon(referenceTaxon);
750 return entity;
751 }
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780 public static TaxonName newInstance(String taxonNameNm, String taxonNameCompleteNm, Boolean taxonNameIsNaming, String taxonNameCm, Integer taxonNameUpperRk, Boolean taxonNameIsRefer, Boolean taxonNameIsVirtual, Boolean taxonNameObsol, Boolean taxonNameTempor, Date taxonNameCreationDt, Timestamp updateDt, Date taxonStartDt, Date taxonEndDt, Citation citId, Collection<AlternativeTaxon> alternativeTaxons, Collection<TaxonNameHistory> taxonNameHistories, Collection<TaxonName> taxonNames, TaxonName parentTaxonName, TaxonomicLevel taxonomicLevel, Collection<TaxonGroupHistoricalRecord> taxonGroupHistoricalRecords, ReferenceTaxon referenceTaxon, Collection<VirtualComponent> virtualComponents)
781 {
782 final TaxonName entity = new TaxonNameImpl();
783 entity.setTaxonNameNm(taxonNameNm);
784 entity.setTaxonNameCompleteNm(taxonNameCompleteNm);
785 entity.setTaxonNameIsNaming(taxonNameIsNaming);
786 entity.setTaxonNameCm(taxonNameCm);
787 entity.setTaxonNameUpperRk(taxonNameUpperRk);
788 entity.setTaxonNameIsRefer(taxonNameIsRefer);
789 entity.setTaxonNameIsVirtual(taxonNameIsVirtual);
790 entity.setTaxonNameObsol(taxonNameObsol);
791 entity.setTaxonNameTempor(taxonNameTempor);
792 entity.setTaxonNameCreationDt(taxonNameCreationDt);
793 entity.setUpdateDt(updateDt);
794 entity.setTaxonStartDt(taxonStartDt);
795 entity.setTaxonEndDt(taxonEndDt);
796 entity.setCitId(citId);
797 entity.setAlternativeTaxons(alternativeTaxons);
798 entity.setTaxonNameHistories(taxonNameHistories);
799 entity.setTaxonNames(taxonNames);
800 entity.setParentTaxonName(parentTaxonName);
801 entity.setTaxonomicLevel(taxonomicLevel);
802 entity.setTaxonGroupHistoricalRecords(taxonGroupHistoricalRecords);
803 entity.setReferenceTaxon(referenceTaxon);
804 entity.setVirtualComponents(virtualComponents);
805 return entity;
806 }
807 }
808
809
810
811
812 public int compareTo(TaxonName o)
813 {
814 int cmp = 0;
815 if (this.getTaxonNameId() != null)
816 {
817 cmp = this.getTaxonNameId().compareTo(o.getTaxonNameId());
818 }
819 else
820 {
821 if (this.getTaxonNameNm() != null)
822 {
823 cmp = (cmp != 0 ? cmp : this.getTaxonNameNm().compareTo(o.getTaxonNameNm()));
824 }
825 if (this.getTaxonNameCompleteNm() != null)
826 {
827 cmp = (cmp != 0 ? cmp : this.getTaxonNameCompleteNm().compareTo(o.getTaxonNameCompleteNm()));
828 }
829 if (this.getTaxonNameIsNaming() != null)
830 {
831 cmp = (cmp != 0 ? cmp : this.getTaxonNameIsNaming().compareTo(o.getTaxonNameIsNaming()));
832 }
833 if (this.getTaxonNameCm() != null)
834 {
835 cmp = (cmp != 0 ? cmp : this.getTaxonNameCm().compareTo(o.getTaxonNameCm()));
836 }
837 if (this.getTaxonNameUpperRk() != null)
838 {
839 cmp = (cmp != 0 ? cmp : this.getTaxonNameUpperRk().compareTo(o.getTaxonNameUpperRk()));
840 }
841 if (this.getTaxonNameIsRefer() != null)
842 {
843 cmp = (cmp != 0 ? cmp : this.getTaxonNameIsRefer().compareTo(o.getTaxonNameIsRefer()));
844 }
845 if (this.getTaxonNameIsVirtual() != null)
846 {
847 cmp = (cmp != 0 ? cmp : this.getTaxonNameIsVirtual().compareTo(o.getTaxonNameIsVirtual()));
848 }
849 if (this.getTaxonNameObsol() != null)
850 {
851 cmp = (cmp != 0 ? cmp : this.getTaxonNameObsol().compareTo(o.getTaxonNameObsol()));
852 }
853 if (this.getTaxonNameTempor() != null)
854 {
855 cmp = (cmp != 0 ? cmp : this.getTaxonNameTempor().compareTo(o.getTaxonNameTempor()));
856 }
857 if (this.getTaxonNameCreationDt() != null)
858 {
859 cmp = (cmp != 0 ? cmp : this.getTaxonNameCreationDt().compareTo(o.getTaxonNameCreationDt()));
860 }
861 if (this.getUpdateDt() != null)
862 {
863 cmp = (cmp != 0 ? cmp : this.getUpdateDt().compareTo(o.getUpdateDt()));
864 }
865 if (this.getTaxonStartDt() != null)
866 {
867 cmp = (cmp != 0 ? cmp : this.getTaxonStartDt().compareTo(o.getTaxonStartDt()));
868 }
869 if (this.getTaxonEndDt() != null)
870 {
871 cmp = (cmp != 0 ? cmp : this.getTaxonEndDt().compareTo(o.getTaxonEndDt()));
872 }
873 }
874 return cmp;
875 }
876
877
878 }