diff options
author | Rishabh Bhatnagar <bhatnagarrishabh4@gmail.com> | 2020-11-15 16:35:55 +0530 |
---|---|---|
committer | Rishabh Bhatnagar <bhatnagarrishabh4@gmail.com> | 2020-11-15 16:39:04 +0530 |
commit | 302f983e7b61d30e81294efb1637e82056e81732 (patch) | |
tree | b56303f20b3bfb93a23537f7dee9a72880f4b508 /rdfloader/parser2v2/parse_package.go | |
parent | 2ddb287ddc7219c0542a5d955380680c42de3099 (diff) | |
download | spdx-tools-302f983e7b61d30e81294efb1637e82056e81732.tar.gz |
Allow Multipart Declaration for File and Package
- Files and Packages can now be declared in several parts in different parent tags
Signed-off-by: Rishabh Bhatnagar <bhatnagarrishabh4@gmail.com>
Diffstat (limited to 'rdfloader/parser2v2/parse_package.go')
-rw-r--r-- | rdfloader/parser2v2/parse_package.go | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/rdfloader/parser2v2/parse_package.go b/rdfloader/parser2v2/parse_package.go index 20047a6..5be9631 100644 --- a/rdfloader/parser2v2/parse_package.go +++ b/rdfloader/parser2v2/parse_package.go @@ -19,6 +19,10 @@ func (parser *rdfParser2_2) getPackageFromNode(packageNode *gordfParser.Node) (p } pkg.PackageSPDXIdentifier = eId // 3.2 + if existingPkg := parser.doc.Packages[eId]; existingPkg != nil { + pkg = existingPkg + } + // iterate over all the triples associated with the provided package packageNode. for _, subTriple := range parser.nodeToTriples(packageNode) { switch subTriple.Predicate.ID { @@ -125,6 +129,7 @@ func (parser *rdfParser2_2) getPackageFromNode(packageNode *gordfParser.Node) (p } } + parser.doc.Packages[pkg.PackageSPDXIdentifier] = pkg return pkg, nil } |