internal void RegisterSearchIDs(uint ReqID, ResponseSearchIds response) { if (_pendingSearchReq.ContainsKey(ReqID)) { GuiSearch gs = new GuiSearch(); gs.KeyWords = _pendingSearchReq[ReqID]; gs.RequestTime = DateTime.Now; gs.Results = new List <SearchHit>(); gs.ID = response.search_id[0]; // for now we only support one ID System.Diagnostics.Debug.WriteLineIf(DEBUG, "Search: Adding ID " + gs.ID); _searches.Add(gs.ID, gs); _pendingSearchReq.Remove(ReqID); UpdateSearches(); } }
private void ProcessSearchIDs(RSProtoBuffSSHMsg msg) { ResponseSearchIds response = new ResponseSearchIds(); Exception e; if (RSProtoBuf.Deserialize <ResponseSearchIds>(msg.ProtoBuffMsg, out response, out e)) { if (response.status.code == Status.StatusCode.SUCCESS) { _b.SearchProcessor.RegisterSearchIDs(msg.ReqID, response); } else { _b.GUI.tb_out.AppendText("SearchIDs response: " + response.status.code + "\n"); } } else { System.Diagnostics.Debug.WriteLine("ProcessSearchIDs: error deserializing " + e.Message); } }