@@ -46,23 +46,21 @@ public record CBOM(@Nonnull Bom cycloneDXbom) {
4646
4747 // Merge components and dependecies
4848 public void merge (@ Nullable CBOM cbom ) {
49- if (cbom != null ) {
49+ if (cycloneDXbom != null && cbom != null && cbom . cycloneDXbom () != null ) {
5050 // components
5151 if (cbom .cycloneDXbom ().getComponents () != null ) {
52- if (this . cycloneDXbom () .getComponents () != null ) {
53- this . cycloneDXbom () .getComponents ().addAll (cbom .cycloneDXbom ().getComponents ());
52+ if (cycloneDXbom .getComponents () != null ) {
53+ cycloneDXbom .getComponents ().addAll (cbom .cycloneDXbom ().getComponents ());
5454 } else {
55- this . cycloneDXbom () .setComponents (cbom .cycloneDXbom ().getComponents ());
55+ cycloneDXbom .setComponents (cbom .cycloneDXbom ().getComponents ());
5656 }
5757 }
5858 // dependencies
5959 if (cbom .cycloneDXbom ().getDependencies () != null ) {
60- if (this .cycloneDXbom ().getDependencies () != null ) {
61- this .cycloneDXbom ()
62- .getDependencies ()
63- .addAll (cbom .cycloneDXbom ().getDependencies ());
60+ if (cycloneDXbom .getDependencies () != null ) {
61+ cycloneDXbom .getDependencies ().addAll (cbom .cycloneDXbom ().getDependencies ());
6462 } else {
65- this . cycloneDXbom () .setDependencies (cbom .cycloneDXbom ().getDependencies ());
63+ cycloneDXbom .setDependencies (cbom .cycloneDXbom ().getDependencies ());
6664 }
6765 }
6866 }
@@ -90,6 +88,10 @@ public void merge(@Nullable CBOM cbom) {
9088 }
9189
9290 public void addMetadata (String gitUrl , String revision , String commit , String subFolder ) {
91+ if (cycloneDXbom == null ) {
92+ return ;
93+ }
94+
9395 final Metadata metadata = new Metadata ();
9496 metadata .setTimestamp (new Date ());
9597
@@ -151,6 +153,9 @@ public void write(String fileName) throws CBOMSerializationFailed {
151153 }
152154
153155 public int getNumberOfFindings () {
156+ if (cycloneDXbom == null || cycloneDXbom .getComponents () == null ) {
157+ return 0 ;
158+ }
154159 return cycloneDXbom .getComponents ().stream ()
155160 .mapToInt (component -> component .getEvidence ().getOccurrences ().size ())
156161 .sum ();
0 commit comments