From 363d9a6fea48bf6f34e4f1d4ecb37d33812c7626 Mon Sep 17 00:00:00 2001 From: JvD_Ericsson Date: Thu, 2 Jun 2022 10:46:40 +0100 Subject: Service Import - Read metadata from csar Also exports metadata to the tosca template and fixes service metadata not being set when the create button is clicked Issue-ID: SDC-4044 Signed-off-by: JvD_Ericsson Change-Id: I6f8428d9ed385335c05e7b994e622229ea00342b --- catalog-ui/src/app/utils/file-utils.ts | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'catalog-ui/src/app/utils/file-utils.ts') diff --git a/catalog-ui/src/app/utils/file-utils.ts b/catalog-ui/src/app/utils/file-utils.ts index d726736bd4..4b6f330354 100644 --- a/catalog-ui/src/app/utils/file-utils.ts +++ b/catalog-ui/src/app/utils/file-utils.ts @@ -66,6 +66,24 @@ export class FileUtils { "cancelable": true }); downloadLink.dispatchEvent(clickEvent); + } + public getEntryDefinitionFileNameFromCsarBlob = (csarBlob:Blob):Promise => { + let JSZip = require("jszip"); + return JSZip.loadAsync(csarBlob).then(zip => { + return zip.file("TOSCA-Metadata/TOSCA.meta").async("string"); + }).then((toscaMetaData: string) => { + let fileEntities:Array = toscaMetaData.replace("\r", "").split("\n"); + let entryDefinitionFilename:string = fileEntities.find(element => !element.search("Entry-Definitions")) + .replace("Entry-Definitions:", "").trim(); + return entryDefinitionFilename; + }); + } + + public getFileNameDataFromCsarBlob = (csarBlob:Blob, fileName:string):Promise => { + let JSZip = require("jszip"); + return JSZip.loadAsync(csarBlob).then(zip => { + return zip.file(fileName).async("string"); + }); } } -- cgit 1.2.3-korg