aboutsummaryrefslogtreecommitdiffstats
path: root/prh-app-server/src
diff options
context:
space:
mode:
Diffstat (limited to 'prh-app-server/src')
-rw-r--r--prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/service/DmaapConsumerJsonParser.java4
-rw-r--r--prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/DmaapConsumerTaskImpl.java3
-rw-r--r--prh-app-server/src/test/java/org/onap/dcaegen2/services/prh/service/DmaapConsumerJsonParserTest.java84
3 files changed, 47 insertions, 44 deletions
diff --git a/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/service/DmaapConsumerJsonParser.java b/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/service/DmaapConsumerJsonParser.java
index c059d34b..11939b53 100644
--- a/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/service/DmaapConsumerJsonParser.java
+++ b/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/service/DmaapConsumerJsonParser.java
@@ -20,10 +20,10 @@
package org.onap.dcaegen2.services.prh.service;
-import com.google.gson.JsonArray;
import com.google.gson.JsonElement;
import com.google.gson.JsonObject;
import com.google.gson.JsonParser;
+import io.vavr.collection.List;
import org.onap.dcaegen2.services.prh.exceptions.DmaapNotFoundException;
import org.onap.dcaegen2.services.prh.model.ConsumerDmaapModel;
import org.onap.dcaegen2.services.prh.model.ImmutableConsumerDmaapModel;
@@ -85,7 +85,7 @@ public class DmaapConsumerJsonParser {
return monoMessage.flatMapMany(msgRouterResponse -> getConsumerDmaapModelFromJsonArray(msgRouterResponse.items()));
}
- private Flux<ConsumerDmaapModel> getConsumerDmaapModelFromJsonArray(JsonArray items) {
+ private Flux<ConsumerDmaapModel> getConsumerDmaapModelFromJsonArray(List<JsonElement> items) {
LOGGER.debug("DmaapConsumerJsonParser input for parsing: {}", items);
if (items.size() == 0) {
diff --git a/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/DmaapConsumerTaskImpl.java b/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/DmaapConsumerTaskImpl.java
index af5b2505..a990e502 100644
--- a/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/DmaapConsumerTaskImpl.java
+++ b/prh-app-server/src/main/java/org/onap/dcaegen2/services/prh/tasks/DmaapConsumerTaskImpl.java
@@ -50,8 +50,7 @@ public class DmaapConsumerTaskImpl implements DmaapConsumerTask {
public Flux<ConsumerDmaapModel> execute() {
MessageRouterSubscriber messageRouterSubscriber = config.getMessageRouterSubscriber();
MessageRouterSubscribeRequest messageRouterSubscribeRequest = config.getMessageRouterSubscribeRequest();
- Mono<MessageRouterSubscribeResponse> response = messageRouterSubscriber
- .get(messageRouterSubscribeRequest);
+ Mono<MessageRouterSubscribeResponse> response = messageRouterSubscriber.get(messageRouterSubscribeRequest);
return dmaapConsumerJsonParser.getJsonObject(response);
}
diff --git a/prh-app-server/src/test/java/org/onap/dcaegen2/services/prh/service/DmaapConsumerJsonParserTest.java b/prh-app-server/src/test/java/org/onap/dcaegen2/services/prh/service/DmaapConsumerJsonParserTest.java
index 98b73142..342460e3 100644
--- a/prh-app-server/src/test/java/org/onap/dcaegen2/services/prh/service/DmaapConsumerJsonParserTest.java
+++ b/prh-app-server/src/test/java/org/onap/dcaegen2/services/prh/service/DmaapConsumerJsonParserTest.java
@@ -20,10 +20,10 @@
package org.onap.dcaegen2.services.prh.service;
-import com.google.gson.JsonArray;
import com.google.gson.JsonElement;
import com.google.gson.JsonObject;
import com.google.gson.JsonParser;
+import io.vavr.collection.List;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
import org.mockito.Mockito;
@@ -48,7 +48,7 @@ class DmaapConsumerJsonParserTest {
@Test
void whenPassingCorrectJson_validationNotThrowingAnException() {
//given
- String message = "[{\"event\": {"
+ String message = "{\"event\": {"
+ "\"commonEventHeader\": { "
+ " \"sourceName\":\"NOKQTFCOC540002E\","
+ " \"nfNamingCode\":\"gNB\" "
@@ -64,7 +64,7 @@ class DmaapConsumerJsonParserTest {
+ " \"softwareVersion\": \"v4.5.0.1\","
+ " \"oamV6IpAddress\": \"0:0:0:0:0:FFFF:0A10:7BEA\","
+ " \"additionalFields\": {\"attachmentPoint\":\"bla-bla-30-3\",\"cvlan\":\"678\",\"svlan\":\"1005\"}"
- + "}}}]";
+ + "}}}";
String parsed = "{\"event\": {"
+ "\"commonEventHeader\": { "
@@ -103,8 +103,8 @@ class DmaapConsumerJsonParserTest {
.additionalFields(jsonObject)
.build();
- JsonArray messageAsJsonArray = (JsonArray) jsonParser.parse(message);
- MessageRouterSubscribeResponse response = ImmutableMessageRouterSubscribeResponse.builder().items(messageAsJsonArray).build();
+ List<JsonElement> messageAsJsonElementList = List.of(message).map(jsonParser::parse);
+ MessageRouterSubscribeResponse response = ImmutableMessageRouterSubscribeResponse.builder().items(messageAsJsonElementList).build();
//when
DmaapConsumerJsonParser dmaapConsumerJsonParser = spy(new DmaapConsumerJsonParser());
@@ -122,7 +122,7 @@ class DmaapConsumerJsonParserTest {
@Test
void whenPassingJsonWithoutAdditionalFields_validationNotThrowingAnException() {
//given
- String message = "[{\"event\": {"
+ String message = "{\"event\": {"
+ "\"commonEventHeader\": { "
+ " \"sourceName\":\"NOKQTFCOC540002E\","
+ " \"nfNamingCode\":\"gNB\" "
@@ -137,7 +137,7 @@ class DmaapConsumerJsonParserTest {
+ " \"oamV4IpAddress\": \"10.16.123.234\","
+ " \"oamV6IpAddress\": \"0:0:0:0:0:FFFF:0A10:7BEA\","
+ " \"softwareVersion\": \"v4.5.0.1\""
- + "}}}]";
+ + "}}}";
String parsed = "{\"event\": {"
+ "\"commonEventHeader\": { "
@@ -167,8 +167,8 @@ class DmaapConsumerJsonParserTest {
.nfRole("gNB")
.swVersion("v4.5.0.1")
.build();
- JsonArray messageAsJsonArray = (JsonArray) jsonParser.parse(message);
- MessageRouterSubscribeResponse response = ImmutableMessageRouterSubscribeResponse.builder().items(messageAsJsonArray).build();
+ List<JsonElement> messageAsJsonElementList = List.of(message).map(jsonParser::parse);
+ MessageRouterSubscribeResponse response = ImmutableMessageRouterSubscribeResponse.builder().items(messageAsJsonElementList).build();
//when
DmaapConsumerJsonParser dmaapConsumerJsonParser = spy(new DmaapConsumerJsonParser());
JsonElement jsonElement = new JsonParser().parse(parsed);
@@ -184,7 +184,7 @@ class DmaapConsumerJsonParserTest {
@Test
void whenPassingJsonWithEmptyAdditionalFields_validationNotThrowingAnException() {
//given
- String message = "[{\"event\": {"
+ String message = "{\"event\": {"
+ "\"commonEventHeader\": { "
+ " \"sourceName\":\"NOKQTFCOC540002E\","
+ " \"nfNamingCode\":\"gNB\" "
@@ -200,7 +200,7 @@ class DmaapConsumerJsonParserTest {
+ " \"oamV4IpAddress\": \"10.16.123.234\","
+ " \"oamV6IpAddress\": \"0:0:0:0:0:FFFF:0A10:7BEA\","
+ " \"additionalFields\": {}"
- + "}}}]";
+ + "}}}";
String parsed = "{\"event\": {"
+ "\"commonEventHeader\": { "
@@ -233,8 +233,8 @@ class DmaapConsumerJsonParserTest {
.additionalFields(new JsonObject())
.build();
- JsonArray messageAsJsonArray = (JsonArray) jsonParser.parse(message);
- MessageRouterSubscribeResponse response = ImmutableMessageRouterSubscribeResponse.builder().items(messageAsJsonArray).build();
+ List<JsonElement> messageAsJsonElementList = List.of(message).map(jsonParser::parse);
+ MessageRouterSubscribeResponse response = ImmutableMessageRouterSubscribeResponse.builder().items(messageAsJsonElementList).build();
//when
DmaapConsumerJsonParser dmaapConsumerJsonParser = spy(new DmaapConsumerJsonParser());
@@ -252,7 +252,7 @@ class DmaapConsumerJsonParserTest {
@Test
void whenPassingCorrectJsonWithoutIpv4andIpv6_validationNotThrowingAnException() {
//given
- String message = "[{\"event\": {"
+ String message = "{\"event\": {"
+ "\"commonEventHeader\": { "
+ " \"sourceName\":\"NOKQTFCOC540002E\","
+ " \"nfNamingCode\":\"gNB\" "
@@ -266,7 +266,7 @@ class DmaapConsumerJsonParserTest {
+ " \"unitFamily\": \"BBU\","
+ " \"softwareVersion\": \"v4.5.0.1\","
+ " \"additionalFields\": {}"
- + "}}}]";
+ + "}}}";
String parsed = "{\"event\": {"
+ "\"commonEventHeader\": { "
@@ -297,8 +297,8 @@ class DmaapConsumerJsonParserTest {
.additionalFields(new JsonObject())
.build();
- JsonArray messageAsJsonArray = (JsonArray) jsonParser.parse(message);
- MessageRouterSubscribeResponse response = ImmutableMessageRouterSubscribeResponse.builder().items(messageAsJsonArray).build();
+ List<JsonElement> messageAsJsonElementList = List.of(message).map(jsonParser::parse);
+ MessageRouterSubscribeResponse response = ImmutableMessageRouterSubscribeResponse.builder().items(messageAsJsonElementList).build();
//when
DmaapConsumerJsonParser dmaapConsumerJsonParser = spy(new DmaapConsumerJsonParser());
@@ -337,7 +337,7 @@ class DmaapConsumerJsonParserTest {
JsonElement jsonElement = jsonParser.parse(parsed);
Mockito.doReturn(Optional.of(jsonElement.getAsJsonObject()))
.when(dmaapConsumerJsonParser).getJsonObjectFromAnArray(jsonElement);
- String incorrectMessage = "[{\"event\": {"
+ String incorrectMessage = "{\"event\": {"
+ "\"commonEventHeader\": {},"
+ "\"pnfRegistrationFields\": {"
+ " \"unitType\": \"AirScale\","
@@ -352,10 +352,10 @@ class DmaapConsumerJsonParserTest {
+ " \"oamV4IpAddress\": \"10.16.123.234\","
+ " \"oamV6IpAddress\": \"0:0:0:0:0:FFFF:0A10:7BEA\","
+ " \"additionalFields\": {}"
- + "}}}]";
+ + "}}}";
- JsonArray incorrectMessageAsJsonArray = (JsonArray) jsonParser.parse(incorrectMessage);
- MessageRouterSubscribeResponse response = ImmutableMessageRouterSubscribeResponse.builder().items(incorrectMessageAsJsonArray).build();
+ List<JsonElement> incorrectMessageAsJsonElementList = List.of(incorrectMessage).map(jsonParser::parse);
+ MessageRouterSubscribeResponse response = ImmutableMessageRouterSubscribeResponse.builder().items(incorrectMessageAsJsonElementList).build();
StepVerifier.create(dmaapConsumerJsonParser.getJsonObject(Mono.just(response)))
.expectSubscription().thenRequest(1).verifyComplete();
@@ -384,7 +384,7 @@ class DmaapConsumerJsonParserTest {
Mockito.doReturn(Optional.of(jsonElement.getAsJsonObject()))
.when(dmaapConsumerJsonParser).getJsonObjectFromAnArray(jsonElement);
String jsonWithoutSourceName =
- "[{\"event\": {"
+ "{\"event\": {"
+ "\"commonEventHeader\": {},"
+ "\"pnfRegistrationFields\": {"
+ " \"unitType\": \"AirScale\","
@@ -398,10 +398,10 @@ class DmaapConsumerJsonParserTest {
+ " \"softwareVersion\": \"v4.5.0.1\","
+ " \"oamV6IpAddress\": \"0:0:0:0:0:FFFF:0A10:7BEA\","
+ " \"additionalFields\": {}"
- + "}}}]";
+ + "}}}";
- JsonArray jsonWithoutSourceNameAsJsonArray = (JsonArray) jsonParser.parse(jsonWithoutSourceName);
- MessageRouterSubscribeResponse response = ImmutableMessageRouterSubscribeResponse.builder().items(jsonWithoutSourceNameAsJsonArray).build();
+ List<JsonElement> jsonWithoutSourceNameAsJsonElementList = List.of(jsonWithoutSourceName).map(jsonParser::parse);
+ MessageRouterSubscribeResponse response = ImmutableMessageRouterSubscribeResponse.builder().items(jsonWithoutSourceNameAsJsonElementList).build();
StepVerifier
.create(dmaapConsumerJsonParser.getJsonObject(Mono.just(response)))
.expectSubscription().thenRequest(1)
@@ -434,7 +434,7 @@ class DmaapConsumerJsonParserTest {
Mockito.doReturn(Optional.of(jsonElement.getAsJsonObject()))
.when(dmaapConsumerJsonParser).getJsonObjectFromAnArray(jsonElement);
String jsonWithoutIpInformation =
- "[{\"event\": {"
+ "{\"event\": {"
+ "\"commonEventHeader\": {\"sourceName\": \"\"},"
+ "\"pnfRegistrationFields\": {"
+ " \"unitType\": \"AirScale\","
@@ -449,10 +449,10 @@ class DmaapConsumerJsonParserTest {
+ " \"oamV4IpAddress\": \"10.16.123.234\","
+ " \"oamV6IpAddress\": \"0:0:0:0:0:FFFF:0A10:7BEA\","
+ " \"additionalFields\": {}"
- + "}}}]";
+ + "}}}";
- JsonArray jsonWithoutIpInformationAsJsonArray = (JsonArray) jsonParser.parse(jsonWithoutIpInformation);
- MessageRouterSubscribeResponse response = ImmutableMessageRouterSubscribeResponse.builder().items(jsonWithoutIpInformationAsJsonArray).build();
+ List<JsonElement> jsonWithoutIpInformationAsJsonElementList = List.of(jsonWithoutIpInformation).map(jsonParser::parse);
+ MessageRouterSubscribeResponse response = ImmutableMessageRouterSubscribeResponse.builder().items(jsonWithoutIpInformationAsJsonElementList).build();
StepVerifier.create(dmaapConsumerJsonParser.getJsonObject(Mono.just(response)))
.expectSubscription().thenRequest(1).verifyComplete();
@@ -461,7 +461,7 @@ class DmaapConsumerJsonParserTest {
@Test
void whenPassingCorrectJsonWithoutIpv4_validationNotThrowingAnException() {
//given
- String message = "[{\"event\": {"
+ String message = "{\"event\": {"
+ "\"commonEventHeader\": { "
+ " \"sourceName\":\"NOKQTFCOC540002E\","
+ " \"nfNamingCode\":\"gNB\" "
@@ -475,7 +475,7 @@ class DmaapConsumerJsonParserTest {
+ " \"unitFamily\": \"BBU\","
+ " \"softwareVersion\": \"v4.5.0.1\","
+ " \"oamV6IpAddress\": \"0:0:0:0:0:FFFF:0A10:7BEA\""
- + "}}}]";
+ + "}}}";
String parsed = "{\"event\": {"
+ "\"commonEventHeader\": { "
@@ -493,8 +493,8 @@ class DmaapConsumerJsonParserTest {
+ " \"oamV6IpAddress\": \"0:0:0:0:0:FFFF:0A10:7BEA\""
+ "}}}";
- JsonArray messageAsJsonArray = (JsonArray) jsonParser.parse(message);
- MessageRouterSubscribeResponse response = ImmutableMessageRouterSubscribeResponse.builder().items(messageAsJsonArray).build();
+ List<JsonElement> messageAsJsonElementList = List.of(message).map(jsonParser::parse);
+ MessageRouterSubscribeResponse response = ImmutableMessageRouterSubscribeResponse.builder().items(messageAsJsonElementList).build();
//when
DmaapConsumerJsonParser dmaapConsumerJsonParser = spy(new DmaapConsumerJsonParser());
JsonElement jsonElement = jsonParser.parse(parsed);
@@ -524,7 +524,7 @@ class DmaapConsumerJsonParserTest {
@Test
void whenPassingCorrectJsonWithoutIpv6_validationNotThrowingAnException() {
//given
- String message = "[{\"event\": {"
+ String message = "{\"event\": {"
+ "\"commonEventHeader\": { "
+ " \"sourceName\":\"NOKQTFCOC540002E\","
+ " \"nfNamingCode\":\"gNB\" "
@@ -538,7 +538,7 @@ class DmaapConsumerJsonParserTest {
+ " \"unitFamily\": \"BBU\","
+ " \"oamV4IpAddress\": \"10.16.123.234\","
+ " \"softwareVersion\": \"v4.5.0.1\""
- + "}}}]";
+ + "}}}";
String parsed = "{\"event\": {"
+ "\"commonEventHeader\": { "
@@ -568,8 +568,8 @@ class DmaapConsumerJsonParserTest {
.swVersion("v4.5.0.1")
.build();
- JsonArray messageAsJsonArray = (JsonArray) jsonParser.parse(message);
- MessageRouterSubscribeResponse response = ImmutableMessageRouterSubscribeResponse.builder().items(messageAsJsonArray).build();
+ List<JsonElement> messageAsJsonElementList = List.of(message).map(jsonParser::parse);
+ MessageRouterSubscribeResponse response = ImmutableMessageRouterSubscribeResponse.builder().items(messageAsJsonElementList).build();
//when
DmaapConsumerJsonParser dmaapConsumerJsonParser = spy(new DmaapConsumerJsonParser());
@@ -586,7 +586,7 @@ class DmaapConsumerJsonParserTest {
}
@Test
- void whenPassingCorrectJsoArrayWithoutIpv4_validationNotThrowingAnException() {
+ void whenPassingCorrectJsonArrayWithoutIpv4_validationNotThrowingAnException() {
//given
String message = "[{\"event\": {"
+ "\"commonEventHeader\": { "
@@ -634,8 +634,12 @@ class DmaapConsumerJsonParserTest {
.additionalFields(new JsonObject())
.build();
- JsonArray messageAsJsonArray = (JsonArray) jsonParser.parse(message);
- MessageRouterSubscribeResponse response = ImmutableMessageRouterSubscribeResponse.builder().items(messageAsJsonArray).build();
+ List<JsonElement> messageAsJsonElementList = List.empty();
+ for(JsonElement el : jsonParser.parse(message).getAsJsonArray()) {
+ messageAsJsonElementList = messageAsJsonElementList.append(el);
+ }
+
+ MessageRouterSubscribeResponse response = ImmutableMessageRouterSubscribeResponse.builder().items(messageAsJsonElementList).build();
//when
DmaapConsumerJsonParser dmaapConsumerJsonParser = new DmaapConsumerJsonParser();