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