1717 */
1818
1919use crate :: errors:: BomError ;
20+ use crate :: models:: bom:: SpecVersion ;
2021use crate :: {
2122 models:: { self } ,
2223 utilities:: { convert_optional, try_convert_optional} ,
@@ -46,7 +47,7 @@ struct Vulnerabilities();
4647#[ serde( rename_all = "camelCase" ) ]
4748pub ( crate ) struct Bom {
4849 bom_format : BomFormat ,
49- spec_version : String ,
50+ spec_version : SpecVersion ,
5051 version : Option < u32 > ,
5152 serial_number : Option < UrnUuid > ,
5253 #[ serde( skip_serializing_if = "Option::is_none" ) ]
@@ -72,7 +73,7 @@ impl From<models::bom::Bom> for Bom {
7273 fn from(other: models::bom::Bom) -> Self {
7374 Self {
7475 bom_format: BomFormat::CycloneDX,
75- spec_version: "1.3".to_string() ,
76+ spec_version: SpecVersion::V1_3 ,
7677 version: Some(other.version),
7778 serial_number: convert_optional(other.serial_number),
7879 metadata: convert_optional(other.metadata),
@@ -94,7 +95,7 @@ impl TryFrom<models::bom::Bom> for Bom {
9495 fn try_from ( other : models:: bom:: Bom ) -> Result < Self , Self :: Error > {
9596 Ok ( Self {
9697 bom_format : BomFormat :: CycloneDX ,
97- spec_version : "1.3" . to_string ( ) ,
98+ spec_version : SpecVersion :: V1_3 ,
9899 version : Some ( other. version ) ,
99100 serial_number : convert_optional ( other. serial_number ) ,
100101 metadata : try_convert_optional ( other. metadata ) ?,
@@ -329,7 +330,7 @@ impl FromXmlDocument for Bom {
329330 } ) ?;
330331 Ok ( Self {
331332 bom_format : BomFormat :: CycloneDX ,
332- spec_version : "1.3" . to_string ( ) ,
333+ spec_version : SpecVersion :: V1_3 ,
333334 version,
334335 serial_number,
335336 metadata,
@@ -387,7 +388,7 @@ pub(crate) mod test {
387388 pub ( crate ) fn minimal_bom_example ( ) -> Bom {
388389 Bom {
389390 bom_format : BomFormat :: CycloneDX ,
390- spec_version : "1.3" . to_string ( ) ,
391+ spec_version : SpecVersion :: V1_3 ,
391392 version : Some ( 1 ) ,
392393 serial_number : Some ( UrnUuid ( "fake-uuid" . to_string ( ) ) ) ,
393394 metadata : None ,
@@ -404,7 +405,7 @@ pub(crate) mod test {
404405 pub ( crate ) fn full_bom_example ( ) -> Bom {
405406 Bom {
406407 bom_format : BomFormat :: CycloneDX ,
407- spec_version : "1.3" . to_string ( ) ,
408+ spec_version : SpecVersion :: V1_3 ,
408409 version : Some ( 1 ) ,
409410 serial_number : Some ( UrnUuid ( "fake-uuid" . to_string ( ) ) ) ,
410411 metadata : Some ( example_metadata ( ) ) ,
0 commit comments