diff options
author | Ahmedeldeeb50 <ahmed.eldeeb.ext@orange.com> | 2020-09-21 10:39:15 +0200 |
---|---|---|
committer | Ahmed Eldeeb <ahmed.eldeeb.ext@orange.com> | 2020-09-21 10:34:45 +0000 |
commit | 31ff2bb854c096cb6c178b2e80c538db73cb2c34 (patch) | |
tree | 271e863137ed7abcc3900a2971817a203e1d63f8 /cds-ui/designer-client/src/app/modules/feature-modules/packages/package-creation/template-mapping/utils/ParserFactory/XmlParser.ts | |
parent | fbbc9bceb83de1ade5b4b6a666546aba24a14e2f (diff) |
Support parsing of XML files within Velocity and Jinja Template.
Issue-ID: CCSDK-2769
Signed-off-by: Ahmedeldeeb50 <ahmed.eldeeb.ext@orange.com>
Change-Id: Ib79af3f7621d14176700d80e987c0cdf5a8a11a6
Diffstat (limited to 'cds-ui/designer-client/src/app/modules/feature-modules/packages/package-creation/template-mapping/utils/ParserFactory/XmlParser.ts')
-rw-r--r-- | cds-ui/designer-client/src/app/modules/feature-modules/packages/package-creation/template-mapping/utils/ParserFactory/XmlParser.ts | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/cds-ui/designer-client/src/app/modules/feature-modules/packages/package-creation/template-mapping/utils/ParserFactory/XmlParser.ts b/cds-ui/designer-client/src/app/modules/feature-modules/packages/package-creation/template-mapping/utils/ParserFactory/XmlParser.ts new file mode 100644 index 000000000..5cb9c9f81 --- /dev/null +++ b/cds-ui/designer-client/src/app/modules/feature-modules/packages/package-creation/template-mapping/utils/ParserFactory/XmlParser.ts @@ -0,0 +1,33 @@ +import { Parser } from './Parser'; + +export class XmlParser implements Parser { + getVariables(fileContent: string): string[] { + const variables = []; + const xmlSplit = fileContent.split('$'); + for (const val of xmlSplit) { + const res = val.substring(0, val.indexOf('</')); + if (res && res.length > 0) { + variables.push(res); + } + + } + return variables; + } + +} + +/* + +<vlb-business-vnf-onap-plugin xmlns="urn:opendaylight:params:xml:ns:yang:vlb-business-vnf-onap-plugin"> + <vdns-instances> + <vdns-instance> + <ip-addr>$vdns_int_private_ip_0</ip-addr> + <oam-ip-addr>$vdns_onap_private_ip_0</oam-ip-addr> + <tag>aaaa</tag> + <enabled>false</enabled> + <tag>dddd</tag> + </vdns-instance> + </vdns-instances> +</vlb-business-vnf-onap-plugin> + +*/ |