Exemplo n.º 1
0
        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;
            }
        }
Exemplo n.º 2
0
        public void handleToolsEvents(object o, ClientToolsEvent e)
        {
            switch (e.Type)
            {
            case ClientToolsEvent.typeEvent.MESSAGE:

                break;
            }
        }
Exemplo n.º 3
0
        public void handleToolsEvents(object o, ClientToolsEvent e)
        {
            switch (e.Type)
            {
            case ClientToolsEvent.typeEvent.ERROR:
                string errorMessage = Utils.decodeString(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;
                }
                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() != catalogue_name)
                {
                    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(retour.ToString() + Environment.NewLine);
                }
                else
                {
                    //traiter le getinfos ici
                    mySelf.Disconnect();
                    mySelf = null;
                }
                break;
            }
        }