Clover icon

jalviewX

  1. Project Clover database Wed Oct 31 2018 15:13:58 GMT
  2. Package jalview.datamodel

File DBRefSource.java

 

Coverage histogram

../../img/srcFileCovDistChart10.png
0% of files have more coverage

Code metrics

4
9
1
1
162
55
4
0.44
9
1
4

Classes

Class Line # Actions
DBRefSource 43 9 4 1
0.928571492.9%
 

Contributing tests

This file is covered by 58 tests. .

Source view

1    /*
2    * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$)
3    * Copyright (C) $$Year-Rel$$ The Jalview Authors
4    *
5    * This file is part of Jalview.
6    *
7    * Jalview is free software: you can redistribute it and/or
8    * modify it under the terms of the GNU General Public License
9    * as published by the Free Software Foundation, either version 3
10    * of the License, or (at your option) any later version.
11    *
12    * Jalview is distributed in the hope that it will be useful, but
13    * WITHOUT ANY WARRANTY; without even the implied warranty
14    * of MERCHANTABILITY or FITNESS FOR A PARTICULAR
15    * PURPOSE. See the GNU General Public License for more details.
16    *
17    * You should have received a copy of the GNU General Public License
18    * along with Jalview. If not, see <http://www.gnu.org/licenses/>.
19    * The Jalview Authors are detailed in the 'AUTHORS' file.
20    */
21    package jalview.datamodel;
22   
23    import java.lang.reflect.Field;
24    import java.util.ArrayList;
25    import java.util.List;
26   
27    /**
28    * BH 2018 SwingJS note: If additional final static Strings are added to this
29    * file, they should be added to public static final String[] allTypes.
30    *
31    * Defines internal constants for unambiguous annotation of DbRefEntry source
32    * strings and describing the data retrieved from external database sources (see
33    * jalview.ws.DbSourcProxy) <br/>
34    * TODO: replace with ontology to allow recognition of particular attributes
35    * (e.g. protein coding, alignment (ortholog db, paralog db, domain db),
36    * genomic, transcriptomic, 3D structure providing (PDB, MODBASE, etc) ..).
37    *
38    *
39    *
40    * @author JimP
41    *
42    */
 
43    public class DBRefSource
44    {
45   
46   
47   
48    /**
49    * UNIPROT Accession Number
50    */
51    public static final String UNIPROT = "UNIPROT";
52   
53    /**
54    * UNIPROT Entry Name
55    */
56    public static final String UP_NAME = "UNIPROT_NAME".toUpperCase();
57   
58    /**
59    * Uniprot Knowledgebase/TrEMBL as served from EMBL protein products.
60    */
61    public static final String UNIPROTKB = "UniProtKB/TrEMBL".toUpperCase();
62   
63    public static final String EMBLCDSProduct = "EMBLCDSProtein".toUpperCase();
64   
65   
66    /**
67    * PDB Entry Code
68    */
69    public static final String PDB = "PDB";
70   
71    /**
72    * EMBL ID
73    */
74    public static final String EMBL = "EMBL";
75   
76    /**
77    * EMBLCDS ID
78    */
79    public static final String EMBLCDS = "EMBLCDS";
80   
81   
82    /**
83    * PFAM ID
84    */
85    public static final String PFAM = "PFAM";
86   
87    /**
88    * RFAM ID
89    */
90    public static final String RFAM = "RFAM";
91   
92    /**
93    * GeneDB ID
94    */
95    public static final String GENEDB = "GeneDB".toUpperCase();
96   
97   
98    /**
99    * Ensembl
100    */
101    public static final String ENSEMBL = "ENSEMBL";
102   
103    public static final String ENSEMBLGENOMES = "ENSEMBLGENOMES";
104   
105   
106    /**
107    * List of databases whose sequences might have coding regions annotated
108    */
109    public static final String[] DNACODINGDBS = { EMBL, EMBLCDS, GENEDB,
110    ENSEMBL, ENSEMBLGENOMES };
111   
112    public static final String[] CODINGDBS = { EMBLCDS, GENEDB, ENSEMBL };
113   
114    public static final String[] PROTEINDBS = { UNIPROT, UNIPROTKB,
115    EMBLCDSProduct, ENSEMBL }; // Ensembl ENSP* entries are protein
116   
117   
118    public static final String[] allTypes = new String[] {
119    UNIPROT, UP_NAME, UNIPROTKB,
120    EMBLCDSProduct, PDB, EMBL,
121    EMBLCDS, PFAM, RFAM,
122    GENEDB, ENSEMBL, ENSEMBLGENOMES
123    };
124   
125   
126    public static String[] allSourcesFromReflection;
127   
 
128  4562 toggle public static String[] allSources()
129   
130    {
131    /**
132    * @j2sNative
133    *
134    * return C$.allTypes;
135    *
136    */
137   
138    {
139  4562 if (allSourcesFromReflection == null)
140    {
141  1 List<String> src = new ArrayList<>();
142  1 for (Field f : DBRefSource.class.getFields())
143    {
144  18 if (String.class.equals(f.getType()))
145    {
146  12 try
147    {
148  12 src.add((String) f.get(null));
149    } catch (Exception x)
150    {
151  0 x.printStackTrace();
152    }
153    }
154    }
155  1 allSourcesFromReflection = src.toArray(new String[0]);
156    }
157  4562 return allSourcesFromReflection;
158    }
159    }
160   
161   
162    }