From 857a40730ad5db87bfc7a381924717a2162c2b81 Mon Sep 17 00:00:00 2001 From: jprocter Date: Fri, 28 Oct 2011 15:06:02 +0100 Subject: [PATCH] JAL-580 ensure WUSS annotation is reparsed if necessary and cope with parse errors --- src/jalview/analysis/Rna.java | 1 + src/jalview/analysis/WUSSParseException.java | 19 +++++++++++++++++++ 2 files changed, 20 insertions(+) create mode 100644 src/jalview/analysis/WUSSParseException.java diff --git a/src/jalview/analysis/Rna.java b/src/jalview/analysis/Rna.java index 66bccb9..ca3c6d5 100644 --- a/src/jalview/analysis/Rna.java +++ b/src/jalview/analysis/Rna.java @@ -44,6 +44,7 @@ public class Rna * pair, end is close base pair */ public static SequenceFeature[] GetBasePairs(String line) + public static SequenceFeature[] GetBasePairs(CharSequence line) throws WUSSParseException { Vector stack = new Vector(); diff --git a/src/jalview/analysis/WUSSParseException.java b/src/jalview/analysis/WUSSParseException.java new file mode 100644 index 0000000..c8ade0c --- /dev/null +++ b/src/jalview/analysis/WUSSParseException.java @@ -0,0 +1,19 @@ +package jalview.analysis; + +public class WUSSParseException extends Exception { + private long problemPos; + public WUSSParseException(long problemPos) + { + this("Invalid WUSS Notation", problemPos); + } + public WUSSParseException(String message, long problemPos) + { + super(message+" at or near position "+problemPos); + this.problemPos=problemPos; + } + public long getProblemPos() + { + return problemPos; + } + +} \ No newline at end of file -- 1.7.10.2