private void threadStartFun() { try { Console.WriteLine("in Vc thread"); // Client create poll msg LocalDB readLocalDB = new LocalDB(); readLocalDB = readLocalDB.readfromfile(); Client.MessageClasses.MsgPoll msgpoll = new Client.MessageClasses.MsgPoll(); Client.Message.CreateMsg pollM = new Client.Message.CreateMsg(); msgpoll.userName = readLocalDB.getUsername(); msgpoll.password = "******"; string msg = pollM.pollMsg(msgpoll); //send the msg using socket ConnectionManager.Connection conn = new ConnectionManager.Connection(); Socket soc = conn.connect(conf.serverAddr, conf.port); SocketCommunication.ReaderWriter rw = new SocketCommunication.ReaderWriter(); rw.writetoSocket(soc, msg); //receive the msg string resp = rw.readfromSocket(soc); //parse msg and poll Client.Message.MessageParser parseResp = new Client.Message.MessageParser(); msgpoll = parseResp.pollParseMsg(resp); if (msgpoll.indicator == "OK") { Configuration.userInfo.containerURI = msgpoll.fileContainerUri; // write container somewhere (msgpoll.fileContainerUri); } } catch (Exception e) { Program.ClientForm.addtoConsole(e.ToString()); System.Windows.Forms.MessageBox.Show(e.ToString()); //System.IO.File.WriteAllText("errors.txt", e.ToString()); } finally { Thread.CurrentThread.Abort(); } }
public void poll() { Configuration.flag.polling = true; Program.ClientForm.addtoConsole("Poll initiated"); //MessageBox.Show("Polling started", "Client"); try { // Client create poll msg LocalDB readLocalDB = new LocalDB(); readLocalDB = readLocalDB.readfromfile(); Client.MessageClasses.MsgPoll msgpoll = new Client.MessageClasses.MsgPoll(); Client.Message.CreateMsg pollM = new Client.Message.CreateMsg(); msgpoll.userName = readLocalDB.getUsername(); msgpoll.password = readLocalDB.getPassword(); string msg = pollM.pollMsg(msgpoll); //send the msg using socket ConnectionManager.Connection conn = new ConnectionManager.Connection(); Socket soc = conn.connect(conf.serverAddr, conf.port); SocketCommunication.ReaderWriter rw = new SocketCommunication.ReaderWriter(); rw.writetoSocket(soc, msg); Program.ClientForm.addtoConsole("Writing Socket"); //receive the msg string resp = rw.readfromSocket(soc); Program.ClientForm.addtoConsole("Reading Socket"); //parse msg and poll Client.Message.MessageParser parseResp = new Client.Message.MessageParser(); msgpoll = parseResp.pollParseMsg(resp); if (msgpoll.indicator == "OK") { new Client.PollFunction.Poll(msgpoll.fileContainerUri); Configuration.userInfo.containerURI = msgpoll.fileContainerUri; } Configuration.flag.polling = false; } catch(Exception ex) { Program.ClientForm.addtoConsole("Poll thread Exception:" + ex.Message); //System.Windows.Forms.MessageBox.Show(ex.ToString()); } }
public void interPollTest() { // 1. Client create and send poll msg to Server Client.Message.CreateMsg pollM = new Client.Message.CreateMsg(); Client.MessageClasses.MsgPoll msgpoll = new Client.MessageClasses.MsgPoll(); msgpoll.userName = "******"; msgpoll.password = "******"; string pollCtoS = pollM.pollMsg(msgpoll); Console.WriteLine("msg from client to server: " + pollCtoS); // 2. Server parse msg and create sas uri Server.Message.MessageParser serverPollPar = new Server.Message.MessageParser(); Server.MessageClasses.MsgPoll msgpollServer = serverPollPar.pollParseMsg(pollCtoS); string resp = ""; try { CloudBlobClient blobClient = new Server.ConnectionManager.BlobConn().BlobConnect(); Blob blob = new Blob(blobClient, msgpollServer.userName); GenerateSAS sas = new GenerateSAS(); string link = sas.GetContainerSasUri(blob.container, "RL"); // 3. Server send response to Client Server.Message.CreateMsg pollResp = new Server.Message.CreateMsg(); msgpollServer.fileContainerUri = link; msgpollServer.fileBlobUri = "none"; resp = pollResp.pollRespMsg("OK", msgpollServer); } catch (Exception e) { Console.WriteLine(e.ToString()); } //4. Client parse and poll Client.Message.MessageParser pollGetClient = new Client.Message.MessageParser(); msgpoll = pollGetClient.pollParseMsg(resp); new Client.PollFunction.Poll(msgpoll.fileContainerUri); }