/// <summary>
 /// チャッターノードファイルのマージ
 /// </summary>
 /// <param name="chatterNodeFile">会話ノードファイル</param>
 public void MargeFile(MieChatterNodeFile chatterNodeFile)
 {
     //// チャッターノードの追加
     foreach (var newNode in chatterNodeFile.FlatNodes.Values)
     {
         this.AddFlatNodeEntry(newNode);
     }
 }
 public MieChatterNodeFile GetNodeFile(long fileCode)
 {
     if (this.Files.ContainsKey(fileCode))
     {
         var result = this.Files[fileCode];
         return(result);
     }
     else
     {
         var nodeFile = new MieChatterNodeFile(fileCode);
         this.Files.Add(nodeFile.FileCode, nodeFile);
         return(nodeFile);
     }
 }
        /// <summary>
        /// チャッターファイルを追加する。
        /// すでにチャッターファイルが存在する場合は、エントリーをマージする。
        /// </summary>
        /// <param name="chatterFile">チャッターファイル</param>
        public void AddFile(MieChatterNodeFile chatterFile)
        {
            if (chatterFile == null)
            {
                var msg = $"MieChatterNodeFile is null.";
                logger.Fatal(msg);
                throw new Exception(msg);
            }

            if (this.Files.ContainsKey(chatterFile.FileCode))
            {
                //// すでにチャッターファイルが存在する場合は、エントリーをマージする。
                var file = this.Files[chatterFile.FileCode];
                file.MargeFile(chatterFile);
            }
            else
            {
                this.Files.Add(chatterFile.FileCode, chatterFile);
            }
        }