Skip to content

Commit 0ea594f

Browse files
committed
wip
Signed-off-by: Jan Kowalleck <[email protected]>
1 parent 2b25922 commit 0ea594f

File tree

1 file changed

+24
-11
lines changed

1 file changed

+24
-11
lines changed

cyclonedx/model/definition.py

Lines changed: 24 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -117,10 +117,10 @@ def __init__(
117117
self.external_references = external_references or () # type:ignore[assignment]
118118

119119
@property
120-
@serializable.json_name('bom-ref')
121120
@serializable.type_mapping(BomRef)
122-
@serializable.xml_attribute()
121+
@serializable.json_name('bom-ref')
123122
@serializable.xml_name('bom-ref')
123+
@serializable.xml_attribute()
124124
def bom_ref(self) -> BomRef:
125125
"""
126126
An optional identifier which can be used to reference the requirement elsewhere in the BOM.
@@ -277,8 +277,8 @@ def __hash__(self) -> int:
277277
return hash(self.__comparable_tuple())
278278

279279
def __repr__(self) -> str:
280-
return f'<Requirement bom-ref={self._bom_ref}, identifier={self.identifier}, title={self.title}, ' \
281-
f'text={self.text}, parent={self.parent}>'
280+
return f'<Requirement bom-ref={self._bom_ref}, identifier={self.identifier}, ' \
281+
f'title={self.title}, text={self.text}, parent={self.parent}>'
282282

283283

284284
@serializable.serializable_class
@@ -302,10 +302,10 @@ def __init__(
302302
self.requirements = requirements or () # type:ignore[assignment]
303303

304304
@property
305-
@serializable.json_name('bom-ref')
306305
@serializable.type_mapping(BomRef)
307-
@serializable.xml_attribute()
306+
@serializable.json_name('bom-ref')
308307
@serializable.xml_name('bom-ref')
308+
@serializable.xml_attribute()
309309
def bom_ref(self) -> BomRef:
310310
"""
311311
An optional identifier which can be used to reference the level elsewhere in the BOM.
@@ -390,8 +390,8 @@ def __hash__(self) -> int:
390390
return hash(self.__comparable_tuple())
391391

392392
def __repr__(self) -> str:
393-
return f'<Level bom-ref={self.bom_ref}, identifier={self.identifier}, title={self.title}, ' \
394-
f'description={self.description}>'
393+
return f'<Level bom-ref={self.bom_ref}, identifier={self.identifier}, ' \
394+
f'title={self.title}, description={self.description}>'
395395

396396

397397
@serializable.serializable_class
@@ -411,6 +411,7 @@ def __init__(
411411
requirements: Optional[Iterable[Requirement]] = None,
412412
levels: Optional[Iterable[Level]] = None,
413413
external_references: Optional[Iterable['ExternalReference']] = None
414+
# TODO: signature
414415
) -> None:
415416
self._bom_ref = _bom_ref_from_str(bom_ref)
416417
self.name = name
@@ -420,12 +421,13 @@ def __init__(
420421
self.requirements = requirements or () # type:ignore[assignment]
421422
self.levels = levels or () # type:ignore[assignment]
422423
self.external_references = external_references or () # type:ignore[assignment]
424+
# TODO: signature
423425

424426
@property
425-
@serializable.json_name('bom-ref')
426427
@serializable.type_mapping(BomRef)
427-
@serializable.xml_attribute()
428+
@serializable.json_name('bom-ref')
428429
@serializable.xml_name('bom-ref')
430+
@serializable.xml_attribute()
429431
def bom_ref(self) -> BomRef:
430432
"""
431433
An optional identifier which can be used to reference the standard elsewhere in the BOM. Every bom-ref MUST be
@@ -530,6 +532,16 @@ def external_references(self) -> 'SortedSet[ExternalReference]':
530532
def external_references(self, external_references: Iterable[ExternalReference]) -> None:
531533
self._external_references = SortedSet(external_references)
532534

535+
# @property
536+
# @serializable.xml_sequence(8)
537+
# # MUST NOT RENDER FOR XML -- this is JSON only
538+
# def signature(self) -> ...:
539+
# ...
540+
#
541+
# @signature.setter
542+
# def levels(self, signature: ...) -> None:
543+
# ...
544+
533545
def __comparable_tuple(self) -> _ComparableTuple:
534546
# all properties are optional - so need to apply all, in hope that one is unique
535547
return _ComparableTuple((
@@ -553,7 +565,8 @@ def __hash__(self) -> int:
553565
return hash(self.__comparable_tuple())
554566

555567
def __repr__(self) -> str:
556-
return f'<Standard bom-ref={self.bom_ref}, name={self.name}, version={self.version}, ' \
568+
return f'<Standard bom-ref={self.bom_ref}, ' \
569+
f'name={self.name}, version={self.version}, ' \
557570
f'description={self.description}, owner={self.owner}>'
558571

559572

0 commit comments

Comments
 (0)