public void handleToolsEvents(object o, ClientToolsEvent e) { switch (e.Type) { case ClientToolsEvent.typeEvent.MESSAGE: appendTextToLog("Message from catalog server :" + e.Message[0] + Environment.NewLine); if (e.Message[0] == DataUtils.MANIFEST_PRESENCE_CODE) { string address = DataUtils.GetIPaddresses(System.Net.Dns.GetHostName())[0]; mySelfClient.Send(address, catalogue_name, "", "0", new List <string>() { DataUtils.ACKNOWLEDGE_PRESENCE_CODE }); appendTextToLog("Acknowledging presence to catalog server." + Environment.NewLine); } break; case ClientToolsEvent.typeEvent.ERROR: MessageBox.Show("Le serveur catalogue a signalé l'erreur suivante :" + e.Message[0]); break; case ClientToolsEvent.typeEvent.EXTINCTION: MessageBox.Show("Le serveur catalogue a signalé son extinction. Vous allez maintenant être déconnecté."); break; } }
internal static void send(string service, string operation, List <string> param) { int iStamp = queryNumber++; string stamp = iStamp.ToString(); ServiceInfos ks = null; foreach (ServiceInfos ks_ in knownServices) { if (ks_.Service == service) { ks = new ServiceInfos(new Dictionary <string, List <Type> >() { { operation, ks_.Operation[operation] } }, service); break; } } queries.Add(iStamp, ks); string address = DataUtils.GetIPaddresses(System.Net.Dns.GetHostName())[0]; if (!mySelf.Send(address, service, operation, stamp, param)) { mySelf.Disconnect(); MessageBox.Show("Le serveur sur lequel vous étiez connecté s'est arrêté.", "Attention", MessageBoxButtons.OK); if (request != null) { if (request.Visible) { request.Close(); } } } }
internal static void send(string service, string operation, List <string> param) { //convertir param en byte[][] int iStamp; if (emptyQueryNumbers.Count > 0) { iStamp = emptyQueryNumbers[0]; } else { iStamp = queryNumber++; } string stamp = iStamp.ToString(); ServiceInfos ks = null; foreach (ServiceInfos ks_ in knownServices) { if (ks_.Service == service) { ks = new ServiceInfos(new Dictionary <string, List <Type> >() { { operation, ks_.Operation[operation] } }, service); break; } } queries.Add(iStamp, ks); mySelf.Send(service, operation, stamp, new byte[][] {}); }