-
|
Dispatching messages between jdtls and bootls. I'm having some trouble to understand how I could do thing without going full blocking way. If I'm adding handler for bootls using something like: ['sts/addClasspathListener'] = on_sts_addClasspathListener
What I'd like to accomplish is to return response back to bootls only when execute_command returns from jdtld. local JdtlsClient = require('java-core.ls.clients.jdtls-client')
local async = require('java-core.utils.async').sync
local function on_sts_addClasspathListener(err, result, ctx, config)
local client = lsp.get_jdtls_client()
log.debug('XXX client: ', client)
log.debug('XXX result: ', result)
local ret = async(function()
local ret1 = JdtlsClient:new({client = client}):execute_command('sts.java.addClasspathListener', result.callbackCommandId)
log.debug('XXX ret1: ', ret1)
return ret1
end)
.run()
log.debug('XXX ret: ', ret)
return {}
end
I tried above but then realised that this async stuff may not be meant for this. Above is logging: [DEBUG Sun 31 Dec 2023 15:30:19 GMT] ...java-core/lua/lspconfig/server_configurations/bootls.lua:59: XXX ret: nil
[DEBUG Sun 31 Dec 2023 15:30:19 GMT] ...java-core/lua/lspconfig/server_configurations/bootls.lua:52: XXX ret1: ok
Is it somewhat possible to get ret1 value out from an async block before on_sts_addClasspathListener returns? |
Beta Was this translation helpful? Give feedback.
-
|
This is not implemented |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
{{title}}
Uh oh!
There was an error while loading. Please reload this page.
-
I wanted to open this thread to keep boot-ls related discussions in one place.
Beta Was this translation helpful? Give feedback.