Ekimart078 commited on
Commit
53b3fdf
·
1 Parent(s): ac710e3

Pass `Settings` instance to `WebSocketManager` to improve configuration handling and dependency injection.

Browse files
Files changed (2) hide show
  1. core/manager/websocket_manager.py +2 -2
  2. main.py +3 -1
core/manager/websocket_manager.py CHANGED
@@ -9,8 +9,8 @@ from core.types.datamodels import ClientInfo, Subscription, Notification
9
 
10
 
11
  class WebSocketManager:
12
- def __init__(self):
13
- self.settings = Settings()
14
  self.logger = self.settings.logger
15
 
16
  self.active_connections: Dict[str, WebSocket] = {}
 
9
 
10
 
11
  class WebSocketManager:
12
+ def __init__(self, settings: Settings) -> None:
13
+ self.settings = settings
14
  self.logger = self.settings.logger
15
 
16
  self.active_connections: Dict[str, WebSocket] = {}
main.py CHANGED
@@ -6,6 +6,7 @@ from fastapi import FastAPI, WebSocket, WebSocketDisconnect, HTTPException, Depe
6
  from fastapi.responses import HTMLResponse
7
 
8
  from core.manager.websocket_manager import WebSocketManager
 
9
  from core.types.datamodels import (
10
  ClientInfo,
11
  SubscriptionRequest,
@@ -16,7 +17,8 @@ from core.types.datamodels import (
16
  )
17
  from core.utils.utils import current_utc_iso
18
 
19
- manager = WebSocketManager()
 
20
 
21
  logger = manager.logger
22
 
 
6
  from fastapi.responses import HTMLResponse
7
 
8
  from core.manager.websocket_manager import WebSocketManager
9
+ from core.settings.settings import Settings
10
  from core.types.datamodels import (
11
  ClientInfo,
12
  SubscriptionRequest,
 
17
  )
18
  from core.utils.utils import current_utc_iso
19
 
20
+ settings = Settings()
21
+ manager = WebSocketManager(settings=settings)
22
 
23
  logger = manager.logger
24