コード例 #1
0
        internal static string AsStar(string that)
        {
            if (that == null)
            {
                return("*");
            }
            string thatTrim = TextPatternUtils.Trim(that);

            return(thatTrim.Length == 0 ? "*" : thatTrim);
        }
コード例 #2
0
ファイル: SubQuery.cs プロジェクト: hackerlank/trunk-chatbot
        public AIMLTagHandler GetTagHandler(XmlNode node)
        {
            lock (TagHandlerLock)
            {
                string str = node.OuterXml;
                str = TextPatternUtils.CleanWhitepaces(str).ToLower();
                AIMLTagHandler handlerU;
                if (TagHandlers == null)
                {
                    TagHandlers = new Dictionary <string, AIMLTagHandler>();
                }
                else if (TagHandlers.TryGetValue(str, out handlerU))
                {
                    return(handlerU);
                }
                SubQuery subquery = this;

                User    user    = subquery.CurrentUser;
                Request request = subquery.Request;
                AltBot  bot     = subquery.TargetBot;
                Result  result  = subquery.Result;

                // if (node.ChildNodes.Count == 0) ;
                {
                    user    = CurrentUser;
                    result  = result ?? subquery.Result;
                    request = request ?? subquery.Request ?? result.request;
                    result  = result ?? request.CurrentResult;
                    user    = (user ?? result.Requester).Value;
                    bot     = request.TargetBot;
                }
                handlerU         = bot.TagHandling.GetTagHandler(user, subquery, request, result, node, null);
                TagHandlers[str] = handlerU;
                return(handlerU);
            }
        }