예제 #1
0
 public void UpdateMessage(AbstractAnalyser me, string key, PlainTextMessage message)
 {
     lock (operationLock)
     {
         if (me != null && !CheckPermission(me))
         {
             return;
         }
         if (existMessages.ContainsKey(key))
         {
             PlainTextMessage intermes = existMessages[key];
             if (intermes.Equals(message))
             {
                 return;
             }
             for (int i = 0; i < linkAnalysisMessages.Count; ++i)
             {
                 if (linkAnalysisMessages[i].Equals(intermes))
                 {
                     linkAnalysisMessages.RemoveAt(i);
                     linkAnalysisMessages.Insert(i, message);
                     break;
                 }
             }
         }
         else
         {
             linkAnalysisMessages.Add(message);
         }
         existMessages[key] = message;
     }
 }
예제 #2
0
        static void Main(string[] args)
        {
            InstantMessage plainTextMessage = new PlainTextMessage();
            InstantMessage videoMessage     = new VideoMessage();

            plainTextMessage.ProcessMessage();
            videoMessage.ProcessMessage();

            Console.ReadLine();
        }
예제 #3
0
        static void Main(string[] args)
        {
            InstantMessage plainTextMessage = new PlainTextMessage();
            InstantMessage videoMessage = new VideoMessage();

            plainTextMessage.ProcessMessage();
            videoMessage.ProcessMessage();

            Console.ReadLine();
        }