Changes for page Running KEITH
Last modified by Richard Kreissig on 2023/09/14 08:48
Change comment:
There is no comment for this version
Summary
-
Page properties (1 modified, 0 added, 0 removed)
-
Objects (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -193,6 +193,7 @@ 193 193 class KiCoolLanguageServerExtension implements ILanguageServerExtension, CommandExtension, ILanguageClientProvider { 194 194 // fancy extension stuff 195 195 196 + var KeithLanguageClient client 196 196 // A language server extension must implement the initialize method, 197 197 // it is however only called if the extension is registered via a language. 198 198 // This should never be the case, so this is never called. ... ... @@ -199,6 +199,16 @@ 199 199 override initialize(ILanguageServerAccess access) { 200 200 this.languageServerAccess = access 201 201 } 203 + 204 + // implement ILanguageClientProvider 205 + override setLanguageClient(LanguageClient client) { 206 + this.client = client as KeithLanguageClient 207 + } 208 + 209 + // implement ILanguageClientProvider 210 + override getLanguageClient() { 211 + return this.client 212 + } 202 202 203 203 } 204 204 {{/code}} ... ... @@ -205,7 +205,7 @@ 205 205 206 206 The CommandExtension defines all commands (requests or notifications) that are send from client to server. An example how this looks like can be seen in the code snippet Example CommandExtension is an example how to [[define a server side extension interface.>>doc:||anchor="Registeranextension(onserverside)"]] 207 207 208 - \\219 +The ILanguageClientProvider should be implemented by an extension that plans to send [[messages from the server to the client>>doc:||anchor="ServerClientcommunicationinterface"]]. 209 209 210 210 This language server extension is provided by a corresponding contribution, which is later used to access it: 211 211 ... ... @@ -293,6 +293,12 @@ 293 293 294 294 This defines three json-rpc commands: "keith/kicool/compile", "keith/kicool/show", "keith/kicool/get-systems". These are implemented in KiCoolLanguageServerExtension. 295 295 307 +\\ 308 + 309 +== Server Client communication interface == 310 + 311 +Not only messages from client to server but rather mesages from server client might be needed 312 + 296 296 == Register and calling an extension (on client side) == 297 297 298 298 Language server extension do not have to be registered on the client side. It is just called.
- Confluence.Code.ConfluencePageClass[0]
-
- Id
-
... ... @@ -1,1 +1,1 @@ 1 -5780299 41 +57802996 - URL
-
... ... @@ -1,1 +1,1 @@ 1 -https://rtsys.informatik.uni-kiel.de/confluence//wiki/spaces/KIELER/pages/5780299 4/Running KEITH1 +https://rtsys.informatik.uni-kiel.de/confluence//wiki/spaces/KIELER/pages/57802996/Running KEITH