Skip to content

Latest commit

 

History

History
81 lines (45 loc) · 4.46 KB

File metadata and controls

81 lines (45 loc) · 4.46 KB
graph LR
    Graph["Graph"]
    Node_Definitions["Node Definitions"]
    Edge_Definitions["Edge Definitions"]
    Graph_Disk_Loader["Graph Disk Loader"]
    Graph_Retrieval_Service["Graph Retrieval Service"]
    Storage_Path_Utility["Storage Path Utility"]
    Graph -- "composes" --> Node_Definitions
    Graph -- "composes" --> Edge_Definitions
    Graph_Disk_Loader -- "instantiates" --> Graph
    Graph_Retrieval_Service -- "delegates to" --> Graph_Disk_Loader
    Graph_Retrieval_Service -- "queries" --> Storage_Path_Utility
    Storage_Path_Utility -- "provides paths to" --> Graph_Retrieval_Service
Loading

CodeBoardingDemoContact

Details

The Graph Core & Persistence subsystem is responsible for managing the in-memory representation of the IAM graph and handling its persistence, including loading from and saving to various storage formats. It provides the fundamental data structures and operations for graph manipulation.

Graph

The primary in-memory data structure representing the IAM graph, composed of nodes and edges. This is the core data model for all graph operations.

Related Classes/Methods:

Node Definitions

Defines the abstract and concrete classes for different types of IAM entities (e.g., User, Role, Policy) that serve as nodes within the Graph. This component ensures type safety and proper representation of IAM principals.

Related Classes/Methods:

Edge Definitions

Defines the abstract and concrete classes for relationships between IAM entities (e.g., AssumesRole, HasPolicy) that serve as edges within the Graph. This component captures the relational aspects of IAM policies.

Related Classes/Methods:

Graph Disk Loader

A utility function responsible for deserializing raw graph data from persistent storage (e.g., JSON files) into an in-memory Graph object. It handles the low-level parsing and reconstruction of the graph.

Related Classes/Methods:

Graph Retrieval Service

A high-level interface that orchestrates the retrieval of an IAM graph, abstracting the underlying loading mechanisms and providing a consistent access point for other components. It acts as a facade for graph loading.

Related Classes/Methods:

Storage Path Utility

A utility responsible for managing and providing standardized file system paths where graph data is stored and retrieved, ensuring consistency across the application's persistence operations.

Related Classes/Methods: