import javax.xml.stream.XMLStreamException;
import javax.xml.stream.XMLStreamReader;
-import com.stevesoft.pat.Regex;
import jalview.analysis.SequenceIdMatcher;
-import jalview.bin.Cache;
+import jalview.bin.Console;
import jalview.datamodel.Alignment;
import jalview.datamodel.AlignmentI;
import jalview.datamodel.DBRefEntry;
import jalview.util.DnaUtils;
import jalview.util.MapList;
import jalview.util.MappingUtils;
+import jalview.util.MessageManager;
+import jalview.util.Platform;
import jalview.ws.ebi.EBIFetchClient;
import jalview.xml.binding.embl.EntryType;
import jalview.xml.binding.embl.EntryType.Feature;
import jalview.xml.binding.embl.ROOT;
import jalview.xml.binding.embl.XrefType;
+import com.stevesoft.pat.Regex;
+
/**
* Provides XML binding and parsing of EMBL or EMBLCDS records retrieved from
* (e.g.) {@code https://www.ebi.ac.uk/ena/data/view/x53828&display=xml}.
*
* @deprecated endpoint withdrawn August 2020 (JAL-3692), use EmblFlatfileSource
*/
+@Deprecated
public abstract class EmblXmlSource extends EbiFileRetrievedProxy
{
- private static final Regex ACCESSION_REGEX = new Regex("^[A-Z]+[0-9]+");
+ // TODO: delete class or update tyhis validator for 2.12 style Platform.regex
+ private static final Regex ACCESSION_REGEX = Platform.newRegex("^[A-Z]+[0-9]+");
/*
* JAL-1856 Embl returns this text for query not found
return listToArray(ranges);
} catch (ParseException e)
{
- Cache.log.warn(
+ Console.warn(
String.format("Not parsing inexact CDS location %s in ENA %s",
location, accession));
return new int[] {};
/**
* Truncates (if necessary) the exon intervals to match 3 times the length of
- * the protein; also accepts 3 bases longer (for stop codon not included in
- * protein)
+ * the protein (including truncation for stop codon included in exon)
*
* @param proteinLength
* @param exon
int exonLength = MappingUtils.getLength(Arrays.asList(exon));
/*
- * if exon length matches protein, or is shorter, or longer by the
- * length of a stop codon (3 bases), then leave it unchanged
+ * if exon length matches protein, or is shorter, then leave it unchanged
*/
- if (expectedCdsLength >= exonLength
- || expectedCdsLength == exonLength - 3)
+ if (expectedCdsLength >= exonLength)
{
return exon;
}