|
@@ -39,9 +39,10 @@ public class SchemaInit {
|
|
|
Reader reader = new FileReader(new File(path));
|
|
|
Map map = yml.loadAs(reader, Map.class);
|
|
|
|
|
|
- List jobs = ((List) map.get("job"));
|
|
|
- return (List<DataWorksFlowJob>) jobs
|
|
|
+ List j = ((List) map.get("job"));
|
|
|
+ List<DataWorksFlowJob> jobs = (List<DataWorksFlowJob>) j
|
|
|
.stream()
|
|
|
+
|
|
|
.map(m -> {
|
|
|
String project = ((String) ((Map<String, Object>) m).get("project"));
|
|
|
String flow = ((String) ((Map<String, Object>) m).get("flow"));
|
|
@@ -67,5 +68,8 @@ public class SchemaInit {
|
|
|
return build;
|
|
|
})
|
|
|
.collect(Collectors.toList());
|
|
|
+
|
|
|
+ List<DataWorksFlowJob> collect = jobs.stream().collect(Collectors.groupingBy(m -> m.getFlow() + m.getProject())).values().stream().map(list -> new DataWorksFlowJob(list.get(0).getProject(), list.get(0).getFlow(), list.stream().flatMap(l -> l.getTask().stream()).collect(Collectors.toList()))).collect(Collectors.toList());
|
|
|
+ return collect;
|
|
|
}
|
|
|
}
|