julee.repositories.memory.assembly_specification ================================================ .. py:module:: julee.repositories.memory.assembly_specification .. autoapi-nested-parse:: Memory implementation of AssemblySpecificationRepository. This module provides an in-memory implementation of the AssemblySpecificationRepository protocol that follows the Clean Architecture patterns defined in the Fun-Police Framework. It handles assembly specification storage with JSON schemas and knowledge service query configurations in memory dictionaries, ensuring idempotency and proper error handling. The implementation uses Python dictionaries to store specification data, making it ideal for testing scenarios where external dependencies should be avoided. All operations are still async to maintain interface compatibility. Attributes ---------- .. autoapisummary:: julee.repositories.memory.assembly_specification.logger Classes ------- .. autoapisummary:: julee.repositories.memory.assembly_specification.MemoryAssemblySpecificationRepository Module Contents --------------- .. py:class:: MemoryAssemblySpecificationRepository Bases: :py:obj:`julee.domain.repositories.assembly_specification.AssemblySpecificationRepository`, :py:obj:`julee.repositories.memory.base.MemoryRepositoryMixin`\ [\ :py:obj:`julee.domain.models.assembly_specification.AssemblySpecification`\ ] Memory implementation of AssemblySpecificationRepository using Python dictionaries. This implementation stores assembly specifications in memory: - Specifications: Dictionary keyed by assembly_specification_id containing AssemblySpecification objects This provides a lightweight, dependency-free option for testing while maintaining the same interface as other implementations. .. py:method:: generate_id() :async: Generate a unique assembly specification identifier. :returns: Unique assembly specification ID string .. py:method:: get(assembly_specification_id) :async: Retrieve an assembly specification by ID. :param assembly_specification_id: Unique specification identifier :returns: AssemblySpecification if found, None otherwise .. py:method:: get_many(assembly_specification_ids) :async: Retrieve multiple assembly specifications by ID. :param assembly_specification_ids: List of unique specification :param identifiers: :returns: Dict mapping specification_id to AssemblySpecification (or None if not found) .. py:method:: list_all() :async: List all assembly specifications. :returns: List of all AssemblySpecification entities in the repository .. py:method:: save(assembly_specification) :async: Save an assembly specification. :param assembly_specification: Complete AssemblySpecification to save .. py:attribute:: entity_name :value: 'AssemblySpecification' .. py:attribute:: logger .. py:attribute:: storage_dict :type: dict[str, julee.domain.models.assembly_specification.AssemblySpecification] .. py:data:: logger