package ecologylab.serialization.deserializers.parsers.bibtex.entrytypes; import java.util.ArrayList; import ecologylab.serialization.ElementState; import ecologylab.serialization.annotations.bibtex_key; import ecologylab.serialization.annotations.bibtex_tag; import ecologylab.serialization.annotations.simpl_collection; import ecologylab.serialization.annotations.simpl_inherit; import ecologylab.serialization.annotations.simpl_scalar; /** * The abstract base class for BibTeX entry types. Holds the citation key and common fields such * as title, authors, year, etc. * * @author quyin * */ @simpl_inherit public abstract class AbstractBibTeXEntry extends ElementState { // citation key @simpl_scalar @bibtex_key private String citationKey; // required fields @simpl_scalar @bibtex_tag("title") private String title; @simpl_collection("author") @bibtex_tag("author") private ArrayList<String> authors; @simpl_scalar @bibtex_tag("year") private int year; // optional fields @simpl_scalar @bibtex_tag("month") private String month; @simpl_scalar @bibtex_tag("note") private String note; @simpl_scalar @bibtex_tag("key") private String key; @simpl_collection("keyword") @bibtex_tag("keywords") private ArrayList<String> keywords; @simpl_scalar @bibtex_tag("doi") private String doi; public String getCitationKey() { return citationKey; } public void setCitationKey(String citationKey) { this.citationKey = citationKey; } public String getTitle() { return title; } public void setTitle(String title) { this.title = title; } public ArrayList<String> getAuthors() { return authors; } public void setAuthors(ArrayList<String> authors) { this.authors = authors; } public String getMonth() { return month; } public void setMonth(String month) { this.month = month; } public String getNote() { return note; } public void setNote(String note) { this.note = note; } public String getKey() { return key; } public void setKey(String key) { this.key = key; } public ArrayList<String> getKeywords() { return keywords; } public void setKeywords(ArrayList<String> keywords) { this.keywords = keywords; } public String getDoi() { return doi; } public void setDoi(String doi) { this.doi = doi; } public void setYear(int year) { this.year = year; } public int getYear() { return year; } }