JAL-722 updated from 2.11.2 develop branch - needs further work before release
[jalview.git] / src / jalview / io / AlignFile.java
index 3202ac9..48f65cf 100755 (executable)
@@ -22,9 +22,10 @@ package jalview.io;
 
 import java.io.IOException;
 import java.util.ArrayList;
-import java.util.Enumeration;
 import java.util.Hashtable;
 import java.util.List;
+import java.util.Map;
+import java.util.Map.Entry;
 import java.util.Vector;
 
 import jalview.datamodel.AlignmentAnnotation;
@@ -66,7 +67,7 @@ public abstract class AlignFile extends FileParse
   /**
    * Properties to be added to generated alignment object
    */
-  private Hashtable properties;
+  private Map<String, String> properties;
 
   long start;
 
@@ -288,13 +289,11 @@ public abstract class AlignFile extends FileParse
    */
   public void addProperties(AlignmentI al)
   {
-    if (properties != null && properties.size() > 0)
+    if (properties != null)
     {
-      Enumeration keys = properties.keys();
-      Enumeration vals = properties.elements();
-      while (keys.hasMoreElements())
+      for (Entry<String, String> prop : properties.entrySet())
       {
-        al.setProperty(keys.nextElement(), vals.nextElement());
+        al.setProperty(prop.getKey(), prop.getValue());
       }
     }
   }
@@ -309,12 +308,12 @@ public abstract class AlignFile extends FileParse
    * @param value
    *          - non-null value
    */
-  protected void setAlignmentProperty(Object key, Object value)
+  protected void setAlignmentProperty(String key, String value)
   {
     if (key == null)
     {
-      throw new Error(MessageManager.getString(
-              "error.implementation_error_cannot_have_null_alignment"));
+      throw new Error(
+              "Implementation error: Cannot have null alignment property key.");
     }
     if (value == null)
     {
@@ -322,12 +321,12 @@ public abstract class AlignFile extends FileParse
     }
     if (properties == null)
     {
-      properties = new Hashtable();
+      properties = new Hashtable<>();
     }
     properties.put(key, value);
   }
 
-  protected Object getAlignmentProperty(Object key)
+  protected String getAlignmentProperty(String key)
   {
     if (properties != null && key != null)
     {
@@ -341,9 +340,9 @@ public abstract class AlignFile extends FileParse
    */
   protected void initData()
   {
-    seqs = new Vector<SequenceI>();
-    annotations = new Vector<AlignmentAnnotation>();
-    seqGroups = new ArrayList<SequenceGroup>();
+    seqs = new Vector<>();
+    annotations = new Vector<>();
+    seqGroups = new ArrayList<>();
     parseCalled = false;
   }
 
@@ -356,7 +355,7 @@ public abstract class AlignFile extends FileParse
   @Override
   public void setSeqs(SequenceI[] s)
   {
-    seqs = new Vector<SequenceI>();
+    seqs = new Vector<>();
 
     for (int i = 0; i < s.length; i++)
     {
@@ -427,7 +426,7 @@ public abstract class AlignFile extends FileParse
   {
     if (newickStrings == null)
     {
-      newickStrings = new Vector<String[]>();
+      newickStrings = new Vector<>();
     }
     newickStrings.addElement(new String[] { treeName, newickString });
   }