argos/dmp-backend/core/src/main/java/eu/eudat/model/publicapi/listingmodels/DataManagementPlanPublicLis...

139 lines
3.6 KiB
Java
Raw Normal View History

package eu.eudat.model.publicapi.listingmodels;
2022-10-04 12:06:49 +02:00
2023-11-16 13:01:39 +01:00
import eu.eudat.data.DmpEntity;
import eu.eudat.model.publicapi.researcher.ResearcherPublicModel;
import eu.eudat.model.publicapi.user.UserInfoPublicModel;
2022-10-04 12:06:49 +02:00
import java.util.*;
2022-10-04 12:06:49 +02:00
public class DataManagementPlanPublicListingModel {
2022-10-04 12:06:49 +02:00
private String id;
private String label;
private String grant;
private Date createdAt;
private Date modifiedAt;
private int version;
private UUID groupId;
private List<UserInfoPublicModel> users;
private List<ResearcherPublicModel> researchers;
2022-10-04 12:06:49 +02:00
private Date finalizedAt;
private Date publishedAt;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getLabel() {
return label;
}
public void setLabel(String label) {
this.label = label;
}
public String getGrant() {
return grant;
}
public void setGrant(String grant) {
this.grant = grant;
}
public Date getCreatedAt() {
return createdAt;
}
public void setCreatedAt(Date createdAt) {
this.createdAt = createdAt;
}
public Date getModifiedAt() {
return modifiedAt;
}
public void setModifiedAt(Date modifiedAt) {
this.modifiedAt = modifiedAt;
}
public int getVersion() {
return version;
}
public void setVersion(int version) {
this.version = version;
}
public UUID getGroupId() {
return groupId;
}
public void setGroupId(UUID groupId) {
this.groupId = groupId;
}
public List<UserInfoPublicModel> getUsers() {
2022-10-04 12:06:49 +02:00
return users;
}
public void setUsers(List<UserInfoPublicModel> users) {
2022-10-04 12:06:49 +02:00
this.users = users;
}
public List<ResearcherPublicModel> getResearchers() {
return researchers;
}
public void setResearchers(List<ResearcherPublicModel> researchers) {
this.researchers = researchers;
}
2022-10-04 12:06:49 +02:00
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;
}
2023-11-16 13:01:39 +01:00
public DataManagementPlanPublicListingModel fromDataModel(DmpEntity entity) {
2022-10-04 12:06:49 +02:00
this.id = entity.getId().toString();
this.label = entity.getLabel();
this.groupId = entity.getGroupId();
return this;
}
2023-11-16 13:01:39 +01:00
public DataManagementPlanPublicListingModel fromDataModelAssociatedProfiles(DmpEntity entity) {
2022-10-04 12:06:49 +02:00
this.id = entity.getId().toString();
this.label = entity.getLabel();
this.groupId = entity.getGroupId();
2023-11-16 13:01:39 +01:00
this.createdAt = Date.from(entity.getCreatedAt());
2022-10-04 12:06:49 +02:00
return this;
}
2023-11-16 13:01:39 +01:00
public DataManagementPlanPublicListingModel fromDataModelAutoComplete(DmpEntity entity) {
2022-10-04 12:06:49 +02:00
this.id = entity.getId().toString();
this.label = entity.getLabel();
this.groupId = entity.getGroupId();
2023-11-16 13:01:39 +01:00
this.createdAt = Date.from(entity.getCreatedAt());
2022-10-04 12:06:49 +02:00
return this;
}
2023-11-16 13:01:39 +01:00
public DataManagementPlanPublicListingModel fromDataModelNoDatasets(DmpEntity entity) {
2022-10-04 12:06:49 +02:00
this.fromDataModel(entity);
return this;
}
2023-11-16 13:01:39 +01:00
public DmpEntity toDataModel() {
DmpEntity entity = new DmpEntity();
2022-10-04 12:06:49 +02:00
entity.setId(UUID.fromString(this.getId()));
entity.setLabel(this.getLabel());
entity.setGroupId(this.getGroupId());
return entity;
}
public static String getHint() {
return "fullyDetailed";
2022-10-04 12:06:49 +02:00
}
}