Author: fanningpj
Date: Sun Jun 19 11:02:01 2022
New Revision: 1902057
URL: http://svn.apache.org/viewvc?rev=1902057&view=rev
Log:
remove use of some calls to deprecated cursor dispose()
Modified:
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/ooxml/util/XPathHelper.java
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/poifs/crypt/dsig/SignatureLine.java
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/poifs/crypt/dsig/facets/XAdESSignatureFacet.java
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/draw/geom/XSLFPath.java
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/usermodel/XSLFChart.java
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/usermodel/XSLFColor.java
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/usermodel/XSLFFreeformShape.java
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/usermodel/XSLFGraphicFrame.java
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/usermodel/XSLFObjectShape.java
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/usermodel/XSLFPictureShape.java
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/usermodel/XSLFPropertiesDelegate.java
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/usermodel/XSLFShape.java
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/usermodel/XSLFSheet.java
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/usermodel/XSLFTable.java
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/usermodel/XSLFTextParagraph.java
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/XSSFDrawing.java
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/XSSFGraphicFrame.java
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/XSSFObjectData.java
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/XSSFRichTextString.java
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/XSSFSheet.java
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/XSSFTableStyle.java
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/XSSFVMLDrawing.java
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/helpers/XSSFPasswordHelper.java
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xwpf/usermodel/XWPFComment.java
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xwpf/usermodel/XWPFHeaderFooter.java
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xwpf/usermodel/XWPFParagraph.java
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xwpf/usermodel/XWPFSDTContent.java
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xwpf/usermodel/XWPFSDTContentCell.java
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xwpf/usermodel/XWPFTableCell.java
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xwpf/usermodel/XWPFTableRow.java
poi/trunk/poi-ooxml/src/test/java/org/apache/poi/xslf/usermodel/TestXSLFExamples.java
Modified:
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/ooxml/util/XPathHelper.java
URL:
http://svn.apache.org/viewvc/poi/trunk/poi-ooxml/src/main/java/org/apache/poi/ooxml/util/XPathHelper.java?rev=1902057&r1=1902056&r2=1902057&view=diff
==============================================================================
---
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/ooxml/util/XPathHelper.java
(original)
+++
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/ooxml/util/XPathHelper.java
Sun Jun 19 11:02:01 2022
@@ -109,9 +109,8 @@ public final class XPathHelper {
public static <T extends XmlObject> T selectProperty(XmlObject
startObject, Class<T> resultClass, XSLFShape.ReparseFactory<T> factory,
QName[]... path)
throws XmlException {
XmlObject xo = startObject;
- XmlCursor cur = xo.newCursor();
XmlCursor innerCur = null;
- try {
+ try (XmlCursor cur = startObject.newCursor()) {
innerCur = selectProperty(cur, path, 0, factory != null, false);
if (innerCur == null) {
return null;
@@ -133,9 +132,8 @@ public final class XPathHelper {
return (T)xo;
} finally {
- cur.dispose();
if (innerCur != null) {
- innerCur.dispose();
+ innerCur.close();
}
}
}
@@ -187,22 +185,17 @@ public final class XPathHelper {
for (int i=0; i<choices; i++) {
// TODO: check [Requires] attribute of [Choice] element, if we can
handle the content
AlternateContentDocument.AlternateContent.Choice choice =
alterCont.getChoiceArray(i);
- XmlCursor cCur = choice.newCursor();
XmlCursor innerCur = null;
- try {
+ try (XmlCursor cCur = choice.newCursor()) {
String requiresNS =
cCur.namespaceForPrefix(choice.getRequires());
if (MAC_DML_NS.equalsIgnoreCase(requiresNS)) {
// Mac DML usually contains PDFs ...
continue;
}
innerCur = selectProperty(cCur, path, offset,
reparseAlternate, true);
- if (innerCur != null) {
+ if (innerCur != null && innerCur != cCur) {
return innerCur;
}
- } finally {
- if (innerCur != cCur) {
- cCur.dispose();
- }
}
}
@@ -217,7 +210,7 @@ public final class XPathHelper {
return innerCur;
} finally {
if (innerCur != fCur) {
- fCur.dispose();
+ fCur.close();
}
}
}
Modified:
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/poifs/crypt/dsig/SignatureLine.java
URL:
http://svn.apache.org/viewvc/poi/trunk/poi-ooxml/src/main/java/org/apache/poi/poifs/crypt/dsig/SignatureLine.java?rev=1902057&r1=1902056&r2=1902057&view=diff
==============================================================================
---
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/poifs/crypt/dsig/SignatureLine.java
(original)
+++
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/poifs/crypt/dsig/SignatureLine.java
Sun Jun 19 11:02:01 2022
@@ -195,10 +195,10 @@ public abstract class SignatureLine {
}
public void setSignatureShape(CTSignatureLine signatureLine) {
- XmlCursor cur = signatureLine.newCursor();
- cur.toParent();
- this.signatureShape = (CTShape)cur.getObject();
- cur.dispose();
+ try (XmlCursor cur = signatureLine.newCursor()) {
+ cur.toParent();
+ this.signatureShape = (CTShape)cur.getObject();
+ }
}
public void updateSignatureConfig(SignatureConfig config) throws
IOException {
@@ -231,12 +231,9 @@ public abstract class SignatureLine {
setSuggestedSigner(signatureLine.getSuggestedsigner());
setSuggestedSigner2(signatureLine.getSuggestedsigner2());
setSuggestedSignerEmail(signatureLine.getSuggestedsigneremail());
- XmlCursor cur = signatureLine.newCursor();
- try {
+ try (XmlCursor cur = signatureLine.newCursor()) {
// the signinginstructions are actually qualified, but our schema
version is too old
setSigningInstructions(cur.getAttributeText(new
QName(MS_OFFICE_URN, "signinginstructions")));
- } finally {
- cur.dispose();
}
}
@@ -260,14 +257,14 @@ public abstract class SignatureLine {
CTGroup grp = CTGroup.Factory.newInstance();
grp.addNewShape();
- XmlCursor contCur = signatureContainer.newCursor();
- contCur.toEndToken();
- XmlCursor otherC = grp.newCursor();
- otherC.copyXmlContents(contCur);
- otherC.dispose();
- contCur.toPrevSibling();
- signatureShape = (CTShape)contCur.getObject();
- contCur.dispose();
+ try (XmlCursor contCur = signatureContainer.newCursor()) {
+ contCur.toEndToken();
+ try (XmlCursor otherC = grp.newCursor()) {
+ otherC.copyXmlContents(contCur);
+ }
+ contCur.toPrevSibling();
+ signatureShape = (CTShape)contCur.getObject();
+ }
signatureShape.setAlt("Microsoft Office Signature Line...");
signatureShape.setStyle("width:191.95pt;height:96.05pt");
@@ -298,9 +295,9 @@ public abstract class SignatureLine {
xsl.setProvid("{00000000-0000-0000-0000-000000000000}");
xsl.setExt(STExt.EDIT);
xsl.setSigninginstructionsset(STTrueFalse.T);
- XmlCursor cur = xsl.newCursor();
- cur.setAttributeText(new QName(MS_OFFICE_URN,
"signinginstructions"), signingInstructions);
- cur.dispose();
+ try (XmlCursor cur = xsl.newCursor()) {
+ cur.setAttributeText(new QName(MS_OFFICE_URN,
"signinginstructions"), signingInstructions);
+ }
} catch (IOException | InvalidFormatException e) {
// shouldn't happen ...
throw new POIXMLException("Can't generate signature line image",
e);
Modified:
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/poifs/crypt/dsig/facets/XAdESSignatureFacet.java
URL:
http://svn.apache.org/viewvc/poi/trunk/poi-ooxml/src/main/java/org/apache/poi/poifs/crypt/dsig/facets/XAdESSignatureFacet.java?rev=1902057&r1=1902056&r2=1902057&view=diff
==============================================================================
---
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/poifs/crypt/dsig/facets/XAdESSignatureFacet.java
(original)
+++
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/poifs/crypt/dsig/facets/XAdESSignatureFacet.java
Sun Jun 19 11:02:01 2022
@@ -351,21 +351,20 @@ public class XAdESSignatureFacet impleme
}
protected static void insertXChild(XmlObject root, XmlObject child) {
- XmlCursor rootCursor = root.newCursor();
- rootCursor.toEndToken();
- XmlCursor childCursor = child.newCursor();
- childCursor.toNextToken();
- childCursor.moveXml(rootCursor);
- childCursor.dispose();
- rootCursor.dispose();
+ try (XmlCursor rootCursor = root.newCursor()) {
+ rootCursor.toEndToken();
+ try (XmlCursor childCursor = child.newCursor()) {
+ childCursor.toNextToken();
+ childCursor.moveXml(rootCursor);
+ }
+ }
}
/**
* Workaround for Document.importNode, which causes SIGSEGV in JDK14
(Ubuntu)
*/
private static Element importNode(Document document, XmlObject xo) {
- XmlCursor cur = xo.newCursor();
- try {
+ try (XmlCursor cur = xo.newCursor()) {
QName elName = cur.getName();
Element lastNode =
document.createElementNS(elName.getNamespaceURI(), elName.getLocalPart());
while (cur.hasNextToken()) {
@@ -415,8 +414,6 @@ public class XAdESSignatureFacet impleme
}
}
return lastNode;
- } finally {
- cur.dispose();
}
}
}
\ No newline at end of file
Modified:
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/draw/geom/XSLFPath.java
URL:
http://svn.apache.org/viewvc/poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/draw/geom/XSLFPath.java?rev=1902057&r1=1902056&r2=1902057&view=diff
==============================================================================
---
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/draw/geom/XSLFPath.java
(original)
+++
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/draw/geom/XSLFPath.java
Sun Jun 19 11:02:01 2022
@@ -56,8 +56,7 @@ public class XSLFPath implements PathIf
@Override
public Path2D.Double getPath(Context ctx) {
Path2D.Double path2D = new Path2D.Double();
- XmlCursor cur = pathXml.newCursor();
- try {
+ try (XmlCursor cur = pathXml.newCursor()) {
for (boolean hasNext = cur.toFirstChild(); hasNext; hasNext =
cur.toNextSibling()) {
XmlObject xo = cur.getObject();
PathCommand pc;
@@ -78,8 +77,6 @@ public class XSLFPath implements PathIf
}
pc.execute(path2D, ctx);
}
- } finally {
- cur.dispose();
}
return path2D;
}
Modified:
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/usermodel/XSLFChart.java
URL:
http://svn.apache.org/viewvc/poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/usermodel/XSLFChart.java?rev=1902057&r1=1902056&r2=1902057&view=diff
==============================================================================
---
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/usermodel/XSLFChart.java
(original)
+++
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/usermodel/XSLFChart.java
Sun Jun 19 11:02:01 2022
@@ -138,13 +138,10 @@ public final class XSLFChart extends XDD
xfrm.setOff(off);
CTGraphicalObjectData gr = frame.addNewGraphic().addNewGraphicData();
- XmlCursor grCur = gr.newCursor();
- try {
+ try (XmlCursor grCur = gr.newCursor()) {
grCur.toNextToken();
grCur.beginElement(new QName(CHART_URI, "chart"));
grCur.insertAttributeWithValue("id",
PackageRelationshipTypes.CORE_PROPERTIES_ECMA376_NS, rID);
- } finally {
- grCur.dispose();
}
gr.setUri(CHART_URI);
Modified:
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/usermodel/XSLFColor.java
URL:
http://svn.apache.org/viewvc/poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/usermodel/XSLFColor.java?rev=1902057&r1=1902056&r2=1902057&view=diff
==============================================================================
---
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/usermodel/XSLFColor.java
(original)
+++
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/usermodel/XSLFColor.java
Sun Jun 19 11:02:01 2022
@@ -141,9 +141,8 @@ public class XSLFColor {
return _phClr == null ? null : toColor(_phClr, theme);
}
- final XmlCursor cur = obj.newCursor();
Color color = null;
- try {
+ try (XmlCursor cur = obj.newCursor()) {
XmlObject ch;
for (int idx=0; color == null && (ch = nextObject(obj, cur, idx))
!= null; idx++) {
if (ch instanceof CTHslColor) {
@@ -162,8 +161,6 @@ public class XSLFColor {
throw new IllegalArgumentException("Unexpected color
choice: " + ch.getClass());
}
}
- } finally {
- cur.dispose();
}
return color;
}
@@ -254,8 +251,7 @@ public class XSLFColor {
if (obj == null) {
continue;
}
- XmlCursor cur = obj.newCursor();
- try {
+ try (XmlCursor cur = obj.newCursor()) {
if (!(
cur.toChild(XSLFRelation.NS_DRAWINGML, elem) ||
(cur.toFirstChild() &&
cur.toChild(XSLFRelation.NS_DRAWINGML, elem))
@@ -266,8 +262,6 @@ public class XSLFColor {
if (str != null && !"".equals(str)) {
return Integer.parseInt(str);
}
- } finally {
- cur.dispose();
}
}
return -1;
Modified:
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/usermodel/XSLFFreeformShape.java
URL:
http://svn.apache.org/viewvc/poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/usermodel/XSLFFreeformShape.java?rev=1902057&r1=1902056&r2=1902057&view=diff
==============================================================================
---
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/usermodel/XSLFFreeformShape.java
(original)
+++
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/usermodel/XSLFFreeformShape.java
Sun Jun 19 11:02:01 2022
@@ -143,9 +143,8 @@ public class XSLFFreeformShape extends X
}
final CTCustomGeometry2D geom = ((CTShapeProperties)xo).getCustGeom();
- for(CTPath2D spPath : geom.getPathLst().getPathArray()){
- XmlCursor cursor = spPath.newCursor();
- try {
+ for(CTPath2D spPath : geom.getPathLst().getPathArray()) {
+ try (XmlCursor cursor = spPath.newCursor()) {
if (cursor.toFirstChild()) {
do {
final XmlObject ch = cursor.getObject();
@@ -164,8 +163,6 @@ public class XSLFFreeformShape extends X
}
} while (cursor.toNextSibling());
}
- } finally {
- cursor.dispose();
}
}
Modified:
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/usermodel/XSLFGraphicFrame.java
URL:
http://svn.apache.org/viewvc/poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/usermodel/XSLFGraphicFrame.java?rev=1902057&r1=1902056&r2=1902057&view=diff
==============================================================================
---
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/usermodel/XSLFGraphicFrame.java
(original)
+++
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/usermodel/XSLFGraphicFrame.java
Sun Jun 19 11:02:01 2022
@@ -190,12 +190,9 @@ public class XSLFGraphicFrame extends XS
String xpath = "declare namespace c='" + DRAWINGML_CHART_URI + "'
c:chart";
XmlObject[] obj = getGraphicalData().selectPath(xpath);
if (obj != null && obj.length == 1) {
- XmlCursor c = obj[0].newCursor();
- try {
+ try (XmlCursor c = obj[0].newCursor()) {
QName idQualifiedName = new
QName(CORE_PROPERTIES_ECMA376_NS, "id");
id = c.getAttributeText(idQualifiedName);
- } finally {
- c.dispose();
}
}
if (id == null) {
@@ -230,8 +227,7 @@ public class XSLFGraphicFrame extends XS
String xpath = "declare namespace c='" + DRAWINGML_CHART_URI + "'
c:chart";
XmlObject[] obj = objData.selectPath(xpath);
if (obj != null && obj.length == 1) {
- XmlCursor c = obj[0].newCursor();
- try {
+ try (XmlCursor c = obj[0].newCursor()) {
// duplicate chart with embedded workbook
QName idQualifiedName = new QName(CORE_PROPERTIES_ECMA376_NS,
"id");
String id = c.getAttributeText(idQualifiedName);
@@ -254,8 +250,6 @@ public class XSLFGraphicFrame extends XS
}
} catch (InvalidFormatException | IOException e) {
throw new POIXMLException(e);
- } finally {
- c.dispose();
}
}
}
@@ -265,10 +259,8 @@ public class XSLFGraphicFrame extends XS
String xpath = "declare namespace dgm='" + DRAWINGML_DIAGRAM_URI + "'
$this//dgm:relIds";
XmlObject[] obj = objData.selectPath(xpath);
if(obj != null && obj.length == 1) {
- XmlCursor c = obj[0].newCursor();
-
XSLFSheet sheet = srcShape.getSheet();
- try {
+ try (XmlCursor c = obj[0].newCursor()) {
String dm = c.getAttributeText(new
QName(CORE_PROPERTIES_ECMA376_NS, "dm"));
PackageRelationship dmRel =
sheet.getPackagePart().getRelationship(dm);
PackagePart dmPart =
sheet.getPackagePart().getRelatedPart(dmRel);
@@ -291,8 +283,6 @@ public class XSLFGraphicFrame extends XS
} catch (InvalidFormatException e){
throw new POIXMLException(e);
- } finally {
- c.dispose();
}
}
}
Modified:
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/usermodel/XSLFObjectShape.java
URL:
http://svn.apache.org/viewvc/poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/usermodel/XSLFObjectShape.java?rev=1902057&r1=1902056&r2=1902057&view=diff
==============================================================================
---
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/usermodel/XSLFObjectShape.java
(original)
+++
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/usermodel/XSLFObjectShape.java
Sun Jun 19 11:02:01 2022
@@ -250,8 +250,7 @@ public class XSLFObjectShape extends XSL
frame.addNewXfrm();
CTGraphicalObjectData gr = frame.addNewGraphic().addNewGraphicData();
gr.setUri(OLE_URI);
- XmlCursor grCur = gr.newCursor();
- try {
+ try (XmlCursor grCur = gr.newCursor()) {
grCur.toEndToken();
grCur.beginElement(new QName(PML_NS, "oleObj"));
grCur.insertElement(new QName(PML_NS, "embed"));
@@ -281,15 +280,10 @@ public class XSLFObjectShape extends XSL
spPr.addNewPrstGeom().setPrst(STShapeType.RECT);
- XmlCursor picCur = grpShp.newCursor();
- try {
+ try (XmlCursor picCur = grpShp.newCursor()) {
picCur.toStartDoc();
picCur.moveXmlContents(grCur);
- } finally {
- picCur.dispose();
}
- } finally {
- grCur.dispose();
}
return frame;
Modified:
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/usermodel/XSLFPictureShape.java
URL:
http://svn.apache.org/viewvc/poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/usermodel/XSLFPictureShape.java?rev=1902057&r1=1902056&r2=1902057&view=diff
==============================================================================
---
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/usermodel/XSLFPictureShape.java
(original)
+++
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/usermodel/XSLFPictureShape.java
Sun Jun 19 11:02:01 2022
@@ -240,14 +240,11 @@ public class XSLFPictureShape extends XS
if (bitmapId == -1) {
extBitmap = extLst.addNewExt();
extBitmap.setUri(BITMAP_URI);
- XmlCursor cur = extBitmap.newCursor();
- try {
+ try (XmlCursor cur = extBitmap.newCursor()) {
cur.toEndToken();
cur.beginElement(new QName(MS_DML_NS, "useLocalDpi", "a14"));
cur.insertNamespace("a14", MS_DML_NS);
cur.insertAttributeWithValue("val", "0");
- } finally {
- cur.dispose();
}
}
@@ -263,14 +260,11 @@ public class XSLFPictureShape extends XS
CTOfficeArtExtension svgBitmap = extLst.addNewExt();
svgBitmap.setUri(SVG_URI);
- XmlCursor cur = svgBitmap.newCursor();
- try {
+ try (XmlCursor cur = svgBitmap.newCursor()) {
cur.toEndToken();
cur.beginElement(new QName(MS_SVG_NS, "svgBlip", "asvg"));
cur.insertNamespace("asvg", MS_SVG_NS);
cur.insertAttributeWithValue(EMBED_TAG, svgRelId);
- } finally {
- cur.dispose();
}
}
@@ -337,14 +331,11 @@ public class XSLFPictureShape extends XS
int size = extLst.sizeOfExtArray();
for (int i = 0; i < size; i++) {
- XmlCursor cur = extLst.getExtArray(i).newCursor();
- try {
+ try (XmlCursor cur = extLst.getExtArray(i).newCursor()) {
if (cur.toChild(MS_SVG_NS, "svgBlip")) {
String svgRelId = cur.getAttributeText(EMBED_TAG);
return (svgRelId != null) ? (XSLFPictureData)
getSheet().getRelationById(svgRelId) : null;
}
- } finally {
- cur.dispose();
}
}
return null;
@@ -431,13 +422,10 @@ public class XSLFPictureShape extends XS
String xpath = "declare namespace a14='"+ MS_DML_NS +"'
$this//a14:imgProps/a14:imgLayer";
XmlObject[] obj = ext.selectPath(xpath);
if(obj != null && obj.length == 1) {
- XmlCursor c = obj[0].newCursor();
- try {
+ try (XmlCursor c = obj[0].newCursor()) {
String id = c.getAttributeText(EMBED_TAG);
String newId = getSheet().importBlip(id, p.getSheet());
c.setAttributeText(EMBED_TAG, newId);
- } finally {
- c.dispose();
}
}
}
Modified:
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/usermodel/XSLFPropertiesDelegate.java
URL:
http://svn.apache.org/viewvc/poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/usermodel/XSLFPropertiesDelegate.java?rev=1902057&r1=1902056&r2=1902057&view=diff
==============================================================================
---
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/usermodel/XSLFPropertiesDelegate.java
(original)
+++
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/usermodel/XSLFPropertiesDelegate.java
Sun Jun 19 11:02:01 2022
@@ -1154,12 +1154,9 @@ import org.openxmlformats.schemas.presen
@Override
public boolean isLineStyle() {
- XmlCursor cur = props.newCursor();
- try {
+ try (XmlCursor cur = props.newCursor()) {
String name = cur.getName().getLocalPart();
return "lnRef".equals(name);
- } finally {
- cur.dispose();
}
}
}
Modified:
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/usermodel/XSLFShape.java
URL:
http://svn.apache.org/viewvc/poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/usermodel/XSLFShape.java?rev=1902057&r1=1902056&r2=1902057&view=diff
==============================================================================
---
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/usermodel/XSLFShape.java
(original)
+++
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/usermodel/XSLFShape.java
Sun Jun 19 11:02:01 2022
@@ -256,16 +256,13 @@ public abstract class XSLFShape implemen
@SuppressWarnings({"unchecked", "WeakerAccess", "unused",
"SameParameterValue"})
protected <T extends XmlObject> T getChild(Class<T> childClass, String
namespace, String nodename) {
T child = null;
- XmlCursor cur = getXmlObject().newCursor();
- try {
+ try (XmlCursor cur = getXmlObject().newCursor()) {
if (cur.toChild(namespace, nodename)) {
child = (T)cur.getObject();
}
if (cur.toChild(XSLFRelation.NS_DRAWINGML, nodename)) {
child = (T)cur.getObject();
}
- } finally {
- cur.dispose();
}
return child;
}
@@ -461,13 +458,10 @@ public abstract class XSLFShape implemen
return null;
}
XSLFFillProperties fp = null;
- XmlCursor cur = styleLst.newCursor();
- try {
+ try (XmlCursor cur = styleLst.newCursor()) {
if (cur.toChild(Math.toIntExact(childIdx))) {
fp = XSLFPropertiesDelegate.getFillDelegate(cur.getObject());
}
- } finally {
- cur.dispose();
}
CTSchemeColor phClr = fillRef.getSchemeClr();
Modified:
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/usermodel/XSLFSheet.java
URL:
http://svn.apache.org/viewvc/poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/usermodel/XSLFSheet.java?rev=1902057&r1=1902056&r2=1902057&view=diff
==============================================================================
---
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/usermodel/XSLFSheet.java
(original)
+++
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/usermodel/XSLFSheet.java
Sun Jun 19 11:02:01 2022
@@ -140,8 +140,7 @@ implements XSLFShapeContainer, Sheet<XSL
final XSLFSheet sheet = (parent instanceof XSLFSheet) ?
(XSLFSheet)parent : ((XSLFShape)parent).getSheet();
List<XSLFShape> shapes = new ArrayList<>();
- XmlCursor cur = spTree.newCursor();
- try {
+ try (XmlCursor cur = spTree.newCursor()) {
for (boolean b = cur.toFirstChild(); b; b = cur.toNextSibling()) {
XmlObject ch = cur.getObject();
if(ch instanceof CTShape){
@@ -174,8 +173,6 @@ implements XSLFShapeContainer, Sheet<XSL
cur.pop();
}
}
- } finally {
- cur.dispose();
}
for (final XSLFShape s : shapes) {
Modified:
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/usermodel/XSLFTable.java
URL:
http://svn.apache.org/viewvc/poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/usermodel/XSLFTable.java?rev=1902057&r1=1902056&r2=1902057&view=diff
==============================================================================
---
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/usermodel/XSLFTable.java
(original)
+++
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/usermodel/XSLFTable.java
Sun Jun 19 11:02:01 2022
@@ -63,8 +63,7 @@ public class XSLFTable extends XSLFGraph
super(shape, sheet);
CTGraphicalObjectData god = shape.getGraphic().getGraphicData();
- XmlCursor xc = god.newCursor();
- try {
+ try (XmlCursor xc = god.newCursor()) {
if (!xc.toChild(XSLFRelation.NS_DRAWINGML, "tbl")) {
throw new IllegalStateException("a:tbl element was not found
in\n " + god);
}
@@ -81,8 +80,6 @@ public class XSLFTable extends XSLFGraph
throw new IllegalStateException(errStr);
}
_table = (CTTable)xo;
- } finally {
- xc.dispose();
}
_rows = new ArrayList<>(_table.sizeOfTrArray());
@@ -260,22 +257,16 @@ public class XSLFTable extends XSLFGraph
frame.addNewXfrm();
CTGraphicalObjectData gr = frame.addNewGraphic().addNewGraphicData();
- XmlCursor grCur = gr.newCursor();
- try {
+ try (XmlCursor grCur = gr.newCursor()) {
grCur.toNextToken();
grCur.beginElement(new QName(XSLFRelation.NS_DRAWINGML, "tbl"));
CTTable tbl = CTTable.Factory.newInstance();
tbl.addNewTblPr();
tbl.addNewTblGrid();
- XmlCursor tblCur = tbl.newCursor();
- try {
+ try (XmlCursor tblCur = tbl.newCursor()) {
tblCur.moveXmlContents(grCur);
- } finally {
- tblCur.dispose();
}
- } finally {
- grCur.dispose();
}
gr.setUri(TABLE_URI);
return frame;
Modified:
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/usermodel/XSLFTextParagraph.java
URL:
http://svn.apache.org/viewvc/poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/usermodel/XSLFTextParagraph.java?rev=1902057&r1=1902056&r2=1902057&view=diff
==============================================================================
---
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/usermodel/XSLFTextParagraph.java
(original)
+++
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xslf/usermodel/XSLFTextParagraph.java
Sun Jun 19 11:02:01 2022
@@ -66,8 +66,7 @@ public class XSLFTextParagraph implement
_runs = new ArrayList<>();
_shape = shape;
- XmlCursor c = _p.newCursor();
- try {
+ try (XmlCursor c = _p.newCursor()) {
if (c.toFirstChild()) {
do {
XmlObject r = c.getObject();
@@ -78,8 +77,6 @@ public class XSLFTextParagraph implement
}
} while (c.toNextSibling());
}
- } finally {
- c.dispose();
}
}
@@ -751,8 +748,7 @@ public class XSLFTextParagraph implement
for (XSLFSheet m = masterSheet; m != null; m =
(XSLFSheet)m.getMasterSheet()) {
masterSheet = m;
XmlObject xo = masterSheet.getXmlObject();
- XmlCursor cur = xo.newCursor();
- try {
+ try (XmlCursor cur = xo.newCursor()) {
cur.push();
if ((cur.toChild(nsPML, "txStyles") && cur.toChild(nsPML,
defaultStyleSelector)) ||
(cur.pop() && cur.toChild(nsPML, "notesStyle"))) {
@@ -765,8 +761,6 @@ public class XSLFTextParagraph implement
level--;
}
}
- } finally {
- cur.dispose();
}
}
@@ -805,17 +799,11 @@ public class XSLFTextParagraph implement
thisP.removeFld(i-1);
}
- XmlCursor thisC = thisP.newCursor();
- try {
+ try (XmlCursor thisC = thisP.newCursor()) {
thisC.toEndToken();
- XmlCursor otherC = otherP.newCursor();
- try {
+ try (XmlCursor otherC = otherP.newCursor()) {
otherC.copyXmlContents(thisC);
- } finally {
- otherC.dispose();
}
- } finally {
- thisC.dispose();
}
for (XSLFTextRun tr : other.getTextRuns()) {
Modified:
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/XSSFDrawing.java
URL:
http://svn.apache.org/viewvc/poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/XSSFDrawing.java?rev=1902057&r1=1902056&r2=1902057&view=diff
==============================================================================
---
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/XSSFDrawing.java
(original)
+++
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/XSSFDrawing.java
Sun Jun 19 11:02:01 2022
@@ -462,8 +462,7 @@ public final class XSSFDrawing extends P
ole1.setId(olePR.getId());
CTTwoCellAnchor ctAnchor;
- final XmlCursor cur1 = ole1.newCursor();
- try {
+ try (XmlCursor cur1 = ole1.newCursor()) {
cur1.toEndToken();
cur1.beginElement("objectPr", XSSFRelation.NS_SPREADSHEETML);
cur1.insertAttributeWithValue("id",
PackageRelationshipTypes.CORE_PROPERTIES_ECMA376_NS, imgSheetPR.getId());
@@ -473,11 +472,8 @@ public final class XSSFDrawing extends P
ctAnchor = createTwoCellAnchor((XSSFClientAnchor) anchor);
- final XmlCursor cur2 = ctAnchor.newCursor();
- try {
+ try (XmlCursor cur2 = ctAnchor.newCursor()) {
cur2.copyXmlContents(cur1);
- } finally {
- cur2.dispose();
}
cur1.toParent();
@@ -485,8 +481,6 @@ public final class XSSFDrawing extends P
cur1.setName(new QName(XSSFRelation.NS_SPREADSHEETML, "from"));
cur1.toNextSibling();
cur1.setName(new QName(XSSFRelation.NS_SPREADSHEETML, "to"));
- } finally {
- cur1.dispose();
}
// add a new shape and link OLE & image part
@@ -503,12 +497,9 @@ public final class XSSFDrawing extends P
cNvPr.setId(shapeId);
cNvPr.setName("Object " + shapeId);
- XmlCursor extCur = cNvPr.getExtLst().getExtArray(0).newCursor();
- try {
+ try (XmlCursor extCur = cNvPr.getExtLst().getExtArray(0).newCursor()) {
extCur.toFirstChild();
extCur.setAttributeText(new QName("spid"), "_x0000_s" + shapeId);
- } finally {
- extCur.dispose();
}
XSSFObjectData shape = new XSSFObjectData(this, ctShape);
@@ -595,13 +586,10 @@ public final class XSSFDrawing extends P
*/
public List<XSSFShape> getShapes() {
List<XSSFShape> lst = new ArrayList<>();
- XmlCursor cur = drawing.newCursor();
- try {
+ try (XmlCursor cur = drawing.newCursor()) {
if (cur.toFirstChild()) {
addShapes(cur, lst);
}
- } finally {
- cur.dispose();
}
return lst;
}
@@ -611,87 +599,76 @@ public final class XSSFDrawing extends P
*/
public List<XSSFShape> getShapes(XSSFShapeGroup groupshape) {
List<XSSFShape> lst = new ArrayList<>();
- XmlCursor cur = groupshape.getCTGroupShape().newCursor();
- try {
+ try (XmlCursor cur = groupshape.getCTGroupShape().newCursor()) {
addShapes(cur, lst);
- } finally {
- cur.dispose();
}
return lst;
}
private void addShapes(XmlCursor cur, List<XSSFShape> lst) {
- try {
- do {
- cur.push();
- if (cur.toFirstChild()) {
- do {
- XmlObject obj = cur.getObject();
-
- XSSFShape shape;
- if (obj instanceof CTMarker) {
- // ignore anchor elements
- continue;
- } else if (obj instanceof CTPicture) {
- shape = new XSSFPicture(this, (CTPicture) obj);
- } else if (obj instanceof CTConnector) {
- shape = new XSSFConnector(this, (CTConnector) obj);
- } else if (obj instanceof CTShape) {
- shape = hasOleLink(obj) ? new XSSFObjectData(this,
(CTShape) obj)
- : new XSSFSimpleShape(this, (CTShape) obj);
- } else if (obj instanceof CTGraphicalObjectFrame) {
- shape = new XSSFGraphicFrame(this,
(CTGraphicalObjectFrame) obj);
- } else if (obj instanceof CTGroupShape) {
- shape = new XSSFShapeGroup(this, (CTGroupShape)
obj);
- } else if (obj instanceof XmlAnyTypeImpl) {
- LOG.atWarn().log("trying to parse
AlternateContent, this unlinks the returned Shapes from the underlying xml
content, so those shapes can't be used to modify the drawing, i.e.
modifications will be ignored!");
-
- // XmlAnyTypeImpl is returned for AlternateContent
- // parts, which might contain a CTDrawing
- cur.push();
- cur.toFirstChild();
- XmlCursor cur2 = null;
- try {
- // need to parse AlternateContent again,
- // otherwise the child elements aren't typed,
- // but also XmlAnyTypes
- CTDrawing alterWS =
CTDrawing.Factory.parse(cur.newXMLStreamReader());
- cur2 = alterWS.newCursor();
+ do {
+ cur.push();
+ if (cur.toFirstChild()) {
+ do {
+ XmlObject obj = cur.getObject();
+
+ XSSFShape shape;
+ if (obj instanceof CTMarker) {
+ // ignore anchor elements
+ continue;
+ } else if (obj instanceof CTPicture) {
+ shape = new XSSFPicture(this, (CTPicture) obj);
+ } else if (obj instanceof CTConnector) {
+ shape = new XSSFConnector(this, (CTConnector) obj);
+ } else if (obj instanceof CTShape) {
+ shape = hasOleLink(obj) ? new XSSFObjectData(this,
(CTShape) obj)
+ : new XSSFSimpleShape(this, (CTShape) obj);
+ } else if (obj instanceof CTGraphicalObjectFrame) {
+ shape = new XSSFGraphicFrame(this,
(CTGraphicalObjectFrame) obj);
+ } else if (obj instanceof CTGroupShape) {
+ shape = new XSSFShapeGroup(this, (CTGroupShape) obj);
+ } else if (obj instanceof XmlAnyTypeImpl) {
+ LOG.atWarn().log("trying to parse AlternateContent,
this unlinks the returned Shapes from the underlying xml content, so those
shapes can't be used to modify the drawing, i.e. modifications will be
ignored!");
+
+ // XmlAnyTypeImpl is returned for AlternateContent
+ // parts, which might contain a CTDrawing
+ cur.push();
+ cur.toFirstChild();
+ try {
+ // need to parse AlternateContent again,
+ // otherwise the child elements aren't typed,
+ // but also XmlAnyTypes
+ CTDrawing alterWS =
CTDrawing.Factory.parse(cur.newXMLStreamReader());
+ try (XmlCursor cur2 = alterWS.newCursor()) {
if (cur2.toFirstChild()) {
addShapes(cur2, lst);
}
- } catch (XmlException e) {
- LOG.atWarn().withThrowable(e).log("unable to
parse CTDrawing in alternate content.");
- } finally {
- if (cur2 != null) {
- cur2.dispose();
- }
- cur.pop();
}
- continue;
- } else {
- // ignore anything else
- continue;
+ } catch (XmlException e) {
+ LOG.atWarn().withThrowable(e).log("unable to parse
CTDrawing in alternate content.");
+ } finally {
+ cur.pop();
}
+ continue;
+ } else {
+ // ignore anything else
+ continue;
+ }
+
+ assert (shape != null);
+ shape.anchor = getAnchorFromParent(obj);
+ lst.add(shape);
- assert (shape != null);
- shape.anchor = getAnchorFromParent(obj);
- lst.add(shape);
-
- } while (cur.toNextSibling());
- }
- cur.pop();
- } while (cur.toNextSibling());
- } finally {
- cur.dispose();
- }
+ } while (cur.toNextSibling());
+ }
+ cur.pop();
+ } while (cur.toNextSibling());
}
private boolean hasOleLink(XmlObject shape) {
QName uriName = new QName(null, "uri");
String xquery = "declare namespace a='" + XSSFRelation.NS_DRAWINGML +
"' .//a:extLst/a:ext";
- XmlCursor cur = shape.newCursor();
- try {
+ try (XmlCursor cur = shape.newCursor()) {
cur.selectPath(xquery);
while (cur.toNextSelection()) {
String uri = cur.getAttributeText(uriName);
@@ -699,8 +676,6 @@ public final class XSSFDrawing extends P
return true;
}
}
- } finally {
- cur.dispose();
}
return false;
}
@@ -709,13 +684,10 @@ public final class XSSFDrawing extends P
XSSFAnchor anchor = null;
XmlObject parentXbean = null;
- XmlCursor cursor = obj.newCursor();
- try {
+ try (XmlCursor cursor = obj.newCursor()) {
if (cursor.toParent()) {
parentXbean = cursor.getObject();
}
- } finally {
- cursor.dispose();
}
if (parentXbean != null) {
if (parentXbean instanceof CTTwoCellAnchor) {
Modified:
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/XSSFGraphicFrame.java
URL:
http://svn.apache.org/viewvc/poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/XSSFGraphicFrame.java?rev=1902057&r1=1902056&r2=1902057&view=diff
==============================================================================
---
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/XSSFGraphicFrame.java
(original)
+++
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/XSSFGraphicFrame.java
Sun Jun 19 11:02:01 2022
@@ -192,13 +192,10 @@ public final class XSSFGraphicFrame exte
private void appendChartElement(CTGraphicalObjectData data, String id) {
String r_namespaceUri =
STRelationshipId.type.getName().getNamespaceURI();
String c_namespaceUri = XSSFDrawing.NAMESPACE_C;
- XmlCursor cursor = data.newCursor();
- try {
+ try (XmlCursor cursor = data.newCursor()) {
cursor.toNextToken();
cursor.beginElement(new QName(c_namespaceUri, "chart", "c"));
cursor.insertAttributeWithValue(new QName(r_namespaceUri, "id",
"r"), id);
- } finally {
- cursor.dispose();
}
data.setUri(c_namespaceUri);
}
Modified:
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/XSSFObjectData.java
URL:
http://svn.apache.org/viewvc/poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/XSSFObjectData.java?rev=1902057&r1=1902056&r2=1902057&view=diff
==============================================================================
---
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/XSSFObjectData.java
(original)
+++
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/XSSFObjectData.java
Sun Jun 19 11:02:01 2022
@@ -82,14 +82,11 @@ public class XSSFObjectData extends XSSF
//
https://msdn.microsoft.com/en-us/library/dd911027(v=office.12).aspx
CTOfficeArtExtension ext = extLst.addNewExt();
ext.setUri("{63B3BB69-23CF-44E3-9099-C40C66FF867C}");
- XmlCursor cur = ext.newCursor();
- try {
+ try (XmlCursor cur = ext.newCursor()) {
cur.toEndToken();
cur.beginElement(new QName(drawNS, "compatExt", "a14"));
cur.insertNamespace("a14", drawNS);
cur.insertAttributeWithValue("spid", "_x0000_s1");
- } finally {
- cur.dispose();
}
nv.addNewCNvSpPr();
@@ -188,15 +185,12 @@ public class XSSFObjectData extends XSSF
@Override
public XSSFPictureData getPictureData() {
- XmlCursor cur = getOleObject().newCursor();
- try {
+ try (XmlCursor cur = getOleObject().newCursor()) {
if (cur.toChild(XSSFRelation.NS_SPREADSHEETML, "objectPr")) {
String blipId = cur.getAttributeText(new
QName(PackageRelationshipTypes.CORE_PROPERTIES_ECMA376_NS, "id"));
return (XSSFPictureData)getSheet().getRelationById(blipId);
}
return null;
- } finally {
- cur.dispose();
}
}
Modified:
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/XSSFRichTextString.java
URL:
http://svn.apache.org/viewvc/poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/XSSFRichTextString.java?rev=1902057&r1=1902056&r2=1902057&view=diff
==============================================================================
---
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/XSSFRichTextString.java
(original)
+++
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/XSSFRichTextString.java
Sun Jun 19 11:02:01 2022
@@ -489,12 +489,9 @@ public class XSSFRichTextString implemen
char firstChar = text.charAt(0);
char lastChar = text.charAt(text.length() - 1);
if(Character.isWhitespace(firstChar) ||
Character.isWhitespace(lastChar)) {
- XmlCursor c = xs.newCursor();
- try {
+ try (XmlCursor c = xs.newCursor()) {
c.toNextToken();
c.insertAttributeWithValue(new
QName("http://www.w3.org/XML/1998/namespace", "space"), "preserve");
- } finally {
- c.dispose();
}
}
}
Modified:
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/XSSFSheet.java
URL:
http://svn.apache.org/viewvc/poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/XSSFSheet.java?rev=1902057&r1=1902056&r2=1902057&view=diff
==============================================================================
---
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/XSSFSheet.java
(original)
+++
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/XSSFSheet.java
Sun Jun 19 11:02:01 2022
@@ -4725,8 +4725,7 @@ public class XSSFSheet extends POIXMLDoc
// we use a XmlCursor here to handle oleObject with-/out
AlternateContent wrappers
String xquery = "declare namespace
p='"+XSSFRelation.NS_SPREADSHEETML+"' .//p:oleObject";
- XmlCursor cur = getCTWorksheet().getOleObjects().newCursor();
- try {
+ try (XmlCursor cur = getCTWorksheet().getOleObjects().newCursor()) {
cur.selectPath(xquery);
CTOleObject coo = null;
while (cur.toNextSelection()) {
@@ -4765,8 +4764,6 @@ public class XSSFSheet extends POIXMLDoc
}
}
return coo;
- } finally {
- cur.dispose();
}
}
Modified:
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/XSSFTableStyle.java
URL:
http://svn.apache.org/viewvc/poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/XSSFTableStyle.java?rev=1902057&r1=1902056&r2=1902057&view=diff
==============================================================================
---
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/XSSFTableStyle.java
(original)
+++
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/XSSFTableStyle.java
Sun Jun 19 11:02:01 2022
@@ -59,8 +59,7 @@ public class XSSFTableStyle implements T
List<CTDxf> dxfList = new ArrayList<>();
// CT* classes don't handle "mc:AlternateContent" elements, so get the
Dxf instances manually
- final XmlCursor cur = dxfs.newCursor();
- try {
+ try (XmlCursor cur = dxfs.newCursor()) {
// sometimes there are namespaces sometimes not.
String xquery = "declare namespace
x='"+XSSFRelation.NS_SPREADSHEETML+"' .//x:dxf | .//dxf";
cur.selectPath(xquery);
@@ -82,8 +81,6 @@ public class XSSFTableStyle implements T
}
}
}
- } finally {
- cur.dispose();
}
for (CTTableStyleElement element :
tableStyle.getTableStyleElementList()) {
Modified:
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/XSSFVMLDrawing.java
URL:
http://svn.apache.org/viewvc/poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/XSSFVMLDrawing.java?rev=1902057&r1=1902056&r2=1902057&view=diff
==============================================================================
---
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/XSSFVMLDrawing.java
(original)
+++
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/XSSFVMLDrawing.java
Sun Jun 19 11:02:01 2022
@@ -150,9 +150,7 @@ public final class XSSFVMLDrawing extend
" xmlns=\""+NS_SPREADSHEETML+"\"", "")
, xopt);
- XmlCursor cur = root.getXml().newCursor();
-
- try {
+ try (XmlCursor cur = root.getXml().newCursor()) {
for (boolean found = cur.toFirstChild(); found; found =
cur.toNextSibling()) {
XmlObject xo = cur.getObject();
if (xo instanceof CTShapetype) {
@@ -168,21 +166,16 @@ public final class XSSFVMLDrawing extend
}
}
}
- } finally {
- cur.dispose();
}
}
protected List<XmlObject> getItems(){
List<XmlObject> items = new ArrayList<>();
- XmlCursor cur = root.getXml().newCursor();
- try {
+ try (XmlCursor cur = root.getXml().newCursor()) {
for (boolean found = cur.toFirstChild(); found; found =
cur.toNextSibling()) {
items.add(cur.getObject());
}
- } finally {
- cur.dispose();
}
return items;
@@ -207,8 +200,7 @@ public final class XSSFVMLDrawing extend
*/
private void newDrawing(){
root = XmlDocument.Factory.newInstance();
- final XmlCursor xml = root.addNewXml().newCursor();
- try {
+ try (final XmlCursor xml = root.addNewXml().newCursor()) {
ShapelayoutDocument layDoc =
ShapelayoutDocument.Factory.newInstance();
CTShapeLayout layout = layDoc.addNewShapelayout();
layout.setExt(STExt.EDIT);
@@ -217,11 +209,8 @@ public final class XSSFVMLDrawing extend
idmap.setData("1");
xml.toEndToken();
- final XmlCursor layCur = layDoc.newCursor();
- try {
+ try (XmlCursor layCur = layDoc.newCursor()) {
layCur.copyXmlContents(xml);
- } finally {
- layCur.dispose();
}
CTGroup grp = CTGroup.Factory.newInstance();
@@ -237,16 +226,10 @@ public final class XSSFVMLDrawing extend
path.setConnecttype(STConnectType.RECT);
xml.toEndToken();
- final XmlCursor grpCur = grp.newCursor();
- try {
+ try (XmlCursor grpCur = grp.newCursor()) {
grpCur.copyXmlContents(xml);
- } finally {
- grpCur.dispose();
}
- } finally {
- xml.dispose();
}
-
}
/**
@@ -278,19 +261,13 @@ public final class XSSFVMLDrawing extend
cldata.addNewRow().setBigIntegerValue(BigInteger.valueOf(0));
cldata.addNewColumn().setBigIntegerValue(BigInteger.valueOf(0));
- XmlCursor xml = root.getXml().newCursor();
- try {
+ try (final XmlCursor xml = root.getXml().newCursor()){
xml.toEndToken();
- XmlCursor grpCur = grp.newCursor();
- try {
+ try (final XmlCursor grpCur = grp.newCursor()){
grpCur.copyXmlContents(xml);
xml.toPrevSibling();
shape = (CTShape)xml.getObject();
- } finally {
- grpCur.dispose();
}
- } finally {
- xml.dispose();
}
return shape;
@@ -302,16 +279,13 @@ public final class XSSFVMLDrawing extend
* @return the comment shape or <code>null</code>
*/
public CTShape findCommentShape(int row, int col){
- XmlCursor cur = root.getXml().newCursor();
- try {
+ try (final XmlCursor cur = root.getXml().newCursor()){
for (boolean found = cur.toFirstChild(); found; found =
cur.toNextSibling()) {
XmlObject itm = cur.getObject();
if (matchCommentShape(itm, row, col)) {
return (CTShape)itm;
}
}
- } finally {
- cur.dispose();
}
return null;
}
@@ -337,8 +311,7 @@ public final class XSSFVMLDrawing extend
}
protected boolean removeCommentShape(int row, int col){
- XmlCursor cur = root.getXml().newCursor();
- try {
+ try (final XmlCursor cur = root.getXml().newCursor()) {
for (boolean found = cur.toFirstChild(); found; found =
cur.toNextSibling()) {
XmlObject itm = cur.getObject();
if (matchCommentShape(itm, row, col)) {
@@ -346,8 +319,6 @@ public final class XSSFVMLDrawing extend
return true;
}
}
- } finally {
- cur.dispose();
}
return false;
}
Modified:
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/helpers/XSSFPasswordHelper.java
URL:
http://svn.apache.org/viewvc/poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/helpers/XSSFPasswordHelper.java?rev=1902057&r1=1902056&r2=1902057&view=diff
==============================================================================
---
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/helpers/XSSFPasswordHelper.java
(original)
+++
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/helpers/XSSFPasswordHelper.java
Sun Jun 19 11:02:01 2022
@@ -49,8 +49,7 @@ public final class XSSFPasswordHelper {
* @param prefix the prefix of the password attributes, may be null
*/
public static void setPassword(XmlObject xobj, String password,
HashAlgorithm hashAlgo, String prefix) {
- XmlCursor cur = xobj.newCursor();
- try {
+ try (final XmlCursor cur = xobj.newCursor()) {
if (password == null) {
cur.removeAttribute(getAttrName(prefix, "password"));
cur.removeAttribute(getAttrName(prefix, "algorithmName"));
@@ -84,8 +83,6 @@ public final class XSSFPasswordHelper {
cur.insertAttributeWithValue(getAttrName(prefix, "saltValue"),
enc64.encodeToString(salt));
cur.insertAttributeWithValue(getAttrName(prefix, "spinCount"),
""+spinCount);
}
- } finally {
- cur.dispose();
}
}
@@ -103,9 +100,8 @@ public final class XSSFPasswordHelper {
public static boolean validatePassword(XmlObject xobj, String password,
String prefix) {
// TODO: is "velvetSweatshop" the default password?
if (password == null) return false;
-
- XmlCursor cur = xobj.newCursor();
- try {
+
+ try (final XmlCursor cur = xobj.newCursor()) {
String xorHashVal = cur.getAttributeText(getAttrName(prefix,
"password"));
String algoName = cur.getAttributeText(getAttrName(prefix,
"algorithmName"));
String hashVal = cur.getAttributeText(getAttrName(prefix,
"hashValue"));
@@ -129,8 +125,6 @@ public final class XSSFPasswordHelper {
byte[] hash2 = CryptoFunctions.hashPassword(password,
hashAlgo, salt, spinCnt, false);
return Arrays.equals(hash1, hash2);
}
- } finally {
- cur.dispose();
}
}
Modified:
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xwpf/usermodel/XWPFComment.java
URL:
http://svn.apache.org/viewvc/poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xwpf/usermodel/XWPFComment.java?rev=1902057&r1=1902056&r2=1902057&view=diff
==============================================================================
---
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xwpf/usermodel/XWPFComment.java
(original)
+++
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xwpf/usermodel/XWPFComment.java
Sun Jun 19 11:02:01 2022
@@ -46,25 +46,25 @@ public class XWPFComment implements IBod
}
protected void init() {
- XmlCursor cursor = ctComment.newCursor();
- cursor.selectPath("./*");
- while (cursor.toNextSelection()) {
- XmlObject o = cursor.getObject();
- if (o instanceof CTP) {
- XWPFParagraph p = new XWPFParagraph((CTP) o, this);
- bodyElements.add(p);
- paragraphs.add(p);
- } else if (o instanceof CTTbl) {
- XWPFTable t = new XWPFTable((CTTbl) o, this);
- bodyElements.add(t);
- tables.add(t);
- } else if (o instanceof CTSdtBlock) {
- XWPFSDT c = new XWPFSDT((CTSdtBlock) o, this);
- bodyElements.add(c);
- }
+ try (XmlCursor cursor = ctComment.newCursor()) {
+ cursor.selectPath("./*");
+ while (cursor.toNextSelection()) {
+ XmlObject o = cursor.getObject();
+ if (o instanceof CTP) {
+ XWPFParagraph p = new XWPFParagraph((CTP) o, this);
+ bodyElements.add(p);
+ paragraphs.add(p);
+ } else if (o instanceof CTTbl) {
+ XWPFTable t = new XWPFTable((CTTbl) o, this);
+ bodyElements.add(t);
+ tables.add(t);
+ } else if (o instanceof CTSdtBlock) {
+ XWPFSDT c = new XWPFSDT((CTSdtBlock) o, this);
+ bodyElements.add(c);
+ }
+ }
}
- cursor.dispose();
}
/**
@@ -174,30 +174,29 @@ public class XWPFComment implements IBod
paragraphs.add(pos, newP);
}
int i = 0;
- XmlCursor p2 = p.newCursor();
- cursor.toCursor(p2);
- p2.dispose();
+ try (XmlCursor p2 = p.newCursor()) {
+ cursor.toCursor(p2);
+ }
while (cursor.toPrevSibling()) {
o = cursor.getObject();
if (o instanceof CTP || o instanceof CTTbl)
i++;
}
bodyElements.add(i, newP);
- p2 = p.newCursor();
- cursor.toCursor(p2);
- cursor.toEndToken();
- p2.dispose();
+ try (XmlCursor p2 = p.newCursor()) {
+ cursor.toCursor(p2);
+ cursor.toEndToken();
+ }
return newP;
}
return null;
}
private boolean isCursorInCmt(XmlCursor cursor) {
- XmlCursor verify = cursor.newCursor();
- verify.toParent();
- boolean result = (verify.getObject() == this.ctComment);
- verify.dispose();
- return result;
+ try (XmlCursor verify = cursor.newCursor()) {
+ verify.toParent();
+ return (verify.getObject() == this.ctComment);
+ }
}
@Override
@@ -221,19 +220,19 @@ public class XWPFComment implements IBod
tables.add(pos, newT);
}
int i = 0;
- XmlCursor cursor2 = t.newCursor();
- while (cursor2.toPrevSibling()) {
- o = cursor2.getObject();
- if (o instanceof CTP || o instanceof CTTbl) {
- i++;
+ try (XmlCursor cursor2 = t.newCursor()) {
+ while (cursor2.toPrevSibling()) {
+ o = cursor2.getObject();
+ if (o instanceof CTP || o instanceof CTTbl) {
+ i++;
+ }
}
}
- cursor2.dispose();
bodyElements.add(i, newT);
- cursor2 = t.newCursor();
- cursor.toCursor(cursor2);
- cursor.toEndToken();
- cursor2.dispose();
+ try (XmlCursor cursor2 = t.newCursor()) {
+ cursor.toCursor(cursor2);
+ cursor.toEndToken();
+ }
return newT;
}
return null;
@@ -257,19 +256,15 @@ public class XWPFComment implements IBod
public XWPFTableCell getTableCell(CTTc cell) {
XmlObject o;
CTRow row;
- final XmlCursor cursor = cell.newCursor();
- try {
+ try (final XmlCursor cursor = cell.newCursor()) {
cursor.toParent();
o = cursor.getObject();
if (!(o instanceof CTRow)) {
- cursor.dispose();
return null;
}
row = (CTRow) o;
cursor.toParent();
o = cursor.getObject();
- } finally {
- cursor.dispose();
}
if (!(o instanceof CTTbl)) {
return null;
@@ -314,9 +309,9 @@ public class XWPFComment implements IBod
public void removeParagraph(XWPFParagraph paragraph) {
if (paragraphs.contains(paragraph)) {
CTP ctP = paragraph.getCTP();
- XmlCursor c = ctP.newCursor();
- c.removeXml();
- c.dispose();
+ try (XmlCursor c = ctP.newCursor()) {
+ c.removeXml();
+ }
paragraphs.remove(paragraph);
bodyElements.remove(paragraph);
}
@@ -325,17 +320,16 @@ public class XWPFComment implements IBod
public void removeTable(XWPFTable table) {
if (tables.contains(table)) {
CTTbl ctTbl = table.getCTTbl();
- XmlCursor c = ctTbl.newCursor();
- c.removeXml();
- c.dispose();
+ try (XmlCursor c = ctTbl.newCursor()) {
+ c.removeXml();
+ }
tables.remove(table);
bodyElements.remove(table);
}
}
public XWPFTable createTable(int rows, int cols) {
- XWPFTable table = new XWPFTable(ctComment.addNewTbl(), this, rows,
- cols);
+ XWPFTable table = new XWPFTable(ctComment.addNewTbl(), this, rows,
cols);
tables.add(table);
bodyElements.add(table);
return table;
Modified:
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xwpf/usermodel/XWPFHeaderFooter.java
URL:
http://svn.apache.org/viewvc/poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xwpf/usermodel/XWPFHeaderFooter.java?rev=1902057&r1=1902056&r2=1902057&view=diff
==============================================================================
---
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xwpf/usermodel/XWPFHeaderFooter.java
(original)
+++
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xwpf/usermodel/XWPFHeaderFooter.java
Sun Jun 19 11:02:01 2022
@@ -554,8 +554,7 @@ public abstract class XWPFHeaderFooter e
public XWPFTableCell getTableCell(CTTc cell) {
XmlObject o;
CTRow row;
- final XmlCursor cursor = cell.newCursor();
- try {
+ try (XmlCursor cursor = cell.newCursor()) {
cursor.toParent();
o = cursor.getObject();
if (!(o instanceof CTRow)) {
@@ -564,8 +563,6 @@ public abstract class XWPFHeaderFooter e
row = (CTRow) o;
cursor.toParent();
o = cursor.getObject();
- } finally {
- cursor.dispose();
}
if (!(o instanceof CTTbl)) {
return null;
Modified:
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xwpf/usermodel/XWPFParagraph.java
URL:
http://svn.apache.org/viewvc/poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xwpf/usermodel/XWPFParagraph.java?rev=1902057&r1=1902056&r2=1902057&view=diff
==============================================================================
---
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xwpf/usermodel/XWPFParagraph.java
(original)
+++
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xwpf/usermodel/XWPFParagraph.java
Sun Jun 19 11:02:01 2022
@@ -113,8 +113,7 @@ public class XWPFParagraph implements IB
*/
@SuppressWarnings("deprecation")
private void buildRunsInOrderFromXml(XmlObject object) {
- XmlCursor c = object.newCursor();
- try {
+ try (XmlCursor c = object.newCursor()) {
c.selectPath("child::*");
while (c.toNextSelection()) {
XmlObject o = c.getObject();
@@ -166,8 +165,6 @@ public class XWPFParagraph implements IB
}
}
}
- } finally {
- c.dispose();
}
}
Modified:
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xwpf/usermodel/XWPFSDTContent.java
URL:
http://svn.apache.org/viewvc/poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xwpf/usermodel/XWPFSDTContent.java?rev=1902057&r1=1902056&r2=1902057&view=diff
==============================================================================
---
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xwpf/usermodel/XWPFSDTContent.java
(original)
+++
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xwpf/usermodel/XWPFSDTContent.java
Sun Jun 19 11:02:01 2022
@@ -43,48 +43,48 @@ public class XWPFSDTContent implements I
if (sdtRun == null) {
return;
}
- XmlCursor cursor = sdtRun.newCursor();
- cursor.selectPath("./*");
- while (cursor.toNextSelection()) {
- XmlObject o = cursor.getObject();
- if (o instanceof CTR) {
- XWPFRun run = new XWPFRun((CTR) o, parent);
- bodyElements.add(run);
- } else if (o instanceof CTSdtRun) {
- XWPFSDT c = new XWPFSDT(((CTSdtRun) o), part);
- bodyElements.add(c);
+ try (final XmlCursor cursor = sdtRun.newCursor()) {
+ cursor.selectPath("./*");
+ while (cursor.toNextSelection()) {
+ XmlObject o = cursor.getObject();
+ if (o instanceof CTR) {
+ XWPFRun run = new XWPFRun((CTR) o, parent);
+ bodyElements.add(run);
+ } else if (o instanceof CTSdtRun) {
+ XWPFSDT c = new XWPFSDT(((CTSdtRun) o), part);
+ bodyElements.add(c);
+ }
}
}
- cursor.dispose();
}
public XWPFSDTContent(CTSdtContentBlock block, IBody part, IRunBody
parent) {
if (block == null) {
return;
}
- XmlCursor cursor = block.newCursor();
- cursor.selectPath("./*");
- while (cursor.toNextSelection()) {
- XmlObject o = cursor.getObject();
- if (o instanceof CTP) {
- XWPFParagraph p = new XWPFParagraph((CTP) o, part);
- bodyElements.add(p);
- // paragraphs.add(p);
- } else if (o instanceof CTTbl) {
- XWPFTable t = new XWPFTable((CTTbl) o, part);
- bodyElements.add(t);
- // tables.add(t);
- } else if (o instanceof CTSdtBlock) {
- XWPFSDT c = new XWPFSDT(((CTSdtBlock) o), part);
- bodyElements.add(c);
- // contentControls.add(c);
- } else if (o instanceof CTR) {
- XWPFRun run = new XWPFRun((CTR) o, parent);
- // runs.add(run);
- bodyElements.add(run);
+ try (final XmlCursor cursor = block.newCursor()) {
+ cursor.selectPath("./*");
+ while (cursor.toNextSelection()) {
+ XmlObject o = cursor.getObject();
+ if (o instanceof CTP) {
+ XWPFParagraph p = new XWPFParagraph((CTP) o, part);
+ bodyElements.add(p);
+ // paragraphs.add(p);
+ } else if (o instanceof CTTbl) {
+ XWPFTable t = new XWPFTable((CTTbl) o, part);
+ bodyElements.add(t);
+ // tables.add(t);
+ } else if (o instanceof CTSdtBlock) {
+ XWPFSDT c = new XWPFSDT(((CTSdtBlock) o), part);
+ bodyElements.add(c);
+ // contentControls.add(c);
+ } else if (o instanceof CTR) {
+ XWPFRun run = new XWPFRun((CTR) o, parent);
+ // runs.add(run);
+ bodyElements.add(run);
+ }
}
}
- cursor.dispose();
}
@Override
Modified:
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xwpf/usermodel/XWPFSDTContentCell.java
URL:
http://svn.apache.org/viewvc/poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xwpf/usermodel/XWPFSDTContentCell.java?rev=1902057&r1=1902056&r2=1902057&view=diff
==============================================================================
---
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xwpf/usermodel/XWPFSDTContentCell.java
(original)
+++
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xwpf/usermodel/XWPFSDTContentCell.java
Sun Jun 19 11:02:01 2022
@@ -50,49 +50,47 @@ public class XWPFSDTContentCell implemen
return;
}
StringBuilder sb = new StringBuilder();
- XmlCursor cursor = sdtContentCell.newCursor();
+ try (final XmlCursor cursor = sdtContentCell.newCursor()) {
+ //keep track of the following,
+ //and add "\n" only before the start of a body
+ //element if it is not the first body element.
- //keep track of the following,
- //and add "\n" only before the start of a body
- //element if it is not the first body element.
+ //index of cell in row
+ int tcCnt = 0;
+ //count of body objects
+ int iBodyCnt = 0;
+ int depth = 1;
- //index of cell in row
- int tcCnt = 0;
- //count of body objects
- int iBodyCnt = 0;
- int depth = 1;
-
- while (cursor.hasNextToken() && depth > 0) {
- TokenType t = cursor.toNextToken();
- if (t.isText()) {
- sb.append(cursor.getTextValue());
- } else if (isStartToken(cursor, "tr")) {
- tcCnt = 0;
- iBodyCnt = 0;
- } else if (isStartToken(cursor, "tc")) {
- if (tcCnt++ > 0) {
- sb.append("\t");
+ while (cursor.hasNextToken() && depth > 0) {
+ TokenType t = cursor.toNextToken();
+ if (t.isText()) {
+ sb.append(cursor.getTextValue());
+ } else if (isStartToken(cursor, "tr")) {
+ tcCnt = 0;
+ iBodyCnt = 0;
+ } else if (isStartToken(cursor, "tc")) {
+ if (tcCnt++ > 0) {
+ sb.append("\t");
+ }
+ iBodyCnt = 0;
+ } else if (isStartToken(cursor, "p") ||
+ isStartToken(cursor, "tbl") ||
+ isStartToken(cursor, "sdt")) {
+ if (iBodyCnt > 0) {
+ sb.append("\n");
+ }
+ iBodyCnt++;
}
- iBodyCnt = 0;
- } else if (isStartToken(cursor, "p") ||
- isStartToken(cursor, "tbl") ||
- isStartToken(cursor, "sdt")) {
- if (iBodyCnt > 0) {
- sb.append("\n");
+ if (cursor.isStart()) {
+ depth++;
+ } else if (cursor.isEnd()) {
+ depth--;
}
- iBodyCnt++;
- }
- if (cursor.isStart()) {
- depth++;
- } else if (cursor.isEnd()) {
- depth--;
}
+ text = sb.toString();
}
- text = sb.toString();
- cursor.dispose();
}
-
private boolean isStartToken(XmlCursor cursor, String string) {
if (!cursor.isStart()) {
return false;
Modified:
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xwpf/usermodel/XWPFTableCell.java
URL:
http://svn.apache.org/viewvc/poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xwpf/usermodel/XWPFTableCell.java?rev=1902057&r1=1902056&r2=1902057&view=diff
==============================================================================
---
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xwpf/usermodel/XWPFTableCell.java
(original)
+++
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xwpf/usermodel/XWPFTableCell.java
Sun Jun 19 11:02:01 2022
@@ -86,8 +86,7 @@ public class XWPFTableCell implements IB
paragraphs = new ArrayList<>();
tables = new ArrayList<>();
- XmlCursor cursor = ctTc.newCursor();
- try {
+ try (XmlCursor cursor = ctTc.newCursor()) {
cursor.selectPath("./*");
while (cursor.toNextSelection()) {
XmlObject o = cursor.getObject();
@@ -110,8 +109,6 @@ public class XWPFTableCell implements IB
bodyElements.add(c);
}
}
- } finally {
- cursor.dispose();
}
}
@@ -279,11 +276,8 @@ public class XWPFTableCell implements IB
paragraphs.add(pos, newP);
}
int i = 0;
- final XmlCursor p2 = p.newCursor();
- try {
+ try (XmlCursor p2 = p.newCursor()) {
cursor.toCursor(p2);
- } finally {
- p2.dispose();
}
while (cursor.toPrevSibling()) {
o = cursor.getObject();
@@ -291,11 +285,8 @@ public class XWPFTableCell implements IB
i++;
}
bodyElements.add(i, newP);
- final XmlCursor p3 = p.newCursor();
- try {
+ try (XmlCursor p3 = p.newCursor()) {
cursor.toCursor(p3);
- } finally {
- p3.dispose();
}
cursor.toEndToken();
return newP;
@@ -322,23 +313,17 @@ public class XWPFTableCell implements IB
tables.add(pos, newT);
}
int i = 0;
- final XmlCursor cursor2 = t.newCursor();
- try {
+ try (XmlCursor cursor2 = t.newCursor()) {
while (cursor2.toPrevSibling()) {
o = cursor2.getObject();
if (o instanceof CTP || o instanceof CTTbl)
i++;
}
- } finally {
- cursor2.dispose();
}
bodyElements.add(i, newT);
- final XmlCursor cursor3 = t.newCursor();
- try {
+ try (XmlCursor cursor3 = t.newCursor()) {
cursor.toCursor(cursor3);
cursor.toEndToken();
- } finally {
- cursor3.dispose();
}
return newT;
}
@@ -349,13 +334,10 @@ public class XWPFTableCell implements IB
* verifies that cursor is on the right position
*/
private boolean isCursorInTableCell(XmlCursor cursor) {
- XmlCursor verify = cursor.newCursor();
- try {
+ try (XmlCursor verify = cursor.newCursor()) {
verify.toParent();
boolean result = (verify.getObject() == this.ctTc);
return result;
- } finally {
- verify.dispose();
}
}
@@ -495,8 +477,7 @@ public class XWPFTableCell implements IB
public XWPFTableCell getTableCell(CTTc cell) {
XmlObject o;
CTRow row;
- final XmlCursor cursor = cell.newCursor();
- try {
+ try (final XmlCursor cursor = cell.newCursor()) {
cursor.toParent();
o = cursor.getObject();
if (!(o instanceof CTRow)) {
@@ -505,8 +486,6 @@ public class XWPFTableCell implements IB
row = (CTRow) o;
cursor.toParent();
o = cursor.getObject();
- } finally {
- cursor.dispose();
}
if (!(o instanceof CTTbl)) {
return null;
Modified:
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xwpf/usermodel/XWPFTableRow.java
URL:
http://svn.apache.org/viewvc/poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xwpf/usermodel/XWPFTableRow.java?rev=1902057&r1=1902056&r2=1902057&view=diff
==============================================================================
---
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xwpf/usermodel/XWPFTableRow.java
(original)
+++
poi/trunk/poi-ooxml/src/main/java/org/apache/poi/xwpf/usermodel/XWPFTableRow.java
Sun Jun 19 11:02:01 2022
@@ -180,8 +180,7 @@ public class XWPFTableRow {
List<ICell> cells = new ArrayList<>();
//Can't use ctRow.getTcList because that only gets table cells
//Can't use ctRow.getSdtList because that only gets sdts that are at
cell level
- XmlCursor cursor = ctRow.newCursor();
- try {
+ try (XmlCursor cursor = ctRow.newCursor()) {
cursor.selectPath("./*");
while (cursor.toNextSelection()) {
XmlObject o = cursor.getObject();
@@ -191,8 +190,6 @@ public class XWPFTableRow {
cells.add(new XWPFSDTCell((CTSdtCell) o, this,
table.getBody()));
}
}
- } finally {
- cursor.dispose();
}
return cells;
}
Modified:
poi/trunk/poi-ooxml/src/test/java/org/apache/poi/xslf/usermodel/TestXSLFExamples.java
URL:
http://svn.apache.org/viewvc/poi/trunk/poi-ooxml/src/test/java/org/apache/poi/xslf/usermodel/TestXSLFExamples.java?rev=1902057&r1=1902056&r2=1902057&view=diff
==============================================================================
---
poi/trunk/poi-ooxml/src/test/java/org/apache/poi/xslf/usermodel/TestXSLFExamples.java
(original)
+++
poi/trunk/poi-ooxml/src/test/java/org/apache/poi/xslf/usermodel/TestXSLFExamples.java
Sun Jun 19 11:02:01 2022
@@ -84,13 +84,12 @@ class TestXSLFExamples {
ext.setUri("{DAA4B4D4-6D71-4841-9C94-3DE7FCFB9230}");
String p14Ns =
"http://schemas.microsoft.com/office/powerpoint/2010/main";
- XmlCursor cur = ext.newCursor();
- cur.toEndToken();
- cur.beginElement(new QName(p14Ns, "media", "p14"));
- cur.insertNamespace("p14", p14Ns);
- cur.insertAttributeWithValue(new QName(CORE_PROPERTIES_ECMA376_NS,
"link"), prsEmbed1.getId());
- cur.dispose();
-
+ try (XmlCursor cur = ext.newCursor()) {
+ cur.toEndToken();
+ cur.beginElement(new QName(p14Ns, "media", "p14"));
+ cur.insertNamespace("p14", p14Ns);
+ cur.insertAttributeWithValue(new
QName(CORE_PROPERTIES_ECMA376_NS, "link"), prsEmbed1.getId());
+ }
CTSlide xslide = slide1.getXmlObject();
CTTimeNodeList ctnl;
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]