X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fws%2Fdbsources%2FRfam.java;h=98df1662f4ac847fc332d98d818dcbd2a1ca0644;hb=57738a1f3c19b1c3a00bd3ac5108f8cd0af32f99;hp=f050b7d9d97e05265eafc068ed43f75f9c9f7493;hpb=b57a02c25e335d033c97f8a6bacd6b54f62bd2b6;p=jalview.git diff --git a/src/jalview/ws/dbsources/Rfam.java b/src/jalview/ws/dbsources/Rfam.java index f050b7d..98df166 100644 --- a/src/jalview/ws/dbsources/Rfam.java +++ b/src/jalview/ws/dbsources/Rfam.java @@ -1,40 +1,61 @@ /* - * Jalview - A Sequence Alignment Editor and Viewer (Version 2.7) - * Copyright (C) 2011 J Procter, AM Waterhouse, J Engelhardt, LM Lui, G Barton, M Clamp, S Searle + * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$) + * Copyright (C) $$Year-Rel$$ The Jalview Authors * * This file is part of Jalview. * * Jalview is free software: you can redistribute it and/or * modify it under the terms of the GNU General Public License - * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. - * + * as published by the Free Software Foundation, either version 3 + * of the License, or (at your option) any later version. + * * Jalview is distributed in the hope that it will be useful, but * WITHOUT ANY WARRANTY; without even the implied warranty * of MERCHANTABILITY or FITNESS FOR A PARTICULAR * PURPOSE. See the GNU General Public License for more details. * - * You should have received a copy of the GNU General Public License along with Jalview. If not, see . + * You should have received a copy of the GNU General Public License + * along with Jalview. If not, see . + * The Jalview Authors are detailed in the 'AUTHORS' file. */ package jalview.ws.dbsources; -import com.stevesoft.pat.Regex; +import jalview.bin.Cache; +import jalview.datamodel.DBRefSource; +import jalview.util.Platform; -import jalview.ws.seqfetcher.DbSourceProxy; +import com.stevesoft.pat.Regex; /** * Contains methods for fetching sequences from Rfam database * * @author Lauren Michelle Lui */ -abstract public class Rfam extends Xfam implements DbSourceProxy +abstract public class Rfam extends Xfam { + static final String RFAM_BASEURL_KEY = "RFAM_BASEURL"; + + private static final String DEFAULT_RFAM_BASEURL = "https://rfam.xfam.org"; + + static + { + Platform.addJ2SDirectDatabaseCall(DEFAULT_RFAM_BASEURL); + } + + /* + * append to URLs to retrieve as a gzipped file + */ + protected static final String GZIPPED = "?gzip=1&download=1"; + + @Override + protected String getURLPrefix() + { + return Cache.getDefault(RFAM_BASEURL_KEY, DEFAULT_RFAM_BASEURL); + } public Rfam() { super(); - // all extensions of this RFAM source base class are DOMAINDB sources - addDbSourceProperty(jalview.datamodel.DBRefSource.DOMAINDB); - addDbSourceProperty(jalview.datamodel.DBRefSource.ALIGNMENTDB); } /* @@ -43,9 +64,9 @@ abstract public class Rfam extends Xfam implements DbSourceProxy * @see jalview.ws.DbSourceProxy#getAccessionSeparator() Left here for * consistency with Pfam class */ + @Override public String getAccessionSeparator() { - // TODO Auto-generated method stub return null; } @@ -54,9 +75,9 @@ abstract public class Rfam extends Xfam implements DbSourceProxy * * @see jalview.ws.DbSourceProxy#getAccessionValidator() * Left here for */ + @Override public Regex getAccessionValidator() { - // TODO Auto-generated method stub return null; } @@ -80,23 +101,15 @@ abstract public class Rfam extends Xfam implements DbSourceProxy @Override public String getDbVersion() { - // TODO Auto-generated method stub return null; } - /** - * Returns base URL for selected Rfam alignment type - * - * @return RFAM URL stub for this DbSource - */ - @Override - protected abstract String getXFAMURL(); - /* * (non-Javadoc) * * @see jalview.ws.DbSourceProxy#isValidReference(java.lang.String) */ + @Override public boolean isValidReference(String accession) { return accession.indexOf("RF") == 0; @@ -107,9 +120,10 @@ abstract public class Rfam extends Xfam implements DbSourceProxy * * @see jalview.ws.dbsources.Xfam#getXfamSource() */ + @Override public String getXfamSource() { - return jalview.datamodel.DBRefSource.RFAM; + return DBRefSource.RFAM; } }