import eu.etaxonomy.cdm.api.facade.DerivedUnitFacadeCacheStrategy;
import eu.etaxonomy.cdm.api.service.exception.RegistrationValidationException;
import eu.etaxonomy.cdm.hibernate.HibernateProxyHelper;
-import eu.etaxonomy.cdm.model.common.CdmBase;
import eu.etaxonomy.cdm.model.common.IdentifiableSource;
import eu.etaxonomy.cdm.model.common.Language;
import eu.etaxonomy.cdm.model.common.VersionableEntity;
private static final String SOURCE_SEPARATOR = ", ";
private static final String POST_STATUS_SEPARATOR = ": ";
- private Map<UUID,TypeDesignationBase<?>> typeDesignations;
+ private Map<UUID,TypeDesignationBase<?>> typeDesignations = new HashMap<>();
private NameTypeBaseEntityType nameTypeBaseEntityType = NameTypeBaseEntityType.NAME_TYPE_DESIGNATION;
}
public TypeDesignationSetManager(Collection<TypeDesignationBase> typeDesignations, TaxonName typifiedName) throws RegistrationValidationException {
- if (this.typeDesignations == null){
- this.typeDesignations = new HashMap<>();
- }
for (TypeDesignationBase<?> typeDes:typeDesignations){
this.typeDesignations.put(typeDes.getUuid(), typeDes);
}
}
public TypeDesignationSetManager(HomotypicalGroup group) {
- if (this.typeDesignations == null){
- this.typeDesignations = new HashMap<>();
- }
- for (TypeDesignationBase<?> typeDes:group.getTypeDesignations()){
+ for (TypeDesignationBase<?> typeDes: group.getTypeDesignations()){
this.typeDesignations.put(typeDes.getUuid(), typeDes);
}
//findTypifiedName();
}
public TypeDesignationSetManager(TaxonName typifiedName) {
- this.typeDesignations = new HashMap<>();
this.typifiedNameRef = new EntityReference(typifiedName.getUuid(), typifiedName.getTitleCache());
}
* @param containgEntity
* @param typeDesignations
*/
- public void addTypeDesigations(CdmBase containingEntity, TypeDesignationBase<?> ... typeDesignations){
+ public void addTypeDesigations(TypeDesignationBase<?> ... typeDesignations){
for (TypeDesignationBase<?> typeDes: typeDesignations){
this.typeDesignations.put(typeDes.getUuid(), typeDes);
}
protected VersionableEntity baseEntity(TypeDesignationBase<?> td) throws DataIntegrityException {
VersionableEntity baseEntity = null;
- if(td instanceof SpecimenTypeDesignation){
+ if(td instanceof SpecimenTypeDesignation){
SpecimenTypeDesignation std = (SpecimenTypeDesignation) td;
FieldUnit fu = findFieldUnit(std.getTypeSpecimen());
if(fu != null){
workingsetBuilder.add(TagEnum.separator, TYPE_STATUS_SEPARATOR);
}
boolean isPlural = typeDesignationWorkingSet.get(typeStatus).size() > 1;
- if(!typeStatus.equals(NULL_STATUS)) {
+ if(typeStatus != NULL_STATUS){
if (withCitation){
//TODO maybe
workingsetBuilder.add(TagEnum.separator, TYPE_STATUS_PARENTHESIS_LEFT);
workingsetBuilder.add(TagEnum.separator, REFERENCE_PARENTHESIS_RIGHT);
}
- if ((!typeStatus.equals(NULL_STATUS)) &&(typeDesignationCount == typeDesignationWorkingSet.get(typeStatus).size())){
+ if ((typeStatus != NULL_STATUS) &&(typeDesignationCount == typeDesignationWorkingSet.get(typeStatus).size())){
workingsetBuilder.add(TagEnum.separator, TYPE_STATUS_PARENTHESIS_RIGHT);
}
private VersionableEntity baseEntity;
- private List<DerivedUnit> derivedUnits = null;
-
public TypeDesignationWorkingSet(VersionableEntity baseEntity, TypedEntityReference<? extends VersionableEntity> baseEntityReference) {
this.baseEntity = baseEntity;
this.baseEntityReference = baseEntityReference;
);
typifiedName.addTypeDesignation(ntd, false);
- typeDesignationManager.addTypeDesigations(null, ntd);
+ typeDesignationManager.addTypeDesigations(ntd);
assertEquals(
"Prionus L. Nametype: Prionus coriatius L."
);
typifiedName.addTypeDesignation(std_HT, false);
- typeDesignationManager.addTypeDesigations(null, std_HT);
+ typeDesignationManager.addTypeDesigations(std_HT);
assertEquals(
"Prionus L. Type: Testland, near Bughausen, A.Kohlbecker 81989, 2017 Holotype: OHA; Nametype: Prionus coriatius L."
TaxonName typifiedName = TaxonNameFactory.NewBacterialInstance(Rank.SPECIES());
typifiedName.setTitleCache("Prionus coriatius L.", true);
TypeDesignationSetManager typeDesignationManager = new TypeDesignationSetManager(typifiedName);
- typeDesignationManager.addTypeDesigations(null, std_LT);
+ typeDesignationManager.addTypeDesigations(std_LT);
Reference citation = ReferenceFactory.newBook();
citation.setDatePublished(TimePeriodParser.parseStringVerbatim("1989"));
citation.setAuthorship(Team.NewTitledInstance("Miller", "Mill."));
typifiedName = TaxonNameFactory.NewBacterialInstance(Rank.GENUS());
typifiedName.setTitleCache("Prionus L.", true);
typeDesignationManager = new TypeDesignationSetManager(typifiedName);
- typeDesignationManager.addTypeDesigations(null, ntd_LT);
+ typeDesignationManager.addTypeDesigations(ntd_LT);
ntd_LT.addPrimaryTaxonomicSource(citation, "66");
typeDesignationManager.buildStringWithCitation();
//TODO capital letter or not still needs to be discussed, currently it differs for SpecimenTD and NameTD in original csv data
typifiedName.addTypeDesignation(mtd_IT_unpublished, false);
TypeDesignationSetManager typeDesignationManager = new TypeDesignationSetManager(typifiedName);
- typeDesignationManager.addTypeDesigations(null, mtd_HT_published);
- typeDesignationManager.addTypeDesigations(null, mtd_IT_unpublished);
+ typeDesignationManager.addTypeDesigations(mtd_HT_published);
+ typeDesignationManager.addTypeDesigations(mtd_IT_unpublished);
assertEquals("failed after repreating " + i + " times",
"Prionus coriatius L. Type: Testland, near Bughausen, A.Kohlbecker 81989, 2017 Holotype: [icon] p.33 in A.K. & W.K (2008) Algae of the BGBM; Isotype: [icon] B Slide A565656."