/// <summary> /// Starts the channel and initializes the MessageDispatcher. /// </summary> /// <param name="messageProtocolType">The type of message protocol used by the channel.</param> public void Start(MessageProtocolType messageProtocolType) { IMessageSerializer messageSerializer = null; if (messageProtocolType == MessageProtocolType.LanguageServer) { messageSerializer = new JsonRpcMessageSerializer(); } else { messageSerializer = new V8MessageSerializer(); } this.Initialize(messageSerializer); if (this.MessageDispatcher == null) { this.MessageDispatcher = new MessageDispatcher( this.MessageReader, this.MessageWriter); this.MessageDispatcher.Start(); } }