in progress...
[jalview.git] / forester / java / src / org / forester / clade_analysis / Prefix.java
index 8adb85b..009c63f 100644 (file)
@@ -1,25 +1,55 @@
+
 package org.forester.clade_analysis;
 
+import java.math.BigDecimal;
+import java.text.DecimalFormat;
+
+public final class Prefix {
+
+    private final static DecimalFormat df = new DecimalFormat( "0.0###" );
+    private final String               _prefix;
+    private final BigDecimal           _confidence;
+    private final String               _separator;
+    private final String               _first;
+
+    public Prefix( final String prefix, final String confidence, final String separator ) {
+        _prefix = prefix;
+        _confidence = new BigDecimal( confidence );
+        _separator = separator;
+        if ( _prefix.indexOf( _separator ) < 0 ) {
+            _first = _prefix;
+        }
+        else {
+            _first = _prefix.substring( 0, _prefix.indexOf( _separator ) );
+        }
+    }
 
-final class Prefix {
-    final String _prefix;
-    final double _confidence;
-    
-    Prefix( final String prefix, final double confidence ) {
+    public Prefix( final String prefix, final double confidence, final String separator ) {
         _prefix = prefix;
-        _confidence = confidence;
+        _confidence = new BigDecimal( confidence );
+        _separator = separator;
+        if ( _prefix.indexOf( _separator ) < 0 ) {
+            _first = _prefix;
+        }
+        else {
+            _first = _prefix.substring( 0, _prefix.indexOf( _separator ) );
+        }
     }
 
-    
-   String getPrefix() {
+    public String getPrefix() {
         return _prefix;
     }
 
-    
-    double getConfidence() {
-        return _confidence;
+    public String getPrefixFirstElement() {
+        return _first;
+    }
+
+    public double getConfidence() {
+        return _confidence.doubleValue();
+    }
+
+    @Override
+    public String toString() {
+        return getPrefix() + ": " + df.format( getConfidence() );
     }
-    
-    
-    
 }