File size: 1,514 Bytes
18ade12
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
"""
Database utilities package.

This module provides:
- session: AsyncSession dependency for FastAPI
- health: Database health check functions
- errors: Database error handling utilities
- startup: Application startup/shutdown hooks
- connection_test: Connection verification utility
- migrate: Migration runner utility
"""

from .connection_test import run_connection_test, test_connection, test_connection_with_timeout
from .errors import (
    DatabaseConnectionError,
    DatabaseIntegrityError,
    DatabaseTimeoutError,
    execute_with_timeout,
    handle_db_errors,
)
from .health import (
    DatabaseHealthResult,
    check_database_health,
    get_full_health_status,
)
from .session import DatabaseSessionManager, get_session
from .startup import (
    DatabaseStartupError,
    database_lifespan,
    shutdown_database,
    startup_database,
    verify_database_connection,
)

__all__ = [
    # Session management
    "get_session",
    "DatabaseSessionManager",
    # Health check
    "check_database_health",
    "get_full_health_status",
    "DatabaseHealthResult",
    # Error handling
    "handle_db_errors",
    "execute_with_timeout",
    "DatabaseConnectionError",
    "DatabaseIntegrityError",
    "DatabaseTimeoutError",
    # Startup/Shutdown
    "startup_database",
    "shutdown_database",
    "verify_database_connection",
    "database_lifespan",
    "DatabaseStartupError",
    # Connection test
    "test_connection",
    "test_connection_with_timeout",
    "run_connection_test",
]