+ private void preProcessTreesUponReading( final Phylogeny[] phys ) {\r
+ for( final Phylogeny phy : phys ) {\r
+ if ( ( phy != null ) && !phy.isEmpty() ) {\r
+ for( final PhylogenyNodeIterator it = phy.iteratorPreorder(); it.hasNext(); ) {\r
+ final PhylogenyNode n = it.next();\r
+ if ( n.isExternal() ) {\r
+ if ( n.getNodeData().isHasSequence() ) {\r
+ final Sequence s = n.getNodeData().getSequence();\r
+ if ( ForesterUtil.isEmpty( s.getGeneName() ) ) {\r
+ if ( ( s.getAccession() != null )\r
+ && !ForesterUtil.isEmpty( s.getAccession().getValue() ) ) {\r
+ s.setGeneName( s.getAccession().getValue() );\r
+ }\r
+ else if ( !ForesterUtil.isEmpty( n.getName() ) ) {\r
+ s.setGeneName( n.getName() );\r
+ }\r
+ }\r
+ }\r
+ }\r
+ }\r
+ }\r
+ }\r
+ }\r
+\r