julee.repositories.memory.knowledge_service_config

Memory implementation of KnowledgeServiceConfigRepository.

This module provides an in-memory implementation of the KnowledgeServiceConfigRepository protocol that follows the Clean Architecture patterns defined in the Fun-Police Framework. It handles knowledge service configuration storage in memory dictionaries, ensuring idempotency and proper error handling.

The implementation uses Python dictionaries to store knowledge service configuration data, making it ideal for testing scenarios where external dependencies should be avoided. All operations are still async to maintain interface compatibility.

Attributes

Classes

MemoryKnowledgeServiceConfigRepository

Memory implementation of KnowledgeServiceConfigRepository using Python

Module Contents

class julee.repositories.memory.knowledge_service_config.MemoryKnowledgeServiceConfigRepository[source]

Bases: julee.domain.repositories.knowledge_service_config.KnowledgeServiceConfigRepository, julee.repositories.memory.base.MemoryRepositoryMixin[julee.domain.models.knowledge_service_config.KnowledgeServiceConfig]

Memory implementation of KnowledgeServiceConfigRepository using Python dictionaries.

This implementation stores knowledge service configurations in memory:

  • Knowledge Services: Dictionary keyed by knowledge_service_id containing KnowledgeServiceConfig objects

This provides a lightweight, dependency-free option for testing while maintaining the same interface as other implementations.

async generate_id()[source]

Generate a unique knowledge service identifier.

Returns:

Unique knowledge service ID string

Return type:

str

async get(knowledge_service_id)[source]

Retrieve a knowledge service configuration by ID.

Parameters:

knowledge_service_id (str) – Unique knowledge service identifier

Returns:

KnowledgeServiceConfig object if found, None otherwise

Return type:

julee.domain.models.knowledge_service_config.KnowledgeServiceConfig | None

async get_many(knowledge_service_ids)[source]

Retrieve multiple knowledge service configs by ID.

Parameters:
  • knowledge_service_ids (list[str]) – List of unique knowledge service

  • identifiers

Returns:

Dict mapping knowledge_service_id to KnowledgeServiceConfig (or None if not found)

Return type:

dict[str, julee.domain.models.knowledge_service_config.KnowledgeServiceConfig | None]

async list_all()[source]

List all knowledge service configurations.

Returns:

List of all KnowledgeServiceConfig entities in the repository

Return type:

list[julee.domain.models.knowledge_service_config.KnowledgeServiceConfig]

async save(knowledge_service)[source]

Save a knowledge service configuration.

Parameters:

knowledge_service (julee.domain.models.knowledge_service_config.KnowledgeServiceConfig) – Complete KnowledgeServiceConfig to save

entity_name = 'KnowledgeServiceConfig'[source]
logger[source]
storage_dict: dict[str, julee.domain.models.knowledge_service_config.KnowledgeServiceConfig][source]
julee.repositories.memory.knowledge_service_config.logger[source]