private final String _rank;
private final String _id;
public final static String CELLULAR_ORGANISMS = "cellular organisms";
+ public final static String VIRUSES = "Viruses";
public final static UniProtTaxonomy DROSOPHILA_GENUS = new UniProtTaxonomy( new String[] {
CELLULAR_ORGANISMS, EUKARYOTA, "Metazoa", "Arthropoda", "Hexapoda", "Insecta", "Pterygota", "Neoptera",
- "Endopterygota", "Diptera", "Brachycera", "Muscomorpha", "Ephydroidea", "Drosophilidae" },
+ "Endopterygota", "Diptera", "Brachycera", "Muscomorpha", "Ephydroidea", "Drosophilidae", "Drosophila" },
"",
"fruit flies",
"Drosophila",
"7215" );
public final static UniProtTaxonomy XENOPUS_GENUS = new UniProtTaxonomy( new String[] {
CELLULAR_ORGANISMS, EUKARYOTA, "Metazoa", "Chordata", "Craniata", "Vertebrata", "Euteleostomi", "Amphibia",
- "Batrachia", "Anura", "Mesobatrachia", "Pipoidea", "Pipidae", "Xenopodinae" },
+ "Batrachia", "Anura", "Mesobatrachia", "Pipoidea", "Pipidae", "Xenopodinae", "Xenopus" },
"",
"",
"Xenopus",
"8353" );
public final static UniProtTaxonomy CAPITELLA_TELATA_SPECIES = new UniProtTaxonomy( new String[] {
CELLULAR_ORGANISMS, EUKARYOTA, "Metazoa", "Annelida", "Polychaeta", "Scolecida", "Capitellida",
- "Capitellidae", "Capitella" },
+ "Capitellidae", "Capitella", "Capitella teleta" },
"",
"",
"Capitella teleta",
"species",
"283909" );
+ // public final static UniProtTaxonomy NUCLEARIIDAE_AND_FONTICULA = new UniProtTaxonomy( new String[] {
+ // CELLULAR_ORGANISMS, EUKARYOTA, "Nucleariidae and Fonticula group" }, "", "", "", "", "", "1001604" );
public UniProtTaxonomy( final String line ) {
final String[] items = line.split( "\t" );
if ( items.length < 5 ) {
_rank = "";
}
String[] lin = null;
- if ( items.length > 7 ) {
+ if ( items.length > 8 ) {
lin = items[ 8 ].split( "; " );
}
_lineage = new ArrayList<String>();
}
}
for( int i = 0; i < temp.size(); ++i ) {
- if ( i == 0
+ if ( ( i == 0 )
&& ( temp.get( i ).equalsIgnoreCase( EUKARYOTA ) || temp.get( i ).equalsIgnoreCase( BACTERIA ) || temp
.get( i ).equalsIgnoreCase( ARCHAEA ) ) ) {
_lineage.add( CELLULAR_ORGANISMS );
if ( _lineage.isEmpty()
&& ( _scientific_name.equalsIgnoreCase( EUKARYOTA ) || _scientific_name.equalsIgnoreCase( BACTERIA ) || _scientific_name
.equalsIgnoreCase( ARCHAEA ) ) ) {
- System.out.println( " >>>>>>>>>>>>>>>>>>>>>>>>> did it!" );
_lineage.add( CELLULAR_ORGANISMS );
}
_lineage.add( _scientific_name );
_synonym = synonym;
_rank = rank;
_id = id;
+ if ( ( _lineage != null ) && !_lineage.get( _lineage.size() - 1 ).equalsIgnoreCase( _scientific_name ) ) {
+ _lineage.add( _scientific_name );
+ }
}
public UniProtTaxonomy( final String[] lineage,
final String rank,
final String id ) {
_lineage = new ArrayList<String>();
- for( String l : lineage ) {
- _lineage.add( l );
+ if ( lineage != null ) {
+ for( final String l : lineage ) {
+ _lineage.add( l );
+ }
}
_code = code;
_scientific_name = scientific_name;
_synonym = synonym;
_rank = rank;
_id = id;
+ if ( ( _lineage != null ) && !_lineage.get( _lineage.size() - 1 ).equalsIgnoreCase( _scientific_name ) ) {
+ _lineage.add( _scientific_name );
+ }
}
/**
return _lineage;
}
- public String[] getLineageAsArray() {
- String[] str = new String[ _lineage.size() ];
- int i = 0;
- for( String l : _lineage ) {
- str[ i++ ] = l;
- }
- return str;
- }
-
public String getRank() {
return _rank;
}