Add dynamic EventNamespace for event type access and refactor LSP manager initialization
- Create EventNamespace class to enable Code_Event_Types.RegisterLspClientEvent access - Move set_event_hub call from plugin to lsp_manager._do_bind_mapping - Update event type references to use Code_Event_Types namespace
This commit is contained in:
@@ -42,21 +42,17 @@ class LSPManager(ControllerBase):
|
||||
def _do_bind_mapping(self):
|
||||
self.response_cache.set_lsp_client(self.lsp_manager_client)
|
||||
self.provider.response_cache = self.response_cache
|
||||
self.response_registry.set_event_hub(
|
||||
self.emit, self.emit_to, self.provider
|
||||
)
|
||||
|
||||
def _controller_message(self, event: Code_Event_Types.CodeEvent):
|
||||
if isinstance(event, RegisterLspClientEvent):
|
||||
if isinstance(event, Code_Event_Types.RegisterLspClientEvent):
|
||||
self.response_registry.register_handler(event.lang_id, event.handler)
|
||||
self.lsp_manager_ui.add_client_listing(event.lang_id, event.lang_config)
|
||||
elif isinstance(event, UnregisterLspClientEvent):
|
||||
elif isinstance(event, Code_Event_Types.UnregisterLspClientEvent):
|
||||
self.response_registry.unregister_handler(event.lang_id)
|
||||
|
||||
# if isinstance(event, Code_Event_Types.RegisterLspClientEvent):
|
||||
# self.response_registry.register_handler(event.lang_id, event.handler)
|
||||
# self.lsp_manager_ui.add_client_listing(event.lang_id, event.lang_config)
|
||||
# elif isinstance(event, Code_Event_Types.UnregisterLspClientEvent):
|
||||
# self.response_registry.unregister_handler(event.lang_id)
|
||||
|
||||
|
||||
def _on_create_client(self, ui, lang_id: str, workspace_uri: str) -> bool:
|
||||
init_opts = ui.get_init_opts(lang_id)
|
||||
result = self.create_client(lang_id, workspace_uri, init_opts)
|
||||
|
||||
@@ -62,10 +62,6 @@ class Plugin(PluginCode):
|
||||
source_view = event.response
|
||||
lsp_manager.lsp_manager_ui.set_source_view(source_view)
|
||||
|
||||
lsp_manager.response_registry.set_event_hub(
|
||||
self.emit, self.emit_to, lsp_manager.provider
|
||||
)
|
||||
|
||||
def run(self):
|
||||
...
|
||||
|
||||
|
||||
Reference in New Issue
Block a user