From 059ad8bfc44cf5869d33a412b15c5f494d4cdd0f Mon Sep 17 00:00:00 2001 From: deathy Date: Thu, 23 Apr 2020 23:50:29 +0300 Subject: [PATCH 1/6] ignore IDEA configuration files --- .gitignore | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.gitignore b/.gitignore index 762f6e9..8e7ef3e 100644 --- a/.gitignore +++ b/.gitignore @@ -7,3 +7,7 @@ /bin /target /java-xmlbuilder + +# ignore IDEA project/module files +/.idea/ +*.iml From 89d473d1e968dbf3a2deb9b8462413979a902e7a Mon Sep 17 00:00:00 2001 From: deathy Date: Thu, 23 Apr 2020 23:52:16 +0300 Subject: [PATCH 2/6] remove unused import also not present by default in newer JDKs (probably 9 and up since modules) so would break the build there --- src/test/java/com/jamesmurty/utils/BaseXMLBuilderTests.java | 1 - 1 file changed, 1 deletion(-) diff --git a/src/test/java/com/jamesmurty/utils/BaseXMLBuilderTests.java b/src/test/java/com/jamesmurty/utils/BaseXMLBuilderTests.java index ca8876f..274d461 100644 --- a/src/test/java/com/jamesmurty/utils/BaseXMLBuilderTests.java +++ b/src/test/java/com/jamesmurty/utils/BaseXMLBuilderTests.java @@ -6,7 +6,6 @@ import java.io.StringWriter; import java.util.Properties; -import javax.annotation.Resource; import javax.xml.transform.OutputKeys; import javax.xml.xpath.XPathConstants; import javax.xml.xpath.XPathExpressionException; From 40ad81e8c61487ef842950752410e25050349c4d Mon Sep 17 00:00:00 2001 From: deathy Date: Thu, 23 Apr 2020 23:53:08 +0300 Subject: [PATCH 3/6] update build configuration for Java 8 --- pom.xml | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/pom.xml b/pom.xml index 88d5285..2f04019 100644 --- a/pom.xml +++ b/pom.xml @@ -35,6 +35,10 @@ + + 8 + + net.iharder @@ -59,6 +63,16 @@ + + + org.apache.maven.plugins + maven-compiler-plugin + 3.8.1 + + ${java.version} + ${java.version} + + org.apache.maven.plugins From 59b04bc5930cf24998eaee228b03b84d0169382f Mon Sep 17 00:00:00 2001 From: deathy Date: Thu, 23 Apr 2020 23:57:21 +0300 Subject: [PATCH 4/6] configure simple build with github action --- .github/workflows/maven-install.yml | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 .github/workflows/maven-install.yml diff --git a/.github/workflows/maven-install.yml b/.github/workflows/maven-install.yml new file mode 100644 index 0000000..edde7f2 --- /dev/null +++ b/.github/workflows/maven-install.yml @@ -0,0 +1,19 @@ +# General maven install to check everything compiles + +name: Maven Install + +on: push + +jobs: + build: + + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v1 + - name: Set up JDK 8 + uses: actions/setup-java@v1 + with: + java-version: 8.0.252 + - name: Build with Maven + run: mvn install From c9225d2793d4e989e6e52c969b12914db872409c Mon Sep 17 00:00:00 2001 From: deathy Date: Fri, 24 Apr 2020 00:06:45 +0300 Subject: [PATCH 5/6] remove extra dependency, Base64 in JDK since 8 --- pom.xml | 7 ------- src/main/java/com/jamesmurty/utils/BaseXMLBuilder.java | 5 ++--- .../java/com/jamesmurty/utils/BaseXMLBuilderTests.java | 6 +++--- 3 files changed, 5 insertions(+), 13 deletions(-) diff --git a/pom.xml b/pom.xml index 2f04019..e822e9b 100644 --- a/pom.xml +++ b/pom.xml @@ -40,13 +40,6 @@ - - net.iharder - base64 - 2.3.8 - compile - - junit junit diff --git a/src/main/java/com/jamesmurty/utils/BaseXMLBuilder.java b/src/main/java/com/jamesmurty/utils/BaseXMLBuilder.java index c9466f7..cb88356 100644 --- a/src/main/java/com/jamesmurty/utils/BaseXMLBuilder.java +++ b/src/main/java/com/jamesmurty/utils/BaseXMLBuilder.java @@ -22,6 +22,7 @@ import java.io.IOException; import java.io.StringWriter; import java.io.Writer; +import java.util.Base64; import java.util.Map.Entry; import java.util.Properties; @@ -42,8 +43,6 @@ import javax.xml.xpath.XPathExpressionException; import javax.xml.xpath.XPathFactory; -import net.iharder.Base64; - import org.w3c.dom.Document; import org.w3c.dom.Element; import org.w3c.dom.Node; @@ -857,7 +856,7 @@ protected void cdataImpl(String data) { protected void cdataImpl(byte[] data) { xmlNode.appendChild( getDocument().createCDATASection( - Base64.encodeBytes(data))); + Base64.getEncoder().encodeToString(data))); } /** diff --git a/src/test/java/com/jamesmurty/utils/BaseXMLBuilderTests.java b/src/test/java/com/jamesmurty/utils/BaseXMLBuilderTests.java index 274d461..d193b45 100644 --- a/src/test/java/com/jamesmurty/utils/BaseXMLBuilderTests.java +++ b/src/test/java/com/jamesmurty/utils/BaseXMLBuilderTests.java @@ -4,6 +4,7 @@ import java.io.FileWriter; import java.io.StringReader; import java.io.StringWriter; +import java.util.Base64; import java.util.Properties; import javax.xml.transform.OutputKeys; @@ -11,7 +12,6 @@ import javax.xml.xpath.XPathExpressionException; import junit.framework.TestCase; -import net.iharder.Base64; import org.w3c.dom.Node; import org.w3c.dom.NodeList; @@ -331,7 +331,7 @@ public void testImport() throws Exception { public void testCDataNodes() throws Exception { String text = "Text data -- left as it is"; String textForBytes = "Byte data is automatically base64-encoded"; - String textEncoded = Base64.encodeBytes(textForBytes.getBytes("UTF-8")); + String textEncoded = Base64.getEncoder().encodeToString(textForBytes.getBytes("UTF-8")); BaseXMLBuilder builder = XMLBuilder_create("TestCDataNodes") .elem("CDataTextElem") @@ -349,7 +349,7 @@ public void testCDataNodes() throws Exception { .getElement().getChildNodes().item(0); assertEquals(Node.CDATA_SECTION_NODE, cdataBytesNode.getNodeType()); assertEquals(textEncoded, cdataBytesNode.getNodeValue()); - String base64Decoded = new String(Base64.decode(cdataBytesNode.getNodeValue())); + String base64Decoded = new String(Base64.getDecoder().decode(cdataBytesNode.getNodeValue())); assertEquals(textForBytes, base64Decoded); } From 7181a82d8f13fdcc9871b7175ef26d0a087747ba Mon Sep 17 00:00:00 2001 From: deathy Date: Fri, 24 Apr 2020 00:18:06 +0300 Subject: [PATCH 6/6] use StandardCharsets --- src/test/java/com/jamesmurty/utils/BaseXMLBuilderTests.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/test/java/com/jamesmurty/utils/BaseXMLBuilderTests.java b/src/test/java/com/jamesmurty/utils/BaseXMLBuilderTests.java index d193b45..2795281 100644 --- a/src/test/java/com/jamesmurty/utils/BaseXMLBuilderTests.java +++ b/src/test/java/com/jamesmurty/utils/BaseXMLBuilderTests.java @@ -4,6 +4,7 @@ import java.io.FileWriter; import java.io.StringReader; import java.io.StringWriter; +import java.nio.charset.StandardCharsets; import java.util.Base64; import java.util.Properties; @@ -331,14 +332,14 @@ public void testImport() throws Exception { public void testCDataNodes() throws Exception { String text = "Text data -- left as it is"; String textForBytes = "Byte data is automatically base64-encoded"; - String textEncoded = Base64.getEncoder().encodeToString(textForBytes.getBytes("UTF-8")); + String textEncoded = Base64.getEncoder().encodeToString(textForBytes.getBytes(StandardCharsets.UTF_8)); BaseXMLBuilder builder = XMLBuilder_create("TestCDataNodes") .elem("CDataTextElem") .cdata(text) .up() .elem("CDataBytesElem") - .cdata(textForBytes.getBytes("UTF-8")); + .cdata(textForBytes.getBytes(StandardCharsets.UTF_8)); Node cdataTextNode = builder.xpathFind("//CDataTextElem") .getElement().getChildNodes().item(0);