示例#1
0
 public bool isMatchKeyword(AlartInfo ai)
 {
     if (ai.isCustomKeyword)
     {
         return(isMatchCustomKeyword(ai.cki));
     }
     else
     {
         return(isMatchSimpleKeyword(ai.keyword));
     }
 }
示例#2
0
        private static bool isAlartMatch(AlartInfo alartItem, bool isComOk,
                                         bool isUserOk, bool isKeywordOk, bool isNosetComId,
                                         bool isNosetHostName, bool isNosetKeyword)
        {
            if (!isComOk && !isUserOk && !isKeywordOk)
            {
                return(false);
            }
            if (alartItem.isMustCom && !isNosetComId && !isComOk)
            {
                return(false);
            }
            if (alartItem.isMustUser && !isNosetHostName && !isUserOk)
            {
                return(false);
            }
            if (alartItem.isMustKeyword && !isNosetKeyword && !isKeywordOk)
            {
                return(false);
            }

            /*
             * if ((!isNosetComId && isComOk) ||
             *          (!isNosetHostName && isUserOk) ||
             *          (!isNosetKeyword && isKeywordOk)) {
             *
             * } else {
             *      continue;
             * }
             */

            if (!(!isNosetComId && isComOk) &&
                !(!isNosetHostName && isUserOk) &&
                !(!isNosetKeyword && isKeywordOk))
            {
                return(false);
            }

            return(true);
        }
示例#3
0
        private static bool getTargetOk(AlartInfo alartItem, RssItem ri, string type)
        {
            //var targetAi = new List<AlartInfo>();
            //for (var i = 0; i < aiList.Count; i++) {
            //	var alartItem = (AlartInfo)aiList[i];

            var isNosetComId = alartItem.communityId == "" ||
                               alartItem.communityId == null;
            var isNosetHostName = alartItem.hostName == "" ||
                                  alartItem.hostName == null;
            var isNosetKeyword = (alartItem.isCustomKeyword && alartItem.cki == null) ||
                                 (!alartItem.isCustomKeyword && alartItem.keyword == "" || alartItem.keyword == null);

            if (isNosetComId && isNosetHostName && isNosetKeyword)
            {
                return(false);
            }

            var isComOk     = alartItem.communityId == ri.comId || (alartItem.communityId == "official" && type == "official");
            var isUserOk    = alartItem.hostName == ri.hostName;
            var isKeywordOk = ri.isMatchKeyword(alartItem);

            if ((string.IsNullOrEmpty(alartItem.communityId) !=
                 string.IsNullOrEmpty(alartItem.communityName)) ||
                (string.IsNullOrEmpty(alartItem.hostId) !=
                 string.IsNullOrEmpty(alartItem.hostName)))
            {
                return(false);
            }

            if (!isAlartMatch(alartItem, isComOk,
                              isUserOk, isKeywordOk, isNosetComId,
                              isNosetHostName, isNosetKeyword))
            {
                return(false);
            }

            return(true);
        }