コード例 #1
0
        public string RegisteredNameForNick(string nick)
        {
            // perform nick mapping
            var eventArgs = new NickMappingEventArgs(nick);

            OnNickMapping(eventArgs);

            return(eventArgs.MapsTo.FirstOrDefault());
        }
コード例 #2
0
        protected virtual void HandleNickMapping(object sender, NickMappingEventArgs args)
        {
            string baseNickname;

            using (var ctx = GetNewContext())
            {
                baseNickname = FindBaseNickFor(args.Nickname, ctx);
            }
            if (baseNickname != null)
            {
                args.MapsTo.Add(baseNickname);
            }
        }
コード例 #3
0
        protected virtual void HandleNickMapping(object sender, NickMappingEventArgs args)
        {
            var lowerNick = args.Nickname.ToLowerInvariant();

            lock (NicksToLogins)
            {
                if (NicksToLogins.ContainsKey(lowerNick))
                {
                    if (NicksToLogins[lowerNick] == null)
                    {
                        Logger.LogDebug("regname: {Nickname} is not registered (null)", lowerNick);
                    }
                    else
                    {
                        Logger.LogDebug("regname: {Nickname} is registered as {Username}", lowerNick, NicksToLogins[lowerNick]);
                        args.MapsTo.Add(NicksToLogins[lowerNick]);
                    }
                    return;
                }
            }

            Logger.LogDebug("regname: {Nickname} is not registered (not contained)", lowerNick);
        }
コード例 #4
0
ファイル: IdentityPlugin.cs プロジェクト: detmach/SharpIrcBot
 protected virtual void HandleNickMapping(object sender, NickMappingEventArgs e)
 {
     e.MapsTo.Add(e.Nickname);
 }
コード例 #5
0
 protected virtual void OnNickMapping(NickMappingEventArgs e)
 {
     HandleEvent(NickMappingSubscribers, e, "nick mapping");
 }