spdx_tools.spdx3.model.security.vuln_assessment_relationship

 1# SPDX-FileCopyrightText: 2023 spdx contributors
 2#
 3# SPDX-License-Identifier: Apache-2.0
 4from abc import abstractmethod
 5from datetime import datetime
 6
 7from beartype.typing import Optional
 8
 9from spdx_tools.common.typing.dataclass_with_properties import dataclass_with_properties
10from spdx_tools.spdx3.model import Relationship
11
12
13@dataclass_with_properties
14class VulnAssessmentRelationship(Relationship):
15    assessed_element: Optional[str] = None  # id of the element
16    published_time: Optional[datetime] = None
17    supplied_by: Optional[str] = None
18    modified_time: Optional[datetime] = None
19    withdrawn_time: Optional[datetime] = None
20
21    @abstractmethod
22    def __init__(self):
23        pass
@dataclass_with_properties
class VulnAssessmentRelationship(spdx_tools.spdx3.model.relationship.Relationship):
14@dataclass_with_properties
15class VulnAssessmentRelationship(Relationship):
16    assessed_element: Optional[str] = None  # id of the element
17    published_time: Optional[datetime] = None
18    supplied_by: Optional[str] = None
19    modified_time: Optional[datetime] = None
20    withdrawn_time: Optional[datetime] = None
21
22    @abstractmethod
23    def __init__(self):
24        pass
assessed_element: Optional[str]
47    def get_field(self) -> field_type:
48        return getattr(self, f"_{field_name}")
published_time: Optional[datetime.datetime]
47    def get_field(self) -> field_type:
48        return getattr(self, f"_{field_name}")
supplied_by: Optional[str]
47    def get_field(self) -> field_type:
48        return getattr(self, f"_{field_name}")
modified_time: Optional[datetime.datetime]
47    def get_field(self) -> field_type:
48        return getattr(self, f"_{field_name}")
withdrawn_time: Optional[datetime.datetime]
47    def get_field(self) -> field_type:
48        return getattr(self, f"_{field_name}")