//checks for result of search, asynchronous operation void GetSerachResult_async() { //listen for incoming result from search layer httpListennerSever = new HttpListenningServer(httpListenerServerAddress); resultsData = httpListennerSever.Receive(searchResltRcvTimeout, ref rcvStatusMsg); //blocks until data is received //see if result gotten or timeout occured if (resultsData == null) { PrintStatusMsg("The search operation took longer than expected.", Color.Green); } else { ProcessSearchResult(); } }
//the get result method public static bool GetResults(string key, ref List <string> keys_matched) { try { //create http listening server HttpListenningServer webServer = new HttpListenningServer("http://sincre.elasticbeanstalk.com/searchresult/"); //receive data from client: search Layer C //webServer.Receive(); //blocks until data is received //de-serialize data //keys_matched.Add(receivedData.ReadByte().ToString()); //keys_matched.Add(receivedData); } catch (Exception err) { return(false); } return(true); }