99from mypy_extensions import TypedDict
1010from websockets import WebSocketCommonProtocol
1111
12- from idom .core .render import (
13- SingleStateRenderer ,
14- SharedStateRenderer ,
12+ from idom .core .dispatcher import (
13+ SingleStateDispatcher ,
14+ SharedStateDispatcher ,
1515 SendCoroutine ,
1616 RecvCoroutine ,
1717)
@@ -55,7 +55,7 @@ def _setup_application(self, app: Sanic, config: Config) -> None:
5555 cors_params = cors_config if isinstance (cors_config , dict ) else {}
5656 CORS (app , ** cors_params )
5757
58- bp = Blueprint (f"idom_renderer_ { id (self )} " , url_prefix = config ["url_prefix" ])
58+ bp = Blueprint (f"idom_dispatcher_ { id (self )} " , url_prefix = config ["url_prefix" ])
5959 self ._setup_blueprint_routes (bp , config )
6060 app .blueprint (bp )
6161
@@ -75,7 +75,7 @@ async def sock_recv() -> LayoutEvent:
7575 return LayoutEvent (event ["target" ], event ["data" ])
7676
7777 param_dict = {k : request .args .get (k ) for k in request .args }
78- await self ._run_renderer (sock_send , sock_recv , param_dict )
78+ await self ._run_dispatcher (sock_send , sock_recv , param_dict )
7979
8080 def handler_name (function : Any ) -> str :
8181 return f"{ blueprint .name } .{ function .__name__ } "
@@ -135,43 +135,43 @@ def _run_application(
135135class PerClientStateServer (SanicRenderServer ):
136136 """Each client view will have its own state."""
137137
138- _renderer_type = SingleStateRenderer
138+ _dispatcher_type = SingleStateDispatcher
139139
140- async def _run_renderer (
140+ async def _run_dispatcher (
141141 self ,
142142 send : SendCoroutine ,
143143 recv : RecvCoroutine ,
144144 parameters : Dict [str , Any ],
145145 loop : Optional [asyncio .AbstractEventLoop ] = None ,
146146 ) -> None :
147- async with self ._make_renderer (parameters , loop ) as renderer :
148- await renderer .run (send , recv , None )
147+ async with self ._make_dispatcher (parameters , loop ) as dispatcher :
148+ await dispatcher .run (send , recv , None )
149149
150150
151151class SharedClientStateServer (SanicRenderServer ):
152152 """All connected client views will have shared state."""
153153
154- _renderer_type = SharedStateRenderer
155- _renderer : SharedStateRenderer
154+ _dispatcher_type = SharedStateDispatcher
155+ _dispatcher : SharedStateDispatcher
156156
157157 def _setup_application (self , app : Sanic , config : Config ) -> None :
158- app .listener ("before_server_start" )(self ._activate_renderer )
159- app .listener ("before_server_stop" )(self ._deactivate_renderer )
158+ app .listener ("before_server_start" )(self ._activate_dispatcher )
159+ app .listener ("before_server_stop" )(self ._deactivate_dispatcher )
160160 super ()._setup_application (app , config )
161161
162- async def _activate_renderer (
162+ async def _activate_dispatcher (
163163 self , app : Sanic , loop : asyncio .AbstractEventLoop
164164 ) -> None :
165- self ._renderer = cast (SharedStateRenderer , self ._make_renderer ({}, loop ))
166- await self ._renderer .__aenter__ ()
165+ self ._dispatcher = cast (SharedStateDispatcher , self ._make_dispatcher ({}, loop ))
166+ await self ._dispatcher .__aenter__ ()
167167
168- async def _deactivate_renderer (
168+ async def _deactivate_dispatcher (
169169 self , app : Sanic , loop : asyncio .AbstractEventLoop
170170 ) -> None : # pragma: no cover
171171 # this doesn't seem to get triffered during testing for some reason
172- await self ._renderer .__aexit__ (None , None , None )
172+ await self ._dispatcher .__aexit__ (None , None , None )
173173
174- async def _run_renderer (
174+ async def _run_dispatcher (
175175 self ,
176176 send : SendCoroutine ,
177177 recv : RecvCoroutine ,
@@ -181,4 +181,4 @@ async def _run_renderer(
181181 if parameters :
182182 msg = f"SharedClientState server does not support per-client view parameters { parameters } "
183183 raise ValueError (msg )
184- await self ._renderer .run (send , recv , uuid .uuid4 ().hex , join = True )
184+ await self ._dispatcher .run (send , recv , uuid .uuid4 ().hex , join = True )
0 commit comments