X-Git-Url: https://osm.etsi.org/gitweb/?p=osm%2FUI.git;a=blobdiff_plain;f=skyquake%2Fplugins%2Fcomposer%2Fsrc%2Fsrc%2Flibraries%2Fmodel%2FDescriptorModelMetaFactory.js;fp=skyquake%2Fplugins%2Fcomposer%2Fsrc%2Fsrc%2Flibraries%2Fmodel%2FDescriptorModelMetaFactory.js;h=f7e8562653db9d15a0dd672ef0cf01156a7bbf23;hp=1ba891256e6db5bb4b7cef4adaa941b8de88788d;hb=03156e335275de1dafbc2a816e98006afdf249bf;hpb=f2dc2462571800e62cba969964de621dca09299c diff --git a/skyquake/plugins/composer/src/src/libraries/model/DescriptorModelMetaFactory.js b/skyquake/plugins/composer/src/src/libraries/model/DescriptorModelMetaFactory.js index 1ba891256..f7e856265 100644 --- a/skyquake/plugins/composer/src/src/libraries/model/DescriptorModelMetaFactory.js +++ b/skyquake/plugins/composer/src/src/libraries/model/DescriptorModelMetaFactory.js @@ -15,6 +15,7 @@ const assign = Object.assign; const exportInnerTypesMap = { 'constituent-vnfd': 'nsd.constituent-vnfd', + 'config-parameter-map': 'nsd.config-parameter-map', 'vdu': 'vnfd.vdu' }; @@ -121,7 +122,7 @@ function serialize_choice(data) { let keys = Object.keys(data); if (keys) { const chosen = this.properties.find( - c => c.type === 'case' && c.properties && c.properties.some(p => keys.indexOf(p.name) > -1)); + c => c.type === 'case' && c.properties && c.properties.some(p => keys.indexOf(p.name) > -1 && data[p.name])); return chosen && serializeAll(chosen.properties, data); } return null; @@ -188,6 +189,10 @@ export default { parentMap[':meta'] = parentObj; const properties = parentObj && parentObj.properties ? parentObj.properties : []; properties.forEach(p => { + const colonIndex = p.name.indexOf(':'); + if (colonIndex > 0) { + p.name = p.name.slice(colonIndex+1); + } parentMap[p.name] = mapProperties({}, assign(p, { ':qualified-type': parentObj[':qualified-type'] + '.' + p.name }));