From f955e2c798812ac09f8a467aede883ae0d0d0631 Mon Sep 17 00:00:00 2001 From: Brandon Clayton <bclayton@usgs.gov> Date: Mon, 8 Apr 2024 11:56:38 -0600 Subject: [PATCH] return string --- .../earthquake/nshmp/www/SwaggerController.java | 5 ++--- .../gov/usgs/earthquake/nshmp/www/Utils.java | 7 ++----- .../earthquake/nshmp/www/gmm/GmmController.java | 9 ++++----- .../earthquake/nshmp/www/gmm/GmmService.java | 16 ++++++---------- .../earthquake/nshmp/www/gmm/ServiceUtil.java | 7 +++---- 5 files changed, 17 insertions(+), 27 deletions(-) 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 3a2f642..fc4a159 100644 --- a/src/main/java/gov/usgs/earthquake/nshmp/www/SwaggerController.java +++ b/src/main/java/gov/usgs/earthquake/nshmp/www/SwaggerController.java @@ -6,7 +6,6 @@ import java.util.stream.Collectors; import com.google.common.io.Resources; import io.micronaut.http.HttpRequest; -import io.micronaut.http.HttpResponse; import io.micronaut.http.MediaType; import io.micronaut.http.annotation.Controller; import io.micronaut.http.annotation.Get; @@ -30,13 +29,13 @@ public class SwaggerController { private NshmpMicronautServlet servlet; @Get(produces = MediaType.TEXT_EVENT_STREAM) - public HttpResponse<String> doGet(HttpRequest<?> request) { + public String doGet(HttpRequest<?> request) { try { var url = Resources.getResource("META-INF/swagger/nshmp-ws.yml"); var yml = Resources.readLines(url, StandardCharsets.UTF_8) .stream() .collect(Collectors.joining("\n")); - return HttpResponse.ok(yml); + return yml; } catch (Exception e) { return Utils.handleError(e, "Swagger", request.getUri().getPath()); } diff --git a/src/main/java/gov/usgs/earthquake/nshmp/www/Utils.java b/src/main/java/gov/usgs/earthquake/nshmp/www/Utils.java index 593dff6..6af4b95 100644 --- a/src/main/java/gov/usgs/earthquake/nshmp/www/Utils.java +++ b/src/main/java/gov/usgs/earthquake/nshmp/www/Utils.java @@ -6,8 +6,6 @@ import static com.google.common.base.CaseFormat.UPPER_UNDERSCORE; import com.google.gson.Gson; import com.google.gson.GsonBuilder; -import io.micronaut.http.HttpResponse; - public class Utils { public static final Gson GSON; @@ -45,7 +43,7 @@ public class Utils { } } - public static HttpResponse<String> handleError( + public static String handleError( Throwable e, String name, String url) { @@ -57,8 +55,7 @@ public class Utils { .request(msg) .response(url) .build(); - var response = GSON.toJson(svcResponse); e.printStackTrace(); - return HttpResponse.serverError(response); + return GSON.toJson(svcResponse); } } diff --git a/src/main/java/gov/usgs/earthquake/nshmp/www/gmm/GmmController.java b/src/main/java/gov/usgs/earthquake/nshmp/www/gmm/GmmController.java index af0aeca..59cd3cd 100644 --- a/src/main/java/gov/usgs/earthquake/nshmp/www/gmm/GmmController.java +++ b/src/main/java/gov/usgs/earthquake/nshmp/www/gmm/GmmController.java @@ -16,7 +16,6 @@ import gov.usgs.earthquake.nshmp.www.gmm.GmmService.Spectra; import io.micronaut.core.annotation.Nullable; import io.micronaut.http.HttpRequest; -import io.micronaut.http.HttpResponse; import io.micronaut.http.MediaType; import io.micronaut.http.annotation.Controller; import io.micronaut.http.annotation.Get; @@ -114,7 +113,7 @@ class GmmController { responseCode = "200", content = @Content(schema = @Schema(type = "string"))) @Get(uri = "/spectra", produces = MediaType.APPLICATION_JSON) - public HttpResponse<String> doGetSpectra( + public String doGetSpectra( HttpRequest<?> http, @Schema(required = true) @QueryValue @Nullable Set<Gmm> gmm, @Schema( @@ -232,7 +231,7 @@ class GmmController { responseCode = "200", content = @Content(schema = @Schema(type = "string"))) @Get(uri = "/distance{?gmm,imt,rMin,rMax}", produces = MediaType.APPLICATION_JSON) - public HttpResponse<String> doGetDistance( + public String doGetDistance( HttpRequest<?> http, @Schema(required = true) @QueryValue @Nullable Set<Gmm> gmm, @Schema(required = true) @QueryValue Optional<Imt> imt, @@ -355,7 +354,7 @@ class GmmController { responseCode = "200", content = @Content(schema = @Schema(type = "string"))) @Get(uri = "/hw-fw{?gmm,imt,rMin,rMax}", produces = MediaType.APPLICATION_JSON) - public HttpResponse<String> doGetHwFw( + public String doGetHwFw( HttpRequest<?> http, @Schema(required = true) @QueryValue @Nullable Set<Gmm> gmm, @Schema(required = true) @QueryValue Optional<Imt> imt, @@ -467,7 +466,7 @@ class GmmController { responseCode = "200", content = @Content(schema = @Schema(type = "string"))) @Get(uri = "/magnitude{?gmm,imt,mMin,mMax,step}", produces = MediaType.APPLICATION_JSON) - public HttpResponse<String> doGetMagnitude( + public String doGetMagnitude( HttpRequest<?> http, @Schema(required = true) @QueryValue @Nullable Set<Gmm> gmm, @Schema(required = true) @QueryValue Optional<Imt> imt, diff --git a/src/main/java/gov/usgs/earthquake/nshmp/www/gmm/GmmService.java b/src/main/java/gov/usgs/earthquake/nshmp/www/gmm/GmmService.java index 4b1c53a..e8ee8e4 100644 --- a/src/main/java/gov/usgs/earthquake/nshmp/www/gmm/GmmService.java +++ b/src/main/java/gov/usgs/earthquake/nshmp/www/gmm/GmmService.java @@ -26,7 +26,6 @@ import gov.usgs.earthquake.nshmp.www.gmm.GmmCalc.SpectraTree; import gov.usgs.earthquake.nshmp.www.gmm.XyDataGroup.EpiSeries; import io.micronaut.http.HttpRequest; -import io.micronaut.http.HttpResponse; import jakarta.inject.Singleton; /* @@ -208,7 +207,7 @@ class GmmService { static class Spectra { - static HttpResponse<String> process(Request request) { + static String process(Request request) { Map<Gmm, GmmSpectraData> spectra = GmmCalc.spectra(request); Response<SpectraData, SpectraTree> response = Response.spectraCreate(request.serviceId, spectra, Optional.empty()); @@ -219,8 +218,7 @@ class GmmService { .request(request) .response(response) .build(); - String json = ServiceUtil.GSON.toJson(body); - return HttpResponse.ok(json); + return ServiceUtil.GSON.toJson(body); } } @@ -231,7 +229,7 @@ class GmmService { private static final double R_MAX = 100.0; private final static int R_POINTS = 100; - static HttpResponse<String> process(Distance.Request request) { + static String process(Distance.Request request) { double[] rArray = distanceArray(request); @@ -245,8 +243,7 @@ class GmmService { .request(request) .response(response) .build(); - String json = ServiceUtil.GSON.toJson(body); - return HttpResponse.ok(json); + return ServiceUtil.GSON.toJson(body); } private static double[] distanceArray( @@ -288,7 +285,7 @@ class GmmService { public static final double M_STEP = 0.1; public static final double M_DISTANCE = 10.0; - static HttpResponse<String> process(Magnitude.Request request) { + static String process(Magnitude.Request request) { double[] mArray = ServiceUtil.sequenceLinear( request.mMin, request.mMax, request.step); @@ -303,8 +300,7 @@ class GmmService { .request(request) .response(response) .build(); - String json = ServiceUtil.GSON.toJson(body); - return HttpResponse.ok(json); + return ServiceUtil.GSON.toJson(body); } static class Request extends GmmService.Request { diff --git a/src/main/java/gov/usgs/earthquake/nshmp/www/gmm/ServiceUtil.java b/src/main/java/gov/usgs/earthquake/nshmp/www/gmm/ServiceUtil.java index 4d6df1a..6d8fa54 100644 --- a/src/main/java/gov/usgs/earthquake/nshmp/www/gmm/ServiceUtil.java +++ b/src/main/java/gov/usgs/earthquake/nshmp/www/gmm/ServiceUtil.java @@ -54,7 +54,6 @@ import gov.usgs.earthquake.nshmp.www.meta.EnumParameter; import io.micronaut.http.HttpParameters; import io.micronaut.http.HttpRequest; -import io.micronaut.http.HttpResponse; class ServiceUtil { @@ -79,9 +78,8 @@ class ServiceUtil { .create(); } - public static HttpResponse<String> metadata(HttpRequest<?> request, Id service) { - var metadata = GSON.toJson(ServiceUtil.getMetadata(request, service)); - return HttpResponse.ok(metadata); + public static String metadata(HttpRequest<?> request, Id service) { + return GSON.toJson(ServiceUtil.getMetadata(request, service)); } /** Query and JSON reqest/response keys. */ @@ -130,6 +128,7 @@ class ServiceUtil { static ResponseBody<String, MetadataResponse> getMetadata( HttpRequest<?> request, Id service) { + String url = request.getUri().getPath(); return ResponseBody.<String, MetadataResponse> usage() .name(service.name) -- GitLab