package org.nextprot.api.core.domain;
import java.io.Serializable;
public class PublicationAuthor implements Comparable<PublicationAuthor>, Serializable {
private static final long serialVersionUID = -3967004517863213171L;
private Long authorId;
private String lastName;
private String foreName;
private String initials;
private String suffix="";
private Integer rank;
private boolean person;
private boolean isEditor;
private Long publicationId;
public String toString(){
return String.format("{lastName=%s,foreName=%s,suffix=%s,rank=%d,person=%b,editor=%b}", lastName,foreName,suffix,rank,person,isEditor);
}
public Long getAuthorId() {
return authorId;
}
public void setAuthorId(Long authorId) {
this.authorId = authorId;
}
public String getLastName() {
return lastName;
}
public void setLastName(String lastName) {
this.lastName = lastName;
}
public String getForeName() {
return foreName;
}
public void setForeName(String foreName) {
this.foreName = foreName;
}
public String getInitials() {
return initials;
}
public void setInitials(String initials) {
this.initials = initials;
}
public String getSuffix() {
return suffix;
}
public void setSuffix(String suffix) {
this.suffix =suffix;
}
public Integer getRank() {
return rank;
}
public void setRank(Integer rank) {
this.rank = rank;
}
public Long getPublicationId() {
return publicationId;
}
public void setPublicationId(Long publicationId) {
this.publicationId = publicationId;
}
@Override
public int compareTo(PublicationAuthor o) {
if(! getRank().equals(o.getRank()))
return getRank().compareTo(o.getRank());
else return getLastName().compareTo(o.getLastName());
}
public boolean isPerson() {
return person;
}
public void setPerson(boolean person) {
this.person = person;
}
public boolean isEditor() {
return isEditor;
}
public void setEditor(boolean editor) {
isEditor = editor;
}
}