argos/dmp-backend/web/src/main/java/eu/eudat/logic/builders/entity/DatasetProfileBuilder.java

101 lines
2.6 KiB
Java

package eu.eudat.logic.builders.entity;
import eu.eudat.commons.enums.DescriptionTemplateStatus;
import eu.eudat.data.DescriptionTemplateEntity;
import eu.eudat.logic.builders.Builder;
import java.time.Instant;
import java.util.UUID;
/**
* Created by ikalyvas on 2/15/2018.
*/
public class DatasetProfileBuilder extends Builder<DescriptionTemplateEntity> {
private UUID id;
private String label;
private UUID type;
// private Set<Dataset> dataset;
private String definition;
private DescriptionTemplateStatus status;
private Instant created;
private Instant modified = Instant.now();
private String description;
private String language;
public DatasetProfileBuilder id(UUID id) {
this.id = id;
return this;
}
public DatasetProfileBuilder label(String label) {
this.label = label;
return this;
}
public DatasetProfileBuilder type(UUID type) {
this.type = type;
return this;
}
// public DatasetProfileBuilder dataset(Set<Dataset> dataset) {
// this.dataset = dataset;
// return this;
// }
public DatasetProfileBuilder definition(String definition) {
this.definition = definition;
return this;
}
public DatasetProfileBuilder status(DescriptionTemplateStatus status) {
this.status = status;
return this;
}
public DatasetProfileBuilder created(Instant created) {
this.created = created;
return this;
}
public DatasetProfileBuilder modified(Instant modified) {
this.modified = modified;
return this;
}
public DatasetProfileBuilder description(String description) {
this.description = description;
return this;
}
public DatasetProfileBuilder language(String language) {
this.language = language;
return this;
}
@Override
public DescriptionTemplateEntity build() {
DescriptionTemplateEntity descriptionTemplateEntity = new DescriptionTemplateEntity();
descriptionTemplateEntity.setCreatedAt(created);
descriptionTemplateEntity.setStatus(status);
descriptionTemplateEntity.setId(id);
// descriptionTemplate.setDataset(dataset);
descriptionTemplateEntity.setDefinition(definition);
descriptionTemplateEntity.setDescription(description);
descriptionTemplateEntity.setUpdatedAt(modified);
descriptionTemplateEntity.setLabel(label);
descriptionTemplateEntity.setLanguage(language);
descriptionTemplateEntity.setTypeId(type);
return descriptionTemplateEntity;
}
}