diff --git a/.github/workflows/maven_unit_test.yml b/.github/workflows/maven_unit_test.yml index 464d60c2db6..70363112050 100644 --- a/.github/workflows/maven_unit_test.yml +++ b/.github/workflows/maven_unit_test.yml @@ -10,16 +10,19 @@ on: jobs: unittest: - name: (JDK ${{ matrix.jdk }} / ${{ matrix.os }}) Unit Tests + name: (${{ matrix.status}} / JDK ${{ matrix.jdk }}) Unit Tests strategy: fail-fast: false matrix: - os: [ ubuntu-latest ] jdk: [ '11' ] - #include: - # - os: ubuntu-latest - # jdk: '16' - runs-on: ${{ matrix.os }} + experimental: [false] + status: ["Stable"] + include: + - jdk: '17' + experimental: true + status: "Experimental" + continue-on-error: ${{ matrix.experimental }} + runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - name: Set up JDK ${{ matrix.jdk }} @@ -34,7 +37,7 @@ jobs: key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }} restore-keys: ${{ runner.os }}-m2 - name: Build with Maven - run: mvn -DcompilerArgument=-Xlint:unchecked -P all-unit-tests clean test + run: mvn -DcompilerArgument=-Xlint:unchecked -Dtarget.java.version=${{ matrix.jdk }} -P all-unit-tests clean test - name: Maven Code Coverage env: CI_NAME: github diff --git a/pom.xml b/pom.xml index e9ce029484d..d4b4fb7f2d6 100644 --- a/pom.xml +++ b/pom.xml @@ -25,6 +25,7 @@ -Duser.timezone=${project.timezone} -Dfile.encoding=${project.build.sourceEncoding} -Duser.language=${project.language} -Duser.region=${project.region} false + 11 8.0.0 5.2021.5 42.2.19 @@ -45,7 +46,7 @@ 2.28.2 5.2.4 1.20.1 - 0.8.6 + 0.8.7 @@ -824,6 +825,16 @@ + + org.apache.maven.plugins + maven-compiler-plugin + 3.8.1 + + ${target.java.version} + + ${compilerArgument} + + org.apache.maven.plugins maven-jar-plugin @@ -905,7 +916,7 @@ maven-surefire-plugin - 2.22.2 + 3.0.0-M5 ${testsToExclude} @@ -947,26 +958,6 @@ all-unit-tests - - Java9Plus - - [1.9 - - - - - org.apache.maven.plugins - maven-compiler-plugin - 3.8.0 - - 11 - - ${compilerArgument} - - - - - tc diff --git a/src/main/java/edu/harvard/iq/dataverse/harvest/server/xoai/XlistRecordsHandler.java b/src/main/java/edu/harvard/iq/dataverse/harvest/server/xoai/XlistRecordsHandler.java index 5651545e505..8fe13bc4044 100644 --- a/src/main/java/edu/harvard/iq/dataverse/harvest/server/xoai/XlistRecordsHandler.java +++ b/src/main/java/edu/harvard/iq/dataverse/harvest/server/xoai/XlistRecordsHandler.java @@ -1,29 +1,37 @@ package edu.harvard.iq.dataverse.harvest.server.xoai; import com.lyncode.xml.exceptions.XmlWriteException; -import com.lyncode.xoai.dataprovider.handlers.*; -import com.lyncode.xoai.dataprovider.exceptions.*; +import com.lyncode.xoai.dataprovider.exceptions.BadArgumentException; +import com.lyncode.xoai.dataprovider.exceptions.CannotDisseminateFormatException; +import com.lyncode.xoai.dataprovider.exceptions.CannotDisseminateRecordException; +import com.lyncode.xoai.dataprovider.exceptions.DoesNotSupportSetsException; +import com.lyncode.xoai.dataprovider.exceptions.HandlerException; +import com.lyncode.xoai.dataprovider.exceptions.NoMatchesException; +import com.lyncode.xoai.dataprovider.exceptions.NoMetadataFormatsException; +import com.lyncode.xoai.dataprovider.exceptions.OAIException; +import com.lyncode.xoai.dataprovider.handlers.VerbHandler; import com.lyncode.xoai.dataprovider.handlers.results.ListItemsResults; import com.lyncode.xoai.dataprovider.handlers.helpers.ItemHelper; import com.lyncode.xoai.dataprovider.handlers.helpers.ItemRepositoryHelper; -import com.lyncode.xoai.dataprovider.handlers.helpers.ResumptionTokenHelper; import com.lyncode.xoai.dataprovider.handlers.helpers.SetRepositoryHelper; import com.lyncode.xoai.dataprovider.model.Context; import com.lyncode.xoai.dataprovider.model.Item; import com.lyncode.xoai.dataprovider.model.MetadataFormat; import com.lyncode.xoai.dataprovider.model.Set; -import com.lyncode.xoai.model.oaipmh.*; import com.lyncode.xoai.dataprovider.parameters.OAICompiledRequest; import com.lyncode.xoai.dataprovider.repository.Repository; +import com.lyncode.xoai.model.oaipmh.Header; +import com.lyncode.xoai.model.oaipmh.ListRecords; +import com.lyncode.xoai.model.oaipmh.Metadata; +import com.lyncode.xoai.model.oaipmh.Record; +import com.lyncode.xoai.model.oaipmh.ResumptionToken; import com.lyncode.xoai.xml.XSLPipeline; import com.lyncode.xoai.xml.XmlWriter; import edu.harvard.iq.dataverse.Dataset; import javax.xml.stream.XMLStreamException; -import javax.xml.transform.TransformerException; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; -import java.io.IOException; import java.util.List; /**