diff options
author | JoeOLeary <joseph.o.leary@est.tech> | 2019-03-13 16:26:21 +0000 |
---|---|---|
committer | JoeOLeary <joseph.o.leary@est.tech> | 2019-03-13 16:26:21 +0000 |
commit | b49956cc49e34b83ffa8016c3ae026a2fad62c81 (patch) | |
tree | 12358c84a79d376f0db2a4c8bbb29d5e7d9be50d /src | |
parent | 88adbc830c24f309c19fc5874654cc1cfaebc600 (diff) |
Update mapping
*Add support for multiple measvalue
*Fix failure when optional attribute swVersion missing
Issue-ID: DCAEGEN2-1038
Change-Id: I2408c0134a5d5bb2d90ad85ae2eac600fa89d52b
Signed-off-by: JoeOLeary <joseph.o.leary@est.tech>
Diffstat (limited to 'src')
4 files changed, 99 insertions, 6 deletions
diff --git a/src/main/resources/mapping.ftl b/src/main/resources/mapping.ftl index 0b35c54..2819de6 100644 --- a/src/main/resources/mapping.ftl +++ b/src/main/resources/mapping.ftl @@ -69,19 +69,20 @@ <#macro measValuesList measInfo> [ +<#list measInfo.measValue as measValue> { - "measObjInstId": "${measInfo.measValue.@measObjLdn[0]!}", - "suspectFlag": "${measInfo.measValue.suspect[0]! "false"}", + "measObjInstId": "${measValue.@measObjLdn[0]!}", + "suspectFlag": "${measValue.suspect[0]! "false"}", "measResults": [ - <#if measInfo.measValue.r?has_content> - <#list measInfo.measValue.r as r> + <#if measValue.r?has_content> + <#list measValue.r as r> { "p": ${r.@p}, "sValue": "${r}" }<#sep>,</#sep> </#list> <#else> - <#list measInfo.measValue.measResults?split(" ") as r> + <#list measValue.measResults?split(" ") as r> { "p":${r?index+1}, "sValue": "${r}" @@ -90,6 +91,8 @@ </#if> ] } +<#sep>,</#sep> +</#list> ] </#macro> @@ -114,7 +117,7 @@ "granularityPeriod": ${measData.measInfo.granPeriod.@endTime[0]!?datetime?long?c}, "measuredEntityUserName": "${measData.managedElement.@userLabel[0]!}", "measuredEntityDn": "${measData.managedElement.@localDn}", - "measuredEntitySoftwareVersion": "${measData.managedElement.@swVersion}", + "measuredEntitySoftwareVersion": "${measData.managedElement.@swVersion[0]!}", "measInfoList": <@measInfoList/> } </#macro> diff --git a/src/test/resources/mapper_test/mapping_data/valid_data/meas_type_and_r_many_meas_values.xml b/src/test/resources/mapper_test/mapping_data/valid_data/meas_type_and_r_many_meas_values.xml new file mode 100644 index 0000000..1b1dc26 --- /dev/null +++ b/src/test/resources/mapper_test/mapping_data/valid_data/meas_type_and_r_many_meas_values.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<measCollecFile xmlns="http://www.3gpp.org/ftp/specs/archive/32_series/32.435#measCollec"> + <fileHeader dnPrefix="some dnPrefix" vendorName="FooBar Ltd" + fileFormatVersion="32.435 V10.0"> + <fileSender localDn="Dublin"/> + <measCollec beginTime="2018-10-02T12:00:00+01:00"/> + </fileHeader> + <measData> + <managedElement swVersion="r0.1" localDn="Dublin"/> + <measInfo measInfoId="some measInfoId"> + <job jobId="some Job Id"/> + <granPeriod endTime="2018-10-02T12:15:00Z" duration="PT900S"/> + <repPeriod duration="PT900S"/> + <measType p="1">a</measType> + <measType p="2">b</measType> + <measType p="3">c</measType> + <measValue measObjLdn="some measObjLdn"> + <r p="1">86</r> + <r p="2">67</r> + <r p="3">14</r> + <suspect>false</suspect> + </measValue> + <measValue measObjLdn="some other measObjLdn"> + <r p="1">5</r> + <r p="2">6</r> + <r p="3">14</r> + <suspect>false</suspect> + </measValue> + </measInfo> + </measData> + <fileFooter> + <measCollec endTime="2018-10-02T12:15:00+01:00"/> + </fileFooter> +</measCollecFile> diff --git a/src/test/resources/mapper_test/mapping_data/valid_data/meas_types_and_meas_results_many_meas_values.xml b/src/test/resources/mapper_test/mapping_data/valid_data/meas_types_and_meas_results_many_meas_values.xml new file mode 100644 index 0000000..4ed9f95 --- /dev/null +++ b/src/test/resources/mapper_test/mapping_data/valid_data/meas_types_and_meas_results_many_meas_values.xml @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="UTF-8"?> +<measCollecFile xmlns="http://www.3gpp.org/ftp/specs/archive/32_series/32.435#measCollec"> + <fileHeader dnPrefix="some dnPrefix" vendorName="FooBar Ltd" + fileFormatVersion="32.435 V10.0"> + <fileSender localDn="Dublin"/> + <measCollec beginTime="2018-10-02T12:00:00+01:00"/> + </fileHeader> + <measData> + <managedElement swVersion="r0.1" localDn="Dublin"/> + <measInfo measInfoId="some measInfoId"> + <job jobId="jobId"/> + <granPeriod endTime="2018-10-02T12:15:00Z" duration="PT900S"/> + <repPeriod duration="PT900S"/> + <measTypes>a b c</measTypes> + <measValue measObjLdn="objLdn"> + <measResults>76 27 98</measResults> + <suspect>false</suspect> + </measValue> + <measValue measObjLdn="some other objLdn"> + <measResults>1 2 9</measResults> + <suspect>false</suspect> + </measValue> + </measInfo> + </measData> + <fileFooter> + <measCollec endTime="2018-10-02T12:15:00+01:00"/> + </fileFooter> +</measCollecFile> diff --git a/src/test/resources/mapper_test/mapping_data/valid_data/no_sw_version.xml b/src/test/resources/mapper_test/mapping_data/valid_data/no_sw_version.xml new file mode 100644 index 0000000..bc435c0 --- /dev/null +++ b/src/test/resources/mapper_test/mapping_data/valid_data/no_sw_version.xml @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="UTF-8"?> +<measCollecFile xmlns="http://www.3gpp.org/ftp/specs/archive/32_series/32.435#measCollec"> + <fileHeader dnPrefix="some dnPrefix" vendorName="FooBar Ltd" + fileFormatVersion="32.435 V10.0"> + <fileSender localDn="Dublin"/> + <measCollec beginTime="2018-10-02T12:00:00+01:00"/> + </fileHeader> + <measData> + <managedElement localDn="Dublin"/> + <measInfo measInfoId="some measInfoId"> + <job jobId="some Job Id"/> + <granPeriod endTime="2018-10-02T12:15:00Z" duration="PT900S"/> + <repPeriod duration="PT900S"/> + <measType p="1">a</measType> + <measType p="2">b</measType> + <measType p="3">c</measType> + <measValue measObjLdn="some measObjLdn"> + <r p="1">86</r> + <r p="2">67</r> + <r p="3">14</r> + <suspect>false</suspect> + </measValue> + </measInfo> + </measData> + <fileFooter> + <measCollec endTime="2018-10-02T12:15:00+01:00"/> + </fileFooter> +</measCollecFile> |