public Agent(NetworkNode _nd, Form1 _form) { nd = _nd; LabelAction la = new LabelAction(_nd); form = _form; }
public void receive() { while (true) { while (_connectingSocket == null || !_connectingSocket.Connected) { connectWithCloud(); } try { var buffer = new byte[256]; _connectingSocket.Receive(buffer); string data = Encoding.Default.GetString(buffer); form.Data(DateTime.Now.ToLongTimeString() + ":" + DateTime.Now.Millisecond.ToString() + " Received: " + data); Console.WriteLine(data); LabelAction la = new LabelAction(nd); // la.RouteConnection(data); SendPacket SendPacket = new SendPacket(_connectingSocket, form); SendPacket.SendToCloud(Encoding.ASCII.GetBytes(la.RouteConnection(data))); } catch { Console.WriteLine("Listener exception"); } } }
private void HandleMessage(string message) { //string data = Encoding.Default.GetString(message); //data = data.Replace("\0", string.Empty); var data3 = message.Split(' '); nd.configs.Clear(); nd.labelsActions.Clear(); for (int i = 0; i < data3.Length - 2; i++) { int inPort = Int32.Parse(data3[i + 2]); string outPort = data3[i + 3]; int inLabel = Int32.Parse(data3[i]); string routerName = data3[i + 4]; int operationID = Int32.Parse(data3[i + 7]); string labelActionStr = data3[i + 6]; Config config = new Config(inPort, outPort, inLabel, routerName, operationID, labelActionStr); LabelAction labelAction = new LabelAction(Int32.Parse(data3[i + 7]), data3[i + 1], data3[i + 5]); if (config.routerName.Equals(nd.name)) { nd.configs.Add(config); nd.labelsActions.Add(labelAction); } i = i + 8; } Console.WriteLine("Tablica konfiguracja"); foreach (var conf in nd.configs) { Console.WriteLine(conf.inLabel + /* " | " + i.outLabel + */ " | " + conf.inPort + " | " + conf.outPort + " | " + conf.routerName); } }