コード例 #1
0
        private void HandleClientEvents(object sender, ClientEventArgs e)
        {
            ClientToolsEvent sta = null;

            //décoder message
            //déterminer type de message:
            ClientToolsEvent.typeEvent type = ClientToolsEvent.typeEvent.MESSAGE;
            sta = new ClientToolsEvent(type, new List <byte[]>()
            {
                new byte[] { }
            }, "0");
            clientToolsReceiveEvent(this, sta);
        }
コード例 #2
0
        /// <summary>
        /// Intercepter un évenement, puis créer un ServerToolsEvent correspondant à son type.
        /// </summary>
        private void HandleClientEvents(object sender, ClientEventArgs e)
        {
            ClientToolsEvent sta = null;
            Message          msg = MessageUtil.decoder(e.Msg);

            ClientToolsEvent.typeEvent type = ClientToolsEvent.typeEvent.MESSAGE;
            if (msg.ListParams.Count > 0)
            {
                if (DataUtils.isErrorMessage(msg.ListParams[0]))
                {
                    type = ClientToolsEvent.typeEvent.ERROR;
                }
                else if (msg.ListParams[0] == DataUtils.EXTINCTION_CODE)
                {
                    type = ClientToolsEvent.typeEvent.EXTINCTION;
                }
            }
            sta = new ClientToolsEvent(type, msg.ListParams, msg.Stamp);
            clientToolsReceiveEvent(this, sta);
        }
コード例 #3
0
        public void handleToolsEvents(object o, ClientToolsEvent e)
        {
            switch (e.Type) {
                case ClientToolsEvent.typeEvent.MESSAGE:

                    break;
            }
        }
コード例 #4
0
ファイル: Client.cs プロジェクト: tommywang/Protocol-Elastic
        public void handleToolsEvents(object o, ClientToolsEvent e)
        {
            switch (e.Type) {
                case ClientToolsEvent.typeEvent.ERROR:
                    string errorMessage = e.Message[0];
                    MessageBox.Show("Le serveur sur lequel vous êtes connecté à renvoyé l'erreur suivante : " +errorMessage,
                                    "Attention",
                                    MessageBoxButtons.OK);
                    break;
                case ClientToolsEvent.typeEvent.EXTINCTION:
                    MessageBox.Show("Le serveur sur lequel vous étiez connecté a signalé une extinction!",
                                    "Attention",
                                    MessageBoxButtons.OK);
                    if (request.Visible) {
                        disconnect();
                        request.Dispose();
                        request.Close();
                        request = null;
                        dgv_infos.Rows.Clear();
                    }
                    break;
                case ClientToolsEvent.typeEvent.MESSAGE:
                    //if (int.Parse(e.Stamp) == queryNumber - 1)
                    //    setQueryNumberToHighest();
                    //else
                        emptyQueryNumbers.Add(int.Parse(e.Stamp));

                    ServiceInfos ks = queries[int.Parse(e.Stamp)];

                    if (ks.Operation.Keys.First() != "getinfos") {
                        //Dictionary<string, List<Type>> operation = ks.Operation; //opération de la requête
                        //List<Type> types = operation.Values.First(); //types pour la première et unique opération de cette structure
                        //Type type = types[types.Count - 1]; //on récupère le dernier type de la liste, correspondant à la valeur de retour de l'opération
                        //object retour = Utils.decode(e.Message[0], type);
                        request.appendTextToLog(e.Message[0] + Environment.NewLine);
                    }
                    else {

                        prepareServerInfos(e.Message, e.Message.Count);
                        mySelf.Disconnect();
                        mySelf = null;
                    }
                    queries.Remove(int.Parse(e.Stamp));
                    break;
            }
        }
コード例 #5
0
 private void HandleClientEvents(object sender, ClientEventArgs e)
 {
     ClientToolsEvent sta = null;
     //décoder message
     //déterminer type de message:
     ClientToolsEvent.typeEvent type = ClientToolsEvent.typeEvent.MESSAGE;
     sta = new ClientToolsEvent(type, new List<byte[]>() { new byte[] { } }, "0");
     clientToolsReceiveEvent(this, sta);
 }
コード例 #6
0
 /// <summary>
 /// Intercepter un évenement, puis créer un ServerToolsEvent correspondant à son type. 
 /// </summary>
 private void HandleClientEvents(object sender, ClientEventArgs e)
 {
     ClientToolsEvent sta = null;
     Message msg = MessageUtil.decoder(e.Msg);
     ClientToolsEvent.typeEvent type = ClientToolsEvent.typeEvent.MESSAGE;
     if (msg.ListParams.Count > 0) {
         if (DataUtils.isErrorMessage(msg.ListParams[0]))
             type = ClientToolsEvent.typeEvent.ERROR;
         else if (msg.ListParams[0] == DataUtils.EXTINCTION_CODE)
             type = ClientToolsEvent.typeEvent.EXTINCTION;
     }
     sta = new ClientToolsEvent(type, msg.ListParams, msg.Stamp);
     clientToolsReceiveEvent(this, sta);
 }
コード例 #7
0
ファイル: Echo.cs プロジェクト: tommywang/Protocol-Elastic
 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;
     }
 }