use of eu.esdihumboldt.hale.common.core.io.project.model.internal.generated.ExportConfigurationType in project hale by halestudio.
the class ProjectToJaxb method convert.
/**
* Convert the given project to the corresponding JAXB type.
*
* @param project the project to convert
* @return the converted project
*/
public static ProjectType convert(Project project) {
ProjectType result = new ProjectType();
result.setAuthor(project.getAuthor());
result.setCreated(toXMLCalendar(project.getCreated()));
result.setDescription(project.getDescription());
result.setModified(toXMLCalendar(project.getModified()));
result.setName(project.getName());
result.setSaveConfig(toIOConfigurationType(project.getSaveConfiguration()));
if (project.getHaleVersion() != null) {
result.setVersion(project.getHaleVersion().toString());
}
// resources
for (IOConfiguration resource : project.getResources()) {
result.getResource().add(toIOConfigurationType(resource));
}
// export configs
for (Entry<String, IOConfiguration> confEntry : project.getExportConfigurations().entrySet()) {
IOConfigurationType conf = toIOConfigurationType(confEntry.getValue());
ExportConfigurationType exportConf = new ExportConfigurationType();
exportConf.setConfiguration(conf);
exportConf.setName(confEntry.getKey());
result.getExportConfig().add(exportConf);
}
// project files
for (ProjectFileInfo file : project.getProjectFiles()) {
result.getFile().add(toProjectFileType(file));
}
// properties
for (Entry<String, Value> property : project.getProperties().entrySet()) {
Object p = createProperty(property.getKey(), property.getValue());
if (p instanceof PropertyType) {
result.getAbstractProperty().add(of.createProperty((PropertyType) p));
} else if (p instanceof ComplexPropertyType) {
result.getAbstractProperty().add(of.createComplexProperty((ComplexPropertyType) p));
}
}
return result;
}
use of eu.esdihumboldt.hale.common.core.io.project.model.internal.generated.ExportConfigurationType in project hale by halestudio.
the class JaxbToProject method convert.
/**
* Convert the given project.
*
* @param project the project to convert
* @return the project model object
*/
public static Project convert(ProjectType project) {
Project result = new Project();
result.setAuthor(project.getAuthor());
result.setCreated(toDate(project.getCreated()));
result.setDescription(project.getDescription());
result.setHaleVersion(toVersion(project.getVersion()));
result.setModified(toDate(project.getModified()));
result.setName(project.getName());
result.setSaveConfiguration(toIOConfiguration(project.getSaveConfig()));
for (IOConfigurationType resource : project.getResource()) {
result.getResources().add(toIOConfiguration(resource));
}
for (ExportConfigurationType exportConfig : project.getExportConfig()) {
String name = exportConfig.getName();
if (name != null && !name.isEmpty()) {
result.getExportConfigurations().put(name, toIOConfiguration(exportConfig.getConfiguration()));
}
}
for (ProjectFileType file : project.getFile()) {
result.getProjectFiles().add(new ProjectFileInfo(file.getName(), URI.create(file.getLocation())));
}
for (JAXBElement<?> property : project.getAbstractProperty()) {
Object value = property.getValue();
if (value instanceof PropertyType) {
addProperty(result.getProperties(), (PropertyType) value);
} else if (value instanceof ComplexPropertyType) {
addProperty(result.getProperties(), (ComplexPropertyType) value);
}
}
return result;
}
Aggregations