43 lines
1.5 KiB
Java
43 lines
1.5 KiB
Java
package eu.eudat.logic.utilities.documents.xml.dmpXml.dmpBlueprintModel;
|
|
|
|
import eu.eudat.commons.enums.DmpBlueprintStatus;
|
|
import eu.eudat.commons.types.xml.XmlBuilder;
|
|
import eu.eudat.data.DmpBlueprintEntity;
|
|
import jakarta.xml.bind.annotation.XmlElement;
|
|
import jakarta.xml.bind.annotation.XmlRootElement;
|
|
import org.w3c.dom.Document;
|
|
|
|
import javax.management.InvalidApplicationException;
|
|
import java.time.Instant;
|
|
import java.util.Date;
|
|
|
|
@XmlRootElement(name = "root")
|
|
public class DmpBlueprint {
|
|
|
|
private DmpBlueprintDefinition dmpBlueprintDefinition;
|
|
|
|
@XmlElement(name = "definition")
|
|
public DmpBlueprintDefinition getDmpBlueprintDefinition() {
|
|
return dmpBlueprintDefinition;
|
|
}
|
|
|
|
public void setDmpBlueprintDefinition(DmpBlueprintDefinition dmpBlueprintDefinition) {
|
|
this.dmpBlueprintDefinition = dmpBlueprintDefinition;
|
|
}
|
|
|
|
public DmpBlueprintEntity toDmpProfileCompositeModel(String label) {
|
|
DmpBlueprintEntity dmpProfileModel = new DmpBlueprintEntity();
|
|
dmpProfileModel.setLabel(label);
|
|
dmpProfileModel.setStatus(DmpBlueprintStatus.Draft);
|
|
dmpProfileModel.setCreatedAt(Instant.now());
|
|
dmpProfileModel.setUpdatedAt(Instant.now());
|
|
if (this.dmpBlueprintDefinition != null) {
|
|
Document document = XmlBuilder.getDocument();
|
|
document.appendChild(this.dmpBlueprintDefinition.toDmpBlueprintCompositeModel().toXml(document));
|
|
dmpProfileModel.setDefinition(XmlBuilder.generateXml(document));
|
|
}
|
|
return dmpProfileModel;
|
|
}
|
|
|
|
}
|