git://source.jalview.org
/
jalview.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
839949d
)
JAL-1117 alleviate lock starvation
author
jprocter
<jprocter@compbio.dundee.ac.uk>
Sun, 1 Jul 2012 16:02:51 +0000
(17:02 +0100)
committer
jprocter
<jprocter@compbio.dundee.ac.uk>
Sun, 1 Jul 2012 16:02:51 +0000
(17:02 +0100)
src/jalview/gui/FeatureRenderer.java
patch
|
blob
|
history
src/jalview/gui/FeatureSettings.java
patch
|
blob
|
history
src/jalview/gui/Jalview2XML.java
patch
|
blob
|
history
src/jalview/io/FeaturesFile.java
patch
|
blob
|
history
diff --git
a/src/jalview/gui/FeatureRenderer.java
b/src/jalview/gui/FeatureRenderer.java
index
2db75bf
..
0aee327
100755
(executable)
--- a/
src/jalview/gui/FeatureRenderer.java
+++ b/
src/jalview/gui/FeatureRenderer.java
@@
-18,6
+18,7
@@
package jalview.gui;
import java.util.*;
package jalview.gui;
import java.util.*;
+import java.util.concurrent.ConcurrentHashMap;
import java.awt.*;
import java.awt.event.*;
import java.awt.*;
import java.awt.event.*;
@@
-52,12
+53,12
@@
public class FeatureRenderer implements jalview.api.FeatureRenderer
FontMetrics fm;
int charOffset;
FontMetrics fm;
int charOffset;
-
- Hashtable featureColours = new Hashtable();
+
+ Map featureColours = new ConcurrentHashMap();
// A higher level for grouping features of a
// particular type
// A higher level for grouping features of a
// particular type
- Hashtable featureGroups = new Hashtable();
+ Map featureGroups = new ConcurrentHashMap();
// This is actually an Integer held in the hashtable,
// Retrieved using the key feature type
// This is actually an Integer held in the hashtable,
// Retrieved using the key feature type
@@
-85,13
+86,13
@@
public class FeatureRenderer implements jalview.api.FeatureRenderer
{
String[] renderOrder;
{
String[] renderOrder;
- Hashtable featureGroups;
+ Map featureGroups;
- Hashtable featureColours;
+ Map featureColours;
float transparency;
float transparency;
- Hashtable featureOrder;
+ Map featureOrder;
public FeatureRendererSettings(String[] renderOrder,
Hashtable featureGroups, Hashtable featureColours,
public FeatureRendererSettings(String[] renderOrder,
Hashtable featureGroups, Hashtable featureColours,
@@
-113,9
+114,9
@@
public class FeatureRenderer implements jalview.api.FeatureRenderer
public FeatureRendererSettings(FeatureRenderer fr)
{
renderOrder = null;
public FeatureRendererSettings(FeatureRenderer fr)
{
renderOrder = null;
- featureGroups = new Hashtable();
- featureColours = new Hashtable();
- featureOrder = new Hashtable();
+ featureGroups = new ConcurrentHashMap();
+ featureColours = new ConcurrentHashMap();
+ featureOrder = new ConcurrentHashMap();
if (fr.renderOrder != null)
{
this.renderOrder = new String[fr.renderOrder.length];
if (fr.renderOrder != null)
{
this.renderOrder = new String[fr.renderOrder.length];
@@
-124,16
+125,16
@@
public class FeatureRenderer implements jalview.api.FeatureRenderer
}
if (fr.featureGroups != null)
{
}
if (fr.featureGroups != null)
{
- this.featureGroups = new Hashtable(fr.featureGroups);
+ this.featureGroups = new ConcurrentHashMap(fr.featureGroups);
}
if (fr.featureColours != null)
{
}
if (fr.featureColours != null)
{
- this.featureColours = new Hashtable(fr.featureColours);
+ this.featureColours = new ConcurrentHashMap(fr.featureColours);
}
}
- Enumeration en = fr.featureColours.keys();
- while (en.hasMoreElements())
+ Iterator en = fr.featureColours.keySet().iterator();
+ while (en.hasNext())
{
{
- Object next = en.nextElement();
+ Object next = en.next();
Object val = featureColours.get(next);
if (val instanceof GraduatedColor)
{
Object val = featureColours.get(next);
if (val instanceof GraduatedColor)
{
@@
-144,7
+145,7
@@
public class FeatureRenderer implements jalview.api.FeatureRenderer
this.transparency = fr.transparency;
if (fr.featureOrder != null)
{
this.transparency = fr.transparency;
if (fr.featureOrder != null)
{
- this.featureOrder = new Hashtable(fr.featureOrder);
+ this.featureOrder = new ConcurrentHashMap(fr.featureOrder);
}
}
}
}
}
}
@@
-1403,7
+1404,7
@@
public class FeatureRenderer implements jalview.api.FeatureRenderer
}
}
- Hashtable featureOrder = null;
+ Map featureOrder = null;
/**
* analogous to colour - store a normalized ordering for all feature types in
/**
* analogous to colour - store a normalized ordering for all feature types in
diff --git
a/src/jalview/gui/FeatureSettings.java
b/src/jalview/gui/FeatureSettings.java
index
35690a9
..
1928382
100755
(executable)
--- a/
src/jalview/gui/FeatureSettings.java
+++ b/
src/jalview/gui/FeatureSettings.java
@@
-714,13
+714,13
@@
public class FeatureSettings extends JPanel
PrintWriter out = new PrintWriter(new OutputStreamWriter(
new FileOutputStream(choice), "UTF-8"));
PrintWriter out = new PrintWriter(new OutputStreamWriter(
new FileOutputStream(choice), "UTF-8"));
- Enumeration e = fr.featureColours.keys();
+ Iterator e = fr.featureColours.keySet().iterator();
float[] sortOrder = new float[fr.featureColours.size()];
String[] sortTypes = new String[fr.featureColours.size()];
int i = 0;
float[] sortOrder = new float[fr.featureColours.size()];
String[] sortTypes = new String[fr.featureColours.size()];
int i = 0;
- while (e.hasMoreElements())
+ while (e.hasNext())
{
{
- sortTypes[i] = e.nextElement().toString();
+ sortTypes[i] = e.next().toString();
sortOrder[i] = fr.getOrder(sortTypes[i]);
i++;
}
sortOrder[i] = fr.getOrder(sortTypes[i]);
i++;
}
@@
-1134,13
+1134,13
@@
public class FeatureSettings extends JPanel
if (fr.featureGroups != null)
{
if (fr.featureGroups != null)
{
- Enumeration en = fr.featureGroups.keys();
+ Iterator en = fr.featureGroups.keySet().iterator();
gps = new String[fr.featureColours.size()];
int g = 0;
boolean valid = false;
gps = new String[fr.featureColours.size()];
int g = 0;
boolean valid = false;
- while (en.hasMoreElements())
+ while (en.hasNext())
{
{
- String gp = (String) en.nextElement();
+ String gp = (String) en.next();
Boolean on = (Boolean) fr.featureGroups.get(gp);
if (on != null && on.booleanValue())
{
Boolean on = (Boolean) fr.featureGroups.get(gp);
if (on != null && on.booleanValue())
{
diff --git
a/src/jalview/gui/Jalview2XML.java
b/src/jalview/gui/Jalview2XML.java
index
14650a9
..
45bab7c
100644
(file)
--- a/
src/jalview/gui/Jalview2XML.java
+++ b/
src/jalview/gui/Jalview2XML.java
@@
-1162,11
+1162,11
@@
public class Jalview2XML
}
// Make sure we save none displayed feature settings
}
// Make sure we save none displayed feature settings
- Enumeration en = ap.seqPanel.seqCanvas.getFeatureRenderer().featureColours
- .keys();
- while (en.hasMoreElements())
+ Iterator en = ap.seqPanel.seqCanvas.getFeatureRenderer().featureColours
+ .keySet().iterator();
+ while (en.hasNext())
{
{
- String key = en.nextElement().toString();
+ String key = en.next().toString();
if (settingsAdded.contains(key))
{
continue;
if (settingsAdded.contains(key))
{
continue;
@@
-1187,11
+1187,11
@@
public class Jalview2XML
fs.addSetting(setting);
settingsAdded.addElement(key);
}
fs.addSetting(setting);
settingsAdded.addElement(key);
}
- en = ap.seqPanel.seqCanvas.getFeatureRenderer().featureGroups.keys();
+ en = ap.seqPanel.seqCanvas.getFeatureRenderer().featureGroups.keySet().iterator();
Vector groupsAdded = new Vector();
Vector groupsAdded = new Vector();
- while (en.hasMoreElements())
+ while (en.hasNext())
{
{
- String grp = en.nextElement().toString();
+ String grp = en.next().toString();
if (groupsAdded.contains(grp))
{
continue;
if (groupsAdded.contains(grp))
{
continue;
diff --git
a/src/jalview/io/FeaturesFile.java
b/src/jalview/io/FeaturesFile.java
index
2ac0e13
..
23723c7
100755
(executable)
--- a/
src/jalview/io/FeaturesFile.java
+++ b/
src/jalview/io/FeaturesFile.java
@@
-92,7
+92,7
@@
public class FeaturesFile extends AlignFile
* @return true if features were added
\r
*/
\r
public boolean parse(AlignmentI align,
\r
* @return true if features were added
\r
*/
\r
public boolean parse(AlignmentI align,
\r
- Hashtable colours, boolean removeHTML, boolean relaxedIdMatching)
\r
+ Map colours, boolean removeHTML, boolean relaxedIdMatching)
\r
{
\r
return parse(align, colours, null, removeHTML, relaxedIdMatching);
\r
}
\r
{
\r
return parse(align, colours, null, removeHTML, relaxedIdMatching);
\r
}
\r
@@
-105,8
+105,8
@@
public class FeaturesFile extends AlignFile
* @param removeHTML - process html strings into plain text
\r
* @return true if features were added
\r
*/
\r
* @param removeHTML - process html strings into plain text
\r
* @return true if features were added
\r
*/
\r
- public boolean parse(AlignmentI align, Hashtable colours,
\r
- Hashtable featureLink, boolean removeHTML)
\r
+ public boolean parse(AlignmentI align, Map colours,
\r
+ Map featureLink, boolean removeHTML)
\r
{
\r
return parse(align, colours, featureLink, removeHTML, false);
\r
}
\r
{
\r
return parse(align, colours, featureLink, removeHTML, false);
\r
}
\r
@@
-122,7
+122,7
@@
public class FeaturesFile extends AlignFile
* @return true if features were added
\r
*/
\r
public boolean parse(AlignmentI align,
\r
* @return true if features were added
\r
*/
\r
public boolean parse(AlignmentI align,
\r
- Hashtable colours, Hashtable featureLink, boolean removeHTML, boolean relaxedIdmatching)
\r
+ Map colours, Map featureLink, boolean removeHTML, boolean relaxedIdmatching)
\r
{
\r
\r
String line = null;
\r
{
\r
\r
String line = null;
\r
@@
-136,7
+136,7
@@
public class FeaturesFile extends AlignFile
StringTokenizer st;
\r
SequenceFeature sf;
\r
String featureGroup = null, groupLink = null;
\r
StringTokenizer st;
\r
SequenceFeature sf;
\r
String featureGroup = null, groupLink = null;
\r
- Hashtable typeLink = new Hashtable();
\r
+ Map typeLink = new Hashtable();
\r
/**
\r
* when true, assume GFF style features rather than Jalview style.
\r
*/
\r
/**
\r
* when true, assume GFF style features rather than Jalview style.
\r
*/
\r