diff --git a/build.gradle b/build.gradle index 33d9f5a71e90ad58d9215ba09fe2f9cc95408142..0c95cf8745a24e525db09980943c34e69a8a833a 100644 --- a/build.gradle +++ b/build.gradle @@ -35,7 +35,7 @@ plugins { id "com.github.spotbugs" version "${spotbugsVersion}" id "com.star-zero.gradle.githook" version "${githooksVersion}" id "eclipse-wtp" - id "io.micronaut.application" version "${mnPluginVersion}" + id "io.micronaut.application" version "${micronautPluginVersion}" id "jacoco" id "maven-publish" } diff --git a/gradle.properties b/gradle.properties index ebd77a7e18d5ddf40d398189369608f02503d2e5..7961ce99a669dfb81ce4e8e6e8436fb2e4b3b9d3 100644 --- a/gradle.properties +++ b/gradle.properties @@ -5,13 +5,14 @@ awsS3Version = 1.11.579 githooksVersion = 1.2.0 jacksonVersion = 2.9.0 junitVersion = 5.8.2 -micronautVersion = 2.4.1 -mnPluginVersion = 1.4.2 +micronautVersion = 3.2.3 +micronautRxVersion = 2.1.1 +micronautPluginVersion = 3.1.1 nodePluginVersion = 3.0.1 nodeVersion = 16.3.0 nshmpLibVersion = 0.8.2 nshmpWsUtilsVersion = 0.1.3 -shadowVersion = 7.1.1 +shadowVersion = 7.1.2 spotbugsVersion = 4.7.0 spotlessVersion = 6.0.4 swaggerVersion = 2.1.7 diff --git a/gradle/dependencies.gradle b/gradle/dependencies.gradle index 8ec554bae75525d3c8e22e85ab8e6aa0a0fd7dde..2a81e3a09e2c2fb9f3dfbaa7a03a4c847efc020d 100644 --- a/gradle/dependencies.gradle +++ b/gradle/dependencies.gradle @@ -20,11 +20,13 @@ dependencies { implementation "io.micronaut:micronaut-validation" implementation "io.micronaut:micronaut-runtime" implementation "io.micronaut:micronaut-http-server-netty" + implementation "io.projectreactor:reactor-core" + implementation "io.micronaut.rxjava3:micronaut-rxjava3:${micronautRxVersion}" implementation "com.fasterxml.jackson.module:jackson-module-parameter-names:${jacksonVersion}" runtimeOnly "ch.qos.logback:logback-classic" // Swagger - annotationProcessor("io.micronaut.configuration:micronaut-openapi") + annotationProcessor("io.micronaut.openapi:micronaut-openapi") implementation("io.swagger.core.v3:swagger-annotations") implementation("io.swagger.core.v3:swagger-models") diff --git a/src/main/java/gov/usgs/earthquake/nshmp/www/HazardController.java b/src/main/java/gov/usgs/earthquake/nshmp/www/HazardController.java index a655b9fa49e768556e09d7f94ed31805ec4215cc..fdc74747815374a10fb5977cf022ceb16a05319a 100644 --- a/src/main/java/gov/usgs/earthquake/nshmp/www/HazardController.java +++ b/src/main/java/gov/usgs/earthquake/nshmp/www/HazardController.java @@ -1,7 +1,5 @@ package gov.usgs.earthquake.nshmp.www; -import javax.inject.Inject; - import gov.usgs.earthquake.nshmp.www.services.HazardService; import gov.usgs.earthquake.nshmp.www.services.HazardService.QueryParameters; @@ -15,6 +13,7 @@ import io.swagger.v3.oas.annotations.Operation; 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.inject.Inject; /** * Micronaut controller for probabilistic seismic hazard calculations. diff --git a/src/main/java/gov/usgs/earthquake/nshmp/www/RateController.java b/src/main/java/gov/usgs/earthquake/nshmp/www/RateController.java index 7dda0228dcf43b5082c526c3a700eb64a4e5f499..df15c1fdeb68712fe60169d4310be79e947482de 100644 --- a/src/main/java/gov/usgs/earthquake/nshmp/www/RateController.java +++ b/src/main/java/gov/usgs/earthquake/nshmp/www/RateController.java @@ -2,8 +2,6 @@ package gov.usgs.earthquake.nshmp.www; import java.util.Optional; -import javax.inject.Inject; - import gov.usgs.earthquake.nshmp.www.services.RateService; import gov.usgs.earthquake.nshmp.www.services.RateService.Query; import gov.usgs.earthquake.nshmp.www.services.RateService.Service; @@ -19,6 +17,7 @@ import io.micronaut.http.annotation.QueryValue; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.responses.ApiResponse; +import jakarta.inject.Inject; /** * Micronaut controller for rate and probability services. diff --git a/src/main/java/gov/usgs/earthquake/nshmp/www/SourceController.java b/src/main/java/gov/usgs/earthquake/nshmp/www/SourceController.java index b5713e6d59e1658338acb17c1c6437c2a00b8d4a..3c86ffe988cd66edea5179ef4cc64be0d0bbc54f 100644 --- a/src/main/java/gov/usgs/earthquake/nshmp/www/SourceController.java +++ b/src/main/java/gov/usgs/earthquake/nshmp/www/SourceController.java @@ -1,7 +1,5 @@ package gov.usgs.earthquake.nshmp.www; -import javax.inject.Inject; - import gov.usgs.earthquake.nshmp.www.services.SourceServices; import io.micronaut.http.HttpRequest; @@ -12,6 +10,7 @@ import io.micronaut.http.annotation.Get; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.responses.ApiResponse; import io.swagger.v3.oas.annotations.tags.Tag; +import jakarta.inject.Inject; /** * Source model service to return the current installed model. diff --git a/src/main/java/gov/usgs/earthquake/nshmp/www/SourceLogicTreesController.java b/src/main/java/gov/usgs/earthquake/nshmp/www/SourceLogicTreesController.java index 0e5aeba64c8f813b5ce7f1abacc8e87c53dc7746..7fe44c003dfce73020bbea90b956299703103535 100644 --- a/src/main/java/gov/usgs/earthquake/nshmp/www/SourceLogicTreesController.java +++ b/src/main/java/gov/usgs/earthquake/nshmp/www/SourceLogicTreesController.java @@ -1,7 +1,5 @@ package gov.usgs.earthquake.nshmp.www; -import javax.inject.Inject; - import gov.usgs.earthquake.nshmp.www.services.SourceLogicTreesService; import io.micronaut.http.HttpRequest; @@ -12,6 +10,7 @@ import io.micronaut.http.annotation.PathVariable; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.responses.ApiResponse; import io.swagger.v3.oas.annotations.tags.Tag; +import jakarta.inject.Inject; /** * Micronaut controller for NSHM source logic trees. diff --git a/src/main/java/gov/usgs/earthquake/nshmp/www/SwaggerController.java b/src/main/java/gov/usgs/earthquake/nshmp/www/SwaggerController.java index 3df816b6c49bd00564a50906076369887e0e8f37..c2251caba5d3ed3612ed43e1aa8ca14404f7f381 100644 --- a/src/main/java/gov/usgs/earthquake/nshmp/www/SwaggerController.java +++ b/src/main/java/gov/usgs/earthquake/nshmp/www/SwaggerController.java @@ -3,8 +3,6 @@ package gov.usgs.earthquake.nshmp.www; import java.nio.charset.StandardCharsets; import java.util.stream.Collectors; -import javax.inject.Inject; - import com.google.common.io.Resources; import gov.usgs.earthquake.nshmp.www.services.ServicesUtil; @@ -16,6 +14,7 @@ import io.micronaut.http.annotation.Controller; import io.micronaut.http.annotation.Get; import io.swagger.v3.oas.annotations.Hidden; import io.swagger.v3.oas.annotations.tags.Tag; +import jakarta.inject.Inject; /** * Expose OpenAPI YAML file. diff --git a/src/main/java/gov/usgs/earthquake/nshmp/www/services/HazardService.java b/src/main/java/gov/usgs/earthquake/nshmp/www/services/HazardService.java index 356b1ff6f83a02479b551e42adf4dc650c6adeb5..32468d63800dcfd4989430a8b607ecfa65e62ef3 100644 --- a/src/main/java/gov/usgs/earthquake/nshmp/www/services/HazardService.java +++ b/src/main/java/gov/usgs/earthquake/nshmp/www/services/HazardService.java @@ -11,8 +11,6 @@ import java.util.Map; import java.util.concurrent.ExecutionException; import java.util.function.Function; -import javax.inject.Singleton; - import com.google.common.base.Stopwatch; import gov.usgs.earthquake.nshmp.calc.CalcConfig; @@ -38,6 +36,7 @@ import gov.usgs.earthquake.nshmp.www.services.SourceServices.SourceModel; import io.micronaut.http.HttpRequest; import io.micronaut.http.HttpResponse; +import jakarta.inject.Singleton; /** * Probabilistic seismic hazard calculation handler for diff --git a/src/main/java/gov/usgs/earthquake/nshmp/www/services/HazardService2.java b/src/main/java/gov/usgs/earthquake/nshmp/www/services/HazardService2.java index ca235f7f9d0657cfe8be5715bdcdd7c76343cae5..3e58e39dd09e3a90e60e10be299ba559e66e3d04 100644 --- a/src/main/java/gov/usgs/earthquake/nshmp/www/services/HazardService2.java +++ b/src/main/java/gov/usgs/earthquake/nshmp/www/services/HazardService2.java @@ -11,8 +11,6 @@ import java.util.Map; import java.util.concurrent.ExecutionException; import java.util.function.Function; -import javax.inject.Singleton; - import com.google.common.base.Stopwatch; import gov.usgs.earthquake.nshmp.calc.CalcConfig; @@ -37,6 +35,7 @@ import gov.usgs.earthquake.nshmp.www.services.SourceServices.SourceModel; import io.micronaut.http.HttpRequest; import io.micronaut.http.HttpResponse; +import jakarta.inject.Singleton; /** * Probabilistic seismic hazard calculation handler for diff --git a/src/main/java/gov/usgs/earthquake/nshmp/www/services/RateService.java b/src/main/java/gov/usgs/earthquake/nshmp/www/services/RateService.java index ee29e210b48f1ad7fd0f5c1d5f08fe57cae0568f..e0772386ad74e3ec67898e042a095f92423431d7 100644 --- a/src/main/java/gov/usgs/earthquake/nshmp/www/services/RateService.java +++ b/src/main/java/gov/usgs/earthquake/nshmp/www/services/RateService.java @@ -6,8 +6,6 @@ import java.util.Optional; import java.util.concurrent.ExecutionException; import java.util.stream.Collectors; -import javax.inject.Singleton; - import com.google.common.base.Stopwatch; import com.google.common.util.concurrent.ListenableFuture; @@ -30,6 +28,7 @@ import gov.usgs.earthquake.nshmp.www.services.ServicesUtil.ServiceRequestData; import io.micronaut.http.HttpRequest; import io.micronaut.http.HttpResponse; +import jakarta.inject.Singleton; /** * Earthquake probability and rate calculation handler service for diff --git a/src/main/java/gov/usgs/earthquake/nshmp/www/services/ServletUtil.java b/src/main/java/gov/usgs/earthquake/nshmp/www/services/ServletUtil.java index 23e824d2ce62ef78d19989cdb7ac6adfee7bf914..81651afd7d44ac3d968008892b7e7d1dc03700eb 100644 --- a/src/main/java/gov/usgs/earthquake/nshmp/www/services/ServletUtil.java +++ b/src/main/java/gov/usgs/earthquake/nshmp/www/services/ServletUtil.java @@ -14,8 +14,6 @@ import java.util.HashMap; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; -import javax.inject.Singleton; - import com.google.common.util.concurrent.ListeningExecutorService; import com.google.common.util.concurrent.MoreExecutors; import com.google.gson.Gson; @@ -36,6 +34,7 @@ import io.micronaut.context.annotation.Value; import io.micronaut.context.event.ShutdownEvent; import io.micronaut.context.event.StartupEvent; import io.micronaut.runtime.event.annotation.EventListener; +import jakarta.inject.Singleton; /** * Micronaut controller utility objects and methods. diff --git a/src/main/java/gov/usgs/earthquake/nshmp/www/services/SourceLogicTreesService.java b/src/main/java/gov/usgs/earthquake/nshmp/www/services/SourceLogicTreesService.java index e867935c0f49265693851167a5746d49e483d9c1..823445be91ee7b52663a7445da3d05412b373a4a 100644 --- a/src/main/java/gov/usgs/earthquake/nshmp/www/services/SourceLogicTreesService.java +++ b/src/main/java/gov/usgs/earthquake/nshmp/www/services/SourceLogicTreesService.java @@ -1,7 +1,5 @@ package gov.usgs.earthquake.nshmp.www.services; -import javax.inject.Singleton; - import gov.usgs.earthquake.nshmp.model.Models; import gov.usgs.earthquake.nshmp.www.Response; import gov.usgs.earthquake.nshmp.www.SourceLogicTreesController; @@ -9,6 +7,7 @@ import gov.usgs.earthquake.nshmp.www.meta.Status; import io.micronaut.http.HttpRequest; import io.micronaut.http.HttpResponse; +import jakarta.inject.Singleton; /** * Source model tree handler for {@link SourceLogicTreesController} diff --git a/src/main/java/gov/usgs/earthquake/nshmp/www/services/SourceServices.java b/src/main/java/gov/usgs/earthquake/nshmp/www/services/SourceServices.java index eb1fd728af424cf5210fd1ebe57d197760d8eaa8..7db7d76b57225955fe04edd5288ee220b1f0d9a6 100644 --- a/src/main/java/gov/usgs/earthquake/nshmp/www/services/SourceServices.java +++ b/src/main/java/gov/usgs/earthquake/nshmp/www/services/SourceServices.java @@ -3,8 +3,6 @@ package gov.usgs.earthquake.nshmp.www.services; import java.util.Map; import java.util.Set; -import javax.inject.Singleton; - import com.google.common.base.Stopwatch; import com.google.gson.Gson; import com.google.gson.GsonBuilder; @@ -20,6 +18,7 @@ import gov.usgs.earthquake.nshmp.www.meta.Status; import io.micronaut.http.HttpRequest; import io.micronaut.http.HttpResponse; +import jakarta.inject.Singleton; /** * Entry point for services related to source models. Current services: diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index 08e17650b93dbaa71573a7e6b0d1913645bbd10e..d4d11ef0c76a2efa5215bacfdf56dc4f1d56d3e9 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -16,12 +16,6 @@ micronaut: logger-name: http nshmp-haz: - ## - # The basin service url - # To specify the url to use: - # java -jar build/libs/nshmp-haz.jar --basin-service-url= - basin-service-url: ${basin-service-url:https://earthquake.usgs.gov/ws/nshmp/data/basin} - ## # The path to the models. # To specify the model to use: diff --git a/ws.Dockerfile b/ws.Dockerfile index 8bf60131e37ace8518cbdc7674ce576f8d336941..35f812588039b169606d7e1b1b61079b0733bd88 100644 --- a/ws.Dockerfile +++ b/ws.Dockerfile @@ -42,7 +42,6 @@ FROM ${FROM_IMAGE} LABEL maintainer="Peter Powers <pmpowers@usgs.gov>, Brandon Clayton <bclayton@usgs.gov>" ENV CONTEXT_PATH="/" -ENV BASIN_SERVICE_URL="https://earthquake.usgs.gov/ws/nshmp/data/basin" ENV JAVA_OPTS="-Xms2g -Xmx8g" ENV MODELS_DIRECTORY="/models" @@ -59,5 +58,4 @@ ENTRYPOINT java \ -jar \ nshmp-haz.jar \ "-Dmicronaut.server.context-path=${CONTEXT_PATH}" \ - --basin-service-url="${BASIN_SERVICE_URL}" \ --models="${MODELS_DIRECTORY}";