Class: Gitlab::Ci::Parsers::Sbom::Cyclonedx

Inherits:
Object
  • Object
show all
Defined in:
lib/gitlab/ci/parsers/sbom/cyclonedx.rb

Instance Method Summary collapse

Constructor Details

#initialize(project: nil) ⇒ Cyclonedx

Returns a new instance of Cyclonedx.



8
9
10
# File 'lib/gitlab/ci/parsers/sbom/cyclonedx.rb', line 8

def initialize(project: nil)
  @project = project
end

Instance Method Details

#parse!(blob, sbom_report) ⇒ Object



12
13
14
15
16
17
18
19
20
21
# File 'lib/gitlab/ci/parsers/sbom/cyclonedx.rb', line 12

def parse!(blob, sbom_report)
  @report = sbom_report
  @data = Gitlab::Json.parse(blob)

  return unless valid?

  parse_report
rescue JSON::ParserError => e
  report.add_error("Report JSON is invalid: #{e}")
end