jdxi_editor.core.db.session

SQLAlchemy base and session management for JD-Xi Editor.

This module provides the declarative base and session management utilities for SQLAlchemy ORM operations.

Classes

DatabaseSession

Manages SQLAlchemy database sessions and connections.

Module Contents

class jdxi_editor.core.db.session.DatabaseSession(db_path: pathlib.Path | None = None)[source]

Manages SQLAlchemy database sessions and connections.

db_path = None[source]
engine[source]
SessionLocal[source]
create_indexes()[source]

Create database indexes for better query performance.

create_tables()[source]

Create all database tables.

get_session()[source]

Context manager for database sessions.

Usage:
with db_session.get_session() as session:

job = session.query(JobQueue).filter_by(job_id=”123”).first()

get_session_sync() sqlalchemy.orm.Session[source]

Get a synchronous session (caller must close it).

Returns:

SQLAlchemy session