import org.forester.io.parsers.phyloxml.PhyloXmlMapping;
import org.forester.io.parsers.phyloxml.PhyloXmlUtil;
import org.forester.util.ForesterUtil;
+import org.forester.util.TaxonomyUtil;
public class Taxonomy implements PhylogenyData, MultipleUris, Comparable<Taxonomy> {
}
public void setRank( final String rank ) throws PhyloXmlDataFormatException {
- if ( !ForesterUtil.isEmpty( rank ) && !PhyloXmlUtil.TAXONOMY_RANKS_SET.contains( rank ) ) {
+ if ( !ForesterUtil.isEmpty( rank ) && !TaxonomyUtil.TAXONOMY_RANKS_SET.contains( rank ) ) {
throw new PhyloXmlDataFormatException( "illegal rank: [" + rank + "]" );
}
_rank = rank;
&& !PhyloXmlUtil.TAXOMONY_CODE_PATTERN.matcher( taxonomy_code ).matches() ) {
throw new PhyloXmlDataFormatException( "illegal taxonomy code: [" + taxonomy_code + "]" );
}
- //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- //TODO FIXME (added on 13-11-18) remove me eventually
- if ( taxonomy_code.equals( "ACIBL" ) ) {
- taxonomy_code = "KORVE";
- }
- else if ( taxonomy_code.equals( "PYRKO" ) ) {
- taxonomy_code = "THEKO";
- }
- //TODO FIXME (added on 13-11-18) remove me eventually
- //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
_taxonomy_code = taxonomy_code;
}
}
}
}
- if ( getLineage() != null ) {
- final StringBuilder sb = new StringBuilder();
- boolean first = true;
- for( final String lin : getLineage() ) {
- if ( !ForesterUtil.isEmpty( lin ) ) {
- if ( first ) {
- first = false;
- }
- else {
- sb.append( "," );
- }
- sb.append( lin );
- }
- }
- if ( sb.length() > 0 ) {
- PhylogenyDataUtil.appendElement( writer, PhyloXmlMapping.TAXONOMY_LINEAGE, sb.toString(), indentation );
- }
- }
writer.write( ForesterUtil.LINE_SEPARATOR );
writer.write( indentation );
PhylogenyDataUtil.appendClose( writer, PhyloXmlMapping.TAXONOMY );