* A base class for Ensembl sequence fetchers
*
* @author gmcarstairs
- *
*/
-public abstract class EnsemblSequenceFetcher extends DbSourceProxyImpl
+abstract class EnsemblSequenceFetcher extends DbSourceProxyImpl
{
/*
- * possible values for the 'feature' parameter of the REST overlap endpoint
- * @see
+ * accepts ENSG/T/E/P with 11 digits
+ * or ENSMUSP or similar for other species
+ * or CCDSnnnnn.nn with at least 3 digits
+ */
+ private static final Regex ACCESSION_REGEX = new Regex(
+ "(ENS([A-Z]{3}|)[GTEP]{1}[0-9]{11}$)" + "|" + "(CCDS[0-9.]{3,}$)");
+
+ /*
+ * possible values for the 'feature' parameter of the /overlap REST service
+ * @see http://rest.ensembl.org/documentation/info/overlap_id
*/
protected enum EnsemblFeatureType
{
return " ";
}
+ /**
+ * Ensembl accession are ENST + 11 digits for human transcript, ENSG for human
+ * gene. Other species insert 3 letters e.g. ENSMUST..., ENSMUSG...
+ *
+ * @see http://www.ensembl.org/Help/View?id=151
+ */
@Override
public Regex getAccessionValidator()
{
- return new Regex("((ENSP|ENST|ENSG|CCDS)[0-9.]{3,})");
+ return ACCESSION_REGEX;
}
@Override