tabular-data-table-widget/src/main/java/org/gcube/portlets/user/td/tablewidget/client/validation/tree/TreeDataGenerator.java

47 lines
1.5 KiB
Java

package org.gcube.portlets.user.td.tablewidget.client.validation.tree;
import java.util.ArrayList;
import org.gcube.portlets.user.td.gwtservice.shared.task.JobS;
import org.gcube.portlets.user.td.gwtservice.shared.task.TaskS;
import org.gcube.portlets.user.td.gwtservice.shared.task.ValidationsTasksMetadata;
import org.gcube.portlets.user.td.gwtservice.shared.tr.table.Validations;
import com.google.gwt.i18n.client.DateTimeFormat;
public class TreeDataGenerator {
protected DateTimeFormat sdf = DateTimeFormat
.getFormat("yyyy-MM-dd HH:mm:ss");
protected FolderDto root;
public TreeDataGenerator(ValidationsTasksMetadata validationsTasksMetadata) {
if (validationsTasksMetadata.getTasks().size() > 0) {
ArrayList<BaseDto> childrens = new ArrayList<BaseDto>();
for (TaskS task : validationsTasksMetadata.getTasks()) {
ArrayList<BaseDto> jobs = new ArrayList<BaseDto>();
for (JobS job : task.getJobs()) {
ArrayList<BaseDto> validations = new ArrayList<BaseDto>();
for (Validations v : job.getValidations()) {
ValidationDto validationDto = new ValidationDto(
v.getDescription(), v.isValid());
validations.add(validationDto);
}
FolderDto foldJob = new FolderDto(job.getId(),
job.getDescription(), validations);
jobs.add(foldJob);
}
FolderDto foldTask = new FolderDto(task.getId(),
sdf.format(task.getStartTime()), jobs);
childrens.add(foldTask);
}
root = new FolderDto("0", "root", childrens);
}
}
public FolderDto getRoot() {
return root;
}
}