コード例 #1
0
ファイル: Watcher.cs プロジェクト: tbourgois-42/PNPU_SERVICE1
        /// <summary>
        /// Fonction d'écoute lancée dans un thread. Elle attend les messages envoyés par le webservice via le PIPE et lui renvoie un résultat.
        /// </summary>
        private static void ListenRequest(string sNomPipe, int iNum)
        {
            string sMessage         = string.Empty;
            string sMessageResultat = string.Empty;

            npssPipeClient[iNum] = new NamedPipeServerStream(sNomPipe);
            ssStreamString[iNum] = new StreamString(npssPipeClient[iNum]);
            npssPipeClient[iNum].WaitForConnection();

            while (true)
            {
                sMessage = ssStreamString[iNum].ReadString();
                Console.WriteLine(sMessage);

                if (IsValideJSON(sMessage) == false)
                {
                    sMessageResultat = "KO";
                }
                else
                {
                    sMessageResultat = "OK";
                    qFIFO.Enqueue(sMessage);
                }

                /*string[] listParam = sMessage.Split('/');
                 *
                 * LaunchProcess(listParam[0], int.Parse(listParam[1]), listParam[2]);*/

                ssStreamString[iNum].WriteString(sMessageResultat);
                npssPipeClient[iNum].Flush();
            }
        }
コード例 #2
0
        /// <summary>
        /// Fonction d'écoute lancée dans un thread. Elle attend les messages envoyés par le webservice via le PIPE et lui renvoie un résultat.
        /// </summary>
        private static void ListenRequest()
        {
            string sMessage         = string.Empty;
            string sMessageResultat = string.Empty;

            npssPipeClient = new NamedPipeServerStream("PNPU_PIPE");
            npssPipeClient.WaitForConnection();
            ssStreamString = new StreamString(npssPipeClient);

            while (true)
            {
                sMessage = ssStreamString.ReadString();
                Console.WriteLine(sMessage);

                if (IsValideJSON(sMessage) == false)
                {
                    sMessageResultat = "KO";
                }
                else
                {
                    sMessageResultat = "OK";
                    Thread thread = new Thread(new ThreadStart(LaunchProcessFunction));
                    thread.Start();
                }

                ssStreamString.WriteString(sMessageResultat);
            }
        }