aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorJaven O'Neal <onealj@apache.org>2016-06-15 02:56:56 +0000
committerJaven O'Neal <onealj@apache.org>2016-06-15 02:56:56 +0000
commit72de4d1a633d1da5c7b6c57431479d88989b2e9e (patch)
treeaacd8f016f0590edb8030163118512a1827dfe63 /src
parent4bebb8f816ddbdb7556109b4944b0180cfba74b4 (diff)
downloadpoi-72de4d1a633d1da5c7b6c57431479d88989b2e9e.tar.gz
poi-72de4d1a633d1da5c7b6c57431479d88989b2e9e.zip
bug 57840: make it easier to replace _rows implementation (HashMap?) by making it final
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1748482 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'src')
-rw-r--r--src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFSheet.java9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFSheet.java b/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFSheet.java
index 13f6b09165..5b4013b8aa 100644
--- a/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFSheet.java
+++ b/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFSheet.java
@@ -110,7 +110,7 @@ public class XSSFSheet extends POIXMLDocumentPart implements Sheet {
protected CTSheet sheet;
protected CTWorksheet worksheet;
- private SortedMap<Integer, XSSFRow> _rows;
+ private final SortedMap<Integer, XSSFRow> _rows = new TreeMap<Integer, XSSFRow>();
private List<XSSFHyperlink> hyperlinks;
private ColumnHelper columnHelper;
private CommentsTable sheetComments;
@@ -216,7 +216,7 @@ public class XSSFSheet extends POIXMLDocumentPart implements Sheet {
}
private void initRows(CTWorksheet worksheetParam) {
- _rows = new TreeMap<Integer, XSSFRow>();
+ _rows.clear();
tables = new TreeMap<String, XSSFTable>();
sharedFormulas = new HashMap<Integer, CTCellFormula>();
arrayFormulas = new ArrayList<CellRangeAddress>();
@@ -3024,13 +3024,14 @@ public class XSSFSheet extends POIXMLDocumentPart implements Sheet {
rowShifter.updateHyperlinks(shifter);
//rebuild the _rows map
- SortedMap<Integer, XSSFRow> map = new TreeMap<Integer, XSSFRow>();
+ Map<Integer, XSSFRow> map = new HashMap<Integer, XSSFRow>();
for(XSSFRow r : _rows.values()) {
// Performance optimization: explicit boxing is slightly faster than auto-unboxing, though may use more memory
final Integer rownumI = new Integer(r.getRowNum()); // NOSONAR
map.put(rownumI, r);
}
- _rows = map;
+ _rows.clear();
+ _rows.putAll(map);
}
private int shiftedRowNum(int startRow, int endRow, int n, int rownum) {