*/
package jalview.ws.dbsources;
-import com.stevesoft.pat.Regex;
-
import jalview.datamodel.AlignmentI;
import jalview.datamodel.DBRefSource;
-import jalview.ws.seqfetcher.DbSourceProxy;
+import jalview.util.Platform;
+
+import com.stevesoft.pat.Regex;
/**
* @author JimP
*
*/
-public class EmblSource extends EmblXmlSource implements DbSourceProxy
+public class EmblSource extends EmblXmlSource
{
+ private static Regex ACCESSION_REGEX;
+
public EmblSource()
{
- addDbSourceProperty(DBRefSource.DNASEQDB);
- addDbSourceProperty(DBRefSource.CODINGSEQDB);
+ super();
}
/*
*
* @see jalview.ws.DbSourceProxy#getAccessionSeparator()
*/
+ @Override
public String getAccessionSeparator()
{
// TODO Auto-generated method stub
*
* @see jalview.ws.DbSourceProxy#getAccessionValidator()
*/
+ @Override
public Regex getAccessionValidator()
{
- return new com.stevesoft.pat.Regex("^[A-Z]+[0-9]+");
+ if (ACCESSION_REGEX == null)
+ {
+ ACCESSION_REGEX = Platform.newRegex("^[A-Z]+[0-9]+");
+ }
+ return ACCESSION_REGEX;
}
/*
*
* @see jalview.ws.DbSourceProxy#getDbSource()
*/
+ @Override
public String getDbSource()
{
return DBRefSource.EMBL;
*
* @see jalview.ws.DbSourceProxy#getDbVersion()
*/
+ @Override
public String getDbVersion()
{
// TODO Auto-generated method stub
*
* @see jalview.ws.DbSourceProxy#getSequenceRecords(java.lang.String[])
*/
+ @Override
public AlignmentI getSequenceRecords(String queries) throws Exception
{
return getEmblSequenceRecords(DBRefSource.EMBL, queries);
*
* @see jalview.ws.DbSourceProxy#isValidReference(java.lang.String)
*/
+ @Override
public boolean isValidReference(String accession)
{
// most embl refs look like ..
/**
* return LHD_CHICK coding gene
*/
+ @Override
public String getTestQuery()
{
return "X53828";
}
+ @Override
public String getDbName()
{
return "EMBL"; // getDbSource();