- }
- int size = 0;
- if ( ( optz.getExtDescNodeDataToReturn() != NODE_DATA.SEQUENCE_MOL_SEQ )
- && ( optz.getExtDescNodeDataToReturn() != NODE_DATA.SEQUENCE_MOL_SEQ_FASTA ) ) {
- for( final Entry<String, Integer> e : map.entrySet() ) {
- final String v = e.getKey();
- final Object c = e.getValue();
- sb.append( v );
- sb.append( "\t" );
- sb.append( c );
- sb.append( ForesterUtil.LINE_SEPARATOR );
+ if ( ( optz.getExtDescNodeDataToReturn() == NodeDataField.DOMAINS_ALL )
+ || ( optz.getExtDescNodeDataToReturn() == NodeDataField.DOMAINS_COLLAPSED_PER_PROTEIN )
+ || ( optz.getExtDescNodeDataToReturn() == NodeDataField.SEQ_ANNOTATIONS ) ) {
+ final ArrayList<StringInt> sis = new ArrayList<StringInt>();
+ for( final Entry<String, Integer> e : map.entrySet() ) {
+ sis.add( new StringInt( e.getKey(), e.getValue() ) );
+ }
+ Collections.sort( sis, new StringInt.DescendingIntComparator() );
+ for( final StringInt si : sis ) {
+ sb.append( si.getString() );
+ sb.append( "\t" );
+ sb.append( si.getInt() );
+ sb.append( ForesterUtil.LINE_SEPARATOR );
+ }
+ }
+ else {
+ for( final Entry<String, Integer> e : map.entrySet() ) {
+ final String v = e.getKey();
+ final Object c = e.getValue();
+ sb.append( v );
+ sb.append( "\t" );
+ sb.append( c );
+ sb.append( ForesterUtil.LINE_SEPARATOR );
+ }