Source:
public Entry parseWorkflowContent(Entry entry, String filepath, String content, Set<SourceFile> sourceFiles) { WdlBridge wdlBridge = new WdlBridge(); Map<String, String> secondaryFiles = new HashMap<>(); sourceFiles.stream().forEach(file -> { secondaryFiles.put(file.getAbsolutePath(), file.getContent()); }); wdlBridge.setSecondaryFiles((HashMap<String, String>)secondaryFiles); try { List<Map<String, String>> metadata = wdlBridge.getMetadata(filepath, content); Set<String> authors = new HashSet<>(); Set<String> emails = new HashSet<>(); final String[] mainDescription = { null }; metadata.stream().forEach(metaBlock -> { String author = metaBlock.get("author"); String[] callAuthors = author != null ? author.split(",") : null; if (callAuthors != null) { for (String callAuthor : callAuthors) { authors.add(callAuthor.trim()); } } String email = metaBlock.get("email"); String[] callEmails = email != null ? email.split(",") : null; if (callEmails != null) { for (String callEmail : callEmails) { emails.add(callEmail.trim()); } } String description = metaBlock.get("description"); if (description != null && !description.isEmpty() && !description.isBlank()) { mainDescription[0] = description; } }); if (!authors.isEmpty()) { entry.setAuthor(Joiner.on(", ").join(authors)); } if (!emails.isEmpty()) { entry.setEmail(Joiner.on(", ").join(emails)); } if (!Strings.isNullOrEmpty(mainDescription[0])) { entry.setDescription(mainDescription[0]); } } catch (wdl.draft3.parser.WdlParser.SyntaxError ex) { LOG.error("Unable to parse WDL file " + filepath, ex); clearMetadata(entry); return entry; } return entry; }

Target:
public Entry parseWorkflowContent(Entry entry, String filepath, String content, Set<SourceFile> sourceFiles) { WdlBridge wdlBridge = new WdlBridge(); Map<String, String> secondaryFiles = new HashMap<>(); sourceFiles.stream().forEach(file -> { secondaryFiles.put(file.getAbsolutePath(), file.getContent()); }); wdlBridge.setSecondaryFiles((HashMap<String, String>)secondaryFiles); try { List<Map<String, String>> metadata = wdlBridge.getMetadata(filepath, content); Set<String> authors = new HashSet<>(); Set<String> emails = new HashSet<>(); final String[] mainDescription = { null }; metadata.stream().forEach(metaBlock -> { String author = metaBlock.get("author"); String[] callAuthors = author != null ? author.split(",") : null; if (callAuthors != null) { for (String callAuthor : callAuthors) { authors.add(callAuthor.trim()); } } String email = metaBlock.get("email"); String[] callEmails = email != null ? email.split(",") : null; if (callEmails != null) { for (String callEmail : callEmails) { emails.add(callEmail.trim()); } } String description = metaBlock.get("description"); if (description != null && !description.isBlank()) { mainDescription[0] = description; } }); if (!authors.isEmpty()) { entry.setAuthor(Joiner.on(", ").join(authors)); } if (!emails.isEmpty()) { entry.setEmail(Joiner.on(", ").join(emails)); } if (!Strings.isNullOrEmpty(mainDescription[0])) { entry.setDescription(mainDescription[0]); } } catch (wdl.draft3.parser.WdlParser.SyntaxError ex) { LOG.error("Unable to parse WDL file " + filepath, ex); clearMetadata(entry); return entry; } return entry; }