X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=forester%2Fjava%2Fsrc%2Forg%2Fforester%2Futil%2FForesterUtil.java;h=7492f1e6e957c639e8ddec0f6c18095b78ca4319;hb=5ea47511ea9c077b4b4709bed68ac31d6eee0477;hp=4b8da89028361db2a5b01f18ee71c4634e8cf338;hpb=0898ccf757a9e1b3c10f0a8ad51829eb809d3062;p=jalview.git diff --git a/forester/java/src/org/forester/util/ForesterUtil.java b/forester/java/src/org/forester/util/ForesterUtil.java index 4b8da89..7492f1e 100644 --- a/forester/java/src/org/forester/util/ForesterUtil.java +++ b/forester/java/src/org/forester/util/ForesterUtil.java @@ -50,7 +50,6 @@ import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Collection; import java.util.Date; -import java.util.Iterator; import java.util.List; import java.util.Map; import java.util.Map.Entry; @@ -92,22 +91,7 @@ public final class ForesterUtil { public static final String NCBI_NUCCORE = "http://www.ncbi.nlm.nih.gov/nuccore/"; public final static String UNIPROT_KB = "http://www.uniprot.org/uniprot/"; public static final String NCBI_GI = "http://www.ncbi.nlm.nih.gov/protein/gi:"; - public final static Color DEUTEROSTOMIA_COLOR = new Color( 255, 0, 0 ); - public final static Color PROTOSTOMIA_COLOR = new Color( 204, 0, 0 ); - public final static Color METAZOA_COLOR = new Color( 204, 0, 102 ); - public final static Color HOLOZOA_COLOR = new Color( 127, 0, 255 ); - public final static Color FUNGI_COLOR = new Color( 255, 128, 0 ); - public final static Color HOLOMYCOTA_COLOR = new Color( 204, 102, 0 ); - public final static Color AMOEBOZOA_COLOR = new Color( 255, 0, 255 ); - public final static Color VIRIDPLANTAE_COLOR = new Color( 0, 255, 0 ); - public final static Color RHODOPHYTA_COLOR = new Color( 0, 153, 76 ); - public final static Color HACROBIA_COLOR = new Color( 0, 102, 51 ); - public final static Color STRAMENOPILES_COLOR = new Color( 0, 0, 255 ); - public final static Color ALVEOLATA_COLOR = new Color( 0, 128, 255 ); - public final static Color RHIZARIA_COLOR = new Color( 0, 255, 255 ); - public final static Color EXCAVATA_COLOR = new Color( 204, 204, 0 ); - public final static Color ARCHAEA_COLOR = new Color( 160, 160, 160 ); - public final static Color BACTERIA_COLOR = new Color( 64, 64, 64 ); + public static final String PDB = "http://www.pdb.org/pdb/explore/explore.do?pdbId="; static { final DecimalFormatSymbols dfs = new DecimalFormatSymbols(); dfs.setDecimalSeparator( '.' ); @@ -731,7 +715,7 @@ public final class ForesterUtil { return i; } - final public static SortedMap listToSortedCountsMap( final List list ) { + final public static SortedMap listToSortedCountsMap( final List list ) { final SortedMap map = new TreeMap(); for( final Object key : list ) { if ( !map.containsKey( key ) ) { @@ -771,10 +755,9 @@ public final class ForesterUtil { } } - final public static StringBuffer mapToStringBuffer( final Map map, final String key_value_separator ) { + final public static StringBuffer mapToStringBuffer( final Map map, final String key_value_separator ) { final StringBuffer sb = new StringBuffer(); - for( final Iterator iter = map.keySet().iterator(); iter.hasNext(); ) { - final Object key = iter.next(); + for( final Object key : map.keySet() ) { sb.append( key.toString() ); sb.append( key_value_separator ); sb.append( map.get( key ).toString() ); @@ -1221,4 +1204,162 @@ public final class ForesterUtil { System.err.println(); System.exit( -1 ); } + + public final static Color obtainColorDependingOnTaxonomyGroup( final String tax_group ) { + if ( !ForesterUtil.isEmpty( tax_group ) ) { + if ( tax_group.equals( TaxonomyGroups.DEUTEROSTOMIA ) ) { + return TaxonomyColors.DEUTEROSTOMIA_COLOR; + } + else if ( tax_group.equals( TaxonomyGroups.PROTOSTOMIA ) ) { + return TaxonomyColors.PROTOSTOMIA_COLOR; + } + else if ( tax_group.equals( TaxonomyGroups.CNIDARIA ) ) { + return TaxonomyColors.CNIDARIA_COLOR; + } + else if ( tax_group.equals( TaxonomyGroups.PLACOZOA ) ) { + return TaxonomyColors.PLACOZOA_COLOR; + } + else if ( tax_group.equals( TaxonomyGroups.CTENOPHORA ) ) { + return TaxonomyColors.CTENOPHORA_COLOR; + } + else if ( tax_group.equals( TaxonomyGroups.PORIFERA ) ) { + return TaxonomyColors.PORIFERA_COLOR; + } + else if ( tax_group.equals( TaxonomyGroups.CHOANOFLAGELLIDA ) ) { + return TaxonomyColors.CHOANOFLAGELLIDA; + } + else if ( tax_group.equals( TaxonomyGroups.ICHTHYOPHONIDA_FILASTEREA ) ) { + return TaxonomyColors.ICHTHYOSPOREA_AND_FILASTEREA; + } + else if ( tax_group.equals( TaxonomyGroups.DIKARYA ) ) { + return TaxonomyColors.DIKARYA_COLOR; + } + else if ( tax_group.equalsIgnoreCase( TaxonomyGroups.FUNGI ) + || tax_group.equalsIgnoreCase( TaxonomyGroups.OTHER_FUNGI ) ) { + return TaxonomyColors.OTHER_FUNGI_COLOR; + } + else if ( tax_group.equals( TaxonomyGroups.NUCLEARIIDAE_AND_FONTICULA_GROUP ) ) { + return TaxonomyColors.NUCLEARIIDAE_AND_FONTICULA_GROUP_COLOR; + } + else if ( tax_group.equals( TaxonomyGroups.AMOEBOZOA ) ) { + return TaxonomyColors.AMOEBOZOA_COLOR; + } + else if ( tax_group.equals( TaxonomyGroups.EMBRYOPHYTA ) ) { + return TaxonomyColors.EMBRYOPHYTA_COLOR; + } + else if ( tax_group.equals( TaxonomyGroups.CHLOROPHYTA ) ) { + return TaxonomyColors.CHLOROPHYTA_COLOR; + } + else if ( tax_group.equals( TaxonomyGroups.RHODOPHYTA ) ) { + return TaxonomyColors.RHODOPHYTA_COLOR; + } + else if ( tax_group.equals( TaxonomyGroups.HACROBIA ) ) { + return TaxonomyColors.HACROBIA_COLOR; + } + else if ( tax_group.equals( TaxonomyGroups.GLAUCOCYSTOPHYCEAE ) ) { + return TaxonomyColors.GLAUCOPHYTA_COLOR; + } + else if ( tax_group.equals( TaxonomyGroups.STRAMENOPILES ) ) { + return TaxonomyColors.STRAMENOPILES_COLOR; + } + else if ( tax_group.equals( TaxonomyGroups.ALVEOLATA ) ) { + return TaxonomyColors.ALVEOLATA_COLOR; + } + else if ( tax_group.equals( TaxonomyGroups.RHIZARIA ) ) { + return TaxonomyColors.RHIZARIA_COLOR; + } + else if ( tax_group.equals( TaxonomyGroups.EXCAVATA ) ) { + return TaxonomyColors.EXCAVATA_COLOR; + } + else if ( tax_group.equals( TaxonomyGroups.APUSOZOA ) ) { + return TaxonomyColors.APUSOZOA_COLOR; + } + else if ( tax_group.equals( TaxonomyGroups.ARCHAEA ) ) { + return TaxonomyColors.ARCHAEA_COLOR; + } + else if ( tax_group.equals( TaxonomyGroups.BACTERIA ) ) { + return TaxonomyColors.BACTERIA_COLOR; + } + } + return null; + } + + public final static String obtainNormalizedTaxonomyGroup( final String tax ) { + if ( tax.equalsIgnoreCase( TaxonomyGroups.DEUTEROSTOMIA ) ) { + return TaxonomyGroups.DEUTEROSTOMIA; + } + else if ( tax.equalsIgnoreCase( TaxonomyGroups.PROTOSTOMIA ) ) { + return TaxonomyGroups.PROTOSTOMIA; + } + else if ( tax.equalsIgnoreCase( TaxonomyGroups.CNIDARIA ) ) { + return TaxonomyGroups.CNIDARIA; + } + else if ( tax.toLowerCase().startsWith( "trichoplax" ) || tax.equalsIgnoreCase( TaxonomyGroups.PLACOZOA ) ) { + return TaxonomyGroups.PLACOZOA; + } + else if ( tax.toLowerCase().startsWith( "mnemiopsis" ) || tax.equalsIgnoreCase( TaxonomyGroups.CTENOPHORA ) ) { + return TaxonomyGroups.CTENOPHORA; + } + else if ( tax.toLowerCase().startsWith( "amphimedon" ) || tax.equalsIgnoreCase( TaxonomyGroups.PORIFERA ) ) { + return TaxonomyGroups.PORIFERA; + } + else if ( tax.equalsIgnoreCase( "codonosigidae" ) || tax.equalsIgnoreCase( TaxonomyGroups.CHOANOFLAGELLIDA ) ) { + return TaxonomyGroups.CHOANOFLAGELLIDA; + } + else if ( tax.toLowerCase().startsWith( TaxonomyGroups.ICHTHYOPHONIDA_FILASTEREA ) + || tax.toLowerCase().startsWith( "ichthyophonida and filasterea" ) + || tax.toLowerCase().startsWith( "ichthyosporea & filasterea" ) + || tax.toLowerCase().startsWith( "ichthyosporea and filasterea" ) ) { + return TaxonomyGroups.ICHTHYOPHONIDA_FILASTEREA; + } + else if ( tax.equalsIgnoreCase( TaxonomyGroups.DIKARYA ) ) { + return TaxonomyGroups.DIKARYA; + } + else if ( tax.equalsIgnoreCase( TaxonomyGroups.FUNGI ) || tax.equalsIgnoreCase( TaxonomyGroups.OTHER_FUNGI ) ) { + return TaxonomyGroups.OTHER_FUNGI; + } + else if ( tax.toLowerCase().startsWith( "nucleariidae and fonticula" ) ) { + return TaxonomyGroups.NUCLEARIIDAE_AND_FONTICULA_GROUP; + } + else if ( tax.equalsIgnoreCase( TaxonomyGroups.AMOEBOZOA ) ) { + return TaxonomyGroups.AMOEBOZOA; + } + else if ( tax.equalsIgnoreCase( TaxonomyGroups.EMBRYOPHYTA ) ) { + return TaxonomyGroups.EMBRYOPHYTA; + } + else if ( tax.equalsIgnoreCase( TaxonomyGroups.CHLOROPHYTA ) ) { + return TaxonomyGroups.CHLOROPHYTA; + } + else if ( tax.equalsIgnoreCase( TaxonomyGroups.RHODOPHYTA ) ) { + return TaxonomyGroups.RHODOPHYTA; + } + else if ( tax.toLowerCase().startsWith( TaxonomyGroups.HACROBIA ) ) { + return TaxonomyGroups.HACROBIA; + } + else if ( tax.equalsIgnoreCase( TaxonomyGroups.GLAUCOCYSTOPHYCEAE ) || tax.equalsIgnoreCase( "glaucophyta" ) ) { + return TaxonomyGroups.GLAUCOCYSTOPHYCEAE; + } + else if ( tax.equalsIgnoreCase( TaxonomyGroups.STRAMENOPILES ) ) { + return TaxonomyGroups.STRAMENOPILES; + } + else if ( tax.equalsIgnoreCase( TaxonomyGroups.ALVEOLATA ) ) { + return TaxonomyGroups.ALVEOLATA; + } + else if ( tax.equalsIgnoreCase( TaxonomyGroups.RHIZARIA ) ) { + return TaxonomyGroups.RHIZARIA; + } + else if ( tax.equalsIgnoreCase( TaxonomyGroups.EXCAVATA ) ) { + return TaxonomyGroups.EXCAVATA; + } + else if ( tax.equalsIgnoreCase( TaxonomyGroups.APUSOZOA ) ) { + return TaxonomyGroups.APUSOZOA; + } + else if ( tax.equalsIgnoreCase( TaxonomyGroups.ARCHAEA ) ) { + return TaxonomyGroups.ARCHAEA; + } + else if ( tax.equalsIgnoreCase( TaxonomyGroups.BACTERIA ) ) { + return TaxonomyGroups.BACTERIA; + } + return null; + } }