示例#1
0
文件: WSNode.cs 项目: avoulk/CTSim
 /// <summary>
 /// Handles a MSGReportCluster message
 /// </summary>
 /// <param name="message">The message to handle</param>
 private void handleMSGReportCluster(MSGReportCluster message)
 {
     if (message.RID == RID)
     {
         if (Previous != UNKNOWN_PREVIOUS)
         {
             transmit(new MSGReportCluster(Info.ID, Previous, message.OriginalNode, message.RID));
         }
     }
 }
示例#2
0
        /// <summary>
        /// Handles a MSGReport message that the nodes sent to inform the representative
        /// </summary>
        /// <param name="message">The message</param>
        private void handleMSGReportCluster(MSGReportCluster message)
        {
            bool clusterFound = false;
            if (message.RID == Info.ID)
            {

                foreach (var cluster in Clusters)
                {
                    if (cluster.ID == message.OriginalNode.CID)
                    {
                        cluster.Add(message.OriginalNode);
                        clusterFound = true;
                        break;
                    }
                }
                if (!clusterFound)
                {
                    Cluster cluster = new Cluster(message.OriginalNode.CID);
                    cluster.Add(message.OriginalNode);
                    Clusters.Add(cluster);
                    ClustersI.Add(cluster.ID);
                }
            }
        }