Skip to content
package

src.ce.core.dependency_injection

module

src.ce.core.dependency_injection.abstract_container

Classes

class

AbstractContainer

From: src.ce.core.dependency_injection.abstract_container

Abstract interface for dependency containers.

This class defines the contract for dependency injection containers that manage object instances. Implementations should provide mechanisms to register and retrieve instances based on provider keys and type constraints.

The container acts as a central registry that decouples object creation and dependencies from their usage, enabling more modular and testable code.

module

src.ce.core.dependency_injection.container

Dependency injection container setup for Open Ticket AI.

This module defines the DIContainer class which is the central dependency injection container for the application. It also includes the AppModule which configures the core bindings for the application.

The container is responsible for: - Loading and validating the application configuration - Creating a registry of available components - Binding core services (like the ticket system client) - Providing methods to retrieve configured instances and pipelines

Classes

class

AppModule

From: src.ce.core.dependency_injection.container

Injector module that binds the validated configuration.
class

DIContainer

From: src.ce.core.dependency_injection.container

Dependency injection container for Open Ticket AI.

This container manages the application's dependency graph using Injector. It binds core components like configuration, registry, and orchestrator, and provides methods to retrieve configured instances.

Parameters

config

Validated application configuration

registry

Registry of available components

module

src.ce.core.dependency_injection.create_registry

Functions

module

src.ce.core.dependency_injection.registry

Classes

class

Registry

From: src.ce.core.dependency_injection.registry

A registry system for managing and retrieving classes that provide specific functionality.

This registry allows classes to be registered and later retrieved by their unique keys. It enforces type checking during retrieval to ensure compatibility with expected interfaces.

Parameters

_registrylist[type[Providable]]

Internal list storing registered classes.