From c62f765c1ed65829e126807e1e7a91388bb1c322 Mon Sep 17 00:00:00 2001 From: Mateusz Gołuchowski Date: Thu, 16 Jul 2020 11:00:00 +0200 Subject: Adjust pm-mapper to accept new schema. - Replaced 28.550 schema and template with 28.532 standard - Adjusted class for new schema - Adjusted xml files for tests - validate method will now throw exception when given fileFormatType is not supported Issue-ID: DCAEGEN2-2308 Change-Id: I375db2004887f1f634adac31d4d1af3675f5911c Signed-off-by: Mateusz Goluchowski --- .../resources/schemas/org.3GPP.28.532#measData | 131 ++++++++++++++++++++ .../resources/schemas/org.3GPP.28.550#measData | 131 -------------------- .../resources/templates/org.3GPP.28.532#measData | 132 +++++++++++++++++++++ .../resources/templates/org.3GPP.28.550#measData | 132 --------------------- 4 files changed, 263 insertions(+), 263 deletions(-) create mode 100644 src/main/resources/schemas/org.3GPP.28.532#measData delete mode 100644 src/main/resources/schemas/org.3GPP.28.550#measData create mode 100644 src/main/resources/templates/org.3GPP.28.532#measData delete mode 100644 src/main/resources/templates/org.3GPP.28.550#measData (limited to 'src/main/resources') diff --git a/src/main/resources/schemas/org.3GPP.28.532#measData b/src/main/resources/schemas/org.3GPP.28.532#measData new file mode 100644 index 0000000..0b4a8aa --- /dev/null +++ b/src/main/resources/schemas/org.3GPP.28.532#measData @@ -0,0 +1,131 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/main/resources/schemas/org.3GPP.28.550#measData b/src/main/resources/schemas/org.3GPP.28.550#measData deleted file mode 100644 index d3a9fef..0000000 --- a/src/main/resources/schemas/org.3GPP.28.550#measData +++ /dev/null @@ -1,131 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/src/main/resources/templates/org.3GPP.28.532#measData b/src/main/resources/templates/org.3GPP.28.532#measData new file mode 100644 index 0000000..a845cc8 --- /dev/null +++ b/src/main/resources/templates/org.3GPP.28.532#measData @@ -0,0 +1,132 @@ +<#ftl> +<#-- + ============LICENSE_START======================================================= + Copyright (C) 2019-2020 Nordix Foundation. + ================================================================================ + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + SPDX-License-Identifier: Apache-2.0 + ============LICENSE_END========================================================= + --> +<#compress> +<#assign fileHeader = xml.measDataFile.fileHeader> +<#assign fileFooter = xml.measDataFile.fileFooter> +<#assign measData = xml.measDataFile.measData> +<#setting datetime_format="iso"> +{ + "event": { + "commonEventHeader": <@commonEventHeader/> + <#if measData?has_content>, + "perf3gppFields": <@perf3gppFields/> + + } +} + + +<#macro commonEventHeader> +{ + "domain": "perf3gpp", + "eventId": "${eventId}", + "sequence": 0, + "eventName": "perf3gpp_${metadata.productName}-${metadata.vendorName}_pmMeasResult", + "sourceName": "${metadata.sourceName}", + "reportingEntityName": "", + "priority": "Normal", + "startEpochMicrosec": ${fileHeader.measData.@beginTime?datetime?long?c}, + "lastEpochMicrosec": ${fileFooter.measData.@endTime?datetime?long?c}, + "version": "4.0", + "vesEventListenerVersion": "7.1", + "timeZoneOffset": "${metadata.timeZoneOffset}" +} + + + +<#macro measTypes measInfo> +{ + "sMeasTypesList":[ + <#if measInfo.measType?has_content> + <#list measInfo.measType as measType> + "${measType}"<#sep>, + + <#else> + <#list measInfo.measTypes?split(" ") as measType> + "${measType}"<#sep>, + + + ] +} + + + +<#macro measValuesList measInfo> +[ +<#list measInfo.measValue as measValue> + { + "measObjInstId": "${measValue.@measObjLdn[0]!}", + "suspectFlag": "${measValue.suspect[0]! "false"}", + "measResults": [ + <#if measValue.r?has_content> + <#list measValue.r as r> + { + "p": ${r.@p}, + "sValue": "${r}" + }<#sep>, + + <#else> + <#list measValue.measResults?split(" ") as r> + { + "p":${r?index+1}, + "sValue": "${r}" + }<#sep>, + + + ] + } +<#sep>, + +] + + + +<#macro measInfoList> +[ +<#list measData.measInfo as measInfo> + { + "measInfoId": { + "sMeasInfoId": "${measInfo.@measInfoId[0]!}" + }, + "measTypes": <@measTypes measInfo/>, + "measValuesList": <@measValuesList measInfo/> + }<#sep>, + +] + + + +<#macro measDataCollection> +{ + "granularityPeriod": ${measData.measInfo.granPeriod.@endTime[0]!?datetime?long?c}, + "measuredEntityUserName": "${measData.measEntity.@userLabel[0]!}", + "measuredEntityDn": "${measData.measEntity.@localDn[0]!}", + "measuredEntitySoftwareVersion": "${measData.measEntity.@swVersion[0]!}", + "measInfoList": <@measInfoList/> +} + + +<#macro perf3gppFields> +{ + "perf3gppFieldsVersion": "1.0", + "measDataCollection": <@measDataCollection/> +} + + diff --git a/src/main/resources/templates/org.3GPP.28.550#measData b/src/main/resources/templates/org.3GPP.28.550#measData deleted file mode 100644 index 653077e..0000000 --- a/src/main/resources/templates/org.3GPP.28.550#measData +++ /dev/null @@ -1,132 +0,0 @@ -<#ftl> -<#-- - ============LICENSE_START======================================================= - Copyright (C) 2019-2020 Nordix Foundation. - ================================================================================ - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - - SPDX-License-Identifier: Apache-2.0 - ============LICENSE_END========================================================= - --> -<#compress> -<#assign fileHeader = xml.MeasDataFile.fileHeader> -<#assign fileFooter = xml.MeasDataFile.fileFooter> -<#assign measData = xml.MeasDataFile.measData> -<#setting datetime_format="iso"> -{ - "event": { - "commonEventHeader": <@commonEventHeader/> - <#if measData?has_content>, - "perf3gppFields": <@perf3gppFields/> - - } -} - - -<#macro commonEventHeader> -{ - "domain": "perf3gpp", - "eventId": "${eventId}", - "sequence": 0, - "eventName": "perf3gpp_${metadata.productName}-${metadata.vendorName}_pmMeasResult", - "sourceName": "${metadata.sourceName}", - "reportingEntityName": "", - "priority": "Normal", - "startEpochMicrosec": ${fileHeader.MeasData.@beginTime?datetime?long?c}, - "lastEpochMicrosec": ${fileFooter.MeasData.@endTime?datetime?long?c}, - "version": "4.0", - "vesEventListenerVersion": "7.1", - "timeZoneOffset": "${metadata.timeZoneOffset}" -} - - - -<#macro measTypes measInfo> -{ - "sMeasTypesList":[ - <#if measInfo.measType?has_content> - <#list measInfo.measType as measType> - "${measType}"<#sep>, - - <#else> - <#list measInfo.measTypes?split(" ") as measType> - "${measType}"<#sep>, - - - ] -} - - - -<#macro measValuesList measInfo> -[ -<#list measInfo.measValue as measValue> - { - "measObjInstId": "${measValue.@measObjLdn[0]!}", - "suspectFlag": "${measValue.suspect[0]! "false"}", - "measResults": [ - <#if measValue.r?has_content> - <#list measValue.r as r> - { - "p": ${r.@p}, - "sValue": "${r}" - }<#sep>, - - <#else> - <#list measValue.measResults?split(" ") as r> - { - "p":${r?index+1}, - "sValue": "${r}" - }<#sep>, - - - ] - } -<#sep>, - -] - - - -<#macro measInfoList> -[ -<#list measData.measInfo as measInfo> - { - "measInfoId": { - "sMeasInfoId": "${measInfo.@measInfoId[0]!}" - }, - "measTypes": <@measTypes measInfo/>, - "measValuesList": <@measValuesList measInfo/> - }<#sep>, - -] - - - -<#macro measDataCollection> -{ - "granularityPeriod": ${measData.measInfo.granPeriod.@endTime[0]!?datetime?long?c}, - "measuredEntityUserName": "${measData.measuredEntity.@userLabel[0]!}", - "measuredEntityDn": "${measData.measuredEntity.@localDn[0]!}", - "measuredEntitySoftwareVersion": "${measData.measuredEntity.@swVersion[0]!}", - "measInfoList": <@measInfoList/> -} - - -<#macro perf3gppFields> -{ - "perf3gppFieldsVersion": "1.0", - "measDataCollection": <@measDataCollection/> -} - - \ No newline at end of file -- cgit 1.2.3-korg