package eu.eudat.models.data.dashboard.recent.model; import java.util.Date; public abstract class RecentActivityModel { private String id; private String title; private String description; private Date created; private Date modified; private int status; private int version; private String grant; private String grantAbbreviation; private String grantId; private Date finalizedAt; private Date publishedAt; private String profile; private RecentActivityType type; public String getId() { return id; } public void setId(String id) { this.id = id; } public String getTitle() { return title; } public void setTitle(String title) { this.title = title; } public String getDescription() { return description; } public void setDescription(String description) { this.description = description; } public Date getCreated() { return created; } public void setCreated(Date created) { this.created = created; } public Date getModified() { return modified; } public void setModified(Date modified) { this.modified = modified; } public int getStatus() { return status; } public void setStatus(int status) { this.status = status; } public int getVersion() { return version; } public void setVersion(int version) { this.version = version; } public String getGrant() { return grant; } public void setGrant(String grant) { this.grant = grant; } public String getGrantAbbreviation() { return grantAbbreviation; } public void setGrantAbbreviation(String grantAbbreviation) { this.grantAbbreviation = grantAbbreviation; } public String getGrantId() { return grantId; } public void setGrantId(String grantId) { this.grantId = grantId; } public Date getFinalizedAt() { return finalizedAt; } public void setFinalizedAt(Date finalizedAt) { this.finalizedAt = finalizedAt; } public Date getPublishedAt() { return publishedAt; } public void setPublishedAt(Date publishedAt) { this.publishedAt = publishedAt; } public String getProfile() { return profile; } public void setProfile(String profile) { this.profile = profile; } public RecentActivityType getType() { return type; } public void setType(RecentActivityType type) { this.type = type; } public abstract RecentActivityModel fromEntity(T entity); public enum RecentActivityType { DMP(1), DATASET(2); private final int index; RecentActivityType(int index) { this.index = index; } public int getIndex() { return index; } public static RecentActivityType fromIndex(int index) { switch (index) { case 1: return DMP; case 2: return DATASET; default: throw new IllegalArgumentException("Recent Activity Type : \"" + index + "\" is not supported."); } } } }