diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index af15323c3..77daad7b9 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -9,7 +9,10 @@ jobs: name: Test strategy: matrix: - os: [ubuntu-20.04, windows-2022, macos-12] + os: + - ubuntu-20.04 + # - windows-2022 (MongoDB issues in CI) + - macos-12 runs-on: ${{ matrix.os }} steps: @@ -28,7 +31,7 @@ jobs: mongo --eval "db.version()" - name: Set up JDK 17 (Temurin) - uses: actions/setup-java@v3.9.0 + uses: actions/setup-java@v3 with: java-version: '17' distribution: 'temurin' @@ -87,7 +90,7 @@ jobs: type=sha - name: Docker build+push [test] - uses: docker/build-push-action@v3 + uses: docker/build-push-action@v4 with: context: . file: ./Dockerfile.build @@ -117,7 +120,7 @@ jobs: type=semver,pattern={{version}} - name: Docker build+push [private] - uses: docker/build-push-action@v3 + uses: docker/build-push-action@v4 if: github.event_name == 'push' && env.PRIVATE_REGISTRY_URL != '' && steps.meta-private.outputs.tags != '' with: context: . @@ -150,7 +153,7 @@ jobs: type=semver,pattern={{major}},enable=${{ !startsWith(github.ref, 'refs/tags/v0.') }} - name: Docker build+push [public] - uses: docker/build-push-action@v3 + uses: docker/build-push-action@v4 if: github.event_name == 'push' && env.DOCKER_HUB_USERNAME != '' && steps.meta-public.outputs.tags != '' with: context: . diff --git a/.github/workflows/code-style.yml b/.github/workflows/code-style.yml index d29e70b00..56063c5aa 100644 --- a/.github/workflows/code-style.yml +++ b/.github/workflows/code-style.yml @@ -19,7 +19,7 @@ jobs: uses: actions/checkout@v3 - name: Setup Java - uses: actions/setup-java@v3.9.0 + uses: actions/setup-java@v3 with: distribution: ${{ env.JAVA_DISTRIBUTION }} java-version: ${{ env.JAVA_VERSION }} @@ -46,7 +46,7 @@ jobs: uses: actions/checkout@v3 - name: Setup Java - uses: actions/setup-java@v3.9.0 + uses: actions/setup-java@v3 with: distribution: ${{ env.JAVA_DISTRIBUTION }} java-version: ${{ env.JAVA_VERSION }} @@ -73,7 +73,7 @@ jobs: uses: actions/checkout@v3 - name: Setup Java - uses: actions/setup-java@v3.9.0 + uses: actions/setup-java@v3 with: distribution: ${{ env.JAVA_DISTRIBUTION }} java-version: ${{ env.JAVA_VERSION }} diff --git a/.github/workflows/security.yml b/.github/workflows/security.yml index d1056525a..083ffd910 100644 --- a/.github/workflows/security.yml +++ b/.github/workflows/security.yml @@ -18,64 +18,33 @@ jobs: security-events: write env: - JDK_VERSION: 17 - JDK_FILE: openjdk-17_linux-x64_bin.tar.gz - JDK_URL: https://download.java.net/java/GA/jdk17/0d483333a00540d886896bac774ff48b/35/GPL/openjdk-17_linux-x64_bin.tar.gz + JAVA_DISTRIBUTION: temurin + JAVA_VERSION: 17 steps: - - uses: actions/checkout@v3 - - - name: Fetch all history for all tags and branches - run: git fetch --prune --unshallow - - - name: Prepare JDK folder - run: mkdir -p ~/jdk - - # (1) -> Prepare cache and Java - - name: Cache ~/.m2 - uses: actions/cache@v3.2.2 - with: - path: ~/.m2 - key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }} - - - name: Cache JDK folder - uses: actions/cache@v3.2.2 - with: - path: ~/jdk - key: ${{ env.JDK_FILE }} - - # (2) -> Prepare Java - - name: Download JDK - run: | - if [ ! -f ~/jdk/$JDK_FILE ]; then - wget --quiet $JDK_URL -O ~/jdk/$JDK_FILE - fi - cp ~/jdk/$JDK_FILE . + - name: Checkout repository + uses: actions/checkout@v3 - name: Setup Java - uses: actions/setup-java@v3.9.0 + uses: actions/setup-java@v3 with: - distribution: 'jdkfile' - java-version: ${{ env.JDK_VERSION }} - jdkFile: ${{ env.JDK_FILE }} - architecture: x64 + distribution: ${{ env.JAVA_DISTRIBUTION }} + java-version: ${{ env.JAVA_VERSION }} + cache: 'maven' - name: Verify Maven and Java run: | mvn --version - # (3) -> Init CodeQL - name: Initialize CodeQL uses: github/codeql-action/init@v2 with: languages: 'java' - # (3) -> Build - name: Build package run: | mvn --quiet -B -U --fail-fast -DskipTests package - # (4) -> CodeQL Analysis - name: Perform CodeQL Analysis uses: github/codeql-action/analyze@v2 diff --git a/CHANGELOG.md b/CHANGELOG.md index 23413f1bc..3a4ed3857 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,6 +8,22 @@ to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ## [Unreleased] +## [1.17.0] + +### Added + +- Support for configuration using environment variables + +### Changed + +- Updated to Spring Boot 3 +- Updated several other dependencies + +### Fixed + +- Reset metadata schema to defaults +- Validation on metadata record deletion + ## [1.16.2] ### Fixed @@ -351,3 +367,4 @@ The first release of reference FAIR Data Point implementation. [1.16.0]: /../../tree/v1.16.0 [1.16.1]: /../../tree/v1.16.1 [1.16.2]: /../../tree/v1.16.2 +[1.17.0]: /../../tree/v1.17.0 diff --git a/CITATION.CFF b/CITATION.CFF deleted file mode 100644 index 2ca82713b..000000000 --- a/CITATION.CFF +++ /dev/null @@ -1,34 +0,0 @@ -# This CITATION.cff file was generated with cffinit. -# Visit https://bit.ly/cffinit to generate yours today! - -cff-version: 1.2.0 -title: FAIR Data Point -message: >- - If you use this software, please cite it using the - metadata from this file. -type: software -authors: - - given-names: Luiz Olavo - family-names: Bonino da Silva Santos - email: l.o.boninodasilvasantos@utwente.nl - affiliation: University of Twente - orcid: https://orcid.org/0000-0002-1164-1351 - - given-names: Marek - family-names: Suchánek - orcid: https://orcid.org/0000-0001-7525-9218 - - given-names: Vojtěch - family-names: Knaisl - orcid: https://orcid.org/0000-0003-0103-8468 - - given-names: Jan - family-names: Slifka - orcid: https://orcid.org/0000-0002-4941-0575 -identifiers: - - type: url - value: 'https://github.com/FAIRDataTeam/FAIRDataPoint' - description: >- - URL for the GitHub repository of the FAIR Data - Point code -repository-code: 'https://github.com/FAIRDataTeam/FAIRDataPoint' -url: 'https://fairdatapoint.org' -repository-artifact: 'https://hub.docker.com/r/fairdata/fairdatapoint' -license: MIT diff --git a/CITATION.cff b/CITATION.cff new file mode 100644 index 000000000..3fe0dc6c8 --- /dev/null +++ b/CITATION.cff @@ -0,0 +1,36 @@ +# This CITATION.cff file was generated with cffinit. +# Visit https://bit.ly/cffinit to generate yours today! + +cff-version: 1.2.0 +title: FAIR Data Point +message: >- + If you use this software, please cite it using the + metadata from this file. +type: software +authors: + - given-names: Luiz Olavo + family-names: Bonino da Silva Santos + email: l.o.boninodasilvasantos@utwente.nl + affiliation: University of Twente + orcid: 'https://orcid.org/0000-0002-1164-1351' + - given-names: Kees + family-names: Burger + affiliation: Leiden University Medical Center + - given-names: Rajaram + family-names: Kaliyaperumal + affiliation: 'Leiden University Medical Center ' + email: r.kaliyaperumal@lumc.nl + orcid: 'https://orcid.org/0000-0002-1215-167X' + - given-names: Marek + family-names: Suchánek + affiliation: Czech Technical University in Prague + orcid: 'https://orcid.org/0000-0001-7525-9218' + - given-names: Jan + family-names: Slifka + orcid: 'https://orcid.org/0000-0002-4941-0575' + affiliation: Czech Technical University in Prague + - given-names: Mark + family-names: Wilkinson + affiliation: Universidad Politécnica de Madrid (UPM) + orcid: 'https://orcid.org/0000-0001-6960-357X' +license: MIT diff --git a/LICENSE b/LICENSE index b76a10e86..627c9394a 100644 --- a/LICENSE +++ b/LICENSE @@ -1,6 +1,6 @@ MIT License -Copyright (c) 2017 Dutch Techncentre for Life Sciences +Copyright (c) 2017 FAIR Data Team Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/SECURITY.md b/SECURITY.md index 59c00a7f3..d73b87f11 100644 --- a/SECURITY.md +++ b/SECURITY.md @@ -6,12 +6,12 @@ We support the latest major and minor version with patch versions that fix vulne | Version | Supported | |---------| ------------------ | -| 1.16.2 | :white_check_mark: | -| < 1.16 | :x: | +| 1.17.0 | :white_check_mark: | +| < 1.17 | :x: | ## Current Recommendations -* Use 1.16.1 with the newest dependencies (and no known vulnerabilities) +* Use 1.17.0 with the newest dependencies (and no known vulnerabilities) ## Reporting a Vulnerability diff --git a/pom.xml b/pom.xml index de9b40a1f..abf2ff5ba 100644 --- a/pom.xml +++ b/pom.xml @@ -5,12 +5,12 @@ org.springframework.boot spring-boot-starter-parent - 2.7.5 + 3.1.1 nl.dtls fairdatapoint - 1.16.2 + 1.17.0 jar FairDataPoint @@ -55,28 +55,26 @@ 5.2.4.RELEASE - 1.6.14 - 5.2.2 - 3.4.5 - 4.2.2 + 2.1.0 + 5.3.1 + 4.1.1 + 4.3.2 0.11.5 - 1.18.24 + 1.18.28 0.1.2-SNAPSHOT - 2.17.1 + + + 5.2.1 - 4.1 + 4.2 0.7.6.201602180812 4.3.0 2.3.1 - 5.0.0 + 6.0.0 0.2.0 - 3.2.0 - 4.7.3.0 - - - 1.31 - 5.7.5 + 3.3.0 + 4.7.3.5 @@ -189,12 +187,12 @@ io.mongock - mongodb-springdata-v3-driver + mongodb-springdata-v4-driver org.springframework.data spring-data-mongodb - ${mongodb.spring-data.v3.version} + ${mongodb.spring-data.version} @@ -202,7 +200,7 @@ org.springdoc - springdoc-openapi-ui + springdoc-openapi-starter-webmvc-ui ${springdoc.version} @@ -279,6 +277,12 @@ spring-security-test test + + org.apache.httpcomponents.client5 + httpclient5 + ${httpclient5.version} + test + @@ -370,12 +374,12 @@ com.puppycrawl.tools checkstyle - 10.6.0 + 10.12.1 io.spring.javaformat spring-javaformat-checkstyle - 0.0.35 + 0.0.39 @@ -456,5 +460,4 @@ - diff --git a/src/main/java/nl/dtls/fairdatapoint/api/controller/dashboard/DashboardController.java b/src/main/java/nl/dtls/fairdatapoint/api/controller/dashboard/DashboardController.java index 6f84464c5..4ba66cfea 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/controller/dashboard/DashboardController.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/controller/dashboard/DashboardController.java @@ -23,6 +23,7 @@ package nl.dtls.fairdatapoint.api.controller.dashboard; import io.swagger.v3.oas.annotations.tags.Tag; +import jakarta.servlet.http.HttpServletRequest; import nl.dtls.fairdatapoint.api.dto.dashboard.DashboardItemDTO; import nl.dtls.fairdatapoint.service.dashboard.DashboardService; import nl.dtls.fairdatapoint.service.metadata.exception.MetadataServiceException; @@ -36,7 +37,6 @@ import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; -import javax.servlet.http.HttpServletRequest; import java.util.List; import static nl.dtls.fairdatapoint.util.HttpUtil.getRequestURL; diff --git a/src/main/java/nl/dtls/fairdatapoint/api/controller/exception/ExceptionControllerAdvice.java b/src/main/java/nl/dtls/fairdatapoint/api/controller/exception/ExceptionControllerAdvice.java index a4b85a5b6..e836f148f 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/controller/exception/ExceptionControllerAdvice.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/controller/exception/ExceptionControllerAdvice.java @@ -30,6 +30,7 @@ import io.swagger.v3.oas.annotations.media.Content; import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.responses.ApiResponse; +import jakarta.validation.ConstraintViolationException; import lombok.extern.slf4j.Slf4j; import nl.dtls.fairdatapoint.api.dto.error.ErrorDTO; import nl.dtls.fairdatapoint.entity.exception.*; @@ -46,6 +47,7 @@ import org.springframework.http.ResponseEntity; import org.springframework.security.access.AccessDeniedException; import org.springframework.security.authentication.BadCredentialsException; +import org.springframework.web.bind.MethodArgumentNotValidException; import org.springframework.web.bind.annotation.ControllerAdvice; import org.springframework.web.bind.annotation.ExceptionHandler; import org.springframework.web.bind.annotation.ResponseBody; @@ -62,6 +64,23 @@ @Slf4j public class ExceptionControllerAdvice { + @ExceptionHandler({ConstraintViolationException.class, MethodArgumentNotValidException.class}) + @ResponseStatus(HttpStatus.BAD_REQUEST) + @ResponseBody + @ApiResponse( + responseCode = "400", + description = "Bad request", + content = @Content( + mediaType = MediaType.APPLICATION_JSON_VALUE, + schema = @Schema(implementation = ErrorDTO.class) + ) + ) + public ErrorDTO handleConstraintViolation(Exception exception) { + log.warn(exception.getMessage()); + log.debug("Handling bad request (ConstraintViolation)", exception); + return new ErrorDTO(HttpStatus.BAD_REQUEST, exception.getMessage()); + } + @ExceptionHandler(ValidationException.class) @ResponseStatus(HttpStatus.BAD_REQUEST) @ResponseBody @@ -73,7 +92,7 @@ public class ExceptionControllerAdvice { schema = @Schema(implementation = ErrorDTO.class) ) ) - public ErrorDTO handleBadRequest(Exception exception) { + public ErrorDTO handleValidationException(Exception exception) { log.warn(exception.getMessage()); log.debug("Handling bad request (ValidationException)", exception); return new ErrorDTO(HttpStatus.BAD_REQUEST, exception.getMessage()); @@ -90,7 +109,7 @@ public ErrorDTO handleBadRequest(Exception exception) { schema = @Schema(implementation = ErrorDTO.class) ) ) - public Model handleBadRequest(RdfValidationException exception) { + public Model handleRdfValidationException(RdfValidationException exception) { final Model validationReportModel = exception.getModel(); log.debug("Handling bad request (RdfValidationException)", exception); diff --git a/src/main/java/nl/dtls/fairdatapoint/api/controller/form/FormAutocompleteController.java b/src/main/java/nl/dtls/fairdatapoint/api/controller/form/FormAutocompleteController.java index 07ff3586d..3d991c2a3 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/controller/form/FormAutocompleteController.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/controller/form/FormAutocompleteController.java @@ -23,6 +23,7 @@ package nl.dtls.fairdatapoint.api.controller.form; import io.swagger.v3.oas.annotations.tags.Tag; +import jakarta.validation.Valid; import nl.dtls.fairdatapoint.api.dto.form.FormAutocompleteItemDTO; import nl.dtls.fairdatapoint.api.dto.form.FormAutocompleteRequestDTO; import nl.dtls.fairdatapoint.service.form.autocomplete.FormsAutocompleteService; @@ -35,7 +36,6 @@ import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; -import javax.validation.Valid; import java.util.List; @Tag(name = "Client") @@ -55,7 +55,6 @@ public ResponseEntity> searchAutocompleteItems( @RequestBody @Valid FormAutocompleteRequestDTO reqDto ) { final List items = autocompleteService.searchItems(reqDto); - System.out.println(items); return new ResponseEntity<>(items, HttpStatus.OK); } } diff --git a/src/main/java/nl/dtls/fairdatapoint/api/controller/index/IndexAdminController.java b/src/main/java/nl/dtls/fairdatapoint/api/controller/index/IndexAdminController.java index 7df2083ce..1880baca5 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/controller/index/IndexAdminController.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/controller/index/IndexAdminController.java @@ -24,6 +24,8 @@ import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.tags.Tag; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.validation.Valid; import lombok.extern.slf4j.Slf4j; import nl.dtls.fairdatapoint.api.dto.index.ping.PingDTO; import nl.dtls.fairdatapoint.database.rdf.repository.exception.MetadataRepositoryException; @@ -37,8 +39,6 @@ import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.*; -import javax.servlet.http.HttpServletRequest; -import javax.validation.Valid; import java.util.UUID; @Tag(name = "Index") diff --git a/src/main/java/nl/dtls/fairdatapoint/api/controller/index/IndexPingController.java b/src/main/java/nl/dtls/fairdatapoint/api/controller/index/IndexPingController.java index 77adfde58..ddf45d92c 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/controller/index/IndexPingController.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/controller/index/IndexPingController.java @@ -28,6 +28,8 @@ import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.responses.ApiResponse; import io.swagger.v3.oas.annotations.tags.Tag; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.validation.Valid; import lombok.extern.slf4j.Slf4j; import nl.dtls.fairdatapoint.api.dto.index.ping.PingDTO; import nl.dtls.fairdatapoint.database.rdf.repository.exception.MetadataRepositoryException; @@ -42,9 +44,6 @@ import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.*; -import javax.servlet.http.HttpServletRequest; -import javax.validation.Valid; - @Tag(name = "Index") @Slf4j @RestController diff --git a/src/main/java/nl/dtls/fairdatapoint/api/controller/index/IndexSettingsController.java b/src/main/java/nl/dtls/fairdatapoint/api/controller/index/IndexSettingsController.java index 0ad99c37c..397cabb59 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/controller/index/IndexSettingsController.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/controller/index/IndexSettingsController.java @@ -23,6 +23,7 @@ package nl.dtls.fairdatapoint.api.controller.index; import io.swagger.v3.oas.annotations.tags.Tag; +import jakarta.validation.Valid; import nl.dtls.fairdatapoint.api.dto.index.settings.IndexSettingsDTO; import nl.dtls.fairdatapoint.api.dto.index.settings.IndexSettingsUpdateDTO; import nl.dtls.fairdatapoint.service.index.settings.IndexSettingsService; @@ -31,8 +32,6 @@ import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.*; -import javax.validation.Valid; - @Tag(name = "Index") @RestController @RequestMapping("/index/settings") diff --git a/src/main/java/nl/dtls/fairdatapoint/api/controller/metadata/GenericController.java b/src/main/java/nl/dtls/fairdatapoint/api/controller/metadata/GenericController.java index 0b2e23d5a..5cb966964 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/controller/metadata/GenericController.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/controller/metadata/GenericController.java @@ -283,7 +283,7 @@ public ResponseEntity updateMetaData( } // 4. Store metadata - final Model metadata = metadataService.update(reqDto, uri, rd); + final Model metadata = metadataService.update(reqDto, uri, rd, true); // 5. Invalidate search filters cache searchFilterCache.clearCache(); diff --git a/src/main/java/nl/dtls/fairdatapoint/api/controller/metadata/GenericMemberController.java b/src/main/java/nl/dtls/fairdatapoint/api/controller/metadata/GenericMemberController.java index 197bd7e9a..dc11e8fcf 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/controller/metadata/GenericMemberController.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/controller/metadata/GenericMemberController.java @@ -24,6 +24,7 @@ import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.tags.Tag; +import jakarta.validation.Valid; import nl.dtls.fairdatapoint.api.dto.member.MemberCreateDTO; import nl.dtls.fairdatapoint.api.dto.member.MemberDTO; import nl.dtls.fairdatapoint.entity.exception.ResourceNotFoundException; @@ -41,7 +42,6 @@ import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.*; -import javax.validation.Valid; import java.util.List; import static nl.dtls.fairdatapoint.entity.metadata.MetadataGetter.getMetadataIdentifier; diff --git a/src/main/java/nl/dtls/fairdatapoint/api/controller/metadata/GenericMetaController.java b/src/main/java/nl/dtls/fairdatapoint/api/controller/metadata/GenericMetaController.java index eb8e191f6..9aebcb985 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/controller/metadata/GenericMetaController.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/controller/metadata/GenericMetaController.java @@ -24,6 +24,7 @@ import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.tags.Tag; +import jakarta.validation.Valid; import nl.dtls.fairdatapoint.api.dto.member.MemberDTO; import nl.dtls.fairdatapoint.api.dto.metadata.MetaDTO; import nl.dtls.fairdatapoint.api.dto.metadata.MetaPathDTO; @@ -44,7 +45,6 @@ import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.web.bind.annotation.*; -import javax.validation.Valid; import java.util.HashMap; import java.util.Map; import java.util.Optional; diff --git a/src/main/java/nl/dtls/fairdatapoint/api/controller/profile/ProfileController.java b/src/main/java/nl/dtls/fairdatapoint/api/controller/profile/ProfileController.java index 6f0384f18..d95c3ddd2 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/controller/profile/ProfileController.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/controller/profile/ProfileController.java @@ -23,6 +23,7 @@ package nl.dtls.fairdatapoint.api.controller.profile; import io.swagger.v3.oas.annotations.tags.Tag; +import jakarta.servlet.http.HttpServletRequest; import nl.dtls.fairdatapoint.entity.exception.ResourceNotFoundException; import nl.dtls.fairdatapoint.service.profile.ProfileService; import org.eclipse.rdf4j.model.IRI; @@ -33,7 +34,6 @@ import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.*; -import javax.servlet.http.HttpServletRequest; import java.util.Optional; import static java.lang.String.format; diff --git a/src/main/java/nl/dtls/fairdatapoint/api/controller/reset/ResetController.java b/src/main/java/nl/dtls/fairdatapoint/api/controller/reset/ResetController.java index 475626df8..9a90afa80 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/controller/reset/ResetController.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/controller/reset/ResetController.java @@ -23,6 +23,7 @@ package nl.dtls.fairdatapoint.api.controller.reset; import io.swagger.v3.oas.annotations.tags.Tag; +import jakarta.validation.Valid; import nl.dtls.fairdatapoint.api.dto.reset.ResetDTO; import nl.dtls.fairdatapoint.service.reset.ResetService; import org.springframework.beans.factory.annotation.Autowired; @@ -34,8 +35,6 @@ import org.springframework.web.bind.annotation.ResponseStatus; import org.springframework.web.bind.annotation.RestController; -import javax.validation.Valid; - @Tag(name = "Client") @RestController public class ResetController { diff --git a/src/main/java/nl/dtls/fairdatapoint/api/controller/resource/ResourceDefinitionController.java b/src/main/java/nl/dtls/fairdatapoint/api/controller/resource/ResourceDefinitionController.java index 53e78f169..a06177e45 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/controller/resource/ResourceDefinitionController.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/controller/resource/ResourceDefinitionController.java @@ -23,6 +23,7 @@ package nl.dtls.fairdatapoint.api.controller.resource; import io.swagger.v3.oas.annotations.tags.Tag; +import jakarta.validation.Valid; import nl.dtls.fairdatapoint.api.dto.resource.ResourceDefinitionChangeDTO; import nl.dtls.fairdatapoint.api.dto.resource.ResourceDefinitionDTO; import nl.dtls.fairdatapoint.entity.exception.ResourceNotFoundException; @@ -34,7 +35,6 @@ import org.springframework.validation.BindException; import org.springframework.web.bind.annotation.*; -import javax.validation.Valid; import java.util.List; import java.util.Optional; diff --git a/src/main/java/nl/dtls/fairdatapoint/api/controller/schema/MetadataSchemaController.java b/src/main/java/nl/dtls/fairdatapoint/api/controller/schema/MetadataSchemaController.java index 7f969e76e..b673af403 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/controller/schema/MetadataSchemaController.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/controller/schema/MetadataSchemaController.java @@ -23,6 +23,7 @@ package nl.dtls.fairdatapoint.api.controller.schema; import io.swagger.v3.oas.annotations.tags.Tag; +import jakarta.validation.Valid; import nl.dtls.fairdatapoint.api.dto.schema.*; import nl.dtls.fairdatapoint.entity.exception.ResourceNotFoundException; import nl.dtls.fairdatapoint.entity.exception.UnauthorizedException; @@ -36,7 +37,6 @@ import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.*; -import javax.validation.Valid; import java.util.List; import java.util.Optional; diff --git a/src/main/java/nl/dtls/fairdatapoint/api/controller/search/SearchController.java b/src/main/java/nl/dtls/fairdatapoint/api/controller/search/SearchController.java index 57168f529..e0eda44d4 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/controller/search/SearchController.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/controller/search/SearchController.java @@ -23,6 +23,7 @@ package nl.dtls.fairdatapoint.api.controller.search; import io.swagger.v3.oas.annotations.tags.Tag; +import jakarta.validation.Valid; import nl.dtls.fairdatapoint.api.dto.search.*; import nl.dtls.fairdatapoint.database.rdf.repository.exception.MetadataRepositoryException; import nl.dtls.fairdatapoint.service.search.SearchService; @@ -33,7 +34,6 @@ import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.*; -import javax.validation.Valid; import java.util.List; @Tag(name = "Search") diff --git a/src/main/java/nl/dtls/fairdatapoint/api/controller/search/SearchSavedQueryController.java b/src/main/java/nl/dtls/fairdatapoint/api/controller/search/SearchSavedQueryController.java index 343f550af..f9c3fd837 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/controller/search/SearchSavedQueryController.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/controller/search/SearchSavedQueryController.java @@ -23,6 +23,7 @@ package nl.dtls.fairdatapoint.api.controller.search; import io.swagger.v3.oas.annotations.tags.Tag; +import jakarta.validation.Valid; import nl.dtls.fairdatapoint.api.dto.search.SearchResultDTO; import nl.dtls.fairdatapoint.api.dto.search.SearchSavedQueryChangeDTO; import nl.dtls.fairdatapoint.api.dto.search.SearchSavedQueryDTO; @@ -37,7 +38,6 @@ import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.*; -import javax.validation.Valid; import java.util.List; import java.util.Optional; diff --git a/src/main/java/nl/dtls/fairdatapoint/api/controller/settings/SettingsController.java b/src/main/java/nl/dtls/fairdatapoint/api/controller/settings/SettingsController.java index a5a938642..bf565d21c 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/controller/settings/SettingsController.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/controller/settings/SettingsController.java @@ -23,6 +23,7 @@ package nl.dtls.fairdatapoint.api.controller.settings; import io.swagger.v3.oas.annotations.tags.Tag; +import jakarta.validation.Valid; import nl.dtls.fairdatapoint.api.dto.settings.SettingsDTO; import nl.dtls.fairdatapoint.api.dto.settings.SettingsUpdateDTO; import nl.dtls.fairdatapoint.service.settings.SettingsService; @@ -31,8 +32,6 @@ import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.*; -import javax.validation.Valid; - @Tag(name = "Client") @RestController @RequestMapping("/settings") diff --git a/src/main/java/nl/dtls/fairdatapoint/api/controller/token/TokenController.java b/src/main/java/nl/dtls/fairdatapoint/api/controller/token/TokenController.java index d53633357..e1cbe6c2c 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/controller/token/TokenController.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/controller/token/TokenController.java @@ -23,6 +23,7 @@ package nl.dtls.fairdatapoint.api.controller.token; import io.swagger.v3.oas.annotations.tags.Tag; +import jakarta.validation.Valid; import nl.dtls.fairdatapoint.api.dto.auth.AuthDTO; import nl.dtls.fairdatapoint.api.dto.auth.TokenDTO; import nl.dtls.fairdatapoint.service.jwt.JwtService; @@ -34,8 +35,6 @@ import org.springframework.security.core.AuthenticationException; import org.springframework.web.bind.annotation.*; -import javax.validation.Valid; - @Tag(name = "Authentication and Authorization") @RestController @RequestMapping("/tokens") diff --git a/src/main/java/nl/dtls/fairdatapoint/api/controller/user/UserController.java b/src/main/java/nl/dtls/fairdatapoint/api/controller/user/UserController.java index ddbd4978b..e61bd9b41 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/controller/user/UserController.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/controller/user/UserController.java @@ -23,6 +23,7 @@ package nl.dtls.fairdatapoint.api.controller.user; import io.swagger.v3.oas.annotations.tags.Tag; +import jakarta.validation.Valid; import nl.dtls.fairdatapoint.api.dto.user.*; import nl.dtls.fairdatapoint.entity.exception.ForbiddenException; import nl.dtls.fairdatapoint.entity.exception.ResourceNotFoundException; @@ -33,7 +34,6 @@ import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.*; -import javax.validation.Valid; import java.util.List; import java.util.Optional; diff --git a/src/main/java/nl/dtls/fairdatapoint/api/dto/auth/AuthDTO.java b/src/main/java/nl/dtls/fairdatapoint/api/dto/auth/AuthDTO.java index 8b215a3a8..53154e33d 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/dto/auth/AuthDTO.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/dto/auth/AuthDTO.java @@ -22,15 +22,14 @@ */ package nl.dtls.fairdatapoint.api.dto.auth; +import jakarta.validation.constraints.Email; +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotNull; import lombok.AllArgsConstructor; import lombok.Getter; import lombok.NoArgsConstructor; import lombok.Setter; -import javax.validation.constraints.Email; -import javax.validation.constraints.NotBlank; -import javax.validation.constraints.NotNull; - @NoArgsConstructor @AllArgsConstructor @Getter diff --git a/src/main/java/nl/dtls/fairdatapoint/api/dto/form/FormAutocompleteRequestDTO.java b/src/main/java/nl/dtls/fairdatapoint/api/dto/form/FormAutocompleteRequestDTO.java index cb3d94a89..5a208b54f 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/dto/form/FormAutocompleteRequestDTO.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/dto/form/FormAutocompleteRequestDTO.java @@ -22,11 +22,10 @@ */ package nl.dtls.fairdatapoint.api.dto.form; +import jakarta.validation.constraints.NotNull; import lombok.*; import nl.dtls.fairdatapoint.api.validator.ValidIri; -import javax.validation.constraints.NotNull; - @NoArgsConstructor @AllArgsConstructor @Getter diff --git a/src/main/java/nl/dtls/fairdatapoint/api/dto/index/entry/IndexEntryDTO.java b/src/main/java/nl/dtls/fairdatapoint/api/dto/index/entry/IndexEntryDTO.java index b891d7d27..b76213859 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/dto/index/entry/IndexEntryDTO.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/dto/index/entry/IndexEntryDTO.java @@ -22,14 +22,13 @@ */ package nl.dtls.fairdatapoint.api.dto.index.entry; +import jakarta.validation.constraints.NotNull; import lombok.AllArgsConstructor; import lombok.Getter; import lombok.NoArgsConstructor; import lombok.Setter; import org.hibernate.validator.constraints.URL; -import javax.validation.constraints.NotNull; - @NoArgsConstructor @AllArgsConstructor @Getter diff --git a/src/main/java/nl/dtls/fairdatapoint/api/dto/index/entry/IndexEntryDetailDTO.java b/src/main/java/nl/dtls/fairdatapoint/api/dto/index/entry/IndexEntryDetailDTO.java index 28583103e..b821a86e0 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/dto/index/entry/IndexEntryDetailDTO.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/dto/index/entry/IndexEntryDetailDTO.java @@ -22,6 +22,7 @@ */ package nl.dtls.fairdatapoint.api.dto.index.entry; +import jakarta.validation.constraints.NotNull; import lombok.AllArgsConstructor; import lombok.Getter; import lombok.NoArgsConstructor; @@ -30,7 +31,6 @@ import nl.dtls.fairdatapoint.entity.index.entry.RepositoryMetadata; import org.hibernate.validator.constraints.URL; -import javax.validation.constraints.NotNull; import java.util.List; @NoArgsConstructor diff --git a/src/main/java/nl/dtls/fairdatapoint/api/dto/index/event/EventDTO.java b/src/main/java/nl/dtls/fairdatapoint/api/dto/index/event/EventDTO.java index 0bae018af..3b5ab5891 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/dto/index/event/EventDTO.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/dto/index/event/EventDTO.java @@ -22,13 +22,13 @@ */ package nl.dtls.fairdatapoint.api.dto.index.event; +import jakarta.validation.constraints.NotNull; import lombok.AllArgsConstructor; import lombok.Getter; import lombok.NoArgsConstructor; import lombok.Setter; import nl.dtls.fairdatapoint.entity.index.event.EventType; -import javax.validation.constraints.NotNull; import java.util.UUID; @NoArgsConstructor diff --git a/src/main/java/nl/dtls/fairdatapoint/api/dto/index/ping/PingDTO.java b/src/main/java/nl/dtls/fairdatapoint/api/dto/index/ping/PingDTO.java index c14d82126..229c776fd 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/dto/index/ping/PingDTO.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/dto/index/ping/PingDTO.java @@ -22,14 +22,13 @@ */ package nl.dtls.fairdatapoint.api.dto.index.ping; +import jakarta.validation.constraints.NotNull; import lombok.AllArgsConstructor; import lombok.Getter; import lombok.NoArgsConstructor; import lombok.Setter; import org.hibernate.validator.constraints.URL; -import javax.validation.constraints.NotNull; - @NoArgsConstructor @AllArgsConstructor @Getter diff --git a/src/main/java/nl/dtls/fairdatapoint/api/dto/index/settings/IndexSettingsDTO.java b/src/main/java/nl/dtls/fairdatapoint/api/dto/index/settings/IndexSettingsDTO.java index 448d4969d..2f1ae628d 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/dto/index/settings/IndexSettingsDTO.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/dto/index/settings/IndexSettingsDTO.java @@ -22,13 +22,12 @@ */ package nl.dtls.fairdatapoint.api.dto.index.settings; +import jakarta.validation.constraints.NotNull; import lombok.AllArgsConstructor; import lombok.Getter; import lombok.NoArgsConstructor; import lombok.Setter; -import javax.validation.constraints.NotNull; - @NoArgsConstructor @AllArgsConstructor @Getter diff --git a/src/main/java/nl/dtls/fairdatapoint/api/dto/index/settings/IndexSettingsPingDTO.java b/src/main/java/nl/dtls/fairdatapoint/api/dto/index/settings/IndexSettingsPingDTO.java index 616e6826c..23224c0bc 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/dto/index/settings/IndexSettingsPingDTO.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/dto/index/settings/IndexSettingsPingDTO.java @@ -22,13 +22,13 @@ */ package nl.dtls.fairdatapoint.api.dto.index.settings; +import jakarta.validation.constraints.NotNull; import lombok.AllArgsConstructor; import lombok.Getter; import lombok.NoArgsConstructor; import lombok.Setter; import nl.dtls.fairdatapoint.api.validator.ValidDuration; -import javax.validation.constraints.NotNull; import java.util.List; @NoArgsConstructor diff --git a/src/main/java/nl/dtls/fairdatapoint/api/dto/index/settings/IndexSettingsRetrievalDTO.java b/src/main/java/nl/dtls/fairdatapoint/api/dto/index/settings/IndexSettingsRetrievalDTO.java index d630da343..cc6bc6b16 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/dto/index/settings/IndexSettingsRetrievalDTO.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/dto/index/settings/IndexSettingsRetrievalDTO.java @@ -22,14 +22,13 @@ */ package nl.dtls.fairdatapoint.api.dto.index.settings; +import jakarta.validation.constraints.NotNull; import lombok.AllArgsConstructor; import lombok.Getter; import lombok.NoArgsConstructor; import lombok.Setter; import nl.dtls.fairdatapoint.api.validator.ValidDuration; -import javax.validation.constraints.NotNull; - @NoArgsConstructor @AllArgsConstructor @Getter diff --git a/src/main/java/nl/dtls/fairdatapoint/api/dto/index/settings/IndexSettingsUpdateDTO.java b/src/main/java/nl/dtls/fairdatapoint/api/dto/index/settings/IndexSettingsUpdateDTO.java index 09905c30f..ccd3011b8 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/dto/index/settings/IndexSettingsUpdateDTO.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/dto/index/settings/IndexSettingsUpdateDTO.java @@ -22,14 +22,13 @@ */ package nl.dtls.fairdatapoint.api.dto.index.settings; +import jakarta.validation.Valid; +import jakarta.validation.constraints.NotNull; import lombok.AllArgsConstructor; import lombok.Getter; import lombok.NoArgsConstructor; import lombok.Setter; -import javax.validation.Valid; -import javax.validation.constraints.NotNull; - @NoArgsConstructor @AllArgsConstructor @Getter diff --git a/src/main/java/nl/dtls/fairdatapoint/api/dto/member/MemberCreateDTO.java b/src/main/java/nl/dtls/fairdatapoint/api/dto/member/MemberCreateDTO.java index 1ca587b62..ff263e964 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/dto/member/MemberCreateDTO.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/dto/member/MemberCreateDTO.java @@ -22,13 +22,12 @@ */ package nl.dtls.fairdatapoint.api.dto.member; +import jakarta.validation.constraints.NotBlank; import lombok.AllArgsConstructor; import lombok.Getter; import lombok.NoArgsConstructor; import lombok.Setter; -import javax.validation.constraints.NotBlank; - @NoArgsConstructor @AllArgsConstructor @Getter diff --git a/src/main/java/nl/dtls/fairdatapoint/api/dto/metadata/MetaDTO.java b/src/main/java/nl/dtls/fairdatapoint/api/dto/metadata/MetaDTO.java index aa6598cca..b04e97e43 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/dto/metadata/MetaDTO.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/dto/metadata/MetaDTO.java @@ -24,13 +24,13 @@ import com.fasterxml.jackson.annotation.JsonInclude; import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.constraints.NotNull; import lombok.AllArgsConstructor; import lombok.Getter; import lombok.NoArgsConstructor; import lombok.Setter; import nl.dtls.fairdatapoint.api.dto.member.MemberDTO; -import javax.validation.constraints.NotNull; import java.util.Map; @Schema(name = "MetaDTO") diff --git a/src/main/java/nl/dtls/fairdatapoint/api/dto/metadata/MetaPathDTO.java b/src/main/java/nl/dtls/fairdatapoint/api/dto/metadata/MetaPathDTO.java index e0284412a..63e401f96 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/dto/metadata/MetaPathDTO.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/dto/metadata/MetaPathDTO.java @@ -23,10 +23,9 @@ package nl.dtls.fairdatapoint.api.dto.metadata; import com.fasterxml.jackson.annotation.JsonInclude; +import jakarta.validation.constraints.NotNull; import lombok.*; -import javax.validation.constraints.NotNull; - @NoArgsConstructor @AllArgsConstructor @Getter diff --git a/src/main/java/nl/dtls/fairdatapoint/api/dto/resource/ResourceDefinitionChangeDTO.java b/src/main/java/nl/dtls/fairdatapoint/api/dto/resource/ResourceDefinitionChangeDTO.java index fd02ba834..0e597bbda 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/dto/resource/ResourceDefinitionChangeDTO.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/dto/resource/ResourceDefinitionChangeDTO.java @@ -22,6 +22,9 @@ */ package nl.dtls.fairdatapoint.api.dto.resource; +import jakarta.validation.Valid; +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotNull; import lombok.AllArgsConstructor; import lombok.Getter; import lombok.NoArgsConstructor; @@ -29,9 +32,6 @@ import nl.dtls.fairdatapoint.entity.resource.ResourceDefinitionChild; import nl.dtls.fairdatapoint.entity.resource.ResourceDefinitionLink; -import javax.validation.Valid; -import javax.validation.constraints.NotBlank; -import javax.validation.constraints.NotNull; import java.util.List; @NoArgsConstructor diff --git a/src/main/java/nl/dtls/fairdatapoint/api/dto/resource/ResourceDefinitionDTO.java b/src/main/java/nl/dtls/fairdatapoint/api/dto/resource/ResourceDefinitionDTO.java index 5754b604a..f05724cde 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/dto/resource/ResourceDefinitionDTO.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/dto/resource/ResourceDefinitionDTO.java @@ -22,6 +22,9 @@ */ package nl.dtls.fairdatapoint.api.dto.resource; +import jakarta.validation.Valid; +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotNull; import lombok.AllArgsConstructor; import lombok.Getter; import lombok.NoArgsConstructor; @@ -29,9 +32,6 @@ import nl.dtls.fairdatapoint.entity.resource.ResourceDefinitionChild; import nl.dtls.fairdatapoint.entity.resource.ResourceDefinitionLink; -import javax.validation.Valid; -import javax.validation.constraints.NotBlank; -import javax.validation.constraints.NotNull; import java.util.List; @NoArgsConstructor diff --git a/src/main/java/nl/dtls/fairdatapoint/api/dto/schema/MetadataSchemaChangeDTO.java b/src/main/java/nl/dtls/fairdatapoint/api/dto/schema/MetadataSchemaChangeDTO.java index 47009302b..3d7cb4763 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/dto/schema/MetadataSchemaChangeDTO.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/dto/schema/MetadataSchemaChangeDTO.java @@ -22,10 +22,10 @@ */ package nl.dtls.fairdatapoint.api.dto.schema; +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotNull; import lombok.*; -import javax.validation.constraints.NotBlank; -import javax.validation.constraints.NotNull; import java.util.List; @NoArgsConstructor diff --git a/src/main/java/nl/dtls/fairdatapoint/api/dto/schema/MetadataSchemaDTO.java b/src/main/java/nl/dtls/fairdatapoint/api/dto/schema/MetadataSchemaDTO.java index b140961dd..c35e8427a 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/dto/schema/MetadataSchemaDTO.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/dto/schema/MetadataSchemaDTO.java @@ -23,10 +23,10 @@ package nl.dtls.fairdatapoint.api.dto.schema; import com.fasterxml.jackson.annotation.JsonInclude; +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotNull; import lombok.*; -import javax.validation.constraints.NotBlank; -import javax.validation.constraints.NotNull; import java.util.List; @NoArgsConstructor diff --git a/src/main/java/nl/dtls/fairdatapoint/api/dto/schema/MetadataSchemaDraftDTO.java b/src/main/java/nl/dtls/fairdatapoint/api/dto/schema/MetadataSchemaDraftDTO.java index 112c14d4f..5a6734ef8 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/dto/schema/MetadataSchemaDraftDTO.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/dto/schema/MetadataSchemaDraftDTO.java @@ -23,10 +23,10 @@ package nl.dtls.fairdatapoint.api.dto.schema; import com.fasterxml.jackson.annotation.JsonInclude; +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotNull; import lombok.*; -import javax.validation.constraints.NotBlank; -import javax.validation.constraints.NotNull; import java.util.List; @NoArgsConstructor diff --git a/src/main/java/nl/dtls/fairdatapoint/api/dto/schema/MetadataSchemaPreviewRequestDTO.java b/src/main/java/nl/dtls/fairdatapoint/api/dto/schema/MetadataSchemaPreviewRequestDTO.java index 77cdc4b72..a22287a1f 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/dto/schema/MetadataSchemaPreviewRequestDTO.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/dto/schema/MetadataSchemaPreviewRequestDTO.java @@ -22,12 +22,12 @@ */ package nl.dtls.fairdatapoint.api.dto.schema; +import jakarta.validation.constraints.NotNull; import lombok.AllArgsConstructor; import lombok.Getter; import lombok.NoArgsConstructor; import lombok.Setter; -import javax.validation.constraints.NotNull; import java.util.List; @NoArgsConstructor diff --git a/src/main/java/nl/dtls/fairdatapoint/api/dto/schema/MetadataSchemaReleaseDTO.java b/src/main/java/nl/dtls/fairdatapoint/api/dto/schema/MetadataSchemaReleaseDTO.java index 0c67e259f..9d69293e3 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/dto/schema/MetadataSchemaReleaseDTO.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/dto/schema/MetadataSchemaReleaseDTO.java @@ -22,14 +22,13 @@ */ package nl.dtls.fairdatapoint.api.dto.schema; +import jakarta.validation.constraints.NotBlank; import lombok.AllArgsConstructor; import lombok.Getter; import lombok.NoArgsConstructor; import lombok.Setter; import nl.dtls.fairdatapoint.api.validator.ValidSemVer; -import javax.validation.constraints.NotBlank; - @NoArgsConstructor @AllArgsConstructor @Getter diff --git a/src/main/java/nl/dtls/fairdatapoint/api/dto/schema/MetadataSchemaRemoteDTO.java b/src/main/java/nl/dtls/fairdatapoint/api/dto/schema/MetadataSchemaRemoteDTO.java index b91e0cf3d..bd8216e3f 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/dto/schema/MetadataSchemaRemoteDTO.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/dto/schema/MetadataSchemaRemoteDTO.java @@ -22,11 +22,10 @@ */ package nl.dtls.fairdatapoint.api.dto.schema; +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotNull; import lombok.*; -import javax.validation.constraints.NotBlank; -import javax.validation.constraints.NotNull; - @NoArgsConstructor @AllArgsConstructor @Getter diff --git a/src/main/java/nl/dtls/fairdatapoint/api/dto/schema/MetadataSchemaUpdateDTO.java b/src/main/java/nl/dtls/fairdatapoint/api/dto/schema/MetadataSchemaUpdateDTO.java index d6c7a2e5c..fdc0d4b1c 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/dto/schema/MetadataSchemaUpdateDTO.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/dto/schema/MetadataSchemaUpdateDTO.java @@ -22,14 +22,13 @@ */ package nl.dtls.fairdatapoint.api.dto.schema; +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotNull; import lombok.AllArgsConstructor; import lombok.Getter; import lombok.NoArgsConstructor; import lombok.Setter; -import javax.validation.constraints.NotBlank; -import javax.validation.constraints.NotNull; - @NoArgsConstructor @AllArgsConstructor @Getter diff --git a/src/main/java/nl/dtls/fairdatapoint/api/dto/schema/MetadataSchemaVersionDTO.java b/src/main/java/nl/dtls/fairdatapoint/api/dto/schema/MetadataSchemaVersionDTO.java index 9b3a9849b..99943e32d 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/dto/schema/MetadataSchemaVersionDTO.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/dto/schema/MetadataSchemaVersionDTO.java @@ -23,11 +23,11 @@ package nl.dtls.fairdatapoint.api.dto.schema; import com.fasterxml.jackson.annotation.JsonInclude; +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotNull; import lombok.*; import nl.dtls.fairdatapoint.entity.schema.MetadataSchemaType; -import javax.validation.constraints.NotBlank; -import javax.validation.constraints.NotNull; import java.util.List; import java.util.Set; diff --git a/src/main/java/nl/dtls/fairdatapoint/api/dto/search/SearchFilterDTO.java b/src/main/java/nl/dtls/fairdatapoint/api/dto/search/SearchFilterDTO.java index 0134ddbb1..94b7c38ac 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/dto/search/SearchFilterDTO.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/dto/search/SearchFilterDTO.java @@ -22,12 +22,12 @@ */ package nl.dtls.fairdatapoint.api.dto.search; +import jakarta.validation.Valid; +import jakarta.validation.constraints.NotNull; import lombok.*; import nl.dtls.fairdatapoint.api.validator.ValidIri; import nl.dtls.fairdatapoint.entity.search.SearchFilterType; -import javax.validation.Valid; -import javax.validation.constraints.NotNull; import java.util.List; @NoArgsConstructor diff --git a/src/main/java/nl/dtls/fairdatapoint/api/dto/search/SearchQueryDTO.java b/src/main/java/nl/dtls/fairdatapoint/api/dto/search/SearchQueryDTO.java index dd2a47786..14eabf5b0 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/dto/search/SearchQueryDTO.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/dto/search/SearchQueryDTO.java @@ -22,13 +22,12 @@ */ package nl.dtls.fairdatapoint.api.dto.search; +import jakarta.validation.constraints.NotNull; import lombok.AllArgsConstructor; import lombok.Getter; import lombok.NoArgsConstructor; import lombok.Setter; -import javax.validation.constraints.NotNull; - @NoArgsConstructor @AllArgsConstructor @Getter diff --git a/src/main/java/nl/dtls/fairdatapoint/api/dto/search/SearchQueryTemplateDTO.java b/src/main/java/nl/dtls/fairdatapoint/api/dto/search/SearchQueryTemplateDTO.java index 003f7ebae..2df5edbee 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/dto/search/SearchQueryTemplateDTO.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/dto/search/SearchQueryTemplateDTO.java @@ -22,13 +22,12 @@ */ package nl.dtls.fairdatapoint.api.dto.search; +import jakarta.validation.constraints.NotNull; import lombok.AllArgsConstructor; import lombok.Getter; import lombok.NoArgsConstructor; import lombok.Setter; -import javax.validation.constraints.NotNull; - @NoArgsConstructor @AllArgsConstructor @Getter diff --git a/src/main/java/nl/dtls/fairdatapoint/api/dto/search/SearchQueryVariablesDTO.java b/src/main/java/nl/dtls/fairdatapoint/api/dto/search/SearchQueryVariablesDTO.java index 15b116dca..0f6b76af8 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/dto/search/SearchQueryVariablesDTO.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/dto/search/SearchQueryVariablesDTO.java @@ -22,10 +22,9 @@ */ package nl.dtls.fairdatapoint.api.dto.search; +import jakarta.validation.constraints.NotNull; import lombok.*; -import javax.validation.constraints.NotNull; - @NoArgsConstructor @AllArgsConstructor @Getter diff --git a/src/main/java/nl/dtls/fairdatapoint/api/dto/search/SearchSavedQueryChangeDTO.java b/src/main/java/nl/dtls/fairdatapoint/api/dto/search/SearchSavedQueryChangeDTO.java index 5020b08d0..c9a215e47 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/dto/search/SearchSavedQueryChangeDTO.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/dto/search/SearchSavedQueryChangeDTO.java @@ -22,13 +22,12 @@ */ package nl.dtls.fairdatapoint.api.dto.search; +import jakarta.validation.Valid; +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotNull; import lombok.*; import nl.dtls.fairdatapoint.entity.search.SearchSavedQueryType; -import javax.validation.Valid; -import javax.validation.constraints.NotBlank; -import javax.validation.constraints.NotNull; - @NoArgsConstructor @AllArgsConstructor @Getter diff --git a/src/main/java/nl/dtls/fairdatapoint/api/dto/search/SearchSavedQueryDTO.java b/src/main/java/nl/dtls/fairdatapoint/api/dto/search/SearchSavedQueryDTO.java index 4345efd75..423ee724f 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/dto/search/SearchSavedQueryDTO.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/dto/search/SearchSavedQueryDTO.java @@ -23,13 +23,13 @@ package nl.dtls.fairdatapoint.api.dto.search; import com.fasterxml.jackson.annotation.JsonInclude; +import jakarta.validation.Valid; +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotNull; import lombok.*; import nl.dtls.fairdatapoint.api.dto.user.UserDTO; import nl.dtls.fairdatapoint.entity.search.SearchSavedQueryType; -import javax.validation.Valid; -import javax.validation.constraints.NotBlank; -import javax.validation.constraints.NotNull; import java.time.Instant; @NoArgsConstructor diff --git a/src/main/java/nl/dtls/fairdatapoint/api/dto/settings/SettingsAutocompleteSourceDTO.java b/src/main/java/nl/dtls/fairdatapoint/api/dto/settings/SettingsAutocompleteSourceDTO.java index 3cf24b59e..474260865 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/dto/settings/SettingsAutocompleteSourceDTO.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/dto/settings/SettingsAutocompleteSourceDTO.java @@ -22,11 +22,10 @@ */ package nl.dtls.fairdatapoint.api.dto.settings; +import jakarta.validation.constraints.NotNull; import lombok.*; import nl.dtls.fairdatapoint.api.validator.ValidIri; -import javax.validation.constraints.NotNull; - @NoArgsConstructor @AllArgsConstructor @Getter diff --git a/src/main/java/nl/dtls/fairdatapoint/api/dto/settings/SettingsFormsAutocompleteDTO.java b/src/main/java/nl/dtls/fairdatapoint/api/dto/settings/SettingsFormsAutocompleteDTO.java index 86cfd4d1d..b7482e700 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/dto/settings/SettingsFormsAutocompleteDTO.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/dto/settings/SettingsFormsAutocompleteDTO.java @@ -22,9 +22,9 @@ */ package nl.dtls.fairdatapoint.api.dto.settings; +import jakarta.validation.constraints.NotNull; import lombok.*; -import javax.validation.constraints.NotNull; import java.util.List; @NoArgsConstructor diff --git a/src/main/java/nl/dtls/fairdatapoint/api/dto/settings/SettingsFormsDTO.java b/src/main/java/nl/dtls/fairdatapoint/api/dto/settings/SettingsFormsDTO.java index 670414351..862d6906f 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/dto/settings/SettingsFormsDTO.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/dto/settings/SettingsFormsDTO.java @@ -22,10 +22,9 @@ */ package nl.dtls.fairdatapoint.api.dto.settings; +import jakarta.validation.constraints.NotNull; import lombok.*; -import javax.validation.constraints.NotNull; - @NoArgsConstructor @AllArgsConstructor @Getter diff --git a/src/main/java/nl/dtls/fairdatapoint/api/dto/settings/SettingsPingDTO.java b/src/main/java/nl/dtls/fairdatapoint/api/dto/settings/SettingsPingDTO.java index f940029f2..3efef6521 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/dto/settings/SettingsPingDTO.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/dto/settings/SettingsPingDTO.java @@ -22,9 +22,9 @@ */ package nl.dtls.fairdatapoint.api.dto.settings; +import jakarta.validation.constraints.NotNull; import lombok.*; -import javax.validation.constraints.NotNull; import java.util.List; @NoArgsConstructor diff --git a/src/main/java/nl/dtls/fairdatapoint/api/dto/settings/SettingsPingUpdateDTO.java b/src/main/java/nl/dtls/fairdatapoint/api/dto/settings/SettingsPingUpdateDTO.java index 46dadb201..99243c1ea 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/dto/settings/SettingsPingUpdateDTO.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/dto/settings/SettingsPingUpdateDTO.java @@ -22,9 +22,9 @@ */ package nl.dtls.fairdatapoint.api.dto.settings; +import jakarta.validation.constraints.NotNull; import lombok.*; -import javax.validation.constraints.NotNull; import java.util.List; @NoArgsConstructor diff --git a/src/main/java/nl/dtls/fairdatapoint/api/dto/settings/SettingsSearchDTO.java b/src/main/java/nl/dtls/fairdatapoint/api/dto/settings/SettingsSearchDTO.java index e120618a6..8e4ef041f 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/dto/settings/SettingsSearchDTO.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/dto/settings/SettingsSearchDTO.java @@ -22,11 +22,11 @@ */ package nl.dtls.fairdatapoint.api.dto.settings; +import jakarta.validation.Valid; +import jakarta.validation.constraints.NotNull; import lombok.*; import nl.dtls.fairdatapoint.api.dto.search.SearchFilterDTO; -import javax.validation.Valid; -import javax.validation.constraints.NotNull; import java.util.List; @NoArgsConstructor diff --git a/src/main/java/nl/dtls/fairdatapoint/api/dto/settings/SettingsUpdateDTO.java b/src/main/java/nl/dtls/fairdatapoint/api/dto/settings/SettingsUpdateDTO.java index 03df173bd..7607b9906 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/dto/settings/SettingsUpdateDTO.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/dto/settings/SettingsUpdateDTO.java @@ -22,10 +22,10 @@ */ package nl.dtls.fairdatapoint.api.dto.settings; +import jakarta.validation.constraints.NotNull; import lombok.*; import nl.dtls.fairdatapoint.entity.settings.SettingsMetricsEntry; -import javax.validation.constraints.NotNull; import java.util.List; @NoArgsConstructor diff --git a/src/main/java/nl/dtls/fairdatapoint/api/dto/user/UserChangeDTO.java b/src/main/java/nl/dtls/fairdatapoint/api/dto/user/UserChangeDTO.java index db97415f2..c8dd11e92 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/dto/user/UserChangeDTO.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/dto/user/UserChangeDTO.java @@ -22,15 +22,14 @@ */ package nl.dtls.fairdatapoint.api.dto.user; +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotNull; import lombok.AllArgsConstructor; import lombok.Getter; import lombok.NoArgsConstructor; import lombok.Setter; import nl.dtls.fairdatapoint.entity.user.UserRole; -import javax.validation.constraints.NotBlank; -import javax.validation.constraints.NotNull; - @NoArgsConstructor @AllArgsConstructor @Getter diff --git a/src/main/java/nl/dtls/fairdatapoint/api/dto/user/UserCreateDTO.java b/src/main/java/nl/dtls/fairdatapoint/api/dto/user/UserCreateDTO.java index 6bfa94a96..4e2dc15ba 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/dto/user/UserCreateDTO.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/dto/user/UserCreateDTO.java @@ -22,15 +22,14 @@ */ package nl.dtls.fairdatapoint.api.dto.user; +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotNull; import lombok.AllArgsConstructor; import lombok.Getter; import lombok.NoArgsConstructor; import lombok.Setter; import nl.dtls.fairdatapoint.entity.user.UserRole; -import javax.validation.constraints.NotBlank; -import javax.validation.constraints.NotNull; - @NoArgsConstructor @AllArgsConstructor @Getter diff --git a/src/main/java/nl/dtls/fairdatapoint/api/dto/user/UserProfileChangeDTO.java b/src/main/java/nl/dtls/fairdatapoint/api/dto/user/UserProfileChangeDTO.java index 6dd65f186..a0b324e2d 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/dto/user/UserProfileChangeDTO.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/dto/user/UserProfileChangeDTO.java @@ -22,13 +22,12 @@ */ package nl.dtls.fairdatapoint.api.dto.user; +import jakarta.validation.constraints.NotBlank; import lombok.AllArgsConstructor; import lombok.Getter; import lombok.NoArgsConstructor; import lombok.Setter; -import javax.validation.constraints.NotBlank; - @NoArgsConstructor @AllArgsConstructor @Getter diff --git a/src/main/java/nl/dtls/fairdatapoint/api/filter/CORSFilter.java b/src/main/java/nl/dtls/fairdatapoint/api/filter/CORSFilter.java index fce7ae893..78c770b35 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/filter/CORSFilter.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/filter/CORSFilter.java @@ -27,15 +27,15 @@ */ package nl.dtls.fairdatapoint.api.filter; +import jakarta.servlet.FilterChain; +import jakarta.servlet.ServletException; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; import org.springframework.http.HttpHeaders; import org.springframework.stereotype.Component; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.filter.OncePerRequestFilter; -import javax.servlet.FilterChain; -import javax.servlet.ServletException; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; import java.io.IOException; import static java.lang.String.format; diff --git a/src/main/java/nl/dtls/fairdatapoint/api/filter/JwtTokenFilter.java b/src/main/java/nl/dtls/fairdatapoint/api/filter/JwtTokenFilter.java index a4099bc32..9bb8b0981 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/filter/JwtTokenFilter.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/filter/JwtTokenFilter.java @@ -23,6 +23,10 @@ package nl.dtls.fairdatapoint.api.filter; import com.fasterxml.jackson.databind.ObjectMapper; +import jakarta.servlet.FilterChain; +import jakarta.servlet.ServletException; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; import nl.dtls.fairdatapoint.api.dto.error.ErrorDTO; import nl.dtls.fairdatapoint.entity.exception.UnauthorizedException; import nl.dtls.fairdatapoint.service.apikey.ApiKeyService; @@ -35,10 +39,6 @@ import org.springframework.stereotype.Component; import org.springframework.web.filter.OncePerRequestFilter; -import javax.servlet.FilterChain; -import javax.servlet.ServletException; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; import java.io.IOException; import static nl.dtls.fairdatapoint.util.HttpUtil.getToken; diff --git a/src/main/java/nl/dtls/fairdatapoint/api/filter/LoggingFilter.java b/src/main/java/nl/dtls/fairdatapoint/api/filter/LoggingFilter.java index 22564e976..dea6a1f1c 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/filter/LoggingFilter.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/filter/LoggingFilter.java @@ -27,6 +27,10 @@ */ package nl.dtls.fairdatapoint.api.filter; +import jakarta.servlet.FilterChain; +import jakarta.servlet.ServletException; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; import nl.dtls.fairdatapoint.service.UtilityService; import org.apache.logging.log4j.ThreadContext; import org.springframework.beans.factory.annotation.Autowired; @@ -34,10 +38,6 @@ import org.springframework.stereotype.Component; import org.springframework.web.filter.OncePerRequestFilter; -import javax.servlet.FilterChain; -import javax.servlet.ServletException; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; import java.io.IOException; @Component diff --git a/src/main/java/nl/dtls/fairdatapoint/api/validator/DurationValidator.java b/src/main/java/nl/dtls/fairdatapoint/api/validator/DurationValidator.java index b99307990..888707fbb 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/validator/DurationValidator.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/validator/DurationValidator.java @@ -22,8 +22,8 @@ */ package nl.dtls.fairdatapoint.api.validator; -import javax.validation.ConstraintValidator; -import javax.validation.ConstraintValidatorContext; +import jakarta.validation.ConstraintValidator; +import jakarta.validation.ConstraintValidatorContext; import java.time.Duration; diff --git a/src/main/java/nl/dtls/fairdatapoint/api/validator/IriValidator.java b/src/main/java/nl/dtls/fairdatapoint/api/validator/IriValidator.java index 5a8f0a672..0b0dcb461 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/validator/IriValidator.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/validator/IriValidator.java @@ -22,8 +22,8 @@ */ package nl.dtls.fairdatapoint.api.validator; -import javax.validation.ConstraintValidator; -import javax.validation.ConstraintValidatorContext; +import jakarta.validation.ConstraintValidator; +import jakarta.validation.ConstraintValidatorContext; import static nl.dtls.fairdatapoint.util.ValueFactoryHelper.i; diff --git a/src/main/java/nl/dtls/fairdatapoint/api/validator/SemVerValidator.java b/src/main/java/nl/dtls/fairdatapoint/api/validator/SemVerValidator.java index c0654d265..f43da0e80 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/validator/SemVerValidator.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/validator/SemVerValidator.java @@ -22,11 +22,10 @@ */ package nl.dtls.fairdatapoint.api.validator; +import jakarta.validation.ConstraintValidator; +import jakarta.validation.ConstraintValidatorContext; import nl.dtls.fairdatapoint.entity.schema.SemVer; -import javax.validation.ConstraintValidator; -import javax.validation.ConstraintValidatorContext; - public class SemVerValidator implements ConstraintValidator { @Override diff --git a/src/main/java/nl/dtls/fairdatapoint/api/validator/ValidDuration.java b/src/main/java/nl/dtls/fairdatapoint/api/validator/ValidDuration.java index f46b8ac4e..a419febb9 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/validator/ValidDuration.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/validator/ValidDuration.java @@ -22,8 +22,9 @@ */ package nl.dtls.fairdatapoint.api.validator; -import javax.validation.Constraint; -import javax.validation.Payload; +import jakarta.validation.Constraint; +import jakarta.validation.Payload; + import java.lang.annotation.*; @Documented diff --git a/src/main/java/nl/dtls/fairdatapoint/api/validator/ValidIri.java b/src/main/java/nl/dtls/fairdatapoint/api/validator/ValidIri.java index 4daaf9cf0..6a546a64f 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/validator/ValidIri.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/validator/ValidIri.java @@ -22,8 +22,9 @@ */ package nl.dtls.fairdatapoint.api.validator; -import javax.validation.Constraint; -import javax.validation.Payload; +import jakarta.validation.Constraint; +import jakarta.validation.Payload; + import java.lang.annotation.*; @Documented diff --git a/src/main/java/nl/dtls/fairdatapoint/api/validator/ValidSemVer.java b/src/main/java/nl/dtls/fairdatapoint/api/validator/ValidSemVer.java index 4864f7cd2..3ebe9cd84 100644 --- a/src/main/java/nl/dtls/fairdatapoint/api/validator/ValidSemVer.java +++ b/src/main/java/nl/dtls/fairdatapoint/api/validator/ValidSemVer.java @@ -22,8 +22,9 @@ */ package nl.dtls.fairdatapoint.api.validator; -import javax.validation.Constraint; -import javax.validation.Payload; +import jakarta.validation.Constraint; +import jakarta.validation.Payload; + import java.lang.annotation.*; @Documented diff --git a/src/main/java/nl/dtls/fairdatapoint/config/MongoConfig.java b/src/main/java/nl/dtls/fairdatapoint/config/MongoConfig.java index 4efabd10a..07c835de4 100644 --- a/src/main/java/nl/dtls/fairdatapoint/config/MongoConfig.java +++ b/src/main/java/nl/dtls/fairdatapoint/config/MongoConfig.java @@ -23,7 +23,7 @@ package nl.dtls.fairdatapoint.config; import io.mongock.api.config.LegacyMigration; -import io.mongock.driver.mongodb.springdata.v3.SpringDataMongoV3Driver; +import io.mongock.driver.mongodb.springdata.v4.SpringDataMongoV4Driver; import io.mongock.runner.springboot.MongockSpringboot; import io.mongock.runner.springboot.base.MongockInitializingBeanRunner; import nl.dtls.fairdatapoint.service.resource.ResourceDefinitionCache; @@ -63,7 +63,7 @@ public MongockInitializingBeanRunner mongockApplicationRunner( MongoTemplate mongoTemplate ) { return MongockSpringboot.builder() - .setDriver(SpringDataMongoV3Driver.withDefaultLock(mongoTemplate)) + .setDriver(SpringDataMongoV4Driver.withDefaultLock(mongoTemplate)) .addMigrationScanPackage( "nl.dtls.fairdatapoint.database.mongo.migration.production" ) diff --git a/src/main/java/nl/dtls/fairdatapoint/config/SecurityConfig.java b/src/main/java/nl/dtls/fairdatapoint/config/SecurityConfig.java index ad22d0975..c4521db9e 100644 --- a/src/main/java/nl/dtls/fairdatapoint/config/SecurityConfig.java +++ b/src/main/java/nl/dtls/fairdatapoint/config/SecurityConfig.java @@ -23,52 +23,49 @@ package nl.dtls.fairdatapoint.config; import nl.dtls.fairdatapoint.api.filter.FilterConfigurer; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.http.HttpMethod; import org.springframework.security.authentication.AuthenticationManager; +import org.springframework.security.config.annotation.authentication.configuration.AuthenticationConfiguration; import org.springframework.security.config.annotation.web.builders.HttpSecurity; -import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter; +import org.springframework.security.config.annotation.web.configurers.AbstractHttpConfigurer; import org.springframework.security.config.http.SessionCreationPolicy; +import org.springframework.security.web.SecurityFilterChain; @Configuration -public class SecurityConfig extends WebSecurityConfigurerAdapter { - // TODO: deprecated WebSecurityConfigurerAdapter - - private static final String MATCH_ALL = "/**"; - - @Autowired - private FilterConfigurer filterConfigurer; +public class SecurityConfig { @Bean - @Override - public AuthenticationManager authenticationManagerBean() throws Exception { - return super.authenticationManagerBean(); + public AuthenticationManager authenticationManager(AuthenticationConfiguration authenticationConfiguration) + throws Exception { + return authenticationConfiguration.getAuthenticationManager(); } - @Override - protected void configure(HttpSecurity http) throws Exception { + @Bean + public SecurityFilterChain filterChain(HttpSecurity http, FilterConfigurer filterConfigurer) throws Exception { http - .httpBasic().disable() - .csrf().disable() - .sessionManagement().sessionCreationPolicy(SessionCreationPolicy.STATELESS) - .and() - .authorizeRequests() - .antMatchers(HttpMethod.OPTIONS, MATCH_ALL).permitAll() - .antMatchers("/dashboard").authenticated() - .antMatchers("/users**").authenticated() - .antMatchers("/api-keys**").authenticated() - .antMatchers("/users/**").authenticated() - .antMatchers("/memberships**").authenticated() - .antMatchers("/tokens").permitAll() - .antMatchers("/search**").permitAll() - .antMatchers("/index/admin**").authenticated() - .antMatchers("/index**").permitAll() - .antMatchers(HttpMethod.PUT, MATCH_ALL).authenticated() - .anyRequest().permitAll() - .and() + .csrf(AbstractHttpConfigurer::disable) + .httpBasic(AbstractHttpConfigurer::disable) + .sessionManagement(sessionMgmt -> sessionMgmt.sessionCreationPolicy(SessionCreationPolicy.STATELESS)) + .authorizeHttpRequests( + authz -> { + authz + .requestMatchers(HttpMethod.OPTIONS).permitAll() + .requestMatchers("/dashboard").authenticated() + .requestMatchers("/users**").authenticated() + .requestMatchers("/api-keys**").authenticated() + .requestMatchers("/users/**").authenticated() + .requestMatchers("/memberships**").authenticated() + .requestMatchers("/tokens").permitAll() + .requestMatchers("/search**").permitAll() + .requestMatchers("/index/admin**").authenticated() + .requestMatchers("/index**").permitAll() + .requestMatchers(HttpMethod.PUT).authenticated() + .anyRequest().permitAll(); + } + ) .apply(filterConfigurer); + return http.build(); } - } diff --git a/src/main/java/nl/dtls/fairdatapoint/config/WebConfig.java b/src/main/java/nl/dtls/fairdatapoint/config/WebConfig.java index ce3fb09ce..ba3801bc3 100644 --- a/src/main/java/nl/dtls/fairdatapoint/config/WebConfig.java +++ b/src/main/java/nl/dtls/fairdatapoint/config/WebConfig.java @@ -30,6 +30,7 @@ import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Primary; +import org.springframework.http.converter.ByteArrayHttpMessageConverter; import org.springframework.http.converter.HttpMessageConverter; import org.springframework.http.converter.StringHttpMessageConverter; import org.springframework.http.converter.json.MappingJackson2HttpMessageConverter; @@ -55,6 +56,7 @@ public void configureMessageConverters(List> converters) converters.add(new StringHttpMessageConverter()); converters.addAll(errorConverters); converters.addAll(rdfConverters); + converters.add(new ByteArrayHttpMessageConverter()); converters.add(new MappingJackson2HttpMessageConverter(objectMapper())); } diff --git a/src/main/java/nl/dtls/fairdatapoint/database/mongo/migration/development/MigrationRunner.java b/src/main/java/nl/dtls/fairdatapoint/database/mongo/migration/development/MigrationRunner.java index 20434b6d7..9720b32ff 100644 --- a/src/main/java/nl/dtls/fairdatapoint/database/mongo/migration/development/MigrationRunner.java +++ b/src/main/java/nl/dtls/fairdatapoint/database/mongo/migration/development/MigrationRunner.java @@ -22,6 +22,7 @@ */ package nl.dtls.fairdatapoint.database.mongo.migration.development; +import jakarta.annotation.PostConstruct; import nl.dtls.fairdatapoint.Profiles; import nl.dtls.fairdatapoint.database.mongo.migration.development.acl.AclMigration; import nl.dtls.fairdatapoint.database.mongo.migration.development.apikey.ApiKeyMigration; @@ -41,8 +42,6 @@ import org.springframework.context.annotation.Profile; import org.springframework.stereotype.Service; -import javax.annotation.PostConstruct; - @Service @Profile(Profiles.NON_PRODUCTION) public class MigrationRunner { diff --git a/src/main/java/nl/dtls/fairdatapoint/database/rdf/migration/development/RdfDevelopmentMigrationRunner.java b/src/main/java/nl/dtls/fairdatapoint/database/rdf/migration/development/RdfDevelopmentMigrationRunner.java index f168e4476..cb2a5b358 100644 --- a/src/main/java/nl/dtls/fairdatapoint/database/rdf/migration/development/RdfDevelopmentMigrationRunner.java +++ b/src/main/java/nl/dtls/fairdatapoint/database/rdf/migration/development/RdfDevelopmentMigrationRunner.java @@ -22,6 +22,7 @@ */ package nl.dtls.fairdatapoint.database.rdf.migration.development; +import jakarta.annotation.PostConstruct; import nl.dtls.fairdatapoint.Profiles; import nl.dtls.fairdatapoint.database.rdf.migration.development.metadata.RdfMetadataMigration; import org.springframework.beans.factory.annotation.Autowired; @@ -29,8 +30,6 @@ import org.springframework.context.annotation.Profile; import org.springframework.stereotype.Service; -import javax.annotation.PostConstruct; - @Service @DependsOn("mongockRunner") @Profile(Profiles.NON_PRODUCTION) diff --git a/src/main/java/nl/dtls/fairdatapoint/database/rdf/repository/catalog/CatalogMetadataRepositoryImpl.java b/src/main/java/nl/dtls/fairdatapoint/database/rdf/repository/catalog/CatalogMetadataRepositoryImpl.java index 7c745e8c0..97c5391f6 100644 --- a/src/main/java/nl/dtls/fairdatapoint/database/rdf/repository/catalog/CatalogMetadataRepositoryImpl.java +++ b/src/main/java/nl/dtls/fairdatapoint/database/rdf/repository/catalog/CatalogMetadataRepositoryImpl.java @@ -22,6 +22,7 @@ */ package nl.dtls.fairdatapoint.database.rdf.repository.catalog; +import jakarta.annotation.PostConstruct; import nl.dtls.fairdatapoint.database.rdf.repository.common.AbstractMetadataRepository; import nl.dtls.fairdatapoint.database.rdf.repository.exception.MetadataRepositoryException; import org.eclipse.rdf4j.model.IRI; @@ -30,7 +31,6 @@ import org.springframework.cache.concurrent.ConcurrentMapCacheManager; import org.springframework.stereotype.Service; -import javax.annotation.PostConstruct; import java.util.List; import java.util.Map; import java.util.stream.Collectors; diff --git a/src/main/java/nl/dtls/fairdatapoint/entity/index/entry/RepositoryMetadata.java b/src/main/java/nl/dtls/fairdatapoint/entity/index/entry/RepositoryMetadata.java index e7ab9a63d..fa64fbe75 100644 --- a/src/main/java/nl/dtls/fairdatapoint/entity/index/entry/RepositoryMetadata.java +++ b/src/main/java/nl/dtls/fairdatapoint/entity/index/entry/RepositoryMetadata.java @@ -22,9 +22,9 @@ */ package nl.dtls.fairdatapoint.entity.index.entry; +import jakarta.validation.constraints.NotNull; import lombok.*; -import javax.validation.constraints.NotNull; import java.util.HashMap; import java.util.Map; diff --git a/src/main/java/nl/dtls/fairdatapoint/entity/index/event/Event.java b/src/main/java/nl/dtls/fairdatapoint/entity/index/event/Event.java index 6919ab66d..06450d17a 100644 --- a/src/main/java/nl/dtls/fairdatapoint/entity/index/event/Event.java +++ b/src/main/java/nl/dtls/fairdatapoint/entity/index/event/Event.java @@ -22,6 +22,7 @@ */ package nl.dtls.fairdatapoint.entity.index.event; +import jakarta.validation.constraints.NotNull; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; @@ -32,7 +33,6 @@ import org.springframework.data.mongodb.core.mapping.Document; import org.springframework.format.annotation.DateTimeFormat; -import javax.validation.constraints.NotNull; import java.time.Instant; import java.util.UUID; diff --git a/src/main/java/nl/dtls/fairdatapoint/entity/index/http/Request.java b/src/main/java/nl/dtls/fairdatapoint/entity/index/http/Request.java index e662148c4..16ce1cbcf 100644 --- a/src/main/java/nl/dtls/fairdatapoint/entity/index/http/Request.java +++ b/src/main/java/nl/dtls/fairdatapoint/entity/index/http/Request.java @@ -22,12 +22,12 @@ */ package nl.dtls.fairdatapoint.entity.index.http; +import jakarta.servlet.http.HttpServletRequest; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; import org.springframework.http.HttpEntity; -import javax.servlet.http.HttpServletRequest; import java.net.http.HttpRequest; import java.util.List; import java.util.Map; diff --git a/src/main/java/nl/dtls/fairdatapoint/entity/index/settings/IndexSettings.java b/src/main/java/nl/dtls/fairdatapoint/entity/index/settings/IndexSettings.java index 79171d92c..ca4a05c5c 100644 --- a/src/main/java/nl/dtls/fairdatapoint/entity/index/settings/IndexSettings.java +++ b/src/main/java/nl/dtls/fairdatapoint/entity/index/settings/IndexSettings.java @@ -22,12 +22,12 @@ */ package nl.dtls.fairdatapoint.entity.index.settings; +import jakarta.validation.constraints.NotNull; import lombok.*; import org.bson.types.ObjectId; import org.springframework.data.annotation.Id; import org.springframework.data.mongodb.core.mapping.Document; -import javax.validation.constraints.NotNull; import java.util.Objects; @Document diff --git a/src/main/java/nl/dtls/fairdatapoint/entity/index/settings/IndexSettingsPing.java b/src/main/java/nl/dtls/fairdatapoint/entity/index/settings/IndexSettingsPing.java index 111fb3ccf..0a9982715 100644 --- a/src/main/java/nl/dtls/fairdatapoint/entity/index/settings/IndexSettingsPing.java +++ b/src/main/java/nl/dtls/fairdatapoint/entity/index/settings/IndexSettingsPing.java @@ -22,9 +22,9 @@ */ package nl.dtls.fairdatapoint.entity.index.settings; +import jakarta.validation.constraints.NotNull; import lombok.*; -import javax.validation.constraints.NotNull; import java.time.Duration; import java.util.Collections; import java.util.List; diff --git a/src/main/java/nl/dtls/fairdatapoint/entity/index/settings/IndexSettingsRetrieval.java b/src/main/java/nl/dtls/fairdatapoint/entity/index/settings/IndexSettingsRetrieval.java index 20df731b0..a5d8ee919 100644 --- a/src/main/java/nl/dtls/fairdatapoint/entity/index/settings/IndexSettingsRetrieval.java +++ b/src/main/java/nl/dtls/fairdatapoint/entity/index/settings/IndexSettingsRetrieval.java @@ -22,9 +22,9 @@ */ package nl.dtls.fairdatapoint.entity.index.settings; +import jakarta.validation.constraints.NotNull; import lombok.*; -import javax.validation.constraints.NotNull; import java.time.Duration; @NoArgsConstructor diff --git a/src/main/java/nl/dtls/fairdatapoint/entity/index/webhook/Webhook.java b/src/main/java/nl/dtls/fairdatapoint/entity/index/webhook/Webhook.java index 9892411bb..5f24c7607 100644 --- a/src/main/java/nl/dtls/fairdatapoint/entity/index/webhook/Webhook.java +++ b/src/main/java/nl/dtls/fairdatapoint/entity/index/webhook/Webhook.java @@ -22,6 +22,7 @@ */ package nl.dtls.fairdatapoint.entity.index.webhook; +import jakarta.validation.constraints.NotNull; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; @@ -29,7 +30,6 @@ import org.springframework.data.annotation.Id; import org.springframework.data.mongodb.core.mapping.Document; -import javax.validation.constraints.NotNull; import java.util.ArrayList; import java.util.List; import java.util.UUID; diff --git a/src/main/java/nl/dtls/fairdatapoint/entity/resource/ResourceDefinitionChild.java b/src/main/java/nl/dtls/fairdatapoint/entity/resource/ResourceDefinitionChild.java index c633bfc48..a871883f3 100644 --- a/src/main/java/nl/dtls/fairdatapoint/entity/resource/ResourceDefinitionChild.java +++ b/src/main/java/nl/dtls/fairdatapoint/entity/resource/ResourceDefinitionChild.java @@ -22,12 +22,11 @@ */ package nl.dtls.fairdatapoint.entity.resource; +import jakarta.validation.Valid; +import jakarta.validation.constraints.NotBlank; import lombok.*; import nl.dtls.fairdatapoint.api.validator.ValidIri; -import javax.validation.Valid; -import javax.validation.constraints.NotBlank; - @NoArgsConstructor @AllArgsConstructor @Getter diff --git a/src/main/java/nl/dtls/fairdatapoint/entity/resource/ResourceDefinitionChildListView.java b/src/main/java/nl/dtls/fairdatapoint/entity/resource/ResourceDefinitionChildListView.java index 8405c0930..0bc74d203 100644 --- a/src/main/java/nl/dtls/fairdatapoint/entity/resource/ResourceDefinitionChildListView.java +++ b/src/main/java/nl/dtls/fairdatapoint/entity/resource/ResourceDefinitionChildListView.java @@ -22,11 +22,11 @@ */ package nl.dtls.fairdatapoint.entity.resource; +import jakarta.validation.Valid; +import jakarta.validation.constraints.NotBlank; import lombok.*; import nl.dtls.fairdatapoint.api.validator.ValidIri; -import javax.validation.Valid; -import javax.validation.constraints.NotBlank; import java.util.List; @NoArgsConstructor diff --git a/src/main/java/nl/dtls/fairdatapoint/entity/resource/ResourceDefinitionChildListViewMetadata.java b/src/main/java/nl/dtls/fairdatapoint/entity/resource/ResourceDefinitionChildListViewMetadata.java index f584fdc0a..983eb78c2 100644 --- a/src/main/java/nl/dtls/fairdatapoint/entity/resource/ResourceDefinitionChildListViewMetadata.java +++ b/src/main/java/nl/dtls/fairdatapoint/entity/resource/ResourceDefinitionChildListViewMetadata.java @@ -22,11 +22,10 @@ */ package nl.dtls.fairdatapoint.entity.resource; +import jakarta.validation.constraints.NotBlank; import lombok.*; import nl.dtls.fairdatapoint.api.validator.ValidIri; -import javax.validation.constraints.NotBlank; - @NoArgsConstructor @AllArgsConstructor @Getter diff --git a/src/main/java/nl/dtls/fairdatapoint/entity/resource/ResourceDefinitionLink.java b/src/main/java/nl/dtls/fairdatapoint/entity/resource/ResourceDefinitionLink.java index edbd7fde4..88ab30767 100644 --- a/src/main/java/nl/dtls/fairdatapoint/entity/resource/ResourceDefinitionLink.java +++ b/src/main/java/nl/dtls/fairdatapoint/entity/resource/ResourceDefinitionLink.java @@ -22,11 +22,10 @@ */ package nl.dtls.fairdatapoint.entity.resource; +import jakarta.validation.constraints.NotBlank; import lombok.*; import nl.dtls.fairdatapoint.api.validator.ValidIri; -import javax.validation.constraints.NotBlank; - @NoArgsConstructor @AllArgsConstructor @Getter diff --git a/src/main/java/nl/dtls/fairdatapoint/entity/schema/MetadataSchema.java b/src/main/java/nl/dtls/fairdatapoint/entity/schema/MetadataSchema.java index fc22fc654..f1c403546 100644 --- a/src/main/java/nl/dtls/fairdatapoint/entity/schema/MetadataSchema.java +++ b/src/main/java/nl/dtls/fairdatapoint/entity/schema/MetadataSchema.java @@ -22,6 +22,8 @@ */ package nl.dtls.fairdatapoint.entity.schema; +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotNull; import lombok.*; import org.bson.types.ObjectId; import org.springframework.data.annotation.Id; @@ -30,8 +32,6 @@ import org.springframework.data.mongodb.core.index.Indexed; import org.springframework.data.mongodb.core.mapping.Document; -import javax.validation.constraints.NotBlank; -import javax.validation.constraints.NotNull; import java.time.Instant; import java.util.ArrayList; import java.util.HashSet; diff --git a/src/main/java/nl/dtls/fairdatapoint/entity/schema/MetadataSchemaDraft.java b/src/main/java/nl/dtls/fairdatapoint/entity/schema/MetadataSchemaDraft.java index 15279fe90..ebf091143 100644 --- a/src/main/java/nl/dtls/fairdatapoint/entity/schema/MetadataSchemaDraft.java +++ b/src/main/java/nl/dtls/fairdatapoint/entity/schema/MetadataSchemaDraft.java @@ -22,14 +22,14 @@ */ package nl.dtls.fairdatapoint.entity.schema; +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotNull; import lombok.*; import org.bson.types.ObjectId; import org.springframework.data.annotation.Id; import org.springframework.data.mongodb.core.index.Indexed; import org.springframework.data.mongodb.core.mapping.Document; -import javax.validation.constraints.NotBlank; -import javax.validation.constraints.NotNull; import java.time.Instant; import java.util.List; import java.util.Set; diff --git a/src/main/java/nl/dtls/fairdatapoint/entity/settings/SettingsPing.java b/src/main/java/nl/dtls/fairdatapoint/entity/settings/SettingsPing.java index d13fca445..a3d4f68ad 100644 --- a/src/main/java/nl/dtls/fairdatapoint/entity/settings/SettingsPing.java +++ b/src/main/java/nl/dtls/fairdatapoint/entity/settings/SettingsPing.java @@ -22,9 +22,9 @@ */ package nl.dtls.fairdatapoint.entity.settings; +import jakarta.validation.constraints.NotNull; import lombok.*; -import javax.validation.constraints.NotNull; import java.util.List; @NoArgsConstructor diff --git a/src/main/java/nl/dtls/fairdatapoint/service/UtilityService.java b/src/main/java/nl/dtls/fairdatapoint/service/UtilityService.java index 070b2276f..a280c7a3d 100644 --- a/src/main/java/nl/dtls/fairdatapoint/service/UtilityService.java +++ b/src/main/java/nl/dtls/fairdatapoint/service/UtilityService.java @@ -22,13 +22,12 @@ */ package nl.dtls.fairdatapoint.service; +import jakarta.servlet.http.HttpServletRequest; import nl.dtls.fairdatapoint.config.properties.InstanceProperties; import nl.dtls.fairdatapoint.util.HttpUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import javax.servlet.http.HttpServletRequest; - @Service public class UtilityService { diff --git a/src/main/java/nl/dtls/fairdatapoint/service/index/entry/IndexEntryService.java b/src/main/java/nl/dtls/fairdatapoint/service/index/entry/IndexEntryService.java index 8e618770a..dc6787bdd 100644 --- a/src/main/java/nl/dtls/fairdatapoint/service/index/entry/IndexEntryService.java +++ b/src/main/java/nl/dtls/fairdatapoint/service/index/entry/IndexEntryService.java @@ -22,6 +22,7 @@ */ package nl.dtls.fairdatapoint.service.index.entry; +import jakarta.validation.Valid; import lombok.extern.slf4j.Slf4j; import nl.dtls.fairdatapoint.api.dto.index.entry.IndexEntryDTO; import nl.dtls.fairdatapoint.api.dto.index.entry.IndexEntryDetailDTO; @@ -47,7 +48,6 @@ import org.springframework.stereotype.Service; import org.springframework.validation.annotation.Validated; -import javax.validation.Valid; import java.time.Instant; import java.util.*; import java.util.stream.StreamSupport; diff --git a/src/main/java/nl/dtls/fairdatapoint/service/index/event/EventService.java b/src/main/java/nl/dtls/fairdatapoint/service/index/event/EventService.java index d6c6391e6..3ee5b4a80 100644 --- a/src/main/java/nl/dtls/fairdatapoint/service/index/event/EventService.java +++ b/src/main/java/nl/dtls/fairdatapoint/service/index/event/EventService.java @@ -23,6 +23,8 @@ package nl.dtls.fairdatapoint.service.index.event; import com.fasterxml.jackson.databind.ObjectMapper; +import jakarta.annotation.PostConstruct; +import jakarta.servlet.http.HttpServletRequest; import lombok.SneakyThrows; import lombok.extern.slf4j.Slf4j; import nl.dtls.fairdatapoint.api.dto.index.ping.PingDTO; @@ -56,8 +58,6 @@ import org.springframework.security.core.context.SecurityContextHolder; import org.springframework.stereotype.Service; -import javax.annotation.PostConstruct; -import javax.servlet.http.HttpServletRequest; import java.net.http.HttpClient; import java.time.Instant; import java.util.Collections; diff --git a/src/main/java/nl/dtls/fairdatapoint/service/index/event/IncomingPingUtils.java b/src/main/java/nl/dtls/fairdatapoint/service/index/event/IncomingPingUtils.java index 86632c601..ee23453f1 100644 --- a/src/main/java/nl/dtls/fairdatapoint/service/index/event/IncomingPingUtils.java +++ b/src/main/java/nl/dtls/fairdatapoint/service/index/event/IncomingPingUtils.java @@ -24,6 +24,7 @@ import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.ObjectMapper; +import jakarta.servlet.http.HttpServletRequest; import nl.dtls.fairdatapoint.api.dto.index.ping.PingDTO; import nl.dtls.fairdatapoint.entity.index.event.Event; import nl.dtls.fairdatapoint.entity.index.event.IncomingPing; @@ -32,7 +33,6 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import javax.servlet.http.HttpServletRequest; import java.util.*; @Service diff --git a/src/main/java/nl/dtls/fairdatapoint/service/index/webhook/WebhookService.java b/src/main/java/nl/dtls/fairdatapoint/service/index/webhook/WebhookService.java index ed56f660f..4a6001b58 100644 --- a/src/main/java/nl/dtls/fairdatapoint/service/index/webhook/WebhookService.java +++ b/src/main/java/nl/dtls/fairdatapoint/service/index/webhook/WebhookService.java @@ -24,6 +24,7 @@ import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.ObjectMapper; +import jakarta.servlet.http.HttpServletRequest; import lombok.extern.slf4j.Slf4j; import nl.dtls.fairdatapoint.api.dto.index.webhook.WebhookPayloadDTO; import nl.dtls.fairdatapoint.database.mongo.repository.EventRepository; @@ -42,7 +43,6 @@ import org.springframework.security.core.context.SecurityContextHolder; import org.springframework.stereotype.Service; -import javax.servlet.http.HttpServletRequest; import java.security.NoSuchAlgorithmException; import java.util.Optional; import java.util.UUID; diff --git a/src/main/java/nl/dtls/fairdatapoint/service/jwt/JwtService.java b/src/main/java/nl/dtls/fairdatapoint/service/jwt/JwtService.java index 98cb077d3..db1cfe854 100644 --- a/src/main/java/nl/dtls/fairdatapoint/service/jwt/JwtService.java +++ b/src/main/java/nl/dtls/fairdatapoint/service/jwt/JwtService.java @@ -23,6 +23,7 @@ package nl.dtls.fairdatapoint.service.jwt; import io.jsonwebtoken.*; +import jakarta.annotation.PostConstruct; import nl.dtls.fairdatapoint.api.dto.auth.AuthDTO; import nl.dtls.fairdatapoint.database.mongo.repository.UserRepository; import nl.dtls.fairdatapoint.entity.exception.UnauthorizedException; @@ -37,7 +38,6 @@ import org.springframework.security.core.userdetails.UsernameNotFoundException; import org.springframework.stereotype.Component; -import javax.annotation.PostConstruct; import javax.crypto.spec.SecretKeySpec; import java.security.Key; import java.util.Base64; diff --git a/src/main/java/nl/dtls/fairdatapoint/service/metadata/catalog/CatalogMetadataService.java b/src/main/java/nl/dtls/fairdatapoint/service/metadata/catalog/CatalogMetadataService.java index ef632406f..2b22923f4 100644 --- a/src/main/java/nl/dtls/fairdatapoint/service/metadata/catalog/CatalogMetadataService.java +++ b/src/main/java/nl/dtls/fairdatapoint/service/metadata/catalog/CatalogMetadataService.java @@ -71,9 +71,9 @@ public Model store( @Override public Model update( - Model metadata, IRI uri, ResourceDefinition resourceDefinition + Model metadata, IRI uri, ResourceDefinition resourceDefinition, boolean validate ) throws MetadataServiceException { setThemeTaxonomies(metadata, uri, null); - return super.update(metadata, uri, resourceDefinition); + return super.update(metadata, uri, resourceDefinition, validate); } } diff --git a/src/main/java/nl/dtls/fairdatapoint/service/metadata/common/AbstractMetadataService.java b/src/main/java/nl/dtls/fairdatapoint/service/metadata/common/AbstractMetadataService.java index 96925e2b8..8ea4b3bdf 100644 --- a/src/main/java/nl/dtls/fairdatapoint/service/metadata/common/AbstractMetadataService.java +++ b/src/main/java/nl/dtls/fairdatapoint/service/metadata/common/AbstractMetadataService.java @@ -141,10 +141,12 @@ public Model store( or hasRole('ADMIN') """) public Model update( - Model metadata, IRI uri, ResourceDefinition resourceDefinition + Model metadata, IRI uri, ResourceDefinition resourceDefinition, boolean validate ) throws MetadataServiceException { try { - metadataValidator.validate(metadata, uri, resourceDefinition); + if (validate) { + metadataValidator.validate(metadata, uri, resourceDefinition); + } final Model oldMetadata = retrieve(uri); metadataEnhancer.enhance(metadata, uri, resourceDefinition, oldMetadata); metadataRepository.remove(uri); @@ -185,7 +187,7 @@ public void delete(IRI uri, ResourceDefinition rd) throws MetadataServiceExcepti for (ResourceDefinitionChild rdChild : rdParent.getChildren()) { if (rdChild.getResourceDefinitionUuid().equals(rd.getUuid())) { parentMetadata.remove(null, i(rdChild.getRelationUri()), uri); - update(parentMetadata, parentUri, rdParent); + update(parentMetadata, parentUri, rdParent, false); } } } diff --git a/src/main/java/nl/dtls/fairdatapoint/service/metadata/common/MetadataService.java b/src/main/java/nl/dtls/fairdatapoint/service/metadata/common/MetadataService.java index 54a60c748..7e106561a 100644 --- a/src/main/java/nl/dtls/fairdatapoint/service/metadata/common/MetadataService.java +++ b/src/main/java/nl/dtls/fairdatapoint/service/metadata/common/MetadataService.java @@ -41,7 +41,7 @@ Model store( ) throws MetadataServiceException; Model update( - Model model, IRI uri, ResourceDefinition resourceDefinition + Model model, IRI uri, ResourceDefinition resourceDefinition, boolean validate ) throws MetadataServiceException; void delete(IRI uri, ResourceDefinition resourceDefinition) throws MetadataServiceException; diff --git a/src/main/java/nl/dtls/fairdatapoint/service/openapi/OpenApiService.java b/src/main/java/nl/dtls/fairdatapoint/service/openapi/OpenApiService.java index c8196fc85..1c4cfc6fc 100644 --- a/src/main/java/nl/dtls/fairdatapoint/service/openapi/OpenApiService.java +++ b/src/main/java/nl/dtls/fairdatapoint/service/openapi/OpenApiService.java @@ -25,13 +25,13 @@ import io.swagger.v3.oas.models.OpenAPI; import io.swagger.v3.oas.models.PathItem; import io.swagger.v3.oas.models.Paths; +import jakarta.annotation.PostConstruct; import lombok.extern.log4j.Log4j2; import nl.dtls.fairdatapoint.database.mongo.repository.ResourceDefinitionRepository; import nl.dtls.fairdatapoint.entity.resource.ResourceDefinition; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import javax.annotation.PostConstruct; import java.util.List; import java.util.Map; import java.util.Set; diff --git a/src/main/java/nl/dtls/fairdatapoint/service/reset/FactoryDefaults.java b/src/main/java/nl/dtls/fairdatapoint/service/reset/FactoryDefaults.java index 548c28c97..b1e055f88 100644 --- a/src/main/java/nl/dtls/fairdatapoint/service/reset/FactoryDefaults.java +++ b/src/main/java/nl/dtls/fairdatapoint/service/reset/FactoryDefaults.java @@ -29,6 +29,7 @@ import nl.dtls.fairdatapoint.entity.resource.*; import nl.dtls.fairdatapoint.entity.schema.MetadataSchema; import nl.dtls.fairdatapoint.entity.schema.MetadataSchemaType; +import nl.dtls.fairdatapoint.entity.schema.SemVer; import nl.dtls.fairdatapoint.entity.user.User; import nl.dtls.fairdatapoint.entity.user.UserRole; import nl.dtls.fairdatapoint.service.schema.MetadataSchemaShaclUtils; @@ -45,6 +46,7 @@ import java.time.OffsetDateTime; import java.util.ArrayList; +import java.util.Collections; import java.util.List; import static nl.dtls.fairdatapoint.util.ResourceReader.loadClassResource; @@ -73,6 +75,9 @@ public class FactoryDefaults { public static final String SUFFIX_IDENTIFIER = "#identifier"; public static final String SUFFIX_ACCESS_RIGHTS = "#accessRights"; public static final String SUFFIX_PUBLISHER = "#publisher"; + public static final String FDP_APP_URL = "https://purl.org/fairdatapoint/app"; + + public static final SemVer SEMVER_V1 = new SemVer("1.0.0"); // == USERS // Changes: Migration_0001_Init @@ -147,12 +152,7 @@ public class FactoryDefaults { .uuid(KnownUUIDs.RD_FDP_UUID) .name(FDP_TITLE) .urlPrefix(FDP_PREFIX) - .metadataSchemaUuids(List.of( - KnownUUIDs.SCHEMA_RESOURCE_UUID, - KnownUUIDs.SCHEMA_DATASERVICE_UUID, - KnownUUIDs.SCHEMA_METADATASERVICE_UUID, - KnownUUIDs.SCHEMA_FDP_UUID - )) + .metadataSchemaUuids(List.of(KnownUUIDs.SCHEMA_FDP_UUID)) .children(List.of( ResourceDefinitionChild.builder() .resourceDefinitionUuid(KnownUUIDs.RD_CATALOG_UUID) @@ -173,10 +173,7 @@ public class FactoryDefaults { .uuid(KnownUUIDs.RD_CATALOG_UUID) .name(CATALOG_TITLE) .urlPrefix(CATALOG_PREFIX) - .metadataSchemaUuids(List.of( - KnownUUIDs.SCHEMA_RESOURCE_UUID, - KnownUUIDs.SCHEMA_CATALOG_UUID - )) + .metadataSchemaUuids(List.of(KnownUUIDs.SCHEMA_CATALOG_UUID)) .children(List.of( ResourceDefinitionChild.builder() .resourceDefinitionUuid(KnownUUIDs.RD_DATASET_UUID) @@ -197,10 +194,7 @@ public class FactoryDefaults { .uuid(KnownUUIDs.RD_DATASET_UUID) .name(DATASET_TITLE) .urlPrefix(DATASET_PREFIX) - .metadataSchemaUuids(List.of( - KnownUUIDs.SCHEMA_RESOURCE_UUID, - KnownUUIDs.SCHEMA_DATASET_UUID - )) + .metadataSchemaUuids(List.of(KnownUUIDs.SCHEMA_DATASET_UUID)) .children(List.of( ResourceDefinitionChild.builder() .resourceDefinitionUuid(KnownUUIDs.RD_DISTRIBUTION_UUID) @@ -226,10 +220,7 @@ public class FactoryDefaults { .uuid(KnownUUIDs.RD_DISTRIBUTION_UUID) .name(DISTRIBUTION_TITLE) .urlPrefix(DISTRIBUTION_PREFIX) - .metadataSchemaUuids(List.of( - KnownUUIDs.SCHEMA_RESOURCE_UUID, - KnownUUIDs.SCHEMA_DISTRIBUTION_UUID - )) + .metadataSchemaUuids(List.of(KnownUUIDs.SCHEMA_DISTRIBUTION_UUID)) .children(List.of()) .externalLinks(List.of( new ResourceDefinitionLink( @@ -253,6 +244,14 @@ public static MetadataSchema schemaResource() throws Exception { .name("Resource") .type(MetadataSchemaType.INTERNAL) .published(false) + .latest(true) + .version(SEMVER_V1) + .versionString(SEMVER_V1.toString()) + .versionUuid(KnownUUIDs.SCHEMA_V1_RESOURCE_UUID) + .previousVersionUuid(null) + .origin(FDP_APP_URL) + .importedFrom(FDP_APP_URL) + .extendSchemas(Collections.emptyList()) .abstractSchema(true) .definition(definition) .targetClasses(MetadataSchemaShaclUtils.extractTargetClasses(definition)) @@ -266,6 +265,14 @@ public static MetadataSchema schemaFDP() throws Exception { .name(FDP_TITLE) .type(MetadataSchemaType.INTERNAL) .published(false) + .latest(true) + .version(SEMVER_V1) + .versionString(SEMVER_V1.toString()) + .versionUuid(KnownUUIDs.SCHEMA_V1_FDP_UUID) + .previousVersionUuid(null) + .origin(FDP_APP_URL) + .importedFrom(FDP_APP_URL) + .extendSchemas(List.of(KnownUUIDs.SCHEMA_METADATASERVICE_UUID)) .abstractSchema(false) .definition(definition) .targetClasses(MetadataSchemaShaclUtils.extractTargetClasses(definition)) @@ -281,6 +288,14 @@ public static MetadataSchema schemaDataService() throws Exception { .name(DATASERVICE_TITLE) .type(MetadataSchemaType.INTERNAL) .published(false) + .latest(true) + .version(SEMVER_V1) + .versionString(SEMVER_V1.toString()) + .versionUuid(KnownUUIDs.SCHEMA_V1_DATASERVICE_UUID) + .previousVersionUuid(null) + .origin(FDP_APP_URL) + .importedFrom(FDP_APP_URL) + .extendSchemas(List.of(KnownUUIDs.SCHEMA_RESOURCE_UUID)) .abstractSchema(false) .definition(definition) .targetClasses(MetadataSchemaShaclUtils.extractTargetClasses(definition)) @@ -296,6 +311,14 @@ public static MetadataSchema schemaMetadataService() throws Exception { .name(METADATASERVICE_TITLE) .type(MetadataSchemaType.INTERNAL) .published(false) + .latest(true) + .version(SEMVER_V1) + .versionString(SEMVER_V1.toString()) + .versionUuid(KnownUUIDs.SCHEMA_V1_METADATASERVICE_UUID) + .previousVersionUuid(null) + .origin(FDP_APP_URL) + .importedFrom(FDP_APP_URL) + .extendSchemas(List.of(KnownUUIDs.SCHEMA_DATASERVICE_UUID)) .abstractSchema(false) .definition(definition) .targetClasses(MetadataSchemaShaclUtils.extractTargetClasses(definition)) @@ -311,6 +334,14 @@ public static MetadataSchema schemaCatalog() throws Exception { .name(CATALOG_TITLE) .type(MetadataSchemaType.INTERNAL) .published(false) + .latest(true) + .version(SEMVER_V1) + .versionString(SEMVER_V1.toString()) + .versionUuid(KnownUUIDs.SCHEMA_V1_CATALOG_UUID) + .previousVersionUuid(null) + .origin(FDP_APP_URL) + .importedFrom(FDP_APP_URL) + .extendSchemas(List.of(KnownUUIDs.SCHEMA_RESOURCE_UUID)) .abstractSchema(false) .definition(definition) .targetClasses(MetadataSchemaShaclUtils.extractTargetClasses(definition)) @@ -326,6 +357,14 @@ public static MetadataSchema schemaDataset() throws Exception { .name(DATASET_TITLE) .type(MetadataSchemaType.CUSTOM) .published(false) + .latest(true) + .version(SEMVER_V1) + .versionString(SEMVER_V1.toString()) + .versionUuid(KnownUUIDs.SCHEMA_V1_DATASET_UUID) + .previousVersionUuid(null) + .origin(FDP_APP_URL) + .importedFrom(FDP_APP_URL) + .extendSchemas(List.of(KnownUUIDs.SCHEMA_RESOURCE_UUID)) .abstractSchema(false) .definition(definition) .targetClasses(MetadataSchemaShaclUtils.extractTargetClasses(definition)) @@ -341,6 +380,14 @@ public static MetadataSchema schemaDistribution() throws Exception { .name(DISTRIBUTION_TITLE) .type(MetadataSchemaType.CUSTOM) .published(false) + .latest(true) + .version(SEMVER_V1) + .versionString(SEMVER_V1.toString()) + .versionUuid(KnownUUIDs.SCHEMA_V1_DISTRIBUTION_UUID) + .previousVersionUuid(null) + .origin(FDP_APP_URL) + .importedFrom(FDP_APP_URL) + .extendSchemas(List.of(KnownUUIDs.SCHEMA_RESOURCE_UUID)) .abstractSchema(false) .definition(definition) .targetClasses(MetadataSchemaShaclUtils.extractTargetClasses(definition)) diff --git a/src/main/java/nl/dtls/fairdatapoint/service/reset/ResetService.java b/src/main/java/nl/dtls/fairdatapoint/service/reset/ResetService.java index e60fdf8ca..0879a829b 100644 --- a/src/main/java/nl/dtls/fairdatapoint/service/reset/ResetService.java +++ b/src/main/java/nl/dtls/fairdatapoint/service/reset/ResetService.java @@ -131,8 +131,8 @@ public void resetToFactoryDefaults(ResetDTO reqDto) throws Exception { restoreDefaultMetadata(); } if (reqDto.isResourceDefinitions()) { - clearMetadataSchemas(); clearResourceDefinitions(); + clearMetadataSchemas(); restoreDefaultMetadataSchemas(); restoreDefaultResourceDefinitions(); } diff --git a/src/main/java/nl/dtls/fairdatapoint/service/resource/ResourceDefinitionCache.java b/src/main/java/nl/dtls/fairdatapoint/service/resource/ResourceDefinitionCache.java index d6fd58bc2..a732e116d 100644 --- a/src/main/java/nl/dtls/fairdatapoint/service/resource/ResourceDefinitionCache.java +++ b/src/main/java/nl/dtls/fairdatapoint/service/resource/ResourceDefinitionCache.java @@ -22,6 +22,7 @@ */ package nl.dtls.fairdatapoint.service.resource; +import jakarta.annotation.PostConstruct; import lombok.Getter; import nl.dtls.fairdatapoint.database.mongo.repository.ResourceDefinitionRepository; import nl.dtls.fairdatapoint.entity.resource.ResourceDefinition; @@ -30,7 +31,6 @@ import org.springframework.cache.concurrent.ConcurrentMapCacheManager; import org.springframework.stereotype.Service; -import javax.annotation.PostConstruct; import java.util.Collections; import java.util.HashSet; import java.util.List; diff --git a/src/main/java/nl/dtls/fairdatapoint/service/resource/ResourceDefinitionTargetClassesCache.java b/src/main/java/nl/dtls/fairdatapoint/service/resource/ResourceDefinitionTargetClassesCache.java index 1f3d133e1..628c48785 100644 --- a/src/main/java/nl/dtls/fairdatapoint/service/resource/ResourceDefinitionTargetClassesCache.java +++ b/src/main/java/nl/dtls/fairdatapoint/service/resource/ResourceDefinitionTargetClassesCache.java @@ -22,6 +22,7 @@ */ package nl.dtls.fairdatapoint.service.resource; +import jakarta.annotation.PostConstruct; import nl.dtls.fairdatapoint.database.mongo.repository.ResourceDefinitionRepository; import nl.dtls.fairdatapoint.database.mongo.repository.MetadataSchemaRepository; import nl.dtls.fairdatapoint.entity.resource.ResourceDefinition; @@ -31,7 +32,6 @@ import org.springframework.cache.concurrent.ConcurrentMapCacheManager; import org.springframework.stereotype.Service; -import javax.annotation.PostConstruct; import java.util.*; import static nl.dtls.fairdatapoint.config.CacheConfig.RESOURCE_DEFINITION_TARGET_CLASSES_CACHE; diff --git a/src/main/java/nl/dtls/fairdatapoint/service/schema/MetadataSchemaService.java b/src/main/java/nl/dtls/fairdatapoint/service/schema/MetadataSchemaService.java index c03bb65e9..63fc3b531 100644 --- a/src/main/java/nl/dtls/fairdatapoint/service/schema/MetadataSchemaService.java +++ b/src/main/java/nl/dtls/fairdatapoint/service/schema/MetadataSchemaService.java @@ -22,6 +22,7 @@ */ package nl.dtls.fairdatapoint.service.schema; +import jakarta.validation.Valid; import lombok.extern.slf4j.Slf4j; import nl.dtls.fairdatapoint.api.dto.schema.*; import nl.dtls.fairdatapoint.database.mongo.repository.MetadataSchemaDraftRepository; @@ -40,7 +41,6 @@ import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.stereotype.Service; -import javax.validation.Valid; import java.util.*; import java.util.function.Function; import java.util.stream.Collectors; diff --git a/src/main/java/nl/dtls/fairdatapoint/service/search/SearchFilterCache.java b/src/main/java/nl/dtls/fairdatapoint/service/search/SearchFilterCache.java index 43b977970..16fb03802 100644 --- a/src/main/java/nl/dtls/fairdatapoint/service/search/SearchFilterCache.java +++ b/src/main/java/nl/dtls/fairdatapoint/service/search/SearchFilterCache.java @@ -22,6 +22,7 @@ */ package nl.dtls.fairdatapoint.service.search; +import jakarta.annotation.PostConstruct; import lombok.extern.slf4j.Slf4j; import nl.dtls.fairdatapoint.entity.search.SearchFilterCacheContainer; import nl.dtls.fairdatapoint.service.label.LabelService; @@ -31,8 +32,6 @@ import org.springframework.cache.concurrent.ConcurrentMapCacheManager; import org.springframework.stereotype.Component; -import javax.annotation.PostConstruct; - import static java.lang.String.format; import static nl.dtls.fairdatapoint.config.CacheConfig.SEARCH_FILTERS_CACHE; diff --git a/src/main/java/nl/dtls/fairdatapoint/service/settings/SettingsCache.java b/src/main/java/nl/dtls/fairdatapoint/service/settings/SettingsCache.java index a668b1771..ca1a7cb57 100644 --- a/src/main/java/nl/dtls/fairdatapoint/service/settings/SettingsCache.java +++ b/src/main/java/nl/dtls/fairdatapoint/service/settings/SettingsCache.java @@ -22,6 +22,7 @@ */ package nl.dtls.fairdatapoint.service.settings; +import jakarta.annotation.PostConstruct; import nl.dtls.fairdatapoint.database.mongo.repository.SettingsRepository; import nl.dtls.fairdatapoint.entity.settings.Settings; import org.springframework.beans.factory.annotation.Autowired; @@ -29,8 +30,6 @@ import org.springframework.cache.concurrent.ConcurrentMapCacheManager; import org.springframework.stereotype.Service; -import javax.annotation.PostConstruct; - import static nl.dtls.fairdatapoint.config.CacheConfig.SETTINGS_CACHE; @Service diff --git a/src/main/java/nl/dtls/fairdatapoint/util/HttpUtil.java b/src/main/java/nl/dtls/fairdatapoint/util/HttpUtil.java index 25ceb7f4e..3d451c8f0 100644 --- a/src/main/java/nl/dtls/fairdatapoint/util/HttpUtil.java +++ b/src/main/java/nl/dtls/fairdatapoint/util/HttpUtil.java @@ -22,13 +22,13 @@ */ package nl.dtls.fairdatapoint.util; +import jakarta.servlet.http.HttpServletRequest; import lombok.extern.slf4j.Slf4j; import nl.dtls.fairdatapoint.entity.exception.ValidationException; import org.eclipse.rdf4j.model.IRI; import org.eclipse.rdf4j.rio.RDFFormat; import org.springframework.http.HttpHeaders; -import javax.servlet.http.HttpServletRequest; import java.net.MalformedURLException; import java.net.URL; import java.util.UUID; diff --git a/src/main/resources/application-development.yml b/src/main/resources/application-development.yml index a9e2f1908..d392068c9 100644 --- a/src/main/resources/application-development.yml +++ b/src/main/resources/application-development.yml @@ -9,4 +9,4 @@ security: spring: data: mongodb: - uri: mongodb://localhost:27017/fdp + uri: mongodb://localhost:27017/fdp-dev diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index 69efabc89..680fcbcf3 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -1,12 +1,15 @@ instance: - index: false - clientUrl: http://localhost:8080 - behindProxy: true + index: ${FDP_INDEX:false} + clientUrl: ${FDP_CLIENT_URL:http://localhost:8080} + persistentUrl: ${FDP_PERSISTENT_URL:http://localhost:8080} + behindProxy: ${FDP_BEHIND_PROXY:true} + title: ${FDP_TITLE:FAIR Data Point} + subtitle: ${FDP_SUBTITLE:Metadata for machines} spring: data: mongodb: - uri: mongodb://mongo:27017/fdp + uri: mongodb://${FDP_MONGO_HOST:mongo}:${FDP_MONGO_PORT:27017}/${FDP_MONGO_DB:fdp} web: pageable: default-page-size: 50 @@ -34,39 +37,42 @@ management: security: jwt: token: - secret-key: IBQADE2IGQAWYWPUR2RTLCE2GSUST8MNLYM6XJJ0442SO8LBQ0Y5NSSZPDMEEJ9DH5EXL02AZCZWGOWH5RY23BDT7WBBMVC607DTANIJ3VH8KD6JDOLW03G68Q5Z2Y430QV76RBCIM3TIFGP32Y33QR3LFXEGGII2UQOZFQFOZ2NZ9KLDHJLAAOU2PH82PVH7DTBNLTQD30HQG6OI09O9LT9BDKIYYB10TO2MDDS1MZ0C77O8OQDDLAXDK8LFWGMZSK4MAUJNLPTMVGX5CSVXAGNDBFNSZNGA37XSCP7JAYR8AQQDEHM5GOB3AIBOKDQ3BJ3GORFAZOHU3EJU2JBFY5JH8BM8QEUCQ6XZEE6SWO28HSNWVHV8UB3Z0M46BX7K0UM9HJJQ3I3R1KGTSRTR3U4XTTDHPKRBNGZ8HM4ZTJOOF26KFE21Q9C2LQD6OZRZ5REOYKGN2V47OLYPO2QB6982TPEE8HVBOJ7I9GE4MHG0BFMO9UKSZA5P17KR4TLBKXG51AB4DWQPK445FX7ZLBV6KSUUNDSCQI7PVI31MMET8168WGEN25WWUHSEB5KVLQH53BVJ0P7B0NHJOY31DH5F2ZUIAVFFE6MRPZAUHYRY5LQLFUFB1MF0MX6J61WEPC5MBLCD1JN9UP35HSHR8Z3YHTBP388DSGPX74C88S4A3BTK8PIIQ3TQKL819VL7LOHXJL1FODC1TGW0KGBV8XRPPV5K75KG5MJM7E3WMXDEY5G4PJYNLT5G67257X1RONPG518N76CBXUQBTYTBYH81PBHD0O09PY3R5X9IDDI4FBIAX4WANZSRLUQNJT4EI7W8AYHZ16P2O769O4GS2ECL3IDUPVYCFINAC2E1Q80P1PVZNLDFF9440E0Q27375NK5NLZQQCJXBB8J4QPFI78TW2MH9O5OVQ04506FWBUCLK3O6Q3XCXKBJRPLZBB6SVKXCOYELQQA0U5QBW4VNYNHY4TFZ8RDSNVULB5GV35432IAFKAQBL1KVA7LJBMAN06EFXW303MYYGKEH2URL02RHRDHROQHAH4TY76F1R9RKPVF620MYMBNF9LNC96U7PX2E5WCO7B778ZYT6RZKMPHP5FRG3LT0HSY540ZN91B1ACZAID1JTJKWOIGQSKPQEO3ORDNI2WQMPNTI7KJL6CP53VXFVM0M54F1IVK0V1M7QIUXVJ3VC6XNFDMV77I8DOL926SNS5Z952LGQFVPSS60X7MMPJ8PNNT0BX4B14CYT5E3832H8YOATAHD9PFD30ELYJV4S6RDZ0D6CJWM5KQGBCXHXAB98Z4DYWGAC5T7K5N17SWAT86VU3VNP8AJP2AGZVFBBEI3MCP7RW7Z1DR85YI6CMW7M8MUAWB66LWU6NAZ4PW4FSD443KX15FYYRZDPDNGKLVZY5680G0TCW76N40D1JU4GBLCWASIHEU110XZZ0OLYLHCJCQGELT7Y5B10VBRVWW48Q6AGJ0T85Y73RCCPBJSU73UAN51R0E65RF6OQGNOY6RDHCI06S8EO6AMZMK503M0ORDFSH8BE6NE9J2022ZSFEO0FM513SLKUSYPK4NG0FJIBCR3T0Y7CIOF6WDA5AA9JY615PQPRD38E0GDFM2A1XIU9Y5LR71F69VZPC5CXJZOXVB2T6WQNJDEN8KBGK1R55IOLBK6LYPVB1SOWM26K46OM39ZZX5H8D4OMAX9B6MHKQD0D4V8VNTQO5P0MRE39YUC231T87HCJDILC8IBS6LB2PC7F8C5TYLZ2Q8RKC015I4JX3SAOFZIPGGD0Q5HQYH1PVYIVU43QNK2N5O13NPMF6NT6BHK4GXR52IZLYWD9KR0UAZJ1YCL7COD2VF4AI1SMP0PZPODVQVGX7BFEVRBS9XKI1TAWLEGRSYD5XBLWH91YPFIUDVCOJT4RQJOHV9QRM32BJYMBTTJYN42NFKF6SRXWHXIKMMDEHXCUECAJW70A6UM0QEIC988M03FJ5RY34VUPQ30NV23QJVCZ1PR81N8BT2VNCDOONYSS33YKW0QBUGJ2HX7UAP1TQN49GEC6GUP0I434S6DQZEEY06MRF0QLIU79F2HWN2XG5Q9X6VXRTEA7PT3X78CY5YM3N2LX81Y10NQC5U1NZYZQD2NV347MTSFO8MECHODX6OX3LCKIQELAOMQ7DVD6I1MJUWG5DI8TC1OL4JMGJOCY7J4GAOY5SXNBLF39REZQYP7IW5G8943QQD6FICJWBSHO8Y7Z745UXJIWZ4WPB3TB4355UP4O0EU6WFSMPUNJK8GN8FJHCQTOKTCNZA6L77JMNUMIP70QM525H815U7YH3JPXJ4NDH1YAVKR9OYRKDKN64843DGKW7HDN1KOGG2I41G8K2AKRWTFR69HC3WHZEX0MQ7YNQF5RVIDFH503388FLJVM778DTR23754Y62EAX9OBY10YDWHRHRQQDR5NQX9A07T9ZLZ9AI59WFEUM2GQAH1ZA9ELZB3OW7LB961300QVUOYAJWWMMRFOFGX6QYTB4IBM3PACQCJSFTK4K3YRUS5R + secret-key: ${FDP_JWT_SECRET_KEY:IBQADE2IGQAWYWPUR2RTLCE2GSUST8MNLYM6XJJ0442SO8LBQ0Y5NSSZPDMEEJ9DH5EXL02AZCZWGOWH5RY23BDT7WBBMVC607DTANIJ3VH8KD6JDOLW03G68Q5Z2Y430QV76RBCIM3TIFGP32Y33QR3LFXEGGII2UQOZFQFOZ2NZ9KLDHJLAAOU2PH82PVH7DTBNLTQD30HQG6OI09O9LT9BDKIYYB10TO2MDDS1MZ0C77O8OQDDLAXDK8LFWGMZSK4MAUJNLPTMVGX5CSVXAGNDBFNSZNGA37XSCP7JAYR8AQQDEHM5GOB3AIBOKDQ3BJ3GORFAZOHU3EJU2JBFY5JH8BM8QEUCQ6XZEE6SWO28HSNWVHV8UB3Z0M46BX7K0UM9HJJQ3I3R1KGTSRTR3U4XTTDHPKRBNGZ8HM4ZTJOOF26KFE21Q9C2LQD6OZRZ5REOYKGN2V47OLYPO2QB6982TPEE8HVBOJ7I9GE4MHG0BFMO9UKSZA5P17KR4TLBKXG51AB4DWQPK445FX7ZLBV6KSUUNDSCQI7PVI31MMET8168WGEN25WWUHSEB5KVLQH53BVJ0P7B0NHJOY31DH5F2ZUIAVFFE6MRPZAUHYRY5LQLFUFB1MF0MX6J61WEPC5MBLCD1JN9UP35HSHR8Z3YHTBP388DSGPX74C88S4A3BTK8PIIQ3TQKL819VL7LOHXJL1FODC1TGW0KGBV8XRPPV5K75KG5MJM7E3WMXDEY5G4PJYNLT5G67257X1RONPG518N76CBXUQBTYTBYH81PBHD0O09PY3R5X9IDDI4FBIAX4WANZSRLUQNJT4EI7W8AYHZ16P2O769O4GS2ECL3IDUPVYCFINAC2E1Q80P1PVZNLDFF9440E0Q27375NK5NLZQQCJXBB8J4QPFI78TW2MH9O5OVQ04506FWBUCLK3O6Q3XCXKBJRPLZBB6SVKXCOYELQQA0U5QBW4VNYNHY4TFZ8RDSNVULB5GV35432IAFKAQBL1KVA7LJBMAN06EFXW303MYYGKEH2URL02RHRDHROQHAH4TY76F1R9RKPVF620MYMBNF9LNC96U7PX2E5WCO7B778ZYT6RZKMPHP5FRG3LT0HSY540ZN91B1ACZAID1JTJKWOIGQSKPQEO3ORDNI2WQMPNTI7KJL6CP53VXFVM0M54F1IVK0V1M7QIUXVJ3VC6XNFDMV77I8DOL926SNS5Z952LGQFVPSS60X7MMPJ8PNNT0BX4B14CYT5E3832H8YOATAHD9PFD30ELYJV4S6RDZ0D6CJWM5KQGBCXHXAB98Z4DYWGAC5T7K5N17SWAT86VU3VNP8AJP2AGZVFBBEI3MCP7RW7Z1DR85YI6CMW7M8MUAWB66LWU6NAZ4PW4FSD443KX15FYYRZDPDNGKLVZY5680G0TCW76N40D1JU4GBLCWASIHEU110XZZ0OLYLHCJCQGELT7Y5B10VBRVWW48Q6AGJ0T85Y73RCCPBJSU73UAN51R0E65RF6OQGNOY6RDHCI06S8EO6AMZMK503M0ORDFSH8BE6NE9J2022ZSFEO0FM513SLKUSYPK4NG0FJIBCR3T0Y7CIOF6WDA5AA9JY615PQPRD38E0GDFM2A1XIU9Y5LR71F69VZPC5CXJZOXVB2T6WQNJDEN8KBGK1R55IOLBK6LYPVB1SOWM26K46OM39ZZX5H8D4OMAX9B6MHKQD0D4V8VNTQO5P0MRE39YUC231T87HCJDILC8IBS6LB2PC7F8C5TYLZ2Q8RKC015I4JX3SAOFZIPGGD0Q5HQYH1PVYIVU43QNK2N5O13NPMF6NT6BHK4GXR52IZLYWD9KR0UAZJ1YCL7COD2VF4AI1SMP0PZPODVQVGX7BFEVRBS9XKI1TAWLEGRSYD5XBLWH91YPFIUDVCOJT4RQJOHV9QRM32BJYMBTTJYN42NFKF6SRXWHXIKMMDEHXCUECAJW70A6UM0QEIC988M03FJ5RY34VUPQ30NV23QJVCZ1PR81N8BT2VNCDOONYSS33YKW0QBUGJ2HX7UAP1TQN49GEC6GUP0I434S6DQZEEY06MRF0QLIU79F2HWN2XG5Q9X6VXRTEA7PT3X78CY5YM3N2LX81Y10NQC5U1NZYZQD2NV347MTSFO8MECHODX6OX3LCKIQELAOMQ7DVD6I1MJUWG5DI8TC1OL4JMGJOCY7J4GAOY5SXNBLF39REZQYP7IW5G8943QQD6FICJWBSHO8Y7Z745UXJIWZ4WPB3TB4355UP4O0EU6WFSMPUNJK8GN8FJHCQTOKTCNZA6L77JMNUMIP70QM525H815U7YH3JPXJ4NDH1YAVKR9OYRKDKN64843DGKW7HDN1KOGG2I41G8K2AKRWTFR69HC3WHZEX0MQ7YNQF5RVIDFH503388FLJVM778DTR23754Y62EAX9OBY10YDWHRHRQQDR5NQX9A07T9ZLZ9AI59WFEUM2GQAH1ZA9ELZB3OW7LB961300QVUOYAJWWMMRFOFGX6QYTB4IBM3PACQCJSFTK4K3YRUS5R} # valid repository type options {1 = inMemoryStore, 2 = NativeStore, 3 = AllegroGraph, 4 = graphDB, 5 = blazegraph} repository: - type: 1 + type: ${FDP_TRIPLE_STORE_TYPE:1} native: - dir: /tmp/fdp-store/ + dir: ${FDP_TRIPLE_STORE_DIR:/tmp/fdp-store/} agraph: - url: http://localhost:10035/repositories/fdp - username: user - password: password + url: ${FDP_TRIPLE_STORE_URL:http://localhost:10035/repositories/fdp} + username: ${FDP_TRIPLE_STORE_USERNAME:user} + password: ${FDP_TRIPLE_STORE_PASSWORD:password} graphDb: - url: http://localhost:7200 - repository: test + url: ${FDP_TRIPLE_STORE_URL:http://localhost:7200} + repository: ${FDP_TRIPLE_STORE_REPOSITORY:test} + username: ${FDP_TRIPLE_STORE_USERNAME:user} + password: ${FDP_TRIPLE_STORE_PASSWORD:password} blazegraph: - url: http://localhost:8888/blazegraph - repository: + url: ${FDP_TRIPLE_STORE_URL:http://localhost:8888/blazegraph} + repository: ${FDP_TRIPLE_STORE_REPOSITORY:test} metadataProperties: - language: http://id.loc.gov/vocabulary/iso639-1/en - license: http://rdflicense.appspot.com/rdflicense/cc-by-nc-nd3.0 - accessRightsDescription: This resource has no access restriction + language: ${FDP_METADATA_LANGUAGE:http://id.loc.gov/vocabulary/iso639-1/en} + license: ${FDP_METADATA_LICENSE:http://rdflicense.appspot.com/rdflicense/cc-by-nc-nd3.0} + accessRightsDescription: ${FDP_METADATA_ACCESS_RIGHTS:This resource has no access restriction} openapi: title: FAIR Data Point API - version: 1.16.2 + version: 1.17.0 description: "The reference implementation of the metadata registration service: A service implementing the API specification. It contains an authentication system to allow maintainers to define and update metadata. Read-only access to the data is public." contact: name: Luiz Bonino - email: luiz.bonino@go-fair.org + email: l.o.boninodasilvasantos@utwente.nl url: https://github.com/FAIRDataTeam/FAIRDataPoint springdoc: + writer-with-default-pretty-printer: true swagger-ui: disable-swagger-default-url: true operationsSorter: alpha diff --git a/src/test/java/nl/dtls/fairdatapoint/acceptance/actuator/ActuatorInfoDTO.java b/src/test/java/nl/dtls/fairdatapoint/acceptance/actuator/ActuatorInfoDTO.java index a595bc9f6..dc179735d 100644 --- a/src/test/java/nl/dtls/fairdatapoint/acceptance/actuator/ActuatorInfoDTO.java +++ b/src/test/java/nl/dtls/fairdatapoint/acceptance/actuator/ActuatorInfoDTO.java @@ -23,14 +23,13 @@ package nl.dtls.fairdatapoint.acceptance.actuator; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotNull; import lombok.AllArgsConstructor; import lombok.Getter; import lombok.NoArgsConstructor; import lombok.Setter; -import javax.validation.constraints.NotBlank; -import javax.validation.constraints.NotNull; - @NoArgsConstructor @AllArgsConstructor @Getter diff --git a/src/test/java/nl/dtls/fairdatapoint/acceptance/index/admin/List_Trigger_POST.java b/src/test/java/nl/dtls/fairdatapoint/acceptance/index/admin/List_Trigger_POST.java index 651036181..9c81a0262 100644 --- a/src/test/java/nl/dtls/fairdatapoint/acceptance/index/admin/List_Trigger_POST.java +++ b/src/test/java/nl/dtls/fairdatapoint/acceptance/index/admin/List_Trigger_POST.java @@ -130,7 +130,7 @@ public void res403_nonAdminToken() { @Test @DisplayName("HTTP 400: malformed URL") - public void res403_malformedUrl() { + public void res400_malformedUrl() { // GIVEN: prepare data String clientUrl = "http://example.com"; PingDTO reqDTO = reqDTO(clientUrl); diff --git a/src/test/java/nl/dtls/fairdatapoint/utils/HttpUtilTest.java b/src/test/java/nl/dtls/fairdatapoint/utils/HttpUtilTest.java index b53ed0484..e5bb2fc6f 100644 --- a/src/test/java/nl/dtls/fairdatapoint/utils/HttpUtilTest.java +++ b/src/test/java/nl/dtls/fairdatapoint/utils/HttpUtilTest.java @@ -22,13 +22,12 @@ */ package nl.dtls.fairdatapoint.utils; +import jakarta.servlet.http.HttpServletRequest; import org.eclipse.rdf4j.model.IRI; import org.junit.jupiter.api.Test; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.CsvSource; -import javax.servlet.http.HttpServletRequest; - import static nl.dtls.fairdatapoint.util.HttpUtil.*; import static org.hamcrest.MatcherAssert.assertThat; import static org.hamcrest.core.Is.is;