import org.slf4j.Logger;\r
import org.slf4j.LoggerFactory;\r
\r
+import java.util.List;\r
import java.util.Set;\r
\r
/**\r
final DocumentContext documentContext = JsonPath.parse(jsonMessage);\r
String jsonPathValue = null;\r
try {\r
- jsonPathValue = documentContext.read(jsonPath, String.class);\r
+ final List jsonPathValues = documentContext.read(jsonPath);\r
+ final Object pathValue = jsonPathValues.isEmpty() ? null : jsonPathValues.get(0);\r
+ jsonPathValue = pathValue instanceof Number ? pathValue.toString() : (String) pathValue;\r
} catch (PathNotFoundException ex) {\r
LOG.info("Unable to find json Path: {}. Exception: {}, Json Message: {}", jsonPath, ex, jsonMessage);\r
}\r
\r
package org.openecomp.dcae.apod.analytics.common;\r
\r
+import com.fasterxml.jackson.databind.ObjectMapper;\r
+import com.google.common.base.Suppliers;\r
+import org.junit.BeforeClass;\r
import org.openecomp.dcae.apod.analytics.common.service.processor.TestEarlyTerminatingProcessor;\r
import org.openecomp.dcae.apod.analytics.common.service.processor.TestMessageProcessor1;\r
import org.openecomp.dcae.apod.analytics.common.service.processor.TestMessageProcessor2;\r
+import org.openecomp.dcae.apod.analytics.model.util.json.AnalyticsModelObjectMapperSupplier;\r
import org.openecomp.dcae.apod.analytics.test.BaseDCAEAnalyticsUnitTest;\r
\r
/**\r
\r
protected static final String CEF_MESSAGE_FILE_PATH = "data/json/cef/cef_message.json";\r
\r
+ protected static ObjectMapper objectMapper;\r
+\r
+ /**\r
+ * Before running test cases need to assign object mapper.\r
+ */\r
+ @BeforeClass\r
+ public static void beforeClass() {\r
+ final AnalyticsModelObjectMapperSupplier analyticsModelObjectMapperSupplier =\r
+ new AnalyticsModelObjectMapperSupplier();\r
+ objectMapper = Suppliers.memoize(analyticsModelObjectMapperSupplier).get();\r
+ }\r
+\r
/*\r
* Test implementation for {@link CDAPAppSettings}\r
*/\r
public Set<Option> options() {\r
\r
// Json Path exceptions are suppressed, also missing properties are tolerated\r
- return EnumSet.of(Option.DEFAULT_PATH_LEAF_TO_NULL, Option.SUPPRESS_EXCEPTIONS);\r
+ return EnumSet.of(Option.DEFAULT_PATH_LEAF_TO_NULL, Option.SUPPRESS_EXCEPTIONS,\r
+ Option.ALWAYS_RETURN_LIST);\r
}\r
});\r
\r
\r
final Set<Option> configurationOptions = configuration.getOptions();\r
assertThat(configurationOptions,\r
- containsInAnyOrder(Option.DEFAULT_PATH_LEAF_TO_NULL, Option.SUPPRESS_EXCEPTIONS));\r
+ containsInAnyOrder(Option.DEFAULT_PATH_LEAF_TO_NULL, Option.SUPPRESS_EXCEPTIONS,\r
+ Option.ALWAYS_RETURN_LIST));\r
}\r
\r
}\r