julee.repositories.minio.knowledge_service_config

Minio implementation of KnowledgeServiceConfigRepository.

This module provides a Minio-based implementation of the KnowledgeServiceConfigRepository protocol that follows the Clean Architecture patterns defined in the Fun-Police Framework. It handles knowledge service configuration storage as JSON objects in Minio, ensuring idempotency and proper error handling.

The implementation stores knowledge service configurations as JSON objects in Minio, following the large payload handling pattern from the architectural guidelines. Each configuration is stored with its knowledge_service_id as the key.

Classes

MinioKnowledgeServiceConfigRepository

Minio implementation of KnowledgeServiceConfigRepository using Minio for

Module Contents

class julee.repositories.minio.knowledge_service_config.MinioKnowledgeServiceConfigRepository(client)[source]

Bases: julee.domain.repositories.knowledge_service_config.KnowledgeServiceConfigRepository, julee.repositories.minio.client.MinioRepositoryMixin

Minio implementation of KnowledgeServiceConfigRepository using Minio for persistence.

This implementation stores knowledge service configurations as JSON objects:

  • Knowledge Service Configs: JSON objects in the “knowledge-service-configs” bucket

Each configuration is stored with its knowledge_service_id as the object name for efficient retrieval and updates.

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 knowledge service configurations, sorted by knowledge_service_id

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

bucket_name = 'knowledge-service-configs'[source]
client[source]
logger[source]