public async Task <JArray> GetCodeModel()
        {
            string message = $"{{\"cookie\":\"{cookie}\",\"type\":\"codemodel\"}}";

            serverStream.WriteMessage(message);
            CMakeCodeModelReplyMessage reply = (CMakeCodeModelReplyMessage) await WaitForReply("codemodel").ConfigureAwait(false);

            return(reply.CodeModel);
        }
        public static CMakeReplyMessage Create(JObject content)
        {
            switch (content["inReplyTo"].Value <string>())
            {
            case "codemodel":
                return(CMakeCodeModelReplyMessage.Create(content));

            case "cache":
                return(CMakeCacheReplyMessage.Create(content));

            default:
                return(new CMakeReplyMessage(content));
            }
        }