private List<String> getBibliography(EvidenceEntry evidenceEntry) { if (evidenceEntry.getBibliography() == null) { List<String> bibliography = new ArrayList<>(1); evidenceEntry.setBibliography(bibliography); } return evidenceEntry.getBibliography(); }
private void addNewEntry(VariantAnnotation variantAnnotation, EvidenceEntry evidenceEntry) { List<EvidenceEntry> evidenceEntryList = variantAnnotation.getTraitAssociation(); // There are cosmic records which share all the fields but the bibliography. In some occassions (COSM12600) // the redundancy is such that the document becomes much bigger than 16MB and cannot be loaded into MongoDB. // This merge reduces redundancy. int i = 0; boolean merged = false; while (i < evidenceEntryList.size() && !merged) { if (sameSomaticDocument(evidenceEntryList.get(i), evidenceEntry)) { if (evidenceEntryList.get(i).getBibliography() != null) { if (evidenceEntry.getBibliography() != null) { Set<String> bibliographySet = new HashSet<>(evidenceEntryList.get(i).getBibliography()); bibliographySet.addAll(new HashSet<>(evidenceEntry.getBibliography())); evidenceEntryList.get(i).setBibliography(new ArrayList<>(bibliographySet)); } } else { evidenceEntryList.get(i).setBibliography(evidenceEntry.getBibliography()); } merged = true; } i++; } if (!merged) { evidenceEntryList.add(evidenceEntry); } }
List<String> bibliography = parseBibliography(fields, references, isGermline); EvidenceEntry evidenceEntry = buildEvidenceEntry(fields, isGermline); evidenceEntry.setBibliography(bibliography); evidenceEntryList.add(evidenceEntry);
evidenceEntry.setBibliography(Collections.emptyList());
evidenceEntry.setBibliography(Collections.emptyList());
evidenceEntry.setBibliography(Collections.emptyList());