JAL-2316 Separate label/db name in UrlProviders. Unit test updates.
[jalview.git] / src / jalview / urls / CustomUrlProvider.java
index 0471e4b..07f4068 100644 (file)
@@ -37,7 +37,6 @@ import java.util.List;
 import java.util.Map;
 import java.util.Map.Entry;
 import java.util.StringTokenizer;
-import java.util.Vector;
 
 /**
  * 
@@ -130,7 +129,7 @@ public class CustomUrlProvider extends UrlProviderImpl
         {
           url = url + SEP + st.nextToken();
         }
-        urls.put(name, new UrlLink(name + SEP + url));
+        urls.put(name, new UrlLink(name, url, name));
       }
     }
     upgradeOldLinks(urls);
@@ -150,7 +149,8 @@ public class CustomUrlProvider extends UrlProviderImpl
     {
       Map.Entry<String, String> pair = it.next();
       urls.put(pair.getKey(),
-              new UrlLink(pair.getKey() + SEP + pair.getValue()));
+ new UrlLink(pair.getKey(), pair.getValue(),
+              pair.getKey()));
     }
     upgradeOldLinks(urls);
     return urls;
@@ -165,14 +165,16 @@ public class CustomUrlProvider extends UrlProviderImpl
     if (urls.containsKey(SRS_LABEL))
     {
       urls.remove(SRS_LABEL);
-      urls.put(UrlConstants.DEFAULT_LABEL, new UrlLink(UrlConstants.DEFAULT_STRING));
+      UrlLink link = new UrlLink(UrlConstants.DEFAULT_STRING);
+      link.setLabel(UrlConstants.DEFAULT_LABEL);
+      urls.put(UrlConstants.DEFAULT_LABEL, link);
     }
   }
 
   @Override
-  public Vector<String> getLinksForMenu()
+  public List<String> getLinksForMenu()
   {
-    Vector<String> links = new Vector<String>();
+    List<String> links = new ArrayList<String>();
     Iterator<Map.Entry<String, UrlLink>> it = selectedUrls.entrySet()
             .iterator();
     while (it.hasNext())
@@ -295,12 +297,14 @@ public class CustomUrlProvider extends UrlProviderImpl
         if (link.getIsSelected())
         {
           selurls.put(link.getId(),
-                  new UrlLink(link.getName() + SEP + link.getUrl()));
+                  new UrlLink(link.getDescription(), link.getUrl(), link.getDescription()));
         }
         else
         {
-          unselurls.put(link.getId(), new UrlLink(link.getName() + SEP
-                  + link.getUrl()));
+          unselurls
+                  .put(link.getId(),
+                          new UrlLink(link.getDescription(), link.getUrl(), link
+                                  .getDescription()));
         }
         // sort out primary and selected ids
         if (link.getIsPrimary())
@@ -321,8 +325,9 @@ public class CustomUrlProvider extends UrlProviderImpl
     if ((!nonselectedUrls.containsKey(UrlConstants.DEFAULT_LABEL))
             && (!selectedUrls.containsKey(UrlConstants.DEFAULT_LABEL)))
     {
-      selectedUrls.put(UrlConstants.DEFAULT_LABEL, new UrlLink(
-              UrlConstants.DEFAULT_STRING));
+      UrlLink link = new UrlLink(UrlConstants.DEFAULT_STRING);
+      link.setLabel(UrlConstants.DEFAULT_LABEL);
+      selectedUrls.put(UrlConstants.DEFAULT_LABEL, link);
     }
     primaryUrl = UrlConstants.DEFAULT_LABEL;
     return UrlConstants.DEFAULT_LABEL;