Skip to content

Commit fbccf2e

Browse files
Remove handlers from Client*
1 parent 6ad1adc commit fbccf2e

File tree

3 files changed

+36
-6
lines changed

3 files changed

+36
-6
lines changed

src/replit_river/client_transport.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -228,7 +228,6 @@ async def _create_new_session(
228228
is_server=False,
229229
close_session_callback=self._delete_session,
230230
retry_connection_callback=self._retry_connection,
231-
handlers={},
232231
)
233232

234233
self._sessions[new_session._to_id] = new_session

src/replit_river/server_session.py

Lines changed: 36 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
import asyncio
22
import logging
3-
from typing import Any
3+
from typing import Any, Callable, Coroutine
44

5+
import websockets
56
from aiochannel import Channel, ChannelClosed
67
from opentelemetry.trace.propagation.tracecontext import TraceContextTextMapPropagator
78
from websockets.exceptions import ConnectionClosed
@@ -16,12 +17,13 @@
1617
OutOfOrderMessageException,
1718
)
1819
from replit_river.session import Session
19-
from replit_river.transport_options import MAX_MESSAGE_BUFFER_SIZE
20+
from replit_river.transport_options import MAX_MESSAGE_BUFFER_SIZE, TransportOptions
2021

2122
from .rpc import (
2223
ACK_BIT,
2324
STREAM_CLOSED_BIT,
2425
STREAM_OPEN_BIT,
26+
GenericRpcHandlerBuilder,
2527
TransportMessage,
2628
TransportMessageTracingSetter,
2729
)
@@ -38,6 +40,38 @@
3840
class ServerSession(Session):
3941
"""A transport object that handles the websocket connection with a client."""
4042

43+
handlers: dict[tuple[str, str], tuple[str, GenericRpcHandlerBuilder]]
44+
45+
def __init__(
46+
self,
47+
transport_id: str,
48+
to_id: str,
49+
session_id: str,
50+
websocket: websockets.WebSocketCommonProtocol,
51+
transport_options: TransportOptions,
52+
is_server: bool,
53+
handlers: dict[tuple[str, str], tuple[str, GenericRpcHandlerBuilder]],
54+
close_session_callback: Callable[["Session"], Coroutine[Any, Any, Any]],
55+
retry_connection_callback: (
56+
Callable[
57+
[],
58+
Coroutine[Any, Any, Any],
59+
]
60+
| None
61+
) = None,
62+
) -> None:
63+
super().__init__(
64+
transport_id=transport_id,
65+
to_id=to_id,
66+
session_id=session_id,
67+
websocket=websocket,
68+
transport_options=transport_options,
69+
is_server=is_server,
70+
close_session_callback=close_session_callback,
71+
retry_connection_callback=retry_connection_callback,
72+
)
73+
self._handlers = handlers
74+
4175
async def start_serve_responses(self) -> None:
4276
self._task_manager.create_task(self.serve())
4377

src/replit_river/session.py

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,6 @@
2525

2626
from .rpc import (
2727
STREAM_CLOSED_BIT,
28-
GenericRpcHandlerBuilder,
2928
TransportMessage,
3029
TransportMessageTracingSetter,
3130
)
@@ -47,7 +46,6 @@ def __init__(
4746
websocket: websockets.WebSocketCommonProtocol,
4847
transport_options: TransportOptions,
4948
is_server: bool,
50-
handlers: dict[tuple[str, str], tuple[str, GenericRpcHandlerBuilder]],
5149
close_session_callback: Callable[["Session"], Coroutine[Any, Any, Any]],
5250
retry_connection_callback: (
5351
Callable[
@@ -60,7 +58,6 @@ def __init__(
6058
self._transport_id = transport_id
6159
self._to_id = to_id
6260
self.session_id = session_id
63-
self._handlers = handlers
6461
self._is_server = is_server
6562
self._transport_options = transport_options
6663

0 commit comments

Comments
 (0)