AccessionInfo.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 lombok.Data;
import lombok.NoArgsConstructor;

@Data
@NoArgsConstructor
public class AccessionInfo {
	/** Accession ID. */
	private Long id;

	/** Site: Reference to the site responsible for this accession's passport data. */
	private SiteInfo site;

	/** Collection: The genebank collection this accession is part of. */
	private String collectionCode;

	/** Accession Number: Unique accession identifier. */
	private String accessionNumber;

	/** Accession Prefix: First part of the unique accession identifier. */
	private String accessionNumberPart1;

	/** Accession Number: Second part of the unique accession identifier. */
	private Long accessionNumberPart2;

	/** Accession Suffix: Third part of the unique accession identifier. */
	private String accessionNumberPart3;

	/** Taxonomy Species: Reference to the taxonomy species described by this accession. */
	private TaxonomySpeciesInfo taxonomySpecies;

	/** Digital Object Identifier: Digital object identifier assigned to this accession. */
	private String doi;

	/** Preferred Name: Preferred plant name for this accession. */
	private String preferredName;

	/** Status: Accession status. */
	private String statusCode;

	/** Curation Type: Type of curation applied to the accession. */
	private String curationTypeCode;

	/** Level Of Improvement: Biological status of the accession. */
	private String improvementStatusCode;

	public AccessionInfo(Long id) {
		this.id = id;
	}
}