From 835bfe5f8db6ebcfbe3e6803b8cae636a39905e2 Mon Sep 17 00:00:00 2001 From: tcarver <tjc> Date: Tue, 20 Dec 2011 16:14:14 +0000 Subject: [PATCH] fix for writing filter lines in VCF header --- .../artemis/components/variant/AbstractVCFReader.java | 7 ++++--- uk/ac/sanger/artemis/components/variant/FilteredPanel.java | 6 +++++- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/uk/ac/sanger/artemis/components/variant/AbstractVCFReader.java b/uk/ac/sanger/artemis/components/variant/AbstractVCFReader.java index 88e7f79de..b2888ef46 100644 --- a/uk/ac/sanger/artemis/components/variant/AbstractVCFReader.java +++ b/uk/ac/sanger/artemis/components/variant/AbstractVCFReader.java @@ -170,9 +170,10 @@ public abstract class AbstractVCFReader return; } - TabixReader tr = new TabixReader(vcfFileName); + final TabixReader tr = new TabixReader(vcfFileName); String line; boolean headerEnd = true; + while ((line = tr.readLine()) != null) { if(line.startsWith("##")) @@ -183,7 +184,7 @@ public abstract class AbstractVCFReader } else if(headerEnd) { - writer.write(FilteredPanel.getHeader()+"\n"); + writer.write(FilteredPanel.getHeader()); headerEnd = false; } @@ -220,7 +221,7 @@ public abstract class AbstractVCFReader { if(str.startsWith("#CHROM")) { - buff.append(filterLines+"\n"); + buff.append(filterLines); buff.append(str+"\n"); } else diff --git a/uk/ac/sanger/artemis/components/variant/FilteredPanel.java b/uk/ac/sanger/artemis/components/variant/FilteredPanel.java index 5f0d81952..967e4a85d 100644 --- a/uk/ac/sanger/artemis/components/variant/FilteredPanel.java +++ b/uk/ac/sanger/artemis/components/variant/FilteredPanel.java @@ -169,7 +169,11 @@ import javax.swing.border.Border; while(filterStr.hasMoreElements()) { RecordFilter recFilter = filters.get(filterStr.nextElement()); - buff.append(recFilter.getHeaderLine().toString()); + buff.append("##FILTER=<ID="); + buff.append(recFilter.getHeaderLine().getID()); + buff.append(",Description=\""); + buff.append(recFilter.toString()); + buff.append("\">\n"); } return buff.toString(); } -- GitLab