git://source.jalview.org
/
jalview.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
JAL-4187 JAL-629 JAL-3830 adjustments to Cygwin and WSL parts of bash launcher script...
[jalview.git]
/
src
/
jalview
/
ws
/
dbsources
/
EmblXmlSource.java
diff --git
a/src/jalview/ws/dbsources/EmblXmlSource.java
b/src/jalview/ws/dbsources/EmblXmlSource.java
index
6b6f2ec
..
034ea4f
100644
(file)
--- a/
src/jalview/ws/dbsources/EmblXmlSource.java
+++ b/
src/jalview/ws/dbsources/EmblXmlSource.java
@@
-28,6
+28,7
@@
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Hashtable;
import java.util.List;
import java.util.Arrays;
import java.util.Hashtable;
import java.util.List;
+import java.util.Locale;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Map;
import java.util.Map.Entry;
@@
-42,7
+43,7
@@
import javax.xml.stream.XMLStreamReader;
import com.stevesoft.pat.Regex;
import jalview.analysis.SequenceIdMatcher;
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.datamodel.Alignment;
import jalview.datamodel.AlignmentI;
import jalview.datamodel.DBRefEntry;
@@
-63,12
+64,6
@@
import jalview.xml.binding.embl.EntryType.Feature.Qualifier;
import jalview.xml.binding.embl.ROOT;
import jalview.xml.binding.embl.XrefType;
import jalview.xml.binding.embl.ROOT;
import jalview.xml.binding.embl.XrefType;
-/**
- * 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
- */
public abstract class EmblXmlSource extends EbiFileRetrievedProxy
{
private static final Regex ACCESSION_REGEX = new Regex("^[A-Z]+[0-9]+");
public abstract class EmblXmlSource extends EbiFileRetrievedProxy
{
private static final Regex ACCESSION_REGEX = new Regex("^[A-Z]+[0-9]+");
@@
-102,14
+97,14
@@
public abstract class EmblXmlSource extends EbiFileRetrievedProxy
try
{
reply = dbFetch.fetchDataAsFile(
try
{
reply = dbFetch.fetchDataAsFile(
- emprefx.toLowerCase() + ":" + query.trim(), "display=xml",
- "xml");
+ emprefx.toLowerCase(Locale.ROOT) + ":" + query.trim(),
+ "display=xml", "xml");
} catch (Exception e)
{
stopQuery();
throw new Exception(
String.format("EBI EMBL XML retrieval failed for %s:%s",
} catch (Exception e)
{
stopQuery();
throw new Exception(
String.format("EBI EMBL XML retrieval failed for %s:%s",
- emprefx.toLowerCase(), query.trim()),
+ emprefx.toLowerCase(Locale.ROOT), query.trim()),
e);
}
return getEmblSequenceRecords(emprefx, query, reply);
e);
}
return getEmblSequenceRecords(emprefx, query, reply);
@@
-453,9
+448,8
@@
public abstract class EmblXmlSource extends EbiFileRetrievedProxy
else
{
// final product length truncation check
else
{
// final product length truncation check
- int[] cdsRanges = adjustForProteinLength(translationLength,
- exons);
- dnaToProteinMapping = new Mapping(product, cdsRanges,
+ int[] exons2 = adjustForProteinLength(translationLength, exons);
+ dnaToProteinMapping = new Mapping(product, exons2,
new int[]
{ 1, translationLength }, 3, 1);
if (product != null)
new int[]
{ 1, translationLength }, 3, 1);
if (product != null)
@@
-574,6
+568,7
@@
public abstract class EmblXmlSource extends EbiFileRetrievedProxy
proteinSeq = new Sequence(proteinSeqName,
product.getSequenceAsString());
matcher.add(proteinSeq);
proteinSeq = new Sequence(proteinSeqName,
product.getSequenceAsString());
matcher.add(proteinSeq);
+ proteinSeq.setDescription(product.getDescription());
peptides.add(proteinSeq);
}
dnaToProteinMapping.setTo(proteinSeq);
peptides.add(proteinSeq);
}
dnaToProteinMapping.setTo(proteinSeq);
@@
-663,7
+658,7
@@
public abstract class EmblXmlSource extends EbiFileRetrievedProxy
return listToArray(ranges);
} catch (ParseException e)
{
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[] {};
String.format("Not parsing inexact CDS location %s in ENA %s",
location, accession));
return new int[] {};
@@
-756,8
+751,7
@@
public abstract class EmblXmlSource extends EbiFileRetrievedProxy
/**
* Truncates (if necessary) the exon intervals to match 3 times the length of
/**
* 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
*
* @param proteinLength
* @param exon
@@
-774,11
+768,9
@@
public abstract class EmblXmlSource extends EbiFileRetrievedProxy
int exonLength = MappingUtils.getLength(Arrays.asList(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;
}
{
return exon;
}