From fe4293906eb759d8e2923ac30b940ae8b6061db9 Mon Sep 17 00:00:00 2001 From: monsieurswag Date: Mon, 15 Apr 2024 19:05:52 +0200 Subject: [PATCH] Update data-model for future library management refactoring --- documentation/architecture/data-model.md | 23 +++++++++++++++++------ 1 file changed, 17 insertions(+), 6 deletions(-) diff --git a/documentation/architecture/data-model.md b/documentation/architecture/data-model.md index 6e0909c92..c7f805ac1 100644 --- a/documentation/architecture/data-model.md +++ b/documentation/architecture/data-model.md @@ -36,6 +36,7 @@ erDiagram ROOT_FOLDER ||--o{ FRAMEWORK : contains ROOT_FOLDER ||--o{ REFERENCE_CONTROL : contains ROOT_FOLDER ||--o{ LIBRARY : contains + ROOT_FOLDER ||--o{ IMPORTED_LIBRARY : contains ROOT_FOLDER ||--o{ USER : contains ROOT_FOLDER ||--o{ USER_GROUP : contains ROOT_FOLDER ||--o{ ROLE : contains @@ -427,7 +428,9 @@ NameDescriptionMixin <|-- RiskScenario AbstractBaseModel <|-- NameDescriptionMixin NameDescriptionMixin <|-- ReferentialObjectMixin FolderMixin <|-- ReferentialObjectMixin -ReferentialObjectMixin <|-- Library +ReferentialObjectMixin <|-- LibraryMixin +LibraryMixin <|-- Library +LibraryMixin <|-- ImportedLibrary ReferentialObjectMixin <|-- Threat ReferentialObjectMixin <|-- ReferenceControl ReferentialObjectMixin <|-- RiskMatrix @@ -464,23 +467,31 @@ namespace ReferentialObjects { +display_long() str } - class Library { + class LibraryMixin { +CharField copyright +IntegerField version +CharField provider +CharField packager +Library[] dependencies + } + + class Library { + +CharField hash_checksum + +BinaryField content + } + + class ImportedLibrary { +reference_count() int } class Threat { - +Library library + +ImportedLibrary library +is_deletable() bool +frameworks() Framework[] } class ReferenceControl { - +Library library + +ImportedLibrary library +CharField category +JSONField typical_evidence +is_deletable() bool @@ -488,7 +499,7 @@ namespace ReferentialObjects { } class RiskMatrix { - +Library library + +ImportedLibrary library +JSONField json_definition +BooleanField is_enabled +CharField provider @@ -501,7 +512,7 @@ namespace ReferentialObjects { } class Framework { - +Library library + +ImportedLibrary library +int get_next_order_id(obj_type, _parent_urn) +is_deletable() bool }