TaxonomySpeciesDTO.java
/*
* Copyright 2026 Global Crop Diversity Trust
* Licensed under the Apache License, Version 2.0
* See LICENSE file in project root folder or http://www.apache.org/licenses/LICENSE-2.0
*/
package org.gringlobal.api.model;
import java.time.Instant;
import org.gringlobal.custom.validation.javax.CodeValueField;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
@Data
@EqualsAndHashCode(callSuper = true)
@NoArgsConstructor
public class TaxonomySpeciesDTO extends CooperatorOwnedDTO {
private Long grinId;
private String alternateName;
@CodeValueField(value = "TAXONOMY_FERTILIZATION_METHOD")
private String commonFertilizationCode;
private CooperatorInfo curator1Cooperator;
private CooperatorInfo curator2Cooperator;
private TaxonomySpeciesInfo currentTaxonomySpecies;
private String formaAuthority;
private String formaName;
private String formaRankType;
private Boolean isFormaHybrid = false;
private Boolean isNamePending = false;
private Boolean isSpecificHybrid = false;
private Boolean isSubspecificHybrid = false;
private Boolean isVarietalHybrid = false;
private Boolean isSubvarietalHybrid = false;
@CodeValueField(value = "ACCESSION_LIFE_FORM")
private String lifeFormCode;
private String name;
private String nameAuthority;
private Instant nameVerifiedDate;
private Integer nomenNumber;
private String note;
private SiteInfo priority1Site;
private SiteInfo priority2Site;
private String protologue;
private String protologueVirtualPath;
@CodeValueField(value = "TAXONOMY_RESTRICTION")
private String restrictionCode;
private String siteNote;
private String speciesAuthority;
private String speciesName;
private String subspeciesAuthority;
private String subspeciesName;
private String subvarietyAuthority;
private String subvarietyName;
@CodeValueField(value = "TAXONOMY_SPECIES_QUALIFIER")
private String synonymCode;
private TaxonomyGenusInfo taxonomyGenus;
private String varietyAuthority;
private String varietyName;
private CooperatorInfo verifierCooperator;
private String hybridParentage;
private Boolean isWebVisible = false;
public TaxonomySpeciesDTO(Long id) {
this.id = id;
}
}