Modified: xmlbeans/trunk/src/test/java/xmlcursor/checkin/CopyTest.java
URL: 
http://svn.apache.org/viewvc/xmlbeans/trunk/src/test/java/xmlcursor/checkin/CopyTest.java?rev=1896764&r1=1896763&r2=1896764&view=diff
==============================================================================
--- xmlbeans/trunk/src/test/java/xmlcursor/checkin/CopyTest.java (original)
+++ xmlbeans/trunk/src/test/java/xmlcursor/checkin/CopyTest.java Thu Jan  6 
17:54:30 2022
@@ -44,14 +44,14 @@ public class CopyTest extends BasicCurso
         m_xo = XmlObject.Factory.parse(Common.XML_FOO_DIGITS);
         m_xc = m_xo.newCursor();
         XmlObject xo = XmlObject.Factory.parse(Common.XML_FOO_2ATTR_TEXT);
-        XmlCursor xc1 = xo.newCursor();
-        toNextTokenOfType(m_xc, TokenType.TEXT);
-        toNextTokenOfType(xc1, TokenType.TEXT);
-        m_xc.copyXml(xc1);
-        xc1.toParent();
-        // verify xc1
-        assertEquals("01234text", xc1.getTextValue());
-        xc1.dispose();
+        try (XmlCursor xc1 = xo.newCursor()) {
+            toNextTokenOfType(m_xc, TokenType.TEXT);
+            toNextTokenOfType(xc1, TokenType.TEXT);
+            m_xc.copyXml(xc1);
+            xc1.toParent();
+            // verify xc1
+            assertEquals("01234text", xc1.getTextValue());
+        }
         // verify m_xc
         assertEquals("01234", m_xc.getChars());
     }
@@ -69,34 +69,32 @@ public class CopyTest extends BasicCurso
         XmlObject xobj1 = XmlObject.Factory.parse(
                 JarUtil.getResourceFromJar("xbean/xmlcursor/po.xml"));
 
-        XmlCursor xc0 = xobj0.newCursor();
-        XmlCursor xc1 = xobj1.newCursor();
-
-        xc0.selectPath(Common.CLM_NS_XQUERY_DEFAULT + " .//Initial");
-        xc0.toNextSelection();
-         String sQuery=
-                 "declare namespace 
po=\"http://xbean.test/xmlcursor/PurchaseOrder\";; "+
-                 ".//po:zip";
-        xc1.selectPath( sQuery );
-        xc1.toNextSelection();
-
-        xc0.copyXml(xc1); // should copy the <Initial>GATX</Initial> element 
plus the default namespace
-        xc1.toPrevSibling();
-        // verify xc1
-        String sExpected = "<ver:Initial " +
-                "xmlns:po=\"http://xbean.test/xmlcursor/PurchaseOrder\"; " +
-                "xmlns:ver=\"http://www.tranxml.org/TranXML/Version4.0\";>" +
-                "GATX</ver:Initial>";
-        assertEquals(sExpected, xc1.xmlText());
-        // verify xc0
-        // should contain all the namespaces for the document
-        assertEquals(
-                "<Initial xmlns=\"" + Common.CLM_NS + "\" " +
-                Common.CLM_XSI_NS +
-                ">GATX</Initial>",
-                xc0.xmlText());
-        xc0.dispose();
-        xc1.dispose();
+        try (XmlCursor xc0 = xobj0.newCursor();
+            XmlCursor xc1 = xobj1.newCursor()) {
+            xc0.selectPath(Common.CLM_NS_XQUERY_DEFAULT + " .//Initial");
+            xc0.toNextSelection();
+             String sQuery=
+                     "declare namespace 
po=\"http://xbean.test/xmlcursor/PurchaseOrder\";; "+
+                     ".//po:zip";
+            xc1.selectPath( sQuery );
+            xc1.toNextSelection();
+
+            xc0.copyXml(xc1); // should copy the <Initial>GATX</Initial> 
element plus the default namespace
+            xc1.toPrevSibling();
+            // verify xc1
+            String sExpected = "<ver:Initial " +
+                    "xmlns:po=\"http://xbean.test/xmlcursor/PurchaseOrder\"; " +
+                    "xmlns:ver=\"http://www.tranxml.org/TranXML/Version4.0\";>" 
+
+                    "GATX</ver:Initial>";
+            assertEquals(sExpected, xc1.xmlText());
+            // verify xc0
+            // should contain all the namespaces for the document
+            assertEquals(
+                    "<Initial xmlns=\"" + Common.CLM_NS + "\" " +
+                    Common.CLM_XSI_NS +
+                    ">GATX</Initial>",
+                    xc0.xmlText());
+        }
 
     }
 
@@ -113,49 +111,46 @@ public class CopyTest extends BasicCurso
         XmlObject xobj1 = XmlObject.Factory.parse(
                 JarUtil.getResourceFromJar(Common.TRANXML_FILE_XMLCURSOR_PO));
 
-        XmlCursor xc0 = xobj0.newCursor();
-        XmlCursor xc1 = xobj1.newCursor();
-
-        xc0.selectPath(Common.CLM_NS_XQUERY_DEFAULT + " .//Initial");
-        xc0.toNextSelection();
-
-         String sQuery=
-                 "declare namespace 
po=\"http://xbean.test/xmlcursor/PurchaseOrder\";; "+
-                 ".//po:zip";
-        xc1.selectPath( sQuery );
-        xc1.selectPath( sQuery );
-        xc1.toNextSelection();
-
-        xc1.copyXml(xc0); // should copy the <zip>90952</zip> element
-        // verify xc1
-        assertEquals(
-                "<po:zip 
xmlns:po=\"http://xbean.test/xmlcursor/PurchaseOrder\";>90952</po:zip>",
-                xc1.xmlText());
-        // verify xc0
-        // should contain all the namespaces for the document
-        xc0.toPrevSibling();
-        // assertEquals("<zip xmlns=\"" + Common.CLM_NS + "\" " + 
Common.CLM_XSI_NS + ">90952</zip>", xc0.xmlText());
-        String sExpected = "<po:zip " +
-                "xmlns=\"http://www.tranxml.org/TranXML/Version4.0\"; " +
-                "xmlns:xsi=\"http://www.w3.org/2000/10/XMLSchema-instance\"; " +
-                "xmlns:po=\"http://xbean.test/xmlcursor/PurchaseOrder\";>" +
-                "90952</po:zip>";
-
-        assertEquals(sExpected, xc0.xmlText());
-        xc0.dispose();
-        xc1.dispose();
+        try (XmlCursor xc0 = xobj0.newCursor();
+            XmlCursor xc1 = xobj1.newCursor()) {
+            xc0.selectPath(Common.CLM_NS_XQUERY_DEFAULT + " .//Initial");
+            xc0.toNextSelection();
+
+            String sQuery=
+                     "declare namespace 
po=\"http://xbean.test/xmlcursor/PurchaseOrder\";; "+
+                     ".//po:zip";
+            xc1.selectPath( sQuery );
+            xc1.selectPath( sQuery );
+            xc1.toNextSelection();
+
+            xc1.copyXml(xc0); // should copy the <zip>90952</zip> element
+            // verify xc1
+            assertEquals(
+                    "<po:zip 
xmlns:po=\"http://xbean.test/xmlcursor/PurchaseOrder\";>90952</po:zip>",
+                    xc1.xmlText());
+            // verify xc0
+            // should contain all the namespaces for the document
+            xc0.toPrevSibling();
+            // assertEquals("<zip xmlns=\"" + Common.CLM_NS + "\" " + 
Common.CLM_XSI_NS + ">90952</zip>", xc0.xmlText());
+            String sExpected = "<po:zip " +
+                    "xmlns=\"http://www.tranxml.org/TranXML/Version4.0\"; " +
+                    
"xmlns:xsi=\"http://www.w3.org/2000/10/XMLSchema-instance\"; " +
+                    "xmlns:po=\"http://xbean.test/xmlcursor/PurchaseOrder\";>" +
+                    "90952</po:zip>";
 
+            assertEquals(sExpected, xc0.xmlText());
+        }
     }
 
     @Test
     public void testCopySameLocation() throws Exception {
         m_xo = XmlObject.Factory.parse(Common.XML_FOO_DIGITS);
         m_xc = m_xo.newCursor();
-        XmlCursor xc1 = m_xo.newCursor();
-        toNextTokenOfType(m_xc, TokenType.TEXT);
-        toNextTokenOfType(xc1, TokenType.TEXT);
-        m_xc.copyXml(xc1);
-        xc1.dispose();
+        try (XmlCursor xc1 = m_xo.newCursor()) {
+            toNextTokenOfType(m_xc, TokenType.TEXT);
+            toNextTokenOfType(xc1, TokenType.TEXT);
+            m_xc.copyXml(xc1);
+        }
         m_xc.toParent();
         assertEquals("0123401234", m_xc.getTextValue());
     }
@@ -167,17 +162,17 @@ public class CopyTest extends BasicCurso
 
         String ns="declare namespace 
po=\"http://xbean.test/xmlcursor/PurchaseOrder\";; ";
         m_xc = m_xo.newCursor();
-        XmlCursor xc1 = m_xo.newCursor();
-        m_xc.selectPath(ns+" .//po:shipTo/po:city");
-        m_xc.toNextSelection();
-        xc1.selectPath(ns +" .//po:billTo/po:city");
-        xc1.toNextSelection();
-        m_xc.copyXml(xc1);
-        xc1.toPrevToken();
-        xc1.toPrevToken();
-        // verify xc1
-        assertEquals("Mill Valley", xc1.getChars());
-        xc1.dispose();
+        try (XmlCursor xc1 = m_xo.newCursor()) {
+            m_xc.selectPath(ns+" .//po:shipTo/po:city");
+            m_xc.toNextSelection();
+            xc1.selectPath(ns +" .//po:billTo/po:city");
+            xc1.toNextSelection();
+            m_xc.copyXml(xc1);
+            xc1.toPrevToken();
+            xc1.toPrevToken();
+            // verify xc1
+            assertEquals("Mill Valley", xc1.getChars());
+        }
         // verify m_xc
         assertEquals("Mill Valley", m_xc.getTextValue());
 
@@ -190,26 +185,27 @@ public class CopyTest extends BasicCurso
         m_xo = XmlObject.Factory.parse(
                 JarUtil.getResourceFromJar(Common.TRANXML_FILE_XMLCURSOR_PO));
         m_xc = m_xo.newCursor();
-        XmlCursor xc1 = m_xo.newCursor();
-        m_xc.selectPath(ns+" .//po:shipTo/po:city");
-        m_xc.toNextSelection();
-        xc1.selectPath(ns+" .//po:billTo/po:city");
-        xc1.toNextSelection();
-        xc1.toNextToken();
-        xc1.toNextChar(4);  // should be at 'T' in "Old Town"
-        m_xc.copyXml(xc1);     // should be "Old <city>Mill Valley</city>Town"
-        // verify xc1
-        xc1.toPrevToken();
-        assertEquals(TokenType.END, xc1.currentTokenType());
-        xc1.toPrevToken();
-        assertEquals("Mill Valley", xc1.getChars());
-        xc1.toPrevToken();
-        assertEquals(TokenType.START, xc1.currentTokenType());
-        assertEquals(new QName("city").getLocalPart(),
-                xc1.getName().getLocalPart());
-        xc1.toPrevToken();
-        assertEquals("Old ", xc1.getChars());
-        // verify m_xc
-        assertEquals("<po:city "+exp_ns+">Mill Valley</po:city>", 
m_xc.xmlText());
+        try (XmlCursor xc1 = m_xo.newCursor()) {
+            m_xc.selectPath(ns+" .//po:shipTo/po:city");
+            m_xc.toNextSelection();
+            xc1.selectPath(ns+" .//po:billTo/po:city");
+            xc1.toNextSelection();
+            xc1.toNextToken();
+            xc1.toNextChar(4);  // should be at 'T' in "Old Town"
+            m_xc.copyXml(xc1);     // should be "Old <city>Mill 
Valley</city>Town"
+            // verify xc1
+            xc1.toPrevToken();
+            assertEquals(TokenType.END, xc1.currentTokenType());
+            xc1.toPrevToken();
+            assertEquals("Mill Valley", xc1.getChars());
+            xc1.toPrevToken();
+            assertEquals(TokenType.START, xc1.currentTokenType());
+            assertEquals(new QName("city").getLocalPart(),
+                    xc1.getName().getLocalPart());
+            xc1.toPrevToken();
+            assertEquals("Old ", xc1.getChars());
+            // verify m_xc
+            assertEquals("<po:city "+exp_ns+">Mill Valley</po:city>", 
m_xc.xmlText());
+        }
     }
 }

Modified: 
xmlbeans/trunk/src/test/java/xmlcursor/checkin/CopyXmlContentsTest.java
URL: 
http://svn.apache.org/viewvc/xmlbeans/trunk/src/test/java/xmlcursor/checkin/CopyXmlContentsTest.java?rev=1896764&r1=1896763&r2=1896764&view=diff
==============================================================================
--- xmlbeans/trunk/src/test/java/xmlcursor/checkin/CopyXmlContentsTest.java 
(original)
+++ xmlbeans/trunk/src/test/java/xmlcursor/checkin/CopyXmlContentsTest.java Thu 
Jan  6 17:54:30 2022
@@ -44,7 +44,7 @@ public class CopyXmlContentsTest extends
                XmlCursor xc1 = XmlObject.Factory.parse(sDoc2).newCursor();
                toNextTokenOfType(m_xc, TokenType.START);
                toNextTokenOfType(xc1, TokenType.START);
-               xc1.dispose();
+               xc1.close();
                m_xc.copyXmlContents(xc1);
        }
 
@@ -53,14 +53,14 @@ public class CopyXmlContentsTest extends
                String sDoc1 = Common.XML_FOO_DIGITS;
                String sDoc2 = Common.XML_FOO_2ATTR_TEXT;
                m_xc = XmlObject.Factory.parse(sDoc1).newCursor();
-               XmlCursor xc1 = XmlObject.Factory.parse(sDoc2).newCursor();
-               toNextTokenOfType(m_xc, TokenType.START);
-               toNextTokenOfType(xc1, TokenType.TEXT);
-               m_xc.copyXmlContents(xc1);
-               xc1.toParent();
-               // verify xc1
-               assertEquals("01234text", xc1.getTextValue());
-               xc1.dispose();
+               try (XmlCursor xc1 = 
XmlObject.Factory.parse(sDoc2).newCursor()) {
+               toNextTokenOfType(m_xc, TokenType.START);
+               toNextTokenOfType(xc1, TokenType.TEXT);
+               m_xc.copyXmlContents(xc1);
+               xc1.toParent();
+               // verify xc1
+               assertEquals("01234text", xc1.getTextValue());
+               }
 
                // verify m_xc
                toNextTokenOfType(m_xc, TokenType.TEXT); //get to the text
@@ -73,11 +73,12 @@ public class CopyXmlContentsTest extends
                String sDoc1 = Common.XML_FOO_DIGITS;
                String sDoc2 = Common.XML_FOO_2ATTR_TEXT;
                m_xc = XmlObject.Factory.parse(sDoc1).newCursor();
-               XmlCursor xc1 = XmlObject.Factory.parse(sDoc2).newCursor();
-               toNextTokenOfType(m_xc, TokenType.TEXT);
-               toNextTokenOfType(xc1, TokenType.START);
-               boolean result = m_xc.copyXmlContents(xc1);
-               assertFalse(result);
+               try (XmlCursor xc1 = 
XmlObject.Factory.parse(sDoc2).newCursor()) {
+               toNextTokenOfType(m_xc, TokenType.TEXT);
+               toNextTokenOfType(xc1, TokenType.START);
+               boolean result = m_xc.copyXmlContents(xc1);
+               assertFalse(result);
+               }
        }
 
        @Test
@@ -117,37 +118,42 @@ public class CopyXmlContentsTest extends
        public void testCopyWholeDoc() throws Exception {
                String sDoc1 = Common.XML_FOO_BAR_WS_TEXT;
                String sDoc2 = "<root></root>";
-               m_xc = XmlObject.Factory.parse(sDoc1).newCursor();
-               XmlCursor xc1 = XmlObject.Factory.parse(sDoc2).newCursor();
-               xc1.toFirstChild();
-               String sExpectedXml = m_xc.xmlText();
-               boolean result = m_xc.copyXmlContents(xc1);
-               toPrevTokenOfType(xc1, TokenType.STARTDOC);
-               toNextTokenOfType(xc1, TokenType.START);
-               assertEquals(sExpectedXml, xc1.xmlText());
+
+               try (XmlCursor xc1 = XmlObject.Factory.parse(sDoc1).newCursor();
+                   XmlCursor xc2 = XmlObject.Factory.parse(sDoc2).newCursor()) 
{
+               xc2.toFirstChild();
+               String sExpectedXml = xc1.xmlText();
+               boolean result = xc1.copyXmlContents(xc2);
+               toPrevTokenOfType(xc2, TokenType.STARTDOC);
+               toNextTokenOfType(xc2, TokenType.START);
+               assertEquals(sExpectedXml, xc2.xmlText());
+               }
 
                //namespaces are not copied
                sDoc1 = Common.XML_FOO_NS_PREFIX;
                sDoc2 = "<root></root>";
-               m_xc = XmlObject.Factory.parse(sDoc1).newCursor();
-               xc1 = XmlObject.Factory.parse(sDoc2).newCursor();
-               sExpectedXml = m_xc.xmlText();
-               xc1.toFirstChild();
-
-               result = m_xc.copyXmlContents(xc1);
-               toPrevTokenOfType(xc1, TokenType.STARTDOC);
-               assertNotEquals(sExpectedXml, xc1.xmlText());
-
-               //attributes are not copied
-               sDoc1 = Common.XML_FOO_2ATTR;
-               sDoc2 = "<root></root>";
-               m_xc = XmlObject.Factory.parse(sDoc1).newCursor();
-               xc1 = XmlObject.Factory.parse(sDoc2).newCursor();
-               sExpectedXml = m_xc.xmlText();
-               xc1.toFirstChild();
-
-               result = m_xc.copyXmlContents(xc1);
-               toPrevTokenOfType(xc1, TokenType.STARTDOC);
-               assertNotEquals(sExpectedXml, xc1.xmlText());
+               try (XmlCursor xc1 = XmlObject.Factory.parse(sDoc1).newCursor();
+                   XmlCursor xc2 = XmlObject.Factory.parse(sDoc2).newCursor()) 
{
+                   String sExpectedXml = xc1.xmlText();
+               xc2.toFirstChild();
+
+               boolean result = xc1.copyXmlContents(xc2);
+               toPrevTokenOfType(xc2, TokenType.STARTDOC);
+               assertNotEquals(sExpectedXml, xc2.xmlText());
+
+               //attributes are not copied
+               sDoc1 = Common.XML_FOO_2ATTR;
+               sDoc2 = "<root></root>";
+               }
+
+               try (XmlCursor xc1 = XmlObject.Factory.parse(sDoc1).newCursor();
+           XmlCursor xc2 = XmlObject.Factory.parse(sDoc2).newCursor()) {
+           String sExpectedXml = xc1.xmlText();
+               xc2.toFirstChild();
+
+               boolean result = xc1.copyXmlContents(xc2);
+               toPrevTokenOfType(xc2, TokenType.STARTDOC);
+               assertNotEquals(sExpectedXml, xc2.xmlText());
+               }
        }
 }

Modified: 
xmlbeans/trunk/src/test/java/xmlcursor/checkin/IsAtSamePositionAsTest.java
URL: 
http://svn.apache.org/viewvc/xmlbeans/trunk/src/test/java/xmlcursor/checkin/IsAtSamePositionAsTest.java?rev=1896764&r1=1896763&r2=1896764&view=diff
==============================================================================
--- xmlbeans/trunk/src/test/java/xmlcursor/checkin/IsAtSamePositionAsTest.java 
(original)
+++ xmlbeans/trunk/src/test/java/xmlcursor/checkin/IsAtSamePositionAsTest.java 
Thu Jan  6 17:54:30 2022
@@ -32,27 +32,30 @@ public class IsAtSamePositionAsTest exte
 
        @Test
        public void testNormalCase() {
-               XmlCursor m_xc1 = m_xo.newCursor();
-               m_xc.toFirstChild();
-               m_xc1.toFirstChild();
-               assertTrue(m_xc.isAtSamePositionAs(m_xc1));
+           try (XmlCursor m_xc1 = m_xo.newCursor()) {
+               m_xc.toFirstChild();
+               m_xc1.toFirstChild();
+               assertTrue(m_xc.isAtSamePositionAs(m_xc1));
+           }
        }
 
        @Test(expected = IllegalArgumentException.class)
        public void testSamePosDiffDoc() throws Exception {
-               XmlCursor m_xc1 = XmlObject.Factory.parse(sDoc).newCursor();
-               m_xc.toFirstChild();
-               m_xc1.toFirstChild();
-               m_xc.isAtSamePositionAs(m_xc1);
+           try (XmlCursor m_xc1 = XmlObject.Factory.parse(sDoc).newCursor()) {
+               m_xc.toFirstChild();
+               m_xc1.toFirstChild();
+               m_xc.isAtSamePositionAs(m_xc1);
+           }
        }
 
        @Test
        public void testDiffPosSameDoc() throws Exception {
-               XmlCursor m_xc1 = m_xo.newCursor();
-               m_xc.toFirstChild();
-               m_xc1.toFirstChild();
-               m_xc1.toFirstAttribute();
-               assertFalse(m_xc.isAtSamePositionAs(m_xc1));
+           try (XmlCursor m_xc1 = m_xo.newCursor()) {
+               m_xc.toFirstChild();
+               m_xc1.toFirstChild();
+               m_xc1.toFirstAttribute();
+               assertFalse(m_xc.isAtSamePositionAs(m_xc1));
+           }
        }
 
        @Test(expected = Exception.class)

Modified: 
xmlbeans/trunk/src/test/java/xmlcursor/checkin/IsInSameDocumentTest.java
URL: 
http://svn.apache.org/viewvc/xmlbeans/trunk/src/test/java/xmlcursor/checkin/IsInSameDocumentTest.java?rev=1896764&r1=1896763&r2=1896764&view=diff
==============================================================================
--- xmlbeans/trunk/src/test/java/xmlcursor/checkin/IsInSameDocumentTest.java 
(original)
+++ xmlbeans/trunk/src/test/java/xmlcursor/checkin/IsInSameDocumentTest.java 
Thu Jan  6 17:54:30 2022
@@ -31,27 +31,21 @@ public class IsInSameDocumentTest extend
     @Test
     public void testSameDocSTARTDOCandENDDOC() throws Exception {
         m_xc = XmlObject.Factory.parse(Common.XML_FOO_1ATTR_TEXT).newCursor();
-        XmlCursor xc0 = m_xc.newCursor();
-        xc0.toEndDoc();
-        try {
+        try (XmlCursor xc0 = m_xc.newCursor()) {
+            xc0.toEndDoc();
             assertTrue(m_xc.isInSameDocument(xc0));
             assertTrue(xc0.isInSameDocument(m_xc));
-        } finally {
-            xc0.dispose();
         }
     }
 
     @Test
     public void testSameDocNAMESPACEandATTR() throws Exception {
         m_xc = XmlObject.Factory.parse(Common.XML_FOO_DIGITS).newCursor();
-        XmlCursor xc0 = m_xc.newCursor();
-        try {
+        try (XmlCursor xc0 = m_xc.newCursor()) {
             toNextTokenOfType(m_xc, TokenType.NAMESPACE);
             toNextTokenOfType(xc0, TokenType.ATTR);
             assertTrue(m_xc.isInSameDocument(xc0));
             assertTrue(xc0.isInSameDocument(m_xc));
-        } finally {
-            xc0.dispose();
         }
     }
 
@@ -64,29 +58,25 @@ public class IsInSameDocumentTest extend
     @Test
     public void testSameDocDifferentDocs() throws Exception {
         m_xc = XmlObject.Factory.parse(Common.XML_FOO_1ATTR_TEXT).newCursor();
-        XmlCursor xc0 = 
XmlObject.Factory.parse(Common.XML_FOO_1ATTR_TEXT).newCursor();
-        toNextTokenOfType(m_xc, TokenType.TEXT);
-        toNextTokenOfType(xc0, TokenType.TEXT);
-        try {
+        try (XmlCursor xc0 = 
XmlObject.Factory.parse(Common.XML_FOO_1ATTR_TEXT).newCursor()) {
+            toNextTokenOfType(m_xc, TokenType.TEXT);
+            toNextTokenOfType(xc0, TokenType.TEXT);
+
             assertFalse(m_xc.isInSameDocument(xc0));
             assertFalse(xc0.isInSameDocument(m_xc));
-        } finally {
-            xc0.dispose();
         }
     }
 
     @Test
     public void testSameDocTEXTpositional() throws Exception {
         m_xc = XmlObject.Factory.parse(Common.XML_FOO_1ATTR_TEXT).newCursor();
-        XmlCursor xc0 = m_xc.newCursor();
-        toNextTokenOfType(m_xc, TokenType.TEXT);
-        toNextTokenOfType(xc0, TokenType.TEXT);
-        xc0.toNextChar(2);
-        try {
+        try (XmlCursor xc0 = m_xc.newCursor()) {
+            toNextTokenOfType(m_xc, TokenType.TEXT);
+            toNextTokenOfType(xc0, TokenType.TEXT);
+            xc0.toNextChar(2);
+
             assertTrue(m_xc.isInSameDocument(xc0));
             assertTrue(xc0.isInSameDocument(m_xc));
-        } finally {
-            xc0.dispose();
         }
     }
 }

Modified: xmlbeans/trunk/src/test/java/xmlcursor/checkin/MoveCharsTest.java
URL: 
http://svn.apache.org/viewvc/xmlbeans/trunk/src/test/java/xmlcursor/checkin/MoveCharsTest.java?rev=1896764&r1=1896763&r2=1896764&view=diff
==============================================================================
--- xmlbeans/trunk/src/test/java/xmlcursor/checkin/MoveCharsTest.java (original)
+++ xmlbeans/trunk/src/test/java/xmlcursor/checkin/MoveCharsTest.java Thu Jan  
6 17:54:30 2022
@@ -32,17 +32,14 @@ public class MoveCharsTest extends Basic
     public void testMoveCharsOverlap() throws Exception {
         m_xo = XmlObject.Factory.parse(Common.XML_FOO_DIGITS);
         m_xc = m_xo.newCursor();
-        XmlCursor xc1 = m_xo.newCursor();
         toNextTokenOfType(m_xc, TokenType.TEXT);
-        toNextTokenOfType(xc1, TokenType.TEXT);
-        xc1.toNextChar(2);
-        try {
+        try (XmlCursor xc1 = m_xo.newCursor()) {
+            toNextTokenOfType(xc1, TokenType.TEXT);
+            xc1.toNextChar(2);
             assertEquals("234", xc1.getChars());
             assertEquals(3, m_xc.moveChars(3, xc1));
             assertEquals("34", m_xc.getChars());
             assertEquals("34", xc1.getChars());
-        } finally {
-            xc1.dispose();
         }
     }
 
@@ -50,23 +47,20 @@ public class MoveCharsTest extends Basic
     public void testMoveCharsNoOverlap() throws Exception {
         m_xo = XmlObject.Factory.parse(Common.XML_FOO_DIGITS);
         m_xc = m_xo.newCursor();
-        XmlCursor xc1 = m_xo.newCursor();
-        XmlCursor xc2 = m_xo.newCursor();
         toNextTokenOfType(m_xc, TokenType.TEXT);
-        xc1.toCursor(m_xc);
-        xc2.toCursor(m_xc);
-        xc1.toNextChar(3);
-        xc2.toNextChar(4);
-        try {
+        try (XmlCursor xc1 = m_xo.newCursor();
+            XmlCursor xc2 = m_xo.newCursor()) {
+            xc1.toCursor(m_xc);
+            xc2.toCursor(m_xc);
+            xc1.toNextChar(3);
+            xc2.toNextChar(4);
+
             assertEquals("34", xc1.getChars());
             assertEquals("4", xc2.getChars());
             assertEquals(2, m_xc.moveChars(2, xc1));
             assertEquals("20134", m_xc.getChars());
             assertEquals("34", xc1.getChars());
             assertEquals("4", xc2.getChars());
-        } finally {
-            xc1.dispose();
-            xc2.dispose();
         }
     }
 
@@ -82,11 +76,8 @@ public class MoveCharsTest extends Basic
     public void testMoveCharsSibling() throws Exception {
         m_xo = 
XmlObject.Factory.parse("<foo><bar>0123</bar><bar>WXYZ</bar></foo>");
         m_xc = m_xo.newCursor();
-        toNextTokenOfType(m_xc, TokenType.TEXT);
-        XmlCursor xc0 = m_xc.newCursor();
-        toNextTokenOfType(m_xc, TokenType.TEXT);
-        XmlCursor xc1 = m_xc.newCursor();
-        try {
+        try (XmlCursor xc0 = toNextTokenOfTypeCursor(m_xc, TokenType.TEXT);
+            XmlCursor xc1 = toNextTokenOfTypeCursor(m_xc, TokenType.TEXT)) {
             assertFalse(xc0.isAtSamePositionAs(xc1));
             assertEquals(4, xc1.moveChars(4, xc0));
             assertEquals("0123", xc0.getChars());
@@ -96,9 +87,6 @@ public class MoveCharsTest extends Basic
             assertEquals(TokenType.END, xc1.currentTokenType());
 
             xc1.getTextValue();
-        } finally {
-            xc0.dispose();
-            xc1.dispose();
         }
     }
 
@@ -106,11 +94,8 @@ public class MoveCharsTest extends Basic
     public void testMoveCharsNegative() throws Exception {
         m_xo = 
XmlObject.Factory.parse("<foo><bar>0123</bar><bar>WXYZ</bar></foo>");
         m_xc = m_xo.newCursor();
-        toNextTokenOfType(m_xc, TokenType.TEXT);
-        XmlCursor xc0 = m_xc.newCursor();
-        toNextTokenOfType(m_xc, TokenType.TEXT);
-        XmlCursor xc1 = m_xc.newCursor();
-        try {
+        try (XmlCursor xc0 = toNextTokenOfTypeCursor(m_xc, TokenType.TEXT);
+            XmlCursor xc1 = toNextTokenOfTypeCursor(m_xc, TokenType.TEXT)) {
             assertFalse(xc0.isAtSamePositionAs(xc1));
             assertEquals(4, xc1.moveChars(-1, xc0));
             assertEquals("0123", xc0.getChars());
@@ -118,9 +103,6 @@ public class MoveCharsTest extends Basic
             assertEquals("WXYZ0123", xc0.getTextValue());
             assertEquals(TokenType.END, xc1.currentTokenType());
             xc1.getTextValue();
-        } finally {
-            xc0.dispose();
-            xc1.dispose();
         }
     }
 
@@ -128,11 +110,8 @@ public class MoveCharsTest extends Basic
     public void testMoveCharsZero() throws Exception {
         m_xo = 
XmlObject.Factory.parse("<foo><bar>0123</bar><bar>WXYZ</bar></foo>");
         m_xc = m_xo.newCursor();
-        toNextTokenOfType(m_xc, TokenType.TEXT);
-        XmlCursor xc0 = m_xc.newCursor();
-        toNextTokenOfType(m_xc, TokenType.TEXT);
-        XmlCursor xc1 = m_xc.newCursor();
-        try {
+        try (XmlCursor xc0 = toNextTokenOfTypeCursor(m_xc, TokenType.TEXT);
+            XmlCursor xc1 = toNextTokenOfTypeCursor(m_xc, TokenType.TEXT)) {
             assertFalse(xc0.isAtSamePositionAs(xc1));
             assertEquals(0, xc1.moveChars(0, xc0));
             assertEquals("0123", xc0.getChars());
@@ -140,9 +119,6 @@ public class MoveCharsTest extends Basic
             assertEquals("0123", xc0.getTextValue());
             assertEquals(TokenType.TEXT, xc1.currentTokenType());
             assertEquals("WXYZ", xc1.getChars());
-        } finally {
-            xc0.dispose();
-            xc1.dispose();
         }
     }
 
@@ -150,12 +126,9 @@ public class MoveCharsTest extends Basic
     public void testMoveCharsToSTARTDOC() throws Exception {
         m_xo = 
XmlObject.Factory.parse("<foo><bar>0123</bar><bar>WXYZ</bar></foo>");
         m_xc = m_xo.newCursor();
-        XmlCursor xc0 = m_xo.newCursor();
         toNextTokenOfType(m_xc, TokenType.TEXT);
-        try{
+        try (XmlCursor xc0 = m_xo.newCursor()) {
             m_xc.moveChars(4, xc0);
-        } finally {
-            xc0.dispose();
         }
     }
 
@@ -163,16 +136,14 @@ public class MoveCharsTest extends Basic
     public void testMoveCharsToPROCINST() throws Exception {
         m_xo = XmlObject.Factory.parse(Common.XML_FOO_PROCINST);
         m_xc = m_xo.newCursor();
-        XmlCursor xc0 = m_xo.newCursor();
-        toNextTokenOfType(xc0, TokenType.PROCINST);
         toNextTokenOfType(m_xc, TokenType.TEXT);
-        m_xc.moveChars(1, xc0);
-        xc0.toPrevToken();
-        try {
+        try (XmlCursor xc0 = m_xo.newCursor()) {
+            toNextTokenOfType(xc0, TokenType.PROCINST);
+            m_xc.moveChars(1, xc0);
+            xc0.toPrevToken();
+
             assertEquals("t", xc0.getChars());
             assertEquals("ext", m_xc.getChars());
-        } finally {
-            xc0.dispose();
         }
     }
 
@@ -180,11 +151,8 @@ public class MoveCharsTest extends Basic
     public void testMoveCharsGTmax() throws Exception {
         m_xo = 
XmlObject.Factory.parse("<foo><bar>0123</bar><bar>WXYZ</bar></foo>");
         m_xc = m_xo.newCursor();
-        toNextTokenOfType(m_xc, TokenType.TEXT);
-        XmlCursor xc0 = m_xc.newCursor();
-        toNextTokenOfType(m_xc, TokenType.TEXT);
-        XmlCursor xc1 = m_xc.newCursor();
-        try {
+        try (XmlCursor xc0 = toNextTokenOfTypeCursor(m_xc, TokenType.TEXT);
+            XmlCursor xc1 = toNextTokenOfTypeCursor(m_xc, TokenType.TEXT)) {
             assertFalse(xc0.isAtSamePositionAs(xc1));
             assertEquals(4, xc1.moveChars(1000, xc0));
             assertEquals("0123", xc0.getChars());
@@ -194,9 +162,6 @@ public class MoveCharsTest extends Basic
             assertEquals(TokenType.END, xc1.currentTokenType());
 
             xc1.getTextValue();
-        } finally {
-            xc0.dispose();
-            xc1.dispose();
         }
     }
 
@@ -204,15 +169,15 @@ public class MoveCharsTest extends Basic
     public void testMoveCharsToNewDocument() throws Exception {
         m_xo = XmlObject.Factory.parse(Common.XML_FOO_DIGITS);
         m_xc = m_xo.newCursor();
-        XmlObject xo = XmlObject.Factory.parse(Common.XML_FOO_2ATTR_TEXT);
-        XmlCursor xc1 = xo.newCursor();
         toNextTokenOfType(m_xc, TokenType.TEXT);
-        toNextTokenOfType(xc1, TokenType.TEXT);
-        assertEquals(5, m_xc.moveChars(5, xc1));
-        xc1.toParent();
-        // verify xc1
-        assertEquals("01234text", xc1.getTextValue());
-        xc1.dispose();
+        XmlObject xo = XmlObject.Factory.parse(Common.XML_FOO_2ATTR_TEXT);
+        try (XmlCursor xc1 = xo.newCursor()) {
+            toNextTokenOfType(xc1, TokenType.TEXT);
+            assertEquals(5, m_xc.moveChars(5, xc1));
+            xc1.toParent();
+            // verify xc1
+            assertEquals("01234text", xc1.getTextValue());
+        }
         // verify m_xc
         assertEquals(TokenType.END, m_xc.currentTokenType());
     }

Modified: xmlbeans/trunk/src/test/java/xmlcursor/checkin/MoveTest.java
URL: 
http://svn.apache.org/viewvc/xmlbeans/trunk/src/test/java/xmlcursor/checkin/MoveTest.java?rev=1896764&r1=1896763&r2=1896764&view=diff
==============================================================================
--- xmlbeans/trunk/src/test/java/xmlcursor/checkin/MoveTest.java (original)
+++ xmlbeans/trunk/src/test/java/xmlcursor/checkin/MoveTest.java Thu Jan  6 
17:54:30 2022
@@ -44,14 +44,14 @@ public class MoveTest extends BasicCurso
         m_xo = XmlObject.Factory.parse(Common.XML_FOO_DIGITS);
         m_xc = m_xo.newCursor();
         XmlObject xo = XmlObject.Factory.parse(Common.XML_FOO_2ATTR_TEXT);
-        XmlCursor xc1 = xo.newCursor();
-        toNextTokenOfType(m_xc, TokenType.TEXT);
-        toNextTokenOfType(xc1, TokenType.TEXT);
-        m_xc.moveXml(xc1);
-        xc1.toParent();
-        // verify xc1
-        assertEquals("01234text", xc1.getTextValue());
-        xc1.dispose();
+        try (XmlCursor xc1 = xo.newCursor()) {
+            toNextTokenOfType(m_xc, TokenType.TEXT);
+            toNextTokenOfType(xc1, TokenType.TEXT);
+            m_xc.moveXml(xc1);
+            xc1.toParent();
+            // verify xc1
+            assertEquals("01234text", xc1.getTextValue());
+        }
         // verify m_xc
         assertEquals(TokenType.END, m_xc.currentTokenType());
     }
@@ -64,48 +64,44 @@ public class MoveTest extends BasicCurso
         XmlObject xobj1 = XmlObject.Factory.parse(
                 JarUtil.getResourceFromJar(Common.TRANXML_FILE_XMLCURSOR_PO));
 
-        XmlCursor xc0 = xobj0.newCursor();
-        XmlCursor xc1 = xobj1.newCursor();
-
-        xc0.selectPath(Common.CLM_NS_XQUERY_DEFAULT + ".//Initial");
-        xc0.toNextSelection();
-
-        String sQuery=
-                "declare namespace 
po=\"http://xbean.test/xmlcursor/PurchaseOrder\";; "+
-                ".//po:zip";
-        xc1.selectPath( sQuery );
-        assertTrue( 0 < xc1.getSelectionCount());
-        xc1.toNextSelection();
-
-
-        xc0.moveXml(xc1); // should move the <Initial>GATX</Initial> element 
plus the namespace
-
-
-        xc1.toPrevSibling();
-        // verify xc1
-        String sExpected = "<ver:Initial " +
-                "xmlns:po=\"http://xbean.test/xmlcursor/PurchaseOrder\"; " +
-                "xmlns:ver=\"http://www.tranxml.org/TranXML/Version4.0\";>" +
-                "GATX</ver:Initial>";
-        assertEquals(sExpected, xc1.xmlText());
-        // verify xc0
-        xc0.toNextToken();  // skip the whitespace token
-        assertEquals("123456", xc0.getTextValue());
-
-        xc0.dispose();
-        xc1.dispose();
-
+        try (XmlCursor xc0 = xobj0.newCursor();
+            XmlCursor xc1 = xobj1.newCursor()) {
+            xc0.selectPath(Common.CLM_NS_XQUERY_DEFAULT + ".//Initial");
+            xc0.toNextSelection();
+
+            String sQuery=
+                    "declare namespace 
po=\"http://xbean.test/xmlcursor/PurchaseOrder\";; "+
+                    ".//po:zip";
+            xc1.selectPath( sQuery );
+            assertTrue( 0 < xc1.getSelectionCount());
+            xc1.toNextSelection();
+
+
+            xc0.moveXml(xc1); // should move the <Initial>GATX</Initial> 
element plus the namespace
+
+
+            xc1.toPrevSibling();
+            // verify xc1
+            String sExpected = "<ver:Initial " +
+                    "xmlns:po=\"http://xbean.test/xmlcursor/PurchaseOrder\"; " +
+                    "xmlns:ver=\"http://www.tranxml.org/TranXML/Version4.0\";>" 
+
+                    "GATX</ver:Initial>";
+            assertEquals(sExpected, xc1.xmlText());
+            // verify xc0
+            xc0.toNextToken();  // skip the whitespace token
+            assertEquals("123456", xc0.getTextValue());
+        }
     }
 
     @Test
     public void testMoveSameLocation() throws Exception {
         m_xo = XmlObject.Factory.parse(Common.XML_FOO_DIGITS);
         m_xc = m_xo.newCursor();
-        XmlCursor xc1 = m_xo.newCursor();
-        toNextTokenOfType(m_xc, TokenType.TEXT);
-        toNextTokenOfType(xc1, TokenType.TEXT);
-        m_xc.moveXml(xc1);
-        xc1.dispose();
+        try (XmlCursor xc1 = m_xo.newCursor()) {
+            toNextTokenOfType(m_xc, TokenType.TEXT);
+            toNextTokenOfType(xc1, TokenType.TEXT);
+            m_xc.moveXml(xc1);
+        }
         assertEquals("01234", m_xc.getChars());
     }
 
@@ -116,17 +112,18 @@ public class MoveTest extends BasicCurso
         String ns="declare namespace 
po=\"http://xbean.test/xmlcursor/PurchaseOrder\";; ";
 
         m_xc = m_xo.newCursor();
-        XmlCursor xc1 = m_xo.newCursor();
-        m_xc.selectPath(ns+" .//po:shipTo/po:city");
-        m_xc.toNextSelection();
-        xc1.selectPath(ns +" .//po:billTo/po:city");
-        xc1.toNextSelection();
-        m_xc.moveXml(xc1);
-        xc1.toPrevToken();
-        xc1.toPrevToken();
-
-        // verify xc1
-        assertEquals("Mill Valley", xc1.getChars());
+        try (XmlCursor xc1 = m_xo.newCursor()) {
+            m_xc.selectPath(ns+" .//po:shipTo/po:city");
+            m_xc.toNextSelection();
+            xc1.selectPath(ns +" .//po:billTo/po:city");
+            xc1.toNextSelection();
+            m_xc.moveXml(xc1);
+            xc1.toPrevToken();
+            xc1.toPrevToken();
+
+            // verify xc1
+            assertEquals("Mill Valley", xc1.getChars());
+        }
 
         // verify m_xc
         m_xc.toNextToken(); // skip the whitespace token
@@ -141,26 +138,27 @@ public class MoveTest extends BasicCurso
         String ns="declare namespace 
po=\"http://xbean.test/xmlcursor/PurchaseOrder\";; ";
 
         m_xc = m_xo.newCursor();
-        XmlCursor xc1 = m_xo.newCursor();
-        m_xc.selectPath(ns+" .//po:shipTo/po:city");
-        m_xc.toNextSelection();
-        xc1.selectPath(ns+" .//po:billTo/po:city");
-        xc1.toNextSelection();
-        xc1.toNextToken();
-        xc1.toNextChar(4);  // should be at 'T' in "Old Town"
-        m_xc.moveXml(xc1);     // should be "Old <city>Mill Valley</city>Town"
-        // verify xc1
-        xc1.toPrevToken();
-        assertEquals(TokenType.END, xc1.currentTokenType());
-        xc1.toPrevToken();
-        assertEquals("Mill Valley", xc1.getChars());
-        xc1.toPrevToken();
-        assertEquals(TokenType.START, xc1.currentTokenType());
-        assertEquals(new QName("city").getLocalPart(),
-                xc1.getName().getLocalPart());
-        xc1.toPrevToken();
+        try (XmlCursor xc1 = m_xo.newCursor()) {
+            m_xc.selectPath(ns+" .//po:shipTo/po:city");
+            m_xc.toNextSelection();
+            xc1.selectPath(ns+" .//po:billTo/po:city");
+            xc1.toNextSelection();
+            xc1.toNextToken();
+            xc1.toNextChar(4);  // should be at 'T' in "Old Town"
+            m_xc.moveXml(xc1);     // should be "Old <city>Mill 
Valley</city>Town"
+            // verify xc1
+            xc1.toPrevToken();
+            assertEquals(TokenType.END, xc1.currentTokenType());
+            xc1.toPrevToken();
+            assertEquals("Mill Valley", xc1.getChars());
+            xc1.toPrevToken();
+            assertEquals(TokenType.START, xc1.currentTokenType());
+            assertEquals(new QName("city").getLocalPart(),
+                    xc1.getName().getLocalPart());
+            xc1.toPrevToken();
 
-        assertEquals("Old ", xc1.getChars());
+            assertEquals("Old ", xc1.getChars());
+        }
         // verify m_xc
         m_xc.toNextToken(); // skip the whitespace token
 



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to