public bool isMatchKeyword(AlartInfo ai) { if (ai.isCustomKeyword) { return(isMatchCustomKeyword(ai.cki)); } else { return(isMatchSimpleKeyword(ai.keyword)); } }
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); }
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); }