public static Set<VCFHeaderLine> withUpdatedContigsAsLines(final Set<VCFHeaderLine> oldLines, final File referenceFile, final SAMSequenceDictionary refDict, final boolean referenceNameOnly) { final Set<VCFHeaderLine> lines = new LinkedHashSet<>(oldLines.size()); for (final VCFHeaderLine line : oldLines) { if (line instanceof VCFContigHeaderLine) continue; // skip old contig lines if (line.getKey().equals(VCFHeader.REFERENCE_KEY)) continue; // skip the old reference key lines.add(line); } for (final VCFHeaderLine contigLine : makeContigHeaderLines(refDict, referenceFile)) lines.add(contigLine); final String referenceValue; if (referenceFile != null) { if (referenceNameOnly) { final int extensionStart = referenceFile.getName().lastIndexOf('.'); referenceValue = extensionStart == -1 ? referenceFile.getName() : referenceFile.getName().substring(0, extensionStart); } else { referenceValue = "file://" + referenceFile.getAbsolutePath(); } lines.add(new VCFHeaderLine(VCFHeader.REFERENCE_KEY, referenceValue)); } return lines; }
public static Set<VCFHeaderLine> withUpdatedContigsAsLines(final Set<VCFHeaderLine> oldLines, final File referenceFile, final SAMSequenceDictionary refDict, final boolean referenceNameOnly) { final Set<VCFHeaderLine> lines = new LinkedHashSet<>(oldLines.size()); for (final VCFHeaderLine line : oldLines) { if (line instanceof VCFContigHeaderLine) continue; // skip old contig lines if (line.getKey().equals(VCFHeader.REFERENCE_KEY)) continue; // skip the old reference key lines.add(line); } for (final VCFHeaderLine contigLine : makeContigHeaderLines(refDict, referenceFile)) lines.add(contigLine); final String referenceValue; if (referenceFile != null) { if (referenceNameOnly) { final int extensionStart = referenceFile.getName().lastIndexOf('.'); referenceValue = extensionStart == -1 ? referenceFile.getName() : referenceFile.getName().substring(0, extensionStart); } else { referenceValue = "file://" + referenceFile.getAbsolutePath(); } lines.add(new VCFHeaderLine(VCFHeader.REFERENCE_KEY, referenceValue)); } return lines; }
public static Set<VCFHeaderLine> withUpdatedContigsAsLines(final Set<VCFHeaderLine> oldLines, final File referenceFile, final SAMSequenceDictionary refDict, boolean referenceNameOnly) { final Set<VCFHeaderLine> lines = new LinkedHashSet<VCFHeaderLine>(oldLines.size()); for ( final VCFHeaderLine line : oldLines ) { if ( line instanceof VCFContigHeaderLine ) continue; // skip old contig lines if ( line.getKey().equals(VCFHeader.REFERENCE_KEY) ) continue; // skip the old reference key lines.add(line); } for ( final VCFHeaderLine contigLine : makeContigHeaderLines(refDict, referenceFile) ) lines.add(contigLine); String referenceValue; if (referenceFile != null) { if (referenceNameOnly) { int extensionStart = referenceFile.getName().lastIndexOf("."); referenceValue = extensionStart == -1 ? referenceFile.getName() : referenceFile.getName().substring(0, extensionStart); } else { referenceValue = "file://" + referenceFile.getAbsolutePath(); } lines.add(new VCFHeaderLine(VCFHeader.REFERENCE_KEY, referenceValue)); } return lines; }