1
2
3
4
5
6
7
8
9
10 package eu.etaxonomy.cdm.io.sdd;
11
12 import java.util.ArrayList;
13 import java.util.Collection;
14 import java.util.HashSet;
15 import java.util.List;
16 import java.util.Set;
17
18 import javax.xml.bind.annotation.XmlAccessType;
19 import javax.xml.bind.annotation.XmlAccessorType;
20 import javax.xml.bind.annotation.XmlElement;
21 import javax.xml.bind.annotation.XmlElementWrapper;
22 import javax.xml.bind.annotation.XmlElements;
23 import javax.xml.bind.annotation.XmlRootElement;
24 import javax.xml.bind.annotation.XmlType;
25
26 import eu.etaxonomy.cdm.model.agent.Address;
27 import eu.etaxonomy.cdm.model.agent.AgentBase;
28 import eu.etaxonomy.cdm.model.agent.Contact;
29 import eu.etaxonomy.cdm.model.agent.Institution;
30 import eu.etaxonomy.cdm.model.agent.InstitutionType;
31 import eu.etaxonomy.cdm.model.agent.InstitutionalMembership;
32 import eu.etaxonomy.cdm.model.agent.Person;
33 import eu.etaxonomy.cdm.model.agent.Team;
34 import eu.etaxonomy.cdm.model.common.AnnotationType;
35 import eu.etaxonomy.cdm.model.common.DefinedTermBase;
36 import eu.etaxonomy.cdm.model.common.ExtensionType;
37 import eu.etaxonomy.cdm.model.common.Language;
38 import eu.etaxonomy.cdm.model.common.LanguageString;
39 import eu.etaxonomy.cdm.model.common.LanguageStringBase;
40 import eu.etaxonomy.cdm.model.common.MarkerType;
41 import eu.etaxonomy.cdm.model.common.ReferencedEntityBase;
42 import eu.etaxonomy.cdm.model.common.RelationshipBase;
43 import eu.etaxonomy.cdm.model.common.Representation;
44 import eu.etaxonomy.cdm.model.common.TermVocabulary;
45 import eu.etaxonomy.cdm.model.common.VersionableEntity;
46 import eu.etaxonomy.cdm.model.description.AbsenceTerm;
47 import eu.etaxonomy.cdm.model.description.Feature;
48 import eu.etaxonomy.cdm.model.description.FeatureNode;
49 import eu.etaxonomy.cdm.model.description.FeatureTree;
50 import eu.etaxonomy.cdm.model.description.MeasurementUnit;
51 import eu.etaxonomy.cdm.model.description.Modifier;
52 import eu.etaxonomy.cdm.model.description.PresenceTerm;
53 import eu.etaxonomy.cdm.model.description.Scope;
54 import eu.etaxonomy.cdm.model.description.Sex;
55 import eu.etaxonomy.cdm.model.description.Stage;
56 import eu.etaxonomy.cdm.model.description.State;
57 import eu.etaxonomy.cdm.model.description.StatisticalMeasure;
58 import eu.etaxonomy.cdm.model.description.TextFormat;
59 import eu.etaxonomy.cdm.model.location.Continent;
60 import eu.etaxonomy.cdm.model.location.NamedArea;
61 import eu.etaxonomy.cdm.model.location.NamedAreaLevel;
62 import eu.etaxonomy.cdm.model.location.NamedAreaType;
63 import eu.etaxonomy.cdm.model.location.ReferenceSystem;
64 import eu.etaxonomy.cdm.model.location.WaterbodyOrCountry;
65 import eu.etaxonomy.cdm.model.media.RightsTerm;
66 import eu.etaxonomy.cdm.model.molecular.DnaSample;
67 import eu.etaxonomy.cdm.model.name.BacterialName;
68 import eu.etaxonomy.cdm.model.name.BotanicalName;
69 import eu.etaxonomy.cdm.model.name.CultivarPlantName;
70 import eu.etaxonomy.cdm.model.name.HomotypicalGroup;
71 import eu.etaxonomy.cdm.model.name.HybridRelationship;
72 import eu.etaxonomy.cdm.model.name.HybridRelationshipType;
73 import eu.etaxonomy.cdm.model.name.NameRelationship;
74 import eu.etaxonomy.cdm.model.name.NameRelationshipType;
75 import eu.etaxonomy.cdm.model.name.NameTypeDesignation;
76 import eu.etaxonomy.cdm.model.name.NomenclaturalCode;
77 import eu.etaxonomy.cdm.model.name.NomenclaturalStatus;
78 import eu.etaxonomy.cdm.model.name.NomenclaturalStatusType;
79 import eu.etaxonomy.cdm.model.name.Rank;
80 import eu.etaxonomy.cdm.model.name.SpecimenTypeDesignation;
81 import eu.etaxonomy.cdm.model.name.SpecimenTypeDesignationStatus;
82 import eu.etaxonomy.cdm.model.name.TaxonNameBase;
83 import eu.etaxonomy.cdm.model.name.ViralName;
84 import eu.etaxonomy.cdm.model.name.ZoologicalName;
85 import eu.etaxonomy.cdm.model.occurrence.DerivationEventType;
86 import eu.etaxonomy.cdm.model.occurrence.DeterminationModifier;
87 import eu.etaxonomy.cdm.model.occurrence.FieldObservation;
88 import eu.etaxonomy.cdm.model.occurrence.Fossil;
89 import eu.etaxonomy.cdm.model.occurrence.LivingBeing;
90 import eu.etaxonomy.cdm.model.occurrence.Observation;
91 import eu.etaxonomy.cdm.model.occurrence.PreservationMethod;
92 import eu.etaxonomy.cdm.model.occurrence.Specimen;
93 import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationBase;
94 import eu.etaxonomy.cdm.model.reference.ReferenceBase;
95 import eu.etaxonomy.cdm.model.taxon.Synonym;
96 import eu.etaxonomy.cdm.model.taxon.SynonymRelationship;
97 import eu.etaxonomy.cdm.model.taxon.SynonymRelationshipType;
98 import eu.etaxonomy.cdm.model.taxon.Taxon;
99 import eu.etaxonomy.cdm.model.taxon.TaxonBase;
100 import eu.etaxonomy.cdm.model.taxon.TaxonRelationship;
101 import eu.etaxonomy.cdm.model.taxon.TaxonRelationshipType;
102
103
104
105
106 @XmlAccessorType(XmlAccessType.FIELD)
107 @XmlType(name = "", propOrder = {
108 "terms",
109 "termVocabularies",
110 "agents",
111 "agentData",
112 "occurrences",
113 "references",
114 "referencedEntities",
115 "featureData",
116 "languageData",
117 "taxonomicNames",
118 "homotypicalGroups",
119 "taxa",
120 "synonyms",
121 "relationships",
122 "media"
123 })
124 @XmlRootElement(name = "DataSet", namespace = "http://etaxonomy.eu/cdm/model/1.0")
125 public class SDDDataSet {
126
127
128
129
130
131
132
133
134 @XmlElementWrapper(name = "Agents")
135 @XmlElements({
136 @XmlElement(name = "Team", namespace = "http://etaxonomy.eu/cdm/model/agent/1.0", type = Team.class),
137 @XmlElement(name = "Institution", namespace = "http://etaxonomy.eu/cdm/model/agent/1.0", type = Institution.class),
138 @XmlElement(name = "Person", namespace = "http://etaxonomy.eu/cdm/model/agent/1.0", type = Person.class)
139 })
140 protected List<? extends AgentBase> agents;
141
142 @XmlElementWrapper(name = "AgentData")
143 @XmlElements({
144 @XmlElement(name = "Address", namespace = "http://etaxonomy.eu/cdm/model/agent/1.0", type = Address.class),
145 @XmlElement(name = "Contact", namespace = "http://etaxonomy.eu/cdm/model/agent/1.0", type = Contact.class),
146 @XmlElement(name = "InstitutionalMembership", namespace = "http://etaxonomy.eu/cdm/model/agent/1.0", type = InstitutionalMembership.class)
147 })
148 protected List<VersionableEntity> agentData;
149
150 @XmlElementWrapper(name = "FeatureData")
151 @XmlElements({
152 @XmlElement(name = "FeatureNode", namespace = "http://etaxonomy.eu/cdm/model/description/1.0", type = FeatureNode.class),
153 @XmlElement(name = "FeatureTree", namespace = "http://etaxonomy.eu/cdm/model/description/1.0", type = FeatureTree.class)
154 })
155
156 protected List<VersionableEntity> featureData;
157
158 @XmlElementWrapper(name = "LanguageData")
159 @XmlElements({
160 @XmlElement(name = "Representation", namespace = "http://etaxonomy.eu/cdm/model/common/1.0", type = Representation.class),
161 @XmlElement(name = "LanguageString", namespace = "http://etaxonomy.eu/cdm/model/common/1.0", type = LanguageString.class)
162 })
163 protected List<LanguageStringBase> languageData;
164
165 @XmlElementWrapper(name = "Terms")
166 @XmlElements({
167 @XmlElement(name = "AbsenceTerm", namespace = "http://etaxonomy.eu/cdm/model/description/1.0", type = AbsenceTerm.class),
168 @XmlElement(name = "AnnotationType", namespace = "http://etaxonomy.eu/cdm/model/common/1.0", type = AnnotationType.class),
169 @XmlElement(name = "Continent", namespace = "http://etaxonomy.eu/cdm/model/location/1.0", type = Continent.class),
170 @XmlElement(name = "DerivationEventType", namespace = "http://etaxonomy.eu/cdm/model/occurrence/1.0", type = DerivationEventType.class),
171 @XmlElement(name = "DeterminationModifier", namespace = "http://etaxonomy.eu/cdm/model/occurrence/1.0", type = DeterminationModifier.class),
172 @XmlElement(name = "ExtensionType", namespace = "http://etaxonomy.eu/cdm/model/common/1.0", type = ExtensionType.class),
173 @XmlElement(name = "Feature", namespace = "http://etaxonomy.eu/cdm/model/description/1.0", type = Feature.class),
174 @XmlElement(name = "HybridRelationshipType", namespace = "http://etaxonomy.eu/cdm/model/name/1.0", type = HybridRelationshipType.class),
175 @XmlElement(name = "InstitutionType", namespace = "http://etaxonomy.eu/cdm/model/agent/1.0", type = InstitutionType.class),
176 @XmlElement(name = "Language", namespace = "http://etaxonomy.eu/cdm/model/common/1.0", type = Language.class),
177 @XmlElement(name = "MarkerType", namespace = "http://etaxonomy.eu/cdm/model/common/1.0", type = MarkerType.class),
178 @XmlElement(name = "MeasurementUnit", namespace = "http://etaxonomy.eu/cdm/model/description/1.0", type = MeasurementUnit.class),
179 @XmlElement(name = "Modifier", namespace = "http://etaxonomy.eu/cdm/model/description/1.0", type = Modifier.class),
180 @XmlElement(name = "NamedArea", namespace = "http://etaxonomy.eu/cdm/model/location/1.0", type = NamedArea.class),
181 @XmlElement(name = "NamedAreaLevel", namespace = "http://etaxonomy.eu/cdm/model/location/1.0", type = NamedAreaLevel.class),
182 @XmlElement(name = "NamedAreaType", namespace = "http://etaxonomy.eu/cdm/model/location/1.0", type = NamedAreaType.class),
183 @XmlElement(name = "NameRelationshipType", namespace = "http://etaxonomy.eu/cdm/model/name/1.0", type = NameRelationshipType.class),
184 @XmlElement(name = "NomenclaturalCode", namespace = "http://etaxonomy.eu/cdm/model/name/1.0", type = NomenclaturalCode.class),
185 @XmlElement(name = "NomenclaturalStatusType", namespace = "http://etaxonomy.eu/cdm/model/name/1.0", type = NomenclaturalStatusType.class),
186 @XmlElement(name = "PresenceTerm", namespace = "http://etaxonomy.eu/cdm/model/description/1.0", type = PresenceTerm.class),
187 @XmlElement(name = "PreservationMethod", namespace = "http://etaxonomy.eu/cdm/model/occurrence/1.0", type = PreservationMethod.class),
188 @XmlElement(name = "Rank", namespace = "http://etaxonomy.eu/cdm/model/name/1.0", type = Rank.class),
189 @XmlElement(name = "ReferenceSystem", namespace = "http://etaxonomy.eu/cdm/model/location/1.0", type = ReferenceSystem.class),
190 @XmlElement(name = "RightsTerm", namespace = "http://etaxonomy.eu/cdm/model/media/1.0", type = RightsTerm.class),
191 @XmlElement(name = "Scope", namespace = "http://etaxonomy.eu/cdm/model/description/1.0", type = Scope.class),
192 @XmlElement(name = "Sex", namespace = "http://etaxonomy.eu/cdm/model/description/1.0", type = Sex.class),
193 @XmlElement(name = "Stage", namespace = "http://etaxonomy.eu/cdm/model/description/1.0", type = Stage.class),
194 @XmlElement(name = "State", namespace = "http://etaxonomy.eu/cdm/model/description/1.0", type = State.class),
195 @XmlElement(name = "StatisticalMeasure", namespace = "http://etaxonomy.eu/cdm/model/description/1.0", type = StatisticalMeasure.class),
196 @XmlElement(name = "SynonymRelationshipType", namespace = "http://etaxonomy.eu/cdm/model/taxon/1.0", type = SynonymRelationshipType.class),
197 @XmlElement(name = "TaxonRelationshipType", namespace = "http://etaxonomy.eu/cdm/model/taxon/1.0", type = TaxonRelationshipType.class),
198 @XmlElement(name = "TextFormat", namespace = "http://etaxonomy.eu/cdm/model/description/1.0", type = TextFormat.class),
199 @XmlElement(name = "TypeDesignationStatus", namespace = "http://etaxonomy.eu/cdm/model/name/1.0", type = SpecimenTypeDesignationStatus.class),
200 @XmlElement(name = "WaterbodyOrCountry", namespace = "http://etaxonomy.eu/cdm/model/location/1.0", type = WaterbodyOrCountry.class)
201 })
202 protected List<DefinedTermBase> terms;
203
204 @XmlElementWrapper(name = "TermVocabularies")
205 @XmlElement(name = "TermVocabulary", namespace = "http://etaxonomy.eu/cdm/model/common/1.0")
206 protected List<TermVocabulary<DefinedTermBase>> termVocabularies;
207
208 @XmlElementWrapper(name = "Occurrences")
209 @XmlElements({
210 @XmlElement(name = "DnaSample", namespace = "http://etaxonomy.eu/cdm/model/occurrence/1.0", type = DnaSample.class),
211 @XmlElement(name = "FieldObservation", namespace = "http://etaxonomy.eu/cdm/model/occurrence/1.0", type = FieldObservation.class),
212 @XmlElement(name = "Fossil", namespace = "http://etaxonomy.eu/cdm/model/occurrence/1.0", type = Fossil.class),
213 @XmlElement(name = "LivingBeing", namespace = "http://etaxonomy.eu/cdm/model/occurrence/1.0", type = LivingBeing.class),
214 @XmlElement(name = "Observation", namespace = "http://etaxonomy.eu/cdm/model/occurrence/1.0", type = Observation.class),
215 @XmlElement(name = "Specimen", namespace = "http://etaxonomy.eu/cdm/model/occurrence/1.0", type = Specimen.class)
216 })
217 protected List<SpecimenOrObservationBase> occurrences;
218
219 @XmlElementWrapper(name = "References")
220 @XmlElement(name = "Reference", namespace = "http://etaxonomy.eu/cdm/model/reference/1.0", type = ReferenceBase.class)
221
222 protected List<ReferenceBase> references;
223
224 @XmlElementWrapper(name = "ReferencedEntities")
225 @XmlElements({
226 @XmlElement(name = "NomenclaturalStatus", namespace = "http://etaxonomy.eu/cdm/model/name/1.0", type = NomenclaturalStatus.class),
227 @XmlElement(name = "NameTypeDesignation", namespace = "http://etaxonomy.eu/cdm/model/name/1.0", type = NameTypeDesignation.class),
228 @XmlElement(name = "SpecimenTypeDesignation", namespace = "http://etaxonomy.eu/cdm/model/name/1.0", type = SpecimenTypeDesignation.class)
229 })
230 protected List<ReferencedEntityBase> referencedEntities;
231
232
233 @XmlElementWrapper(name = "TaxonomicNames")
234 @XmlElements({
235 @XmlElement(name = "BacterialName", namespace = "http://etaxonomy.eu/cdm/model/name/1.0", type = BacterialName.class),
236 @XmlElement(name = "BotanicalName", namespace = "http://etaxonomy.eu/cdm/model/name/1.0", type = BotanicalName.class),
237 @XmlElement(name = "CultivarPlantName", namespace = "http://etaxonomy.eu/cdm/model/name/1.0", type = CultivarPlantName.class),
238 @XmlElement(name = "ViralName", namespace = "http://etaxonomy.eu/cdm/model/name/1.0", type = ViralName.class),
239 @XmlElement(name = "ZoologicalName", namespace = "http://etaxonomy.eu/cdm/model/name/1.0", type = ZoologicalName.class)
240 })
241 protected List<TaxonNameBase> taxonomicNames;
242
243 @XmlElementWrapper(name = "Taxa")
244 @XmlElement(name = "Taxon", namespace = "http://etaxonomy.eu/cdm/model/taxon/1.0")
245 protected List<Taxon> taxa;
246
247 @XmlElementWrapper(name = "Synonyms")
248 @XmlElement(name = "Synonym", namespace = "http://etaxonomy.eu/cdm/model/taxon/1.0")
249 protected List<Synonym> synonyms;
250
251 @XmlElementWrapper(name = "Relationships")
252 @XmlElements({
253 @XmlElement(name = "TaxonRelationship", namespace = "http://etaxonomy.eu/cdm/model/taxon/1.0", type = TaxonRelationship.class),
254 @XmlElement(name = "SynonymRelationship", namespace = "http://etaxonomy.eu/cdm/model/taxon/1.0", type = SynonymRelationship.class),
255 @XmlElement(name = "NameRelationship", namespace = "http://etaxonomy.eu/cdm/model/name/1.0", type = NameRelationship.class),
256 @XmlElement(name = "HybridRelationship", namespace = "http://etaxonomy.eu/cdm/model/name/1.0", type = HybridRelationship.class)
257 })
258 protected Set<RelationshipBase> relationships;
259
260 @XmlElementWrapper(name = "Media_")
261 @XmlElement(name = "Media", namespace = "http://etaxonomy.eu/cdm/model/media/1.0")
262 protected List<VersionableEntity> media;
263
264 @XmlElementWrapper(name = "HomotypicalGroups")
265 @XmlElement(name = "HomotypicalGroup", namespace = "http://etaxonomy.eu/cdm/model/name/1.0")
266 protected List<HomotypicalGroup> homotypicalGroups;
267
268
269
270 public SDDDataSet () {
271
272 agents = new ArrayList<AgentBase>();
273 agentData = new ArrayList<VersionableEntity>();
274
275 featureData = new ArrayList<VersionableEntity>();
276 languageData = new ArrayList<LanguageStringBase>();
277 terms = new ArrayList<DefinedTermBase>();
278 termVocabularies = new ArrayList<TermVocabulary<DefinedTermBase>>();
279 occurrences = new ArrayList<SpecimenOrObservationBase>();
280 references = new ArrayList<ReferenceBase>();
281 referencedEntities = new ArrayList<ReferencedEntityBase>();
282 taxonomicNames = new ArrayList<TaxonNameBase>();
283 taxa = new ArrayList<Taxon>();
284 synonyms = new ArrayList<Synonym>();
285 relationships = new HashSet<RelationshipBase>();
286 media = new ArrayList<VersionableEntity>();
287 homotypicalGroups = new ArrayList<HomotypicalGroup>();
288 }
289
290
291
292
293
294
295
296
297
298 public List<? extends AgentBase> getAgents() {
299 return agents;
300 }
301
302
303
304
305
306
307
308
309
310 public void setAgents(List<? extends AgentBase> value) {
311 this.agents = value;
312 }
313
314
315
316
317
318
319
320
321
322 public List<VersionableEntity> getAgentData() {
323 return agentData;
324 }
325
326
327
328
329
330
331
332
333
334 public void setAgentData(List<VersionableEntity> value) {
335 this.agentData = value;
336 }
337
338
339
340
341
342
343
344
345
346
347
348 public List<DefinedTermBase> getTerms() {
349 return terms;
350 }
351
352
353
354
355
356
357
358
359
360
361 public void setTerms(List<DefinedTermBase> value) {
362 this.terms = value;
363 }
364
365
366
367
368
369
370
371
372
373
374 public List<TermVocabulary<DefinedTermBase>> getTermVocabularies() {
375 return termVocabularies;
376 }
377
378
379
380
381
382
383
384
385
386 public void setTermVocabularies(List<TermVocabulary<DefinedTermBase>> value) {
387 this.termVocabularies = value;
388 }
389
390
391
392
393
394
395
396
397
398 public List<TaxonNameBase> getTaxonomicNames() {
399 return taxonomicNames;
400 }
401
402
403
404
405
406
407
408
409
410 public void setTaxonomicNames(List<TaxonNameBase> value) {
411 this.taxonomicNames = value;
412 }
413
414
415
416
417
418
419
420
421
422 public List<SpecimenOrObservationBase> getOccurrences() {
423 return occurrences;
424 }
425
426
427
428
429
430
431
432
433
434 public void setOccurrences(List<SpecimenOrObservationBase> value) {
435 this.occurrences = value;
436 }
437
438
439
440
441
442
443
444
445
446 public List<ReferenceBase> getReferences() {
447 return references;
448 }
449
450
451
452
453
454
455
456
457
458 public void setReferences(List<ReferenceBase> value) {
459 this.references = value;
460 }
461
462
463
464
465
466
467
468
469
470 public <T extends ReferencedEntityBase> void addReferencedEntities(Collection<T> value) {
471 for (T referencedEntity: value) {
472 this.referencedEntities.add(referencedEntity);
473 }
474 }
475
476
477
478
479
480
481
482
483
484 public List<ReferencedEntityBase> getReferencedEntities() {
485 return referencedEntities;
486 }
487
488
489
490
491
492
493
494
495
496 public void setReferencedEntities(List<? extends ReferencedEntityBase> value) {
497 this.referencedEntities = new ArrayList<ReferencedEntityBase>();
498 referencedEntities.addAll(value);
499 }
500
501
502
503
504
505
506
507
508
509 public <T extends VersionableEntity> void addFeatureData(Collection<T> value) {
510 for (T featureItem: value) {
511 this.featureData.add(featureItem);
512 }
513 }
514
515
516
517
518
519
520
521
522
523
524 public List<VersionableEntity> getFeatureData() {
525 return featureData;
526 }
527
528
529
530
531
532
533
534
535
536 public <T extends VersionableEntity> void setFeatureData(List<T> value) {
537 featureData = new ArrayList<VersionableEntity>();
538 for (T featureItem: value) {
539 this.featureData.add(featureItem);
540 }
541 }
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558 public <T extends LanguageStringBase> void addLanguageData(Collection<T> value) {
559 for (T languageItem: value) {
560 this.languageData.add(languageItem);
561 }
562 }
563
564
565
566
567
568
569
570
571
572 public List<LanguageStringBase> getLanguageData() {
573 return languageData;
574 }
575
576
577
578
579
580
581
582
583
584 public void setLanguageData(List<? extends LanguageStringBase> value) {
585 this.languageData = new ArrayList<LanguageStringBase>();
586 languageData.addAll(value);
587 }
588
589
590
591
592
593
594
595
596
597 public void addTaxa(Collection<Taxon> value) {
598 for (Taxon taxon: value) {
599 this.taxa.add(taxon);
600 }
601 }
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623 public Collection<? extends TaxonBase> getTaxa() {
624
625
626
627
628 List<Taxon> list = taxa;
629 return list;
630 }
631
632 public Collection<TaxonBase> getTaxonBases() {
633
634 Collection<TaxonBase> result = new HashSet<TaxonBase>();;
635 if (taxa != null) {
636 result.addAll(taxa);
637 }
638 if (synonyms != null) {
639 result.addAll(synonyms);
640 }
641 return result;
642 }
643
644
645
646
647
648
649
650
651
652 public void setTaxa(List<Taxon> value) {
653 this.taxa = value;
654 }
655
656
657
658
659
660
661
662 public void addTaxon(Taxon value) {
663 this.taxa.add(value);
664 }
665
666
667
668
669
670
671
672
673
674
675 public List<Synonym> getSynonyms() {
676 return synonyms;
677 }
678
679
680
681
682
683
684
685
686
687 public void setSynonyms(List<Synonym> value) {
688 this.synonyms = value;
689 }
690
691
692
693
694
695
696
697 public void addSynonym(Synonym value) {
698 this.synonyms.add(value);
699 }
700
701
702
703
704
705
706
707
708
709 public void addSynonyms(Collection<Synonym> value) {
710 for (Synonym synonym: value) {
711 this.synonyms.add(synonym);
712 }
713 }
714
715
716
717
718
719
720
721
722
723 public Set<RelationshipBase> getRelationships() {
724 return relationships;
725 }
726
727
728
729
730
731
732
733
734
735 public void setRelationships(Set<RelationshipBase> value) {
736 this.relationships = value;
737 }
738
739
740
741
742
743
744
745
746
747 public void addRelationships(Collection<? extends RelationshipBase> value) {
748 for (RelationshipBase relationship: value) {
749 this.relationships.add(relationship);
750 }
751 }
752
753
754
755
756
757
758
759
760
761 public <T extends VersionableEntity> void addMedia(Collection<T> value) {
762 for (T medium: value) {
763 this.media.add(medium);
764 }
765 }
766
767
768
769
770
771
772
773
774
775 public List<VersionableEntity> getMedia() {
776 return media;
777 }
778
779
780
781
782
783
784
785
786
787 public void setMedia(List<? extends VersionableEntity> value) {
788 this.media = new ArrayList<VersionableEntity>();
789 media.addAll(value);
790 }
791
792
793
794
795
796
797
798
799
800 public List<HomotypicalGroup> getHomotypicalGroups() {
801 return homotypicalGroups;
802 }
803
804
805
806
807
808
809
810
811
812 public void setHomotypicalGroups(List<HomotypicalGroup> value) {
813 this.homotypicalGroups = value;
814 }
815
816 }