Author: dmaliarevich
Date: 2011-12-08 10:33:38 -0500 (Thu, 08 Dec 2011)
New Revision: 37119
Modified:
trunk/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/mapping/VpeDomMapping.java
Log:
JBIDE-10412 - Fix VpeDomMapping to use HashMap in clear(nsIDOMNode except) method.
Modified:
trunk/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/mapping/VpeDomMapping.java
===================================================================
---
trunk/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/mapping/VpeDomMapping.java 2011-12-08
15:05:25 UTC (rev 37118)
+++
trunk/vpe/plugins/org.jboss.tools.vpe/src/org/jboss/tools/vpe/editor/mapping/VpeDomMapping.java 2011-12-08
15:33:38 UTC (rev 37119)
@@ -57,17 +57,19 @@
}
}
+ /**
+ * Clear maps of source and visual nodes with their mappings,
+ * except for the specified visual node.
+ *
+ * @param except the node with its mapping to remain in visual map.
+ */
public void clear(nsIDOMNode except) {
- Set<Map.Entry<nsIDOMNode, VpeNodeMapping>> entrySet =
visualMap.entrySet();
- Iterator<Map.Entry<nsIDOMNode, VpeNodeMapping>> iter =
entrySet.iterator();
- while (iter.hasNext()) {
- Map.Entry<nsIDOMNode, VpeNodeMapping> entry = iter.next();
- nsIDOMNode visualNode = entry.getKey();
- if (!visualNode.equals(except)) {
- iter.remove();
- }
+ sourceMap.clear();
+ VpeNodeMapping exceptMapping = visualMap.get(except);
+ visualMap.clear();
+ if (exceptMapping != null) {
+ visualMap.put(except, exceptMapping);
}
- sourceMap.clear();
}
public VpeNodeMapping getNodeMapping(Node node) {
Show replies by date