Example #1
0
        /// <summary>
        /// 添加关键字处理类
        /// </summary>
        /// <param name="dealer"></param>
        public void AddKeywordDealer(KeywordDealer dealer)
        {
            if (dealer == null)
            {
                throw new ArgumentNullException("dealer");
            }
            dealer.SetPlatform(Origin.Platform);
            if (dealer is NotMatchDealer)
            {
                NoMatchDealer = dealer;
                return;
            }
            var keywords = dealer.GetKeywords();

            if (keywords == null)
            {
                return;
            }
            foreach (var item in keywords)
            {
                if (string.IsNullOrEmpty(item))
                {
                    continue;
                }
                if (!Dealers.TryAdd(item, dealer))
                {
                    throw new ArgumentException(string.Format("重复关键字处理: {0}", item));
                }
            }
        }