diff --git a/server/src/main/java/au/org/aodn/ogcapi/server/core/configuration/ActuatorConfig.java b/server/src/main/java/au/org/aodn/ogcapi/server/core/configuration/ActuatorConfig.java index aa8d9516..b2511c5e 100644 --- a/server/src/main/java/au/org/aodn/ogcapi/server/core/configuration/ActuatorConfig.java +++ b/server/src/main/java/au/org/aodn/ogcapi/server/core/configuration/ActuatorConfig.java @@ -33,14 +33,26 @@ public InfoContributor externalApiInfoContributor( return builder -> { try { Map> versions = new HashMap<>(); - versions.put(das.getName(), - Map.of("version", das.getVersion(), "description", das.getDescription())); - versions.put(dda.getName(), - Map.of("version", dda.getVersion(), "description", dda.getDescription())); - versions.put(esIndexer.getName(), - Map.of("version", esIndexer.getVersion(), "description", esIndexer.getDescription())); - versions.put(geonetwork.getName(), - Map.of("version", geonetwork.getVersion(), "description", geonetwork.getDescription())); + + if(das.getName() != null) { + versions.put(das.getName(), + Map.of("version", das.getVersion(), "description", das.getDescription())); + } + + if(dda.getName() != null) { + versions.put(dda.getName(), + Map.of("version", dda.getVersion(), "description", dda.getDescription())); + } + + if(esIndexer.getName() != null) { + versions.put(esIndexer.getName(), + Map.of("version", esIndexer.getVersion(), "description", esIndexer.getDescription())); + } + + if(geonetwork.getName() != null) { + versions.put(geonetwork.getName(), + Map.of("version", geonetwork.getVersion(), "description", geonetwork.getDescription())); + } builder.withDetail(DEP_SERVICE, versions); } catch (Exception e) { diff --git a/server/src/main/java/au/org/aodn/ogcapi/server/core/service/das/DasService.java b/server/src/main/java/au/org/aodn/ogcapi/server/core/service/das/DasService.java index 661e4c27..7e3bed50 100644 --- a/server/src/main/java/au/org/aodn/ogcapi/server/core/service/das/DasService.java +++ b/server/src/main/java/au/org/aodn/ogcapi/server/core/service/das/DasService.java @@ -134,16 +134,19 @@ public ResponseEntity getDatasetMetadata(String datasetId) { @Override public String getName() { - return this.appInfo.getOrDefault("application", Collections.emptyMap()).get("name").toString(); + Object name = this.appInfo.getOrDefault("application", Collections.emptyMap()).getOrDefault("name", null); + return name != null ? name.toString() : null; } @Override public String getVersion() { - return this.appInfo.getOrDefault("application", Collections.emptyMap()).get("version").toString(); + Object version = this.appInfo.getOrDefault("application", Collections.emptyMap()).getOrDefault("version", null); + return version != null ? version.toString() : null; } @Override public String getDescription() { - return this.appInfo.getOrDefault("application", Collections.emptyMap()).get("description").toString(); + Object description = this.appInfo.getOrDefault("application", Collections.emptyMap()).getOrDefault("description", null); + return description != null ? description.toString() : null; } } diff --git a/server/src/main/java/au/org/aodn/ogcapi/server/core/service/dda/DdaService.java b/server/src/main/java/au/org/aodn/ogcapi/server/core/service/dda/DdaService.java index d9dacbc2..7fec8cbe 100644 --- a/server/src/main/java/au/org/aodn/ogcapi/server/core/service/dda/DdaService.java +++ b/server/src/main/java/au/org/aodn/ogcapi/server/core/service/dda/DdaService.java @@ -14,16 +14,19 @@ public DdaService(DdaProperties properties, RestTemplate template) { @Override public String getName() { - return this.appInfo.getOrDefault("application", Collections.emptyMap()).get("name").toString(); + Object name = this.appInfo.getOrDefault("application", Collections.emptyMap()).getOrDefault("name", null); + return name != null ? name.toString() : null; } @Override public String getVersion() { - return this.appInfo.getOrDefault("application", Collections.emptyMap()).get("version").toString(); + Object version = this.appInfo.getOrDefault("application", Collections.emptyMap()).getOrDefault("version", null); + return version != null ? version.toString() : null; } @Override public String getDescription() { - return this.appInfo.getOrDefault("application", Collections.emptyMap()).get("description").toString(); + Object description = this.appInfo.getOrDefault("application", Collections.emptyMap()).getOrDefault("description", null); + return description != null ? description.toString() : null; } } diff --git a/server/src/main/java/au/org/aodn/ogcapi/server/core/service/geonetwork/Geonetwork.java b/server/src/main/java/au/org/aodn/ogcapi/server/core/service/geonetwork/Geonetwork.java index ea4edfa1..6f624b75 100644 --- a/server/src/main/java/au/org/aodn/ogcapi/server/core/service/geonetwork/Geonetwork.java +++ b/server/src/main/java/au/org/aodn/ogcapi/server/core/service/geonetwork/Geonetwork.java @@ -19,16 +19,19 @@ public Geonetwork(GNProperties properties, RestTemplate template) { @Override public String getName() { - return this.appInfo.getOrDefault("application", Collections.emptyMap()).get("name").toString(); + Object name = this.appInfo.getOrDefault("application", Collections.emptyMap()).getOrDefault("name", null); + return name != null ? name.toString() : null; } @Override public String getVersion() { - return this.appInfo.getOrDefault("application", Collections.emptyMap()).get("version").toString(); + Object version = this.appInfo.getOrDefault("application", Collections.emptyMap()).getOrDefault("version", null); + return version != null ? version.toString() : null; } @Override public String getDescription() { - return this.appInfo.getOrDefault("application", Collections.emptyMap()).get("description").toString(); + Object description = this.appInfo.getOrDefault("application", Collections.emptyMap()).getOrDefault("description", null); + return description != null ? description.toString() : null; } } diff --git a/server/src/main/java/au/org/aodn/ogcapi/server/core/service/indexer/EsIndexer.java b/server/src/main/java/au/org/aodn/ogcapi/server/core/service/indexer/EsIndexer.java index 713532c0..c9723963 100644 --- a/server/src/main/java/au/org/aodn/ogcapi/server/core/service/indexer/EsIndexer.java +++ b/server/src/main/java/au/org/aodn/ogcapi/server/core/service/indexer/EsIndexer.java @@ -16,16 +16,19 @@ public EsIndexer(IndexerProperties properties, RestTemplate template) { @Override public String getName() { - return this.appInfo.getOrDefault("application", Collections.emptyMap()).get("name").toString(); + Object name = this.appInfo.getOrDefault("application", Collections.emptyMap()).getOrDefault("name", null); + return name != null ? name.toString() : null; } @Override public String getVersion() { - return this.appInfo.getOrDefault("application", Collections.emptyMap()).get("version").toString(); + Object version = this.appInfo.getOrDefault("application", Collections.emptyMap()).getOrDefault("version", null); + return version != null ? version.toString() : null; } @Override public String getDescription() { - return this.appInfo.getOrDefault("application", Collections.emptyMap()).get("description").toString(); + Object description = this.appInfo.getOrDefault("application", Collections.emptyMap()).getOrDefault("description", null); + return description != null ? description.toString() : null; } }