aboutsummaryrefslogtreecommitdiff
path: root/rdfloader/parser2v2/parse_package.go
diff options
context:
space:
mode:
Diffstat (limited to 'rdfloader/parser2v2/parse_package.go')
-rw-r--r--rdfloader/parser2v2/parse_package.go20
1 files changed, 12 insertions, 8 deletions
diff --git a/rdfloader/parser2v2/parse_package.go b/rdfloader/parser2v2/parse_package.go
index dde6e70..02dd251 100644
--- a/rdfloader/parser2v2/parse_package.go
+++ b/rdfloader/parser2v2/parse_package.go
@@ -4,9 +4,10 @@ package parser2v2
import (
"fmt"
+ "strings"
+
gordfParser "github.com/spdx/gordf/rdfloader/parser"
"github.com/spdx/tools-golang/spdx"
- "strings"
)
func (parser *rdfParser2_2) getPackageFromNode(packageNode *gordfParser.Node) (pkg *spdx.Package2_2, err error) {
@@ -30,7 +31,7 @@ func (parser *rdfParser2_2) getPackageFromNode(packageNode *gordfParser.Node) (p
parser.cache[packageNode.ID].Color = GREY
// setting state color to black to indicate when we're done parsing this node.
- defer func(){parser.cache[packageNode.ID].Color = BLACK}();
+ defer func() { parser.cache[packageNode.ID].Color = BLACK }()
// setting the SPDXIdentifier for the package.
eId, err := ExtractElementID(getLastPartOfURI(packageNode.ID))
@@ -300,13 +301,16 @@ func (parser *rdfParser2_2) setPackageChecksum(pkg *spdx.Package2_2, node *gordf
if err != nil {
return fmt.Errorf("error getting checksum algorithm and value from %v", node)
}
+ if pkg.PackageChecksums == nil {
+ pkg.PackageChecksums = make(map[spdx.ChecksumAlgorithm2_2]spdx.Checksum2_2)
+ }
switch checksumAlgorithm {
- case "MD5":
- pkg.PackageChecksumMD5 = checksumValue
- case "SHA1":
- pkg.PackageChecksumSHA1 = checksumValue
- case "SHA256":
- pkg.PackageChecksumSHA256 = checksumValue
+ case spdx.MD5:
+ pkg.PackageChecksums[spdx.MD5] = spdx.Checksum2_2{Algorithm: spdx.MD5, Value: checksumValue}
+ case spdx.SHA1:
+ pkg.PackageChecksums[spdx.SHA1] = spdx.Checksum2_2{Algorithm: spdx.SHA1, Value: checksumValue}
+ case spdx.SHA256:
+ pkg.PackageChecksums[spdx.SHA256] = spdx.Checksum2_2{Algorithm: spdx.SHA256, Value: checksumValue}
default:
return fmt.Errorf("unknown checksumAlgorithm %s while parsing a package", checksumAlgorithm)
}