コード例 #1
0
ファイル: ChannelData.cs プロジェクト: pidgeonproject/libirc
 private bool ChannelBans2(Network.IncomingDataEventArgs info)
 {
     if (info.Parameters.Count == 0)
         return false;
     Network.NetworkChannelEventArgs ev = new Network.NetworkChannelEventArgs(this.ServerLineRawText, this.Date);
     ev.ChannelName = info.Parameters[1];
     ev.ParameterLine = info.ParameterLine;
     ev.Parameters = info.Parameters;
     ev.Channel = _Network.GetChannel(ev.Parameters[1]);
     if (ev.Channel.Bans == null)
         ev.Channel.Bans = new List<ChannelBan>();
     _Network.__evt_ChannelFinishBan(ev);
     if (ev.Channel != null)
     {
         if (ev.Channel.IsParsingBanData)
         {
             ev.Channel.IsParsingBanData = false;
             return true;
         }
     }
     return IsBacklog;
 }
コード例 #2
0
ファイル: ChannelData.cs プロジェクト: pidgeonproject/libirc
        private bool Join(Network.IncomingDataEventArgs info)
        {
            string channel_name = info.ParameterLine.Trim();
            if (string.IsNullOrEmpty(channel_name))
            {
                channel_name = info.Message;
            }
            Channel channel = _Network.GetChannel(channel_name);
            Network.NetworkChannelEventArgs ed = new Network.NetworkChannelEventArgs(ServerLineRawText, this.Date);
            ed.ChannelName = channel_name;
            ed.Source = info.Source;
            ed.Channel = channel;
            ed.ParameterLine = info.ParameterLine;
            if (channel != null)
            {
                if (!IsBacklog)
                    channel.InsertUser(new User(ed.SourceInfo, _Network));

                _Network.__evt_JOIN(ed);
                return true;
            }
            _Network.__evt_JOIN(ed);
            return IsBacklog;
        }