// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
//
// Contact: phylosoft @ gmail . com
-// WWW: www.phylosoft.org/forester
+// WWW: https://sites.google.com/site/cmzmasek/home/software/forester
package org.forester.phylogeny.data;
public Annotation( final String ref ) {
if ( ForesterUtil.isEmpty( ref ) ) {
- throw new IllegalArgumentException( "illegal attempt to create Annotation with null or empty reference" );
+ throw new IllegalArgumentException( "annotation reference is empty or null" );
}
- if ( ( ref.indexOf( ':' ) < 1 ) || ( ref.length() < 3 ) ) {
- throw new IllegalArgumentException( "illegal format for Annotation reference: [" + ref + "]" );
+ if ( ( ref.indexOf( ':' ) < 1 ) || ( ref.indexOf( ':' ) > ref.length() - 2 ) || ( ref.length() < 3 ) ) {
+ throw new IllegalArgumentException( "illegal format for annotation reference: [" + ref + "]" );
}
_ref = ref;
init();
}
+ public Annotation() {
+ _ref = "";
+ init();
+ }
+
@Override
public StringBuffer asSimpleText() {
- return new StringBuffer( getDesc() );
+ return new StringBuffer( !ForesterUtil.isEmpty( getRef() ) ? getRef() : getDesc() );
}
@Override
public StringBuffer asText() {
- return new StringBuffer( getDesc() );
+ return asSimpleText();
}
@Override