SQLite¶
The sqlite/sqlalchemy adapter provides a SQLite-specific SQLAlchemy integration suitable for development, testing, and
lightweight production workloads.
Session Managers¶
SQLite-specific session manager handling file-based and in-memory database connections.
Classes:
| Name | Description |
|---|---|
SQLiteSQLAlchemySessionManager |
Synchronous SQLAlchemy session manager for SQLite. |
AsyncSQLiteSQLAlchemySessionManager |
Asynchronous SQLAlchemy session manager for SQLite. |
SQLiteSQLAlchemySessionManager ¶
Synchronous SQLAlchemy session manager for SQLite.
Inherits from BaseSQLAlchemySessionManager to provide SQLite-specific session management, including connection URL creation and engine configuration.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
orm_config
|
SQLiteSQLAlchemyConfig | None
|
SQLite-specific configuration. If None, uses global config. |
None
|
Source code in archipy/adapters/sqlite/sqlalchemy/session_managers.py
AsyncSQLiteSQLAlchemySessionManager ¶
Asynchronous SQLAlchemy session manager for SQLite.
Inherits from AsyncBaseSQLAlchemySessionManager to provide async SQLite-specific session management, including connection URL creation and async engine configuration.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
orm_config
|
SQLiteSQLAlchemyConfig | None
|
SQLite-specific configuration. If None, uses global config. |
None
|
Source code in archipy/adapters/sqlite/sqlalchemy/session_managers.py
options: show_root_toc_entry: false heading_level: 3
Session Manager Registry¶
Registry for SQLite session manager instances.
Classes:
| Name | Description |
|---|---|
SQLiteSessionManagerRegistry |
Registry for SQLite SQLAlchemy session managers. |
SQLiteSessionManagerRegistry ¶
Registry for SQLite SQLAlchemy session managers.
This registry provides a centralized access point for both synchronous and asynchronous SQLite session managers, implementing the Service Locator pattern. It lazily initializes the appropriate session manager when first requested.
The registry maintains singleton instances of: - A synchronous session manager (SQLiteSQLAlchemySessionManager) - An asynchronous session manager (AsyncSQLiteSQLAlchemySessionManager)
Methods:
| Name | Description |
|---|---|
get_sync_manager |
Get the synchronous SQLite session manager instance. |
set_sync_manager |
Register a synchronous session manager. |
get_async_manager |
Get the asynchronous SQLite session manager instance. |
set_async_manager |
Register an asynchronous session manager. |
reset |
Reset the registry to its initial state. |
Source code in archipy/adapters/sqlite/sqlalchemy/session_manager_registry.py
get_sync_manager
classmethod
¶
Get the synchronous SQLite session manager instance.
Lazily initializes a default SQLiteSQLAlchemySessionManager if none has been set.
Returns:
| Name | Type | Description |
|---|---|---|
SessionManagerPort |
SessionManagerPort
|
The registered synchronous session manager |
Raises:
| Type | Description |
|---|---|
DatabaseConnectionError
|
If there's an error initializing the session manager |
Source code in archipy/adapters/sqlite/sqlalchemy/session_manager_registry.py
set_sync_manager
classmethod
¶
Register a synchronous session manager.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
manager
|
SessionManagerPort
|
The session manager to register |
required |
Source code in archipy/adapters/sqlite/sqlalchemy/session_manager_registry.py
get_async_manager
classmethod
¶
Get the asynchronous SQLite session manager instance.
Lazily initializes a default AsyncSQLiteSQLAlchemySessionManager if none has been set.
Returns:
| Name | Type | Description |
|---|---|---|
AsyncSessionManagerPort |
AsyncSessionManagerPort
|
The registered asynchronous session manager |
Raises:
| Type | Description |
|---|---|
DatabaseConnectionError
|
If there's an error initializing the session manager |
Source code in archipy/adapters/sqlite/sqlalchemy/session_manager_registry.py
set_async_manager
classmethod
¶
Register an asynchronous session manager.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
manager
|
AsyncSessionManagerPort
|
The async session manager to register |
required |
Source code in archipy/adapters/sqlite/sqlalchemy/session_manager_registry.py
reset
classmethod
¶
Reset the registry to its initial state.
This method clears both registered managers, useful for testing.
Source code in archipy/adapters/sqlite/sqlalchemy/session_manager_registry.py
options: show_root_toc_entry: false heading_level: 3
Adapters¶
Concrete SQLite adapter built on the base SQLAlchemy adapter with SQLite-specific configuration.
Classes:
| Name | Description |
|---|---|
SQLiteSQLAlchemyAdapter |
Synchronous SQLAlchemy adapter for SQLite. |
AsyncSQLiteSQLAlchemyAdapter |
Asynchronous SQLAlchemy adapter for SQLite. |
SQLiteSQLAlchemyAdapter ¶
Synchronous SQLAlchemy adapter for SQLite.
Inherits from BaseSQLAlchemyAdapter to provide SQLite-specific session management and database operations, typically used for in-memory testing.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
orm_config
|
SQLiteSQLAlchemyConfig | None
|
SQLite-specific configuration. If None, uses global config. |
None
|
Source code in archipy/adapters/sqlite/sqlalchemy/adapters.py
AsyncSQLiteSQLAlchemyAdapter ¶
Asynchronous SQLAlchemy adapter for SQLite.
Inherits from AsyncBaseSQLAlchemyAdapter to provide async SQLite-specific session management and database operations, typically used for in-memory testing.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
orm_config
|
SQLiteSQLAlchemyConfig | None
|
SQLite-specific configuration. If None, uses global config. |
None
|
Source code in archipy/adapters/sqlite/sqlalchemy/adapters.py
options: show_root_toc_entry: false heading_level: 3