From 828fc610ba0b70e44af91ef87a9093279b2c680b Mon Sep 17 00:00:00 2001 From: pkaras Date: Thu, 15 Nov 2018 09:01:27 +0100 Subject: PrhAppConfigTest refactor Change-Id: Iaa604d04139ca26fcb9a21e03484f72c56f15816 Issue-ID: DCAEGEN2-973 Signed-off-by: piotr.karas --- .../services/prh/configuration/PrhAppConfig.java | 53 ++++++++++++++-------- 1 file changed, 34 insertions(+), 19 deletions(-) (limited to 'prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/configuration/PrhAppConfig.java') diff --git a/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/configuration/PrhAppConfig.java b/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/configuration/PrhAppConfig.java index 2b4b201a..f66924bc 100644 --- a/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/configuration/PrhAppConfig.java +++ b/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/configuration/PrhAppConfig.java @@ -95,29 +95,39 @@ public abstract class PrhAppConfig implements Config { try (InputStream inputStream = resourceFile.getInputStream()) { JsonElement rootElement = getJsonElement(parser, inputStream); if (rootElement.isJsonObject()) { - aaiClientConfiguration = deserializeType(gsonBuilder, - concatenateJsonObjects( - rootElement.getAsJsonObject().getAsJsonObject(CONFIG).getAsJsonObject(AAI).getAsJsonObject(AAI_CONFIG), - rootElement.getAsJsonObject().getAsJsonObject(CONFIG).getAsJsonObject(SECURITY)), - AaiClientConfiguration.class); - dmaapConsumerConfiguration = deserializeType(gsonBuilder, - concatenateJsonObjects( - rootElement.getAsJsonObject().getAsJsonObject(CONFIG).getAsJsonObject(DMAAP).getAsJsonObject(DMAAP_CONSUMER), - rootElement.getAsJsonObject().getAsJsonObject(CONFIG).getAsJsonObject(SECURITY)), - DmaapConsumerConfiguration.class); - dmaapPublisherConfiguration = deserializeType(gsonBuilder, - concatenateJsonObjects( - rootElement.getAsJsonObject().getAsJsonObject(CONFIG).getAsJsonObject(DMAAP).getAsJsonObject(DMAAP_PRODUCER), - rootElement.getAsJsonObject().getAsJsonObject(CONFIG).getAsJsonObject(SECURITY)), - DmaapPublisherConfiguration.class); + deserializeAaiConfiguration(gsonBuilder, rootElement); + deserializeDmaapConsumerConfiguration(gsonBuilder, rootElement); + deserializeDmaapPublisherConfiguration(gsonBuilder, rootElement); } - } catch (IOException e) { + } + catch (IOException e) { LOGGER.warn("Problem with file loading, file ", e); - } catch (JsonSyntaxException e) { - LOGGER.warn("Problem with Json deserialization", e); } } + private void deserializeDmaapPublisherConfiguration(GsonBuilder gsonBuilder, JsonElement rootElement) { + dmaapPublisherConfiguration = deserializeType(gsonBuilder, concatenateJsonObjects( + rootElement.getAsJsonObject().getAsJsonObject(CONFIG).getAsJsonObject(DMAAP) + .getAsJsonObject(DMAAP_PRODUCER), + rootElement.getAsJsonObject().getAsJsonObject(CONFIG).getAsJsonObject(SECURITY)), + DmaapPublisherConfiguration.class); + } + + private void deserializeDmaapConsumerConfiguration(GsonBuilder gsonBuilder, JsonElement rootElement) { + dmaapConsumerConfiguration = deserializeType(gsonBuilder, concatenateJsonObjects( + rootElement.getAsJsonObject().getAsJsonObject(CONFIG).getAsJsonObject(DMAAP) + .getAsJsonObject(DMAAP_CONSUMER), + rootElement.getAsJsonObject().getAsJsonObject(CONFIG).getAsJsonObject(SECURITY)), + DmaapConsumerConfiguration.class); + } + + private void deserializeAaiConfiguration(GsonBuilder gsonBuilder, JsonElement rootElement) { + aaiClientConfiguration = deserializeType(gsonBuilder, concatenateJsonObjects( + rootElement.getAsJsonObject().getAsJsonObject(CONFIG).getAsJsonObject(AAI).getAsJsonObject(AAI_CONFIG), + rootElement.getAsJsonObject().getAsJsonObject(CONFIG).getAsJsonObject(SECURITY)), + AaiClientConfiguration.class); + } + JsonElement getJsonElement(JsonParser parser, InputStream inputStream) { return parser.parse(new InputStreamReader(inputStream, StandardCharsets.UTF_8)); } @@ -130,7 +140,12 @@ public abstract class PrhAppConfig implements Config { private T deserializeType(@NotNull GsonBuilder gsonBuilder, @NotNull JsonObject jsonObject, @NotNull Class type) { - return gsonBuilder.create().fromJson(jsonObject, type); + try { + return gsonBuilder.create().fromJson(jsonObject, type); + } catch (JsonSyntaxException e) { + LOGGER.warn("Problem with Json deserialization", e); + return null; + } } void setResourceFile(Resource resourceFile) { -- cgit 1.2.3-korg