Establish new channel connection model using server listeners#484
Establish new channel connection model using server listeners#484daviwil merged 1 commit intoPowerShell:masterfrom
Conversation
This change refactors our existing channel model to move all connection logic outside of the ChannelBase implementations so that the language and debug client/service pairs can be simplified. This change also allows us to remove a long-standing hack in our Host unit tests which added an artifical delay to give the channel and MessageDispatcher time to get established.
|
The basic idea here is that connections should be established before creating an instance of a ChannelBase implementation. This simplifies client and server implementation since they don't have to deal with waiting for a connection before proceeding. The assumption is that the ChannelBase implementation is connected and fully established before being passed to a ProtocolEndpoint implementation (like LanguageServiceClient, etc). /cc @mrward @kamilkosek since it affects the LanguageServiceClient class and how you establish a TcpSocketClientChannel. Check out this code for example on how to set up a LanguageServiceClient with the altered model: |
|
Not in a rush to merge this, I'll leave it open until later tomorrow in case anyone has questions or feedback! |
…find-ps-module-ui Find module display quick pick list first.
This change refactors our existing channel model to move all connection
logic outside of the ChannelBase implementations so that the
language and debug client/service pairs can be simplified. This change
also allows us to remove a long-standing hack in our Host unit tests
which added an artifical delay to give the channel and MessageDispatcher
time to get established.