From 8f6426eaf65f30a6bca2b0f5c68a31e030c11b07 Mon Sep 17 00:00:00 2001 From: LSmyrnaios Date: Thu, 1 Jun 2023 20:48:01 +0300 Subject: [PATCH] - Upgrade Spring and other dependencies. - Migrate to SpringDoc, since SpringFox is dead. --- README.md | 2 +- pom.xml | 58 ++++++++++++++----- .../config/AaiSecurityConfiguration.java | 1 + .../manager/config/OpenAPIConfiguration.java | 23 ++++++++ .../repo/manager/config/SwaggerConfig.java | 47 --------------- .../manager/controllers/BrokerController.java | 10 ++-- .../controllers/DashboardController.java | 4 +- .../controllers/MonitorController.java | 20 +++---- .../manager/controllers/PiWikController.java | 32 +++++----- .../controllers/RepositoryController.java | 4 +- .../manager/controllers/StatsController.java | 4 +- .../controllers/SushiliteController.java | 4 +- .../controllers/SushiliteR5Controller.java | 4 +- .../manager/controllers/UserController.java | 4 +- .../controllers/ValidatorController.java | 18 +++--- src/main/resources/application.yml | 14 ++++- 16 files changed, 131 insertions(+), 118 deletions(-) create mode 100644 src/main/java/eu/dnetlib/repo/manager/config/OpenAPIConfiguration.java delete mode 100644 src/main/java/eu/dnetlib/repo/manager/config/SwaggerConfig.java diff --git a/README.md b/README.md index 41091f1..b96ac5b 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# Provide +# uoa-repository-manager-service (Provide backend) [...] diff --git a/pom.xml b/pom.xml index d9a5b89..d100753 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ org.springframework.boot spring-boot-starter-parent - 2.5.4 + 2.7.12 4.0.0 @@ -16,13 +16,14 @@ jar - 2.5.4 + 2.7.12 org.springframework.boot spring-boot-starter-web + ${spring.boot.version} org.springframework.boot @@ -33,35 +34,44 @@ org.springframework.boot spring-boot-starter-log4j2 + ${spring.boot.version} org.springframework.boot spring-boot-starter-data-jdbc + ${spring.boot.version} org.springframework.boot spring-boot-starter-data-jpa + ${spring.boot.version} org.springframework.boot spring-boot-actuator-autoconfigure + ${spring.boot.version} org.springframework.boot spring-boot-starter-data-redis + ${spring.boot.version} org.springframework.boot spring-boot-starter-validation + ${spring.boot.version} org.springframework.boot spring-boot-starter-test + ${spring.boot.version} test + com.h2database h2 + 2.1.214 @@ -144,13 +154,13 @@ cglib cglib-nodep - 2.2 + 2.2.2 commons-io commons-io - 2.4 + 2.12.0 @@ -158,10 +168,12 @@ oai4j [0.6b1,) + + xalan xalan - 2.7.2 + 2.7.3 @@ -170,11 +182,14 @@ 1.19.3 + + org.aksw.gson gson-utils-core 1.0.1 + org.json json @@ -188,14 +203,26 @@ - io.springfox - springfox-swagger2 - 2.7.0 + org.springdoc + springdoc-openapi-webmvc-core + 1.7.0 - io.springfox - springfox-swagger-ui - 2.7.0 + org.springdoc + springdoc-openapi-ui + 1.7.0 + + + org.springdoc + springdoc-openapi-security + 1.7.0 + + + + + org.webjars + webjars-locator-core + 0.52 @@ -208,13 +235,13 @@ commons-fileupload commons-fileupload - 1.4 + 1.5 org.mitre openid-connect-client - 1.3.0 + 1.3.4 org.slf4j @@ -225,13 +252,14 @@ org.springframework.session spring-session-data-redis + 2.7.1 redis.clients jedis - ${jedis.version} + ${jedis.version} @@ -281,7 +309,7 @@ javax.activation activation - 1.1-rev-1 + 1.1.1 diff --git a/src/main/java/eu/dnetlib/repo/manager/config/AaiSecurityConfiguration.java b/src/main/java/eu/dnetlib/repo/manager/config/AaiSecurityConfiguration.java index 0782850..65934fe 100644 --- a/src/main/java/eu/dnetlib/repo/manager/config/AaiSecurityConfiguration.java +++ b/src/main/java/eu/dnetlib/repo/manager/config/AaiSecurityConfiguration.java @@ -64,6 +64,7 @@ public class AaiSecurityConfiguration extends WebSecurityConfigurerAdapter { .authorizeRequests() .regexMatchers("/actuator/.*").permitAll() .regexMatchers("/metrics").permitAll() + .antMatchers("/v3/api-docs/**","/swagger-ui/**").permitAll() .anyRequest().authenticated() .and() .logout().logoutUrl("/openid_logout") diff --git a/src/main/java/eu/dnetlib/repo/manager/config/OpenAPIConfiguration.java b/src/main/java/eu/dnetlib/repo/manager/config/OpenAPIConfiguration.java new file mode 100644 index 0000000..809b286 --- /dev/null +++ b/src/main/java/eu/dnetlib/repo/manager/config/OpenAPIConfiguration.java @@ -0,0 +1,23 @@ +package eu.dnetlib.repo.manager.config; + + +import io.swagger.v3.oas.annotations.OpenAPIDefinition; +import io.swagger.v3.oas.annotations.info.Contact; +import io.swagger.v3.oas.annotations.info.Info; +import io.swagger.v3.oas.annotations.info.License; + +@OpenAPIDefinition( + info = @Info( + title = "Repository Manager Dashboard API Documentation", + description = "Repository Manager Dashboard API Documentation", + version = "1.0", + termsOfService = "urn:tos", + license = @License( + name = "Apache 2.0", + url = "https://www.apache.org/licenses/LICENSE-2.0.html" + ), + contact = @Contact(name = "", url = "", email = "") + ) +) +public class OpenAPIConfiguration { +} diff --git a/src/main/java/eu/dnetlib/repo/manager/config/SwaggerConfig.java b/src/main/java/eu/dnetlib/repo/manager/config/SwaggerConfig.java deleted file mode 100644 index 9e4893b..0000000 --- a/src/main/java/eu/dnetlib/repo/manager/config/SwaggerConfig.java +++ /dev/null @@ -1,47 +0,0 @@ -package eu.dnetlib.repo.manager.config; - -import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; -import org.springframework.web.servlet.config.annotation.EnableWebMvc; -import springfox.documentation.builders.PathSelectors; -import springfox.documentation.builders.RequestHandlerSelectors; -import springfox.documentation.service.ApiInfo; -import springfox.documentation.service.Contact; -import springfox.documentation.service.VendorExtension; -import springfox.documentation.spi.DocumentationType; -import springfox.documentation.spring.web.plugins.Docket; -import springfox.documentation.swagger2.annotations.EnableSwagger2; - -import java.util.ArrayList; - - -/** - * Created by panagiotis on 16/11/2017. - */ -@Configuration -@EnableSwagger2 -@EnableWebMvc -public class SwaggerConfig { - - @Bean - public Docket productApi() { - return new Docket(DocumentationType.SWAGGER_2) - .select() - .apis(RequestHandlerSelectors.any()) - .paths(PathSelectors.any()) - .build() - .pathMapping("/") - .apiInfo(getApiInfo()); - } - - private ApiInfo getApiInfo() { - return new ApiInfo("Repository Manager Dashboard API Documentation", - "Repository Manager Dashboard API Documentation", - "1.0", - "urn:tos", - new Contact("", "", ""), - "Apache 2.0", "http://www.apache.org/licenses/LICENSE-2.0", - new ArrayList()); - } - -} diff --git a/src/main/java/eu/dnetlib/repo/manager/controllers/BrokerController.java b/src/main/java/eu/dnetlib/repo/manager/controllers/BrokerController.java index 187da9c..f96af01 100644 --- a/src/main/java/eu/dnetlib/repo/manager/controllers/BrokerController.java +++ b/src/main/java/eu/dnetlib/repo/manager/controllers/BrokerController.java @@ -4,8 +4,8 @@ import eu.dnetlib.repo.manager.domain.Term; import eu.dnetlib.repo.manager.domain.broker.*; import eu.dnetlib.repo.manager.exception.BrokerException; import eu.dnetlib.repo.manager.service.BrokerServiceImpl; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiParam; +import io.swagger.v3.oas.annotations.Parameter; +import io.swagger.v3.oas.annotations.tags.Tag; import org.json.JSONException; import org.mitre.openid.connect.model.OIDCAuthenticationToken; import org.springframework.beans.factory.annotation.Autowired; @@ -21,7 +21,7 @@ import java.util.Map; @RestController @RequestMapping(value = "/broker") -@Api(description = "Broker API", tags = {"broker"}) +@Tag(name="broker", description="Broker API") public class BrokerController{ @Autowired @@ -33,9 +33,9 @@ public class BrokerController{ @PreAuthorize("hasAuthority('REGISTERED_USER')") public DatasourcesBroker getDatasourcesOfUser( @RequestParam("includeShared") - @ApiParam(value = "Include shared datasources", required = true , defaultValue = "false") String includeShared, + @Parameter(description = "Include shared datasources (default = false)", required = true) String includeShared, @RequestParam("includeByOthers") - @ApiParam(value = "Include datasources of other", required = true,defaultValue = "false") String includeByOthers) throws JSONException { + @Parameter(description = "Include datasources of other (default = false)", required = true) String includeByOthers) throws JSONException { return brokerService.getDatasourcesOfUser(((OIDCAuthenticationToken) SecurityContextHolder.getContext().getAuthentication()).getUserInfo().getEmail(), includeShared, includeByOthers); } diff --git a/src/main/java/eu/dnetlib/repo/manager/controllers/DashboardController.java b/src/main/java/eu/dnetlib/repo/manager/controllers/DashboardController.java index 3fd6650..5a1d7fb 100644 --- a/src/main/java/eu/dnetlib/repo/manager/controllers/DashboardController.java +++ b/src/main/java/eu/dnetlib/repo/manager/controllers/DashboardController.java @@ -8,7 +8,7 @@ import eu.dnetlib.repo.manager.domain.UsageSummary; import eu.dnetlib.repo.manager.exception.BrokerException; import eu.dnetlib.repo.manager.exception.RepositoryServiceException; import eu.dnetlib.repo.manager.service.*; -import io.swagger.annotations.Api; +import io.swagger.v3.oas.annotations.tags.Tag; import org.json.JSONException; import org.mitre.openid.connect.model.OIDCAuthenticationToken; import org.springframework.beans.factory.annotation.Autowired; @@ -21,7 +21,7 @@ import java.util.List; @RestController @RequestMapping(value = "/dashboard") -@Api(description = "Dashboard API", tags = {"dashboard"}) +@Tag(name="dashboard", description = "Dashboard API") public class DashboardController { @Autowired diff --git a/src/main/java/eu/dnetlib/repo/manager/controllers/MonitorController.java b/src/main/java/eu/dnetlib/repo/manager/controllers/MonitorController.java index 69b04db..db24ca6 100644 --- a/src/main/java/eu/dnetlib/repo/manager/controllers/MonitorController.java +++ b/src/main/java/eu/dnetlib/repo/manager/controllers/MonitorController.java @@ -4,8 +4,8 @@ import eu.dnetlib.api.functionality.ValidatorServiceException; import eu.dnetlib.domain.functionality.validator.StoredJob; import eu.dnetlib.repo.manager.domain.JobsOfUser; import eu.dnetlib.repo.manager.service.MonitorServiceImpl; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiParam; +import io.swagger.v3.oas.annotations.Parameter; +import io.swagger.v3.oas.annotations.tags.Tag; import org.json.JSONException; import org.mitre.openid.connect.model.OIDCAuthenticationToken; import org.slf4j.Logger; @@ -18,7 +18,7 @@ import org.springframework.web.bind.annotation.*; @RestController @RequestMapping(value = "/monitor") -@Api(description = "Monitor API", tags = {"monitor"}) +@Tag(name="monitor", description="Monitor API") public class MonitorController { private static final Logger logger = LoggerFactory.getLogger(MonitorController.class); @@ -31,13 +31,13 @@ public class MonitorController { @ResponseBody @PreAuthorize("hasAuthority('REGISTERED_USER')") public JobsOfUser getJobsOfUser(@RequestParam(value = "jobType", required = false) - @ApiParam(value = "Equals to filter job type on validation history page") String jobType, - @RequestParam("offset") @ApiParam(value = "Page number", required = true) String offset, - @RequestParam(value = "limit", required = false,defaultValue = "10") @ApiParam(value = "Null value") String limit, - @RequestParam(value = "dateFrom", required = false) @ApiParam(value = "Null value") String dateFrom, - @RequestParam(value = "dateTo", required = false) @ApiParam(value = "Null value") String dateTo, - @RequestParam("validationStatus") @ApiParam(value = "Equals to filter validation jobs", required = false) String validationStatus, - @RequestParam("includeJobsTotal") @ApiParam(value = "Always true", required = true) String includeJobsTotal) throws JSONException, ValidatorServiceException { + @Parameter(description = "Equals to filter job type on validation history page") String jobType, + @RequestParam("offset") @Parameter(name = "Page number", required = true) String offset, + @RequestParam(value = "limit", required = false,defaultValue = "10") @Parameter(description = "Null value") String limit, + @RequestParam(value = "dateFrom", required = false) @Parameter(description = "Null value") String dateFrom, + @RequestParam(value = "dateTo", required = false) @Parameter(description = "Null value") String dateTo, + @RequestParam("validationStatus") @Parameter(description = "Equals to filter validation jobs", required = false) String validationStatus, + @RequestParam("includeJobsTotal") @Parameter(description = "Always true", required = true) String includeJobsTotal) throws JSONException, ValidatorServiceException { return monitorService.getJobsOfUser(((OIDCAuthenticationToken) SecurityContextHolder.getContext().getAuthentication()).getUserInfo().getEmail(), jobType, offset, limit, dateFrom, dateTo, validationStatus, includeJobsTotal); } diff --git a/src/main/java/eu/dnetlib/repo/manager/controllers/PiWikController.java b/src/main/java/eu/dnetlib/repo/manager/controllers/PiWikController.java index d7edf52..a27ecc5 100644 --- a/src/main/java/eu/dnetlib/repo/manager/controllers/PiWikController.java +++ b/src/main/java/eu/dnetlib/repo/manager/controllers/PiWikController.java @@ -6,9 +6,9 @@ import eu.dnetlib.repo.manager.domain.OrderByType; import eu.dnetlib.repo.manager.domain.Paging; import eu.dnetlib.repo.manager.exception.RepositoryServiceException; import eu.dnetlib.repo.manager.service.PiWikServiceImpl; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiImplicitParam; -import io.swagger.annotations.ApiImplicitParams; +import io.swagger.v3.oas.annotations.Parameter; +import io.swagger.v3.oas.annotations.Parameters; +import io.swagger.v3.oas.annotations.tags.Tag; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; @@ -31,7 +31,7 @@ import java.util.List; @RestController @RequestMapping(value = "/piwik") -@Api(description = "Piwik API", tags = {"piwik"}) +@Tag(name="piwik", description = "Piwik API") public class PiWikController { private static final Logger logger = LoggerFactory.getLogger(PiWikController.class); @@ -53,12 +53,12 @@ public class PiWikController { } @RequestMapping(value = "/getPiwikSitesForRepos" , method = RequestMethod.GET,produces = MediaType.APPLICATION_JSON_VALUE) - @ApiImplicitParams({ - @ApiImplicitParam(name = "from", dataType = "number", paramType = "query"), - @ApiImplicitParam(name = "quantity", dataType = "number", paramType = "query"), - @ApiImplicitParam(name = "order", dataType = "eu.dnetlib.repo.manager.domain.OrderByType", paramType = "query"), - @ApiImplicitParam(name = "orderField", dataType = "eu.dnetlib.repo.manager.domain.OrderByField", paramType = "query"), - @ApiImplicitParam(name = "searchField", dataType = "string", paramType = "query"), + @Parameters({ + @Parameter(name = "from", description = "number"), + @Parameter(name = "quantity", description = "number"), + @Parameter(name = "order", description = "eu.dnetlib.repo.manager.domain.OrderByType"), + @Parameter(name = "orderField", description = "eu.dnetlib.repo.manager.domain.OrderByField"), + @Parameter(name = "searchField", description = "string") }) public Paging getPiwikSitesForRepos( @RequestParam(value = "from",required=false,defaultValue = "0") int from, @@ -77,12 +77,12 @@ public class PiWikController { return results; } - @ApiImplicitParams({ - @ApiImplicitParam(name = "from", dataType = "number", paramType = "query"), - @ApiImplicitParam(name = "quantity", dataType = "number", paramType = "query"), - @ApiImplicitParam(name = "order", dataType = "eu.dnetlib.repo.manager.domain.OrderByType", paramType = "query"), - @ApiImplicitParam(name = "searchField", dataType = "eu.dnetlib.repo.manager.domain.OrderByField", paramType = "query"), - @ApiImplicitParam(name = "orderField", dataType = "string", paramType = "query"), + @Parameters({ + @Parameter(name = "from", description = "number"), + @Parameter(name = "quantity", description = "number"), + @Parameter(name = "order", description = "eu.dnetlib.repo.manager.domain.OrderByType"), + @Parameter(name = "searchField", description = "eu.dnetlib.repo.manager.domain.OrderByField"), + @Parameter(name = "orderField", description = "string") }) @RequestMapping(value = "/getPiwikSitesForRepos/csv" , method = RequestMethod.GET,produces = MediaType.APPLICATION_OCTET_STREAM_VALUE) @ResponseBody diff --git a/src/main/java/eu/dnetlib/repo/manager/controllers/RepositoryController.java b/src/main/java/eu/dnetlib/repo/manager/controllers/RepositoryController.java index 7712547..5702eb2 100644 --- a/src/main/java/eu/dnetlib/repo/manager/controllers/RepositoryController.java +++ b/src/main/java/eu/dnetlib/repo/manager/controllers/RepositoryController.java @@ -10,7 +10,7 @@ import eu.dnetlib.repo.manager.service.AggregationService; import eu.dnetlib.repo.manager.service.RepositoryService; import eu.dnetlib.repo.manager.service.security.AuthorizationService; import eu.dnetlib.repo.manager.utils.JsonUtils; -import io.swagger.annotations.Api; +import io.swagger.v3.oas.annotations.tags.Tag; import org.json.JSONException; import org.mitre.openid.connect.model.OIDCAuthenticationToken; import org.slf4j.Logger; @@ -32,7 +32,7 @@ import java.util.Map; @RestController @RequestMapping(value = "/repositories") -@Api(description = "Repository API", tags = {"repositories"}) +@Tag(name="repositories", description="Repository API") public class RepositoryController { private static final Logger logger = LoggerFactory.getLogger(RepositoryController.class); diff --git a/src/main/java/eu/dnetlib/repo/manager/controllers/StatsController.java b/src/main/java/eu/dnetlib/repo/manager/controllers/StatsController.java index 1cfd6a2..916b066 100644 --- a/src/main/java/eu/dnetlib/repo/manager/controllers/StatsController.java +++ b/src/main/java/eu/dnetlib/repo/manager/controllers/StatsController.java @@ -1,7 +1,7 @@ package eu.dnetlib.repo.manager.controllers; import eu.dnetlib.repo.manager.service.StatsServiceImpl; -import io.swagger.annotations.Api; +import io.swagger.v3.oas.annotations.tags.Tag; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.MediaType; import org.springframework.web.bind.annotation.RequestMapping; @@ -13,7 +13,7 @@ import java.util.Map; @RestController @RequestMapping(value = "/stats") -@Api(description = "Stats API", tags = {"statistics"}) +@Tag(name="statistics", description = "Stats API") public class StatsController { @Autowired diff --git a/src/main/java/eu/dnetlib/repo/manager/controllers/SushiliteController.java b/src/main/java/eu/dnetlib/repo/manager/controllers/SushiliteController.java index 7c3b292..039c335 100644 --- a/src/main/java/eu/dnetlib/repo/manager/controllers/SushiliteController.java +++ b/src/main/java/eu/dnetlib/repo/manager/controllers/SushiliteController.java @@ -2,7 +2,7 @@ package eu.dnetlib.repo.manager.controllers; import eu.dnetlib.repo.manager.service.sushilite.SushiliteServiceImpl; import eu.dnetlib.usagestats.sushilite.domain.ReportResponseWrapper; -import io.swagger.annotations.Api; +import io.swagger.v3.oas.annotations.tags.Tag; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.MediaType; import org.springframework.security.access.prepost.PreAuthorize; @@ -10,7 +10,7 @@ import org.springframework.web.bind.annotation.*; @RestController @RequestMapping(value = "/sushilite") -@Api(description = "Sushi-Lite API", tags = {"sushilite"}) +@Tag(name="sushilite", description = "Sushi-Lite API") public class SushiliteController { diff --git a/src/main/java/eu/dnetlib/repo/manager/controllers/SushiliteR5Controller.java b/src/main/java/eu/dnetlib/repo/manager/controllers/SushiliteR5Controller.java index e57ff35..4288a36 100644 --- a/src/main/java/eu/dnetlib/repo/manager/controllers/SushiliteR5Controller.java +++ b/src/main/java/eu/dnetlib/repo/manager/controllers/SushiliteR5Controller.java @@ -2,7 +2,7 @@ package eu.dnetlib.repo.manager.controllers; import eu.dnetlib.repo.manager.service.sushilite.SushiliteR5Service; import eu.dnetlib.repo.manager.service.sushilite.SushiliteR5ServiceImpl; -import io.swagger.annotations.Api; +import io.swagger.v3.oas.annotations.tags.Tag; import org.json.JSONException; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -17,7 +17,7 @@ import java.util.List; @RestController @RequestMapping(value = "/sushiliteR5") -@Api(description = "Sushi-Lite R5 API", tags = {"sushiliteR5"}) +@Tag(name="sushiliteR5", description = "Sushi-Lite R5 API") public class SushiliteR5Controller { diff --git a/src/main/java/eu/dnetlib/repo/manager/controllers/UserController.java b/src/main/java/eu/dnetlib/repo/manager/controllers/UserController.java index 08e2119..f93de82 100644 --- a/src/main/java/eu/dnetlib/repo/manager/controllers/UserController.java +++ b/src/main/java/eu/dnetlib/repo/manager/controllers/UserController.java @@ -1,7 +1,7 @@ package eu.dnetlib.repo.manager.controllers; import eu.dnetlib.repo.manager.service.UserServiceImpl; -import io.swagger.annotations.Api; +import io.swagger.v3.oas.annotations.tags.Tag; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.ResponseEntity; import org.springframework.security.access.prepost.PreAuthorize; @@ -11,7 +11,7 @@ import org.springframework.web.bind.annotation.RestController; @RestController @RequestMapping(value = "/user") -@Api(description = "User API", tags = {"user"}) +@Tag(name="user", description = "User API") public class UserController { @Autowired diff --git a/src/main/java/eu/dnetlib/repo/manager/controllers/ValidatorController.java b/src/main/java/eu/dnetlib/repo/manager/controllers/ValidatorController.java index f94d860..df23d7f 100644 --- a/src/main/java/eu/dnetlib/repo/manager/controllers/ValidatorController.java +++ b/src/main/java/eu/dnetlib/repo/manager/controllers/ValidatorController.java @@ -9,8 +9,8 @@ import eu.dnetlib.repo.manager.exception.ResourceNotFoundException; import eu.dnetlib.repo.manager.exception.ValidationServiceException; import eu.dnetlib.repo.manager.service.EmailUtils; import eu.dnetlib.repo.manager.service.ValidatorServiceImpl; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiParam; +import io.swagger.v3.oas.annotations.Parameter; +import io.swagger.v3.oas.annotations.tags.Tag; import org.json.JSONException; import org.mitre.openid.connect.model.OIDCAuthenticationToken; import org.springframework.beans.factory.annotation.Autowired; @@ -25,7 +25,7 @@ import java.util.List; @RestController @RequestMapping(value = "/validator") -@Api(description = "Validator API", tags = {"validator"}) +@Tag(name="validator", description = "Validator API") public class ValidatorController { @Autowired @@ -80,12 +80,12 @@ public class ValidatorController { @ResponseBody @PreAuthorize("hasAuthority('REGISTERED_USER')") public List getStoredJobsNew(@RequestParam(value = "jobType", required = false) - @ApiParam(value = "Equals to filter job type on validation history page") String jobType, - @RequestParam("offset") @ApiParam(value = "Page number", required = true) String offset, - @RequestParam(value = "limit", required = false,defaultValue = "10") @ApiParam(value = "Null value") String limit, - @RequestParam(value = "dateFrom", required = false) @ApiParam(value = "Null value") String dateFrom, - @RequestParam(value = "dateTo", required = false) @ApiParam(value = "Null value") String dateTo, - @RequestParam("validationStatus") @ApiParam(value = "Equals to filter validation jobs", required = true) String validationStatus + @Parameter(description = "Equals to filter job type on validation history page") String jobType, + @RequestParam("offset") @Parameter(description = "Page number", required = true) String offset, + @RequestParam(value = "limit", required = false,defaultValue = "10") @Parameter(description = "Null value") String limit, + @RequestParam(value = "dateFrom", required = false) @Parameter(description = "Null value") String dateFrom, + @RequestParam(value = "dateTo", required = false) @Parameter(description = "Null value") String dateTo, + @RequestParam("validationStatus") @Parameter(description = "Equals to filter validation jobs", required = true) String validationStatus ) throws ValidatorServiceException { return validatorService.getStoredJobsNew(((OIDCAuthenticationToken) SecurityContextHolder.getContext().getAuthentication()).getUserInfo().getEmail(), jobType, offset, limit, dateFrom, dateTo, validationStatus); } diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index 23faeb0..84a7eb8 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -1,6 +1,14 @@ -springdoc.swagger-ui: - disable-swagger-default-url: true - version: 3 +server: + port: 8480 + servlet: + context-path: /uoa-repository-manager-service + +springdoc: + swagger-ui: + disable-swagger-default-url: true + path: /swagger-ui.html + api-docs: + path: /api-docs spring: jpa: