From ef3fd61c1ae446de690cfca0229ecb6863f4e249 Mon Sep 17 00:00:00 2001 From: James Hilliard Date: Tue, 9 Mar 2021 15:13:24 -0700 Subject: [PATCH] Run tests on jdk16 and fix build+test warnings/errors. --- .github/workflows/jpos.yml | 2 +- build.gradle | 2 +- gradle/wrapper/gradle-wrapper.properties | 2 +- jpos/build.gradle | 6 +++--- jpos/src/main/java/org/jpos/iso/Currency.java | 2 +- .../main/java/org/jpos/iso/packager/GenericPackager.java | 4 ++-- .../org/jpos/iso/packager/GenericValidatingPackager.java | 6 +++--- .../org/jpos/security/jceadapter/JCESecurityModule.java | 6 +++++- .../java/org/jpos/tlv/packager/TaggedSequencePackager.java | 2 +- 9 files changed, 18 insertions(+), 14 deletions(-) diff --git a/.github/workflows/jpos.yml b/.github/workflows/jpos.yml index 7c996b9bac..605b9f2275 100644 --- a/.github/workflows/jpos.yml +++ b/.github/workflows/jpos.yml @@ -6,7 +6,7 @@ jobs: strategy: fail-fast: false matrix: - java: [ 1.8, 9, 10, 11, 12, 13, 14, 15 ] + java: [ 1.8, 9, 10, 11, 12, 13, 14, 15, 16 ] os: [ubuntu-latest, macos-latest, windows-latest] runs-on: ${{ matrix.os }} steps: diff --git a/build.gradle b/build.gradle index db18636d89..884b1240f2 100644 --- a/build.gradle +++ b/build.gradle @@ -22,7 +22,7 @@ subprojects { 'https://oss.sonatype.org/content/repositories/snapshots/' : 'https://oss.sonatype.org/service/local/staging/deploy/maven2'; - configurations.compile.transitive = true + configurations.implementation.transitive = true javadoc.failOnError = false pmd.ignoreFailures = true diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 2a563242c1..f371643eed 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,5 +1,5 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-6.8.2-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-7.0-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists diff --git a/jpos/build.gradle b/jpos/build.gradle index dc3a04244d..f0b7856b36 100644 --- a/jpos/build.gradle +++ b/jpos/build.gradle @@ -3,8 +3,8 @@ buildscript { mavenCentral() } dependencies { - classpath 'biz.aQute.bnd:biz.aQute.bnd.gradle:5.2.0' - classpath 'org.owasp:dependency-check-gradle:6.1.1' + classpath 'biz.aQute.bnd:biz.aQute.bnd.gradle:5.3.0' + classpath 'org.owasp:dependency-check-gradle:6.1.5' } } apply plugin: 'biz.aQute.bnd.builder' @@ -295,7 +295,7 @@ task installApp(type: Sync) { task viewTests (description: 'Open Test Reports') { doLast { - Class.forName("java.awt.Desktop").newInstance().browse( + Class.forName("java.awt.Desktop").getDeclaredConstructor().newInstance().browse( new File("${buildDir}/reports/tests/test", 'index.html').toURI()) } } diff --git a/jpos/src/main/java/org/jpos/iso/Currency.java b/jpos/src/main/java/org/jpos/iso/Currency.java index 0b3c9629d6..d3a78cb1e4 100644 --- a/jpos/src/main/java/org/jpos/iso/Currency.java +++ b/jpos/src/main/java/org/jpos/iso/Currency.java @@ -70,7 +70,7 @@ public String formatAmountForISOMsg(double amount) public double parseAmountFromISOMsg(String isoamount) { - return new Double(isoamount)/Math.pow(10, getDecimals()); + return Double.valueOf(isoamount)/Math.pow(10, getDecimals()); } @Override diff --git a/jpos/src/main/java/org/jpos/iso/packager/GenericPackager.java b/jpos/src/main/java/org/jpos/iso/packager/GenericPackager.java index 30a71888c4..b02955c5d6 100644 --- a/jpos/src/main/java/org/jpos/iso/packager/GenericPackager.java +++ b/jpos/src/main/java/org/jpos/iso/packager/GenericPackager.java @@ -428,7 +428,7 @@ public void startElement(String namespaceURI, String localName, String qName, At */ String packager = atts.getValue("packager"); - fieldStack.push(new Integer(id)); + fieldStack.push(Integer.valueOf(id)); ISOFieldPackager f; f = (ISOFieldPackager) Class.forName(type).newInstance(); @@ -467,7 +467,7 @@ else if (localName.equals("isofield")) // Insert this new isofield into the Map // on the top of the stack using the fieldID as the key Map m = (Map) fieldStack.peek(); - m.put(new Integer(id), f); + m.put(Integer.valueOf(id), f); } } catch (Exception ex) diff --git a/jpos/src/main/java/org/jpos/iso/packager/GenericValidatingPackager.java b/jpos/src/main/java/org/jpos/iso/packager/GenericValidatingPackager.java index 99f08f50c6..ce8469605c 100644 --- a/jpos/src/main/java/org/jpos/iso/packager/GenericValidatingPackager.java +++ b/jpos/src/main/java/org/jpos/iso/packager/GenericValidatingPackager.java @@ -231,7 +231,7 @@ public void startElement( String namespaceURI, String localName, String qName, A // Insert this new isofield into the Map // on the top of the stack using the fieldID as the key Map m = (Map) fieldStack.peek(); - m.put(new Integer(fldID), f); + m.put(Integer.valueOf(fldID), f); } if ( localName.equals( "isofieldvalidator" ) ){ String type = atts.getValue( "class" ); @@ -278,7 +278,7 @@ public void startElement( String namespaceURI, String localName, String qName, A 4) a Map to collect the subfields */ String packager = atts.getValue("packager"); - fieldStack.push(new Integer(id)); + fieldStack.push(Integer.valueOf(id)); ISOFieldPackager f; f = (ISOFieldPackager) Class.forName(type).newInstance(); f.setDescription(name); @@ -349,7 +349,7 @@ public void endElement(String namespaceURI, String localName, String qName) { ex.printStackTrace( ); } } - ((Map)validatorStack.peek()).put( new Integer(fldID), f ); + ((Map)validatorStack.peek()).put(Integer.valueOf(fldID), f ); } if ( localName.equals( "isovalidator" ) ){ /** pop properties **/ diff --git a/jpos/src/main/java/org/jpos/security/jceadapter/JCESecurityModule.java b/jpos/src/main/java/org/jpos/security/jceadapter/JCESecurityModule.java index 504c58906e..f0fbda5e00 100644 --- a/jpos/src/main/java/org/jpos/security/jceadapter/JCESecurityModule.java +++ b/jpos/src/main/java/org/jpos/security/jceadapter/JCESecurityModule.java @@ -1823,7 +1823,11 @@ private void init (String jceProviderClassName, String lmkFile, boolean lmkRebui evt.addMessage("No JCE Provider specified. Attempting to load default provider (SunJCE)."); jceProviderClassName = "com.sun.crypto.provider.SunJCE"; } - provider = (Provider)Class.forName(jceProviderClassName).newInstance(); + if (jceProviderClassName.equals("com.sun.crypto.provider.SunJCE")) { + provider = java.security.Security.getProvider("SunJCE"); + } else { + provider = (Provider)Class.forName(jceProviderClassName).getDeclaredConstructor().newInstance(); + } Security.addProvider(provider); evt.addMessage("name", provider.getName()); } catch (Exception e) { diff --git a/jpos/src/main/java/org/jpos/tlv/packager/TaggedSequencePackager.java b/jpos/src/main/java/org/jpos/tlv/packager/TaggedSequencePackager.java index 92417d945d..05f1f759d3 100644 --- a/jpos/src/main/java/org/jpos/tlv/packager/TaggedSequencePackager.java +++ b/jpos/src/main/java/org/jpos/tlv/packager/TaggedSequencePackager.java @@ -139,7 +139,7 @@ public byte[] pack(ISOComponent m) throws ISOException { try (ByteArrayOutputStream bout = new ByteArrayOutputStream(100)) { ISOComponent c; Map fields = m.getChildren(); - fields.remove(new Integer(-1)); + fields.remove(-1); int len = 0; boolean tagsStarted = false; Iterator iterator = fields.values().iterator();