JAL-2316 Unit test updates and associated minor changes and fixes.
[jalview.git] / src / jalview / util / UrlLink.java
index b8e3eeb..186b682 100644 (file)
@@ -21,6 +21,8 @@
 package jalview.util;
 
 import static jalview.util.UrlConstants.DB_ACCESSION;
+import static jalview.util.UrlConstants.DELIM;
+import static jalview.util.UrlConstants.SEP;
 import static jalview.util.UrlConstants.SEQUENCE_ID;
 
 import jalview.datamodel.DBRefEntry;
@@ -43,11 +45,6 @@ public class UrlLink
    * documentation todo.
    */
 
-  // Internal constants
-  private static final String SEP = "|";
-
-  private static final String DELIM = "$";
-
   private String urlSuffix;
 
   private String urlPrefix;
@@ -104,8 +101,17 @@ public class UrlLink
 
     label = label.trim();
     target = target.trim();
-    target = target.toUpperCase(); // DBRefEntry uppercases DB names
-    // NB getCanonicalName might be better but does not currently change case
+  }
+
+  /**
+   * Alternative constructor for separate name and link
+   * 
+   * @param name
+   * @param url
+   */
+  public UrlLink(String name, String url)
+  {
+    this(name + SEP + url);
   }
 
   /**
@@ -140,6 +146,16 @@ public class UrlLink
     return label;
   }
 
+  public String getUrlWithToken()
+  {
+    String var = (usesDBaccession ? DB_ACCESSION : SEQUENCE_ID);
+
+    return urlPrefix
+            + (dynamic ? (DELIM + var + ((regexReplace != null) ? "="
+                    + regexReplace + "=" + DELIM : DELIM)) : "")
+            + ((urlSuffix == null) ? "" : urlSuffix);
+  }
+
   /**
    * @return the regexReplace
    */
@@ -309,14 +325,7 @@ public class UrlLink
   @Override
   public String toString()
   {
-    String var = (usesDBaccession ? DB_ACCESSION : SEQUENCE_ID);
-
-    return label
-            + SEP
-            + urlPrefix
-            + (dynamic ? (DELIM + var + ((regexReplace != null) ? "="
-                    + regexReplace + "=" + DELIM : DELIM)) : "")
-            + ((urlSuffix == null) ? "" : urlSuffix);
+    return label + SEP + getUrlWithToken();
   }
 
   /**