From 53add8700feb1fde69cd77247a1531e981d04ec1 Mon Sep 17 00:00:00 2001 From: Ben Harris Date: Fri, 19 Apr 2024 00:24:48 -0400 Subject: [PATCH] netstandard and revert target type new --- ChatSharp.sln.DotSettings.user | 6 +-- ChatSharp/CapabilityPool.cs | 4 +- ChatSharp/ChannelCollection.cs | 2 +- ChatSharp/ChatSharp.csproj | 9 ++-- ChatSharp/Events/ErroneousNickEventArgs.cs | 4 +- ChatSharp/Events/PrivateMessageEventArgs.cs | 2 +- ChatSharp/Handlers/ChannelHandlers.cs | 13 +++--- ChatSharp/Handlers/ErrorHandlers.cs | 4 +- ChatSharp/Handlers/ListingHandlers.cs | 8 ++-- ChatSharp/Handlers/MOTDHandlers.cs | 11 ++--- ChatSharp/Handlers/MessageHandlers.cs | 19 +++++---- ChatSharp/Handlers/ServerHandlers.cs | 10 +++-- ChatSharp/Handlers/UserHandlers.cs | 9 ++-- ChatSharp/IrcChannel.cs | 2 +- ChatSharp/IrcClient.Commands.cs | 10 ++--- ChatSharp/IrcClient.cs | 46 ++++++++++----------- ChatSharp/IrcMessage.cs | 8 ++-- ChatSharp/IrcUser.cs | 4 +- ChatSharp/MaskCollection.cs | 2 +- ChatSharp/RequestManager.cs | 2 +- ChatSharp/ServerInfo.cs | 6 +-- ChatSharp/UserPool.cs | 2 +- ChatSharp/WhoIs.cs | 2 +- ChatSharp/WhoX.cs | 2 +- ChatSharpTests/ChatSharp.Tests.csproj | 13 +----- ChatSharpTests/Properties/AssemblyInfo.cs | 19 --------- 26 files changed, 97 insertions(+), 122 deletions(-) delete mode 100644 ChatSharpTests/Properties/AssemblyInfo.cs diff --git a/ChatSharp.sln.DotSettings.user b/ChatSharp.sln.DotSettings.user index 571d759..3000ebd 100644 --- a/ChatSharp.sln.DotSettings.user +++ b/ChatSharp.sln.DotSettings.user @@ -1,7 +1,5 @@  - <SessionState ContinuousTestingMode="0" IsActive="True" Name="All tests from Solution #2" xmlns="urn:schemas-jetbrains-com:jetbrains-ut-session"> - <Solution /> -</SessionState> - <SessionState ContinuousTestingMode="0" Name="All tests from Solution" xmlns="urn:schemas-jetbrains-com:jetbrains-ut-session"> + + <SessionState ContinuousTestingMode="0" IsActive="True" Name="All tests from Solution" xmlns="urn:schemas-jetbrains-com:jetbrains-ut-session"> <Solution /> </SessionState> \ No newline at end of file diff --git a/ChatSharp/CapabilityPool.cs b/ChatSharp/CapabilityPool.cs index fdae345..39db626 100644 --- a/ChatSharp/CapabilityPool.cs +++ b/ChatSharp/CapabilityPool.cs @@ -12,7 +12,7 @@ namespace ChatSharp { internal CapabilityPool() { - Capabilities = new(); + Capabilities = new List(); } private List Capabilities { get; } @@ -67,7 +67,7 @@ namespace ChatSharp if (Capabilities.Any(cap => cap.Name == name)) return; - Capabilities.Add(new(name)); + Capabilities.Add(new IrcCapability(name)); } internal void AddRange(IEnumerable range) diff --git a/ChatSharp/ChannelCollection.cs b/ChatSharp/ChannelCollection.cs index 8442153..12e3a15 100644 --- a/ChatSharp/ChannelCollection.cs +++ b/ChatSharp/ChannelCollection.cs @@ -12,7 +12,7 @@ namespace ChatSharp { internal ChannelCollection() { - Channels = new(); + Channels = new List(); } internal ChannelCollection(IrcClient client) : this() diff --git a/ChatSharp/ChatSharp.csproj b/ChatSharp/ChatSharp.csproj index 7a5fa12..bc7cd66 100644 --- a/ChatSharp/ChatSharp.csproj +++ b/ChatSharp/ChatSharp.csproj @@ -1,17 +1,14 @@  - True + true MIT https://tildegit.org/ben/chatsharp README.md https://tildegit.org/ben/chatsharp c# irc library - net6.0 + netstandard2.1 - - True - - + \ No newline at end of file diff --git a/ChatSharp/Events/ErroneousNickEventArgs.cs b/ChatSharp/Events/ErroneousNickEventArgs.cs index bb04814..5c0c8c9 100644 --- a/ChatSharp/Events/ErroneousNickEventArgs.cs +++ b/ChatSharp/Events/ErroneousNickEventArgs.cs @@ -37,11 +37,11 @@ namespace ChatSharp.Events { const string nickCharacters = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"; - _random ??= new(); + _random ??= new Random(); var nick = new char[8]; for (var i = 0; i < nick.Length; i++) nick[i] = nickCharacters[_random.Next(nickCharacters.Length)]; - return new(nick); + return new string(nick); } } } \ No newline at end of file diff --git a/ChatSharp/Events/PrivateMessageEventArgs.cs b/ChatSharp/Events/PrivateMessageEventArgs.cs index de06dad..ac2b92c 100644 --- a/ChatSharp/Events/PrivateMessageEventArgs.cs +++ b/ChatSharp/Events/PrivateMessageEventArgs.cs @@ -12,7 +12,7 @@ namespace ChatSharp.Events internal PrivateMessageEventArgs(IrcClient client, IrcMessage ircMessage, ServerInfo serverInfo) { IrcMessage = ircMessage; - PrivateMessage = new(client, IrcMessage, serverInfo); + PrivateMessage = new PrivateMessage(client, IrcMessage, serverInfo); } /// diff --git a/ChatSharp/Handlers/ChannelHandlers.cs b/ChatSharp/Handlers/ChannelHandlers.cs index 10b8871..9df3844 100644 --- a/ChatSharp/Handlers/ChannelHandlers.cs +++ b/ChatSharp/Handlers/ChannelHandlers.cs @@ -2,6 +2,7 @@ using System; using System.Linq; using System.Threading; using System.Threading.Tasks; +using ChatSharp.Events; namespace ChatSharp.Handlers { @@ -25,7 +26,7 @@ namespace ChatSharp.Handlers user.Account = whoQuery[0].User.Account; }); - client.OnUserJoinedChannel(new(channel, user)); + client.OnUserJoinedChannel(new ChannelUserEventArgs(channel, user)); } } @@ -34,7 +35,7 @@ namespace ChatSharp.Handlers var channel = client.Channels.GetOrAdd(message.Parameters[1]); var old = channel._Topic; channel._Topic = message.Parameters[2]; - client.OnChannelTopicReceived(new(channel, old, channel._Topic)); + client.OnChannelTopicReceived(new ChannelTopicEventArgs(channel, old, channel._Topic)); } public static void HandleGetEmptyTopic(IrcClient client, IrcMessage message) @@ -42,7 +43,7 @@ namespace ChatSharp.Handlers var channel = client.Channels.GetOrAdd(message.Parameters[1]); var old = channel._Topic; channel._Topic = message.Parameters[2]; - client.OnChannelTopicReceived(new(channel, old, channel._Topic)); + client.OnChannelTopicReceived(new ChannelTopicEventArgs(channel, old, channel._Topic)); } public static void HandlePart(IrcClient client, IrcMessage message) @@ -58,7 +59,7 @@ namespace ChatSharp.Handlers if (user.ChannelModes.ContainsKey(channel)) user.ChannelModes.Remove(channel); - client.OnUserPartedChannel(new(channel, user)); + client.OnUserPartedChannel(new ChannelUserEventArgs(channel, user)); } public static void HandleUserListPart(IrcClient client, IrcMessage message) @@ -127,7 +128,7 @@ namespace ChatSharp.Handlers public static void HandleUserListEnd(IrcClient client, IrcMessage message) { var channel = client.Channels[message.Parameters[1]]; - client.OnChannelListReceived(new(channel)); + client.OnChannelListReceived(new ChannelEventArgs(channel)); if (client.Settings.ModeOnJoin) try { @@ -164,7 +165,7 @@ namespace ChatSharp.Handlers var kicked = channel.Users[message.Parameters[1]]; if (kicked.Channels.Contains(channel)) kicked.Channels.Remove(channel); - client.OnUserKicked(new(channel, new(message.Prefix), + client.OnUserKicked(new KickEventArgs(channel, new IrcUser(message.Prefix), kicked, message.Parameters[2])); } } diff --git a/ChatSharp/Handlers/ErrorHandlers.cs b/ChatSharp/Handlers/ErrorHandlers.cs index 606b68d..53f4665 100644 --- a/ChatSharp/Handlers/ErrorHandlers.cs +++ b/ChatSharp/Handlers/ErrorHandlers.cs @@ -1,3 +1,5 @@ +using ChatSharp.Events; + namespace ChatSharp.Handlers { /// @@ -10,7 +12,7 @@ namespace ChatSharp.Handlers /// public static void HandleError(IrcClient client, IrcMessage message) { - client.OnErrorReply(new(message)); + client.OnErrorReply(new ErrorReplyEventArgs(message)); } } } \ No newline at end of file diff --git a/ChatSharp/Handlers/ListingHandlers.cs b/ChatSharp/Handlers/ListingHandlers.cs index 3fbb08a..151207a 100644 --- a/ChatSharp/Handlers/ListingHandlers.cs +++ b/ChatSharp/Handlers/ListingHandlers.cs @@ -8,7 +8,7 @@ namespace ChatSharp.Handlers var parameters = parameterString[parameterString.IndexOf(' ')..].Split(' '); var request = client.RequestManager.PeekOperation("GETMODE b " + parameters[1]); var list = (MaskCollection)request.State; - list.Add(new(parameters[2], client.Users.GetOrAdd(parameters[3]), + list.Add(new Mask(parameters[2], client.Users.GetOrAdd(parameters[3]), IrcClient.DateTimeFromIrcTime(int.Parse(parameters[4])))); } @@ -24,7 +24,7 @@ namespace ChatSharp.Handlers var parameters = parameterString[(parameterString.IndexOf(' ') + 1)..].Split(' '); var request = client.RequestManager.PeekOperation("GETMODE e " + parameters[1]); var list = (MaskCollection)request.State; - list.Add(new(parameters[2], client.Users.GetOrAdd(parameters[3]), + list.Add(new Mask(parameters[2], client.Users.GetOrAdd(parameters[3]), IrcClient.DateTimeFromIrcTime(int.Parse(parameters[4])))); } @@ -40,7 +40,7 @@ namespace ChatSharp.Handlers var parameters = parameterString[(parameterString.IndexOf(' ') + 1)..].Split(' '); var request = client.RequestManager.PeekOperation("GETMODE I " + parameters[1]); var list = (MaskCollection)request.State; - list.Add(new(parameters[2], client.Users.GetOrAdd(parameters[3]), + list.Add(new Mask(parameters[2], client.Users.GetOrAdd(parameters[3]), IrcClient.DateTimeFromIrcTime(int.Parse(parameters[4])))); } @@ -56,7 +56,7 @@ namespace ChatSharp.Handlers var parameters = parameterString[(parameterString.IndexOf(' ') + 1)..].Split(' '); var request = client.RequestManager.PeekOperation("GETMODE q " + parameters[1]); var list = (MaskCollection)request.State; - list.Add(new(parameters[2], client.Users.GetOrAdd(parameters[3]), + list.Add(new Mask(parameters[2], client.Users.GetOrAdd(parameters[3]), IrcClient.DateTimeFromIrcTime(int.Parse(parameters[4])))); } diff --git a/ChatSharp/Handlers/MOTDHandlers.cs b/ChatSharp/Handlers/MOTDHandlers.cs index bd25d8e..e75c056 100644 --- a/ChatSharp/Handlers/MOTDHandlers.cs +++ b/ChatSharp/Handlers/MOTDHandlers.cs @@ -1,4 +1,5 @@ using System; +using ChatSharp.Events; namespace ChatSharp.Handlers { @@ -17,21 +18,21 @@ namespace ChatSharp.Handlers throw new IrcProtocolException("372 MOTD message is incorrectly formatted."); var part = message.Parameters[1][2..]; MOTD += part + Environment.NewLine; - client.OnMOTDPartReceived(new(part)); + client.OnMOTDPartReceived(new ServerMOTDEventArgs(part)); } public static void HandleEndOfMOTD(IrcClient client, IrcMessage message) { - client.OnMOTDReceived(new(MOTD)); - client.OnConnectionComplete(new()); + client.OnMOTDReceived(new ServerMOTDEventArgs(MOTD)); + client.OnConnectionComplete(EventArgs.Empty); // Verify our identity VerifyOurIdentity(client); } public static void HandleMOTDNotFound(IrcClient client, IrcMessage message) { - client.OnMOTDReceived(new(MOTD)); - client.OnConnectionComplete(new()); + client.OnMOTDReceived(new ServerMOTDEventArgs(MOTD)); + client.OnConnectionComplete(EventArgs.Empty); VerifyOurIdentity(client); } diff --git a/ChatSharp/Handlers/MessageHandlers.cs b/ChatSharp/Handlers/MessageHandlers.cs index 2d3082c..e13d65d 100644 --- a/ChatSharp/Handlers/MessageHandlers.cs +++ b/ChatSharp/Handlers/MessageHandlers.cs @@ -1,3 +1,4 @@ +using System.Collections.Generic; using System.Linq; using ChatSharp.Events; @@ -95,7 +96,7 @@ namespace ChatSharp.Handlers var oldNick = user.Nick; user.Nick = message.Parameters[0]; - client.OnNickChanged(new() + client.OnNickChanged(new NickChangedEventArgs { User = user, OldNick = oldNick, @@ -109,7 +110,7 @@ namespace ChatSharp.Handlers if (client.User.Nick != user.Nick) { client.Users.Remove(user); - client.OnUserQuit(new(user)); + client.OnUserQuit(new UserEventArgs(user)); } } @@ -121,7 +122,7 @@ namespace ChatSharp.Handlers public static void HandleNotice(IrcClient client, IrcMessage message) { - client.OnNoticeReceived(new(message)); + client.OnNoticeReceived(new IrcNoticeEventArgs(message)); } public static void HandlePrivmsg(IrcClient client, IrcMessage message) @@ -186,22 +187,22 @@ namespace ChatSharp.Handlers // TODO: Support the ones here that aren't done properly if (client.ServerInfo.SupportedChannelModes.ParameterizedSettings.Contains(c)) { - client.OnModeChanged(new(channel.Name, new(message.Prefix), + client.OnModeChanged(new ModeChangeEventArgs(channel.Name, new IrcUser(message.Prefix), (add ? "+" : "-") + c + " " + message.Parameters[i++])); } else if (client.ServerInfo.SupportedChannelModes.ChannelLists.Contains(c)) { - client.OnModeChanged(new(channel.Name, new(message.Prefix), + client.OnModeChanged(new ModeChangeEventArgs(channel.Name, new IrcUser(message.Prefix), (add ? "+" : "-") + c + " " + message.Parameters[i++])); } else if (client.ServerInfo.SupportedChannelModes.ChannelUserModes.Contains(c)) { if (!channel.UsersByMode.ContainsKey(c)) channel.UsersByMode.Add(c, - new(channel.Users.Where(u => + new UserPoolView(channel.Users.Where(u => { if (!u.ChannelModes.ContainsKey(channel)) - u.ChannelModes.Add(channel, new()); + u.ChannelModes.Add(channel, new List()); return u.ChannelModes[channel].Contains(c); }))); var user = new IrcUser(message.Parameters[i]); @@ -217,7 +218,7 @@ namespace ChatSharp.Handlers user.ChannelModes[channel] = null; } - client.OnModeChanged(new(channel.Name, new(message.Prefix), + client.OnModeChanged(new ModeChangeEventArgs(channel.Name, new IrcUser(message.Prefix), (add ? "+" : "-") + c + " " + message.Parameters[i++])); } @@ -233,7 +234,7 @@ namespace ChatSharp.Handlers channel.Mode = channel.Mode.Replace(c.ToString(), string.Empty); } - client.OnModeChanged(new(channel.Name, new(message.Prefix), + client.OnModeChanged(new ModeChangeEventArgs(channel.Name, new IrcUser(message.Prefix), (add ? "+" : "-") + c)); } } diff --git a/ChatSharp/Handlers/ServerHandlers.cs b/ChatSharp/Handlers/ServerHandlers.cs index 8810a03..f9ff955 100644 --- a/ChatSharp/Handlers/ServerHandlers.cs +++ b/ChatSharp/Handlers/ServerHandlers.cs @@ -1,3 +1,5 @@ +using ChatSharp.Events; + namespace ChatSharp.Handlers { internal static class ServerHandlers @@ -5,7 +7,7 @@ namespace ChatSharp.Handlers public static void HandleISupport(IrcClient client, IrcMessage message) { if (client.ServerInfo == null) - client.ServerInfo = new(); + client.ServerInfo = new ServerInfo(); foreach (var item in message.Parameters) { string key, value; @@ -57,7 +59,7 @@ namespace ChatSharp.Handlers var limitedModes = limits[i].Remove(limits[i].IndexOf(':')); var limit = int.Parse(limits[i][(limits[i].IndexOf(':') + 1)..]); foreach (var mode in limitedModes) - client.ServerInfo.ModeListLimits[i] = new(mode, limit); + client.ServerInfo.ModeListLimits[i] = new ServerInfo.ModeListLimit(mode, limit); } break; @@ -92,7 +94,7 @@ namespace ChatSharp.Handlers } } - client.OnServerInfoReceived(new(client.ServerInfo)); + client.OnServerInfoReceived(new SupportsEventArgs(client.ServerInfo)); } public static void HandleMyInfo(IrcClient client, IrcMessage message) @@ -100,7 +102,7 @@ namespace ChatSharp.Handlers // 004 sendak.freenode.net ircd-seven-1.1.3 DOQRSZaghilopswz CFILMPQbcefgijklmnopqrstvz bkloveqjfI // TODO: Figure out how to properly handle this message if (client.ServerInfo == null) - client.ServerInfo = new(); + client.ServerInfo = new ServerInfo(); if (message.Parameters.Length >= 5) foreach (var c in message.Parameters[4]) if (!client.ServerInfo.SupportedChannelModes.ChannelUserModes.Contains(c)) diff --git a/ChatSharp/Handlers/UserHandlers.cs b/ChatSharp/Handlers/UserHandlers.cs index 0f6eef6..9b9f0bb 100644 --- a/ChatSharp/Handlers/UserHandlers.cs +++ b/ChatSharp/Handlers/UserHandlers.cs @@ -1,6 +1,7 @@ using System; using System.Collections.Generic; using System.Linq; +using ChatSharp.Events; namespace ChatSharp.Handlers { @@ -68,7 +69,7 @@ namespace ChatSharp.Handlers if (!client.Users.Contains(whois.User.Nick)) client.Users.Add(whois.User); request.Callback?.Invoke(request); - client.OnWhoIsReceived(new(whois)); + client.OnWhoIsReceived(new WhoIsReceivedEventArgs(whois)); } public static void HandleWho(IrcClient client, IrcMessage message) @@ -81,7 +82,7 @@ namespace ChatSharp.Handlers var who = new ExtendedWho { Channel = message.Parameters[1], - User = new() + User = new IrcUser { User = message.Parameters[2], Nick = message.Parameters[5] @@ -236,7 +237,7 @@ namespace ChatSharp.Handlers client.Users.Add(whox.User); request.Callback?.Invoke(request); - client.OnWhoxReceived(new(whoxList.ToArray())); + client.OnWhoxReceived(new WhoxReceivedEventArgs(whoxList.ToArray())); } else { @@ -250,7 +251,7 @@ namespace ChatSharp.Handlers client.Users.Add(who.User); request.Callback?.Invoke(request); - client.OnWhoxReceived(new(whoList.ToArray())); + client.OnWhoxReceived(new WhoxReceivedEventArgs(whoList.ToArray())); } } diff --git a/ChatSharp/IrcChannel.cs b/ChatSharp/IrcChannel.cs index b8c57de..d4771c3 100644 --- a/ChatSharp/IrcChannel.cs +++ b/ChatSharp/IrcChannel.cs @@ -14,7 +14,7 @@ namespace ChatSharp { Client = client; Name = name; - Users = new(client.Users.Where(u => u.Channels.Contains(this))); + Users = new UserPoolView(client.Users.Where(u => u.Channels.Contains(this))); } private IrcClient Client { get; } diff --git a/ChatSharp/IrcClient.Commands.cs b/ChatSharp/IrcClient.Commands.cs index 93d7413..2bf35b8 100644 --- a/ChatSharp/IrcClient.Commands.cs +++ b/ChatSharp/IrcClient.Commands.cs @@ -163,7 +163,7 @@ namespace ChatSharp public void WhoIs(string nick, Action callback) { var whois = new WhoIs(); - RequestManager.QueueOperation("WHOIS " + nick, new(whois, ro => { callback?.Invoke((WhoIs)ro.State); })); + RequestManager.QueueOperation("WHOIS " + nick, new RequestOperation(whois, ro => { callback?.Invoke((WhoIs)ro.State); })); SendRawMessage("WHOIS {0}", nick); } @@ -190,7 +190,7 @@ namespace ChatSharp var queryKey = string.Format("WHO {0} {1} {2:D}", target, queryType, _fields); RequestManager.QueueOperation(queryKey, - new(whox, ro => { callback?.Invoke((List)ro.State); })); + new RequestOperation(whox, ro => { callback?.Invoke((List)ro.State); })); SendRawMessage(whoQuery); } else @@ -200,7 +200,7 @@ namespace ChatSharp var whoQuery = string.Format("WHO {0}", target); RequestManager.QueueOperation(whoQuery, - new(whox, ro => { callback?.Invoke((List)ro.State); })); + new RequestOperation(whox, ro => { callback?.Invoke((List)ro.State); })); SendRawMessage(whoQuery); } } @@ -218,7 +218,7 @@ namespace ChatSharp /// public void GetMode(string channel, Action callback) { - RequestManager.QueueOperation("MODE " + channel, new(channel, ro => + RequestManager.QueueOperation("MODE " + channel, new RequestOperation(channel, ro => { var c = Channels[(string)ro.State]; callback?.Invoke(c); @@ -240,7 +240,7 @@ namespace ChatSharp /// public void GetModeList(string channel, char mode, Action callback) { - RequestManager.QueueOperation("GETMODE " + mode + " " + channel, new(new MaskCollection(), ro => + RequestManager.QueueOperation("GETMODE " + mode + " " + channel, new RequestOperation(new MaskCollection(), ro => { var c = (MaskCollection)ro.State; callback?.Invoke(c); diff --git a/ChatSharp/IrcClient.cs b/ChatSharp/IrcClient.cs index 551bc0a..ef54af7 100644 --- a/ChatSharp/IrcClient.cs +++ b/ChatSharp/IrcClient.cs @@ -35,18 +35,18 @@ namespace ChatSharp User = user ?? throw new ArgumentNullException(nameof(user)); ServerAddress = serverAddress ?? throw new ArgumentNullException(nameof(serverAddress)); Encoding = Encoding.UTF8; - Settings = new(); - Handlers = new(); + Settings = new ClientSettings(); + Handlers = new Dictionary(); MessageHandlers.RegisterDefaultHandlers(this); - RequestManager = new(); + RequestManager = new RequestManager(); UseSSL = useSSL; - WriteQueue = new(); - ServerInfo = new(); + WriteQueue = new ConcurrentQueue(); + ServerInfo = new ServerInfo(); PrivmsgPrefix = ""; - Channels = User.Channels = new(this); + Channels = User.Channels = new ChannelCollection(this); // Add self to user pool - Users = new() { User }; - Capabilities = new(); + Users = new UserPool { User }; + Capabilities = new CapabilityPool(); // List of supported capabilities Capabilities.AddRange(new[] @@ -58,7 +58,7 @@ namespace ChatSharp IsNegotiatingCapabilities = false; IsAuthenticatingSasl = false; - RandomNumber = new(); + RandomNumber = new Random(); } private Dictionary Handlers { get; } @@ -199,17 +199,17 @@ namespace ChatSharp { if (Socket != null && Socket.Connected) throw new InvalidOperationException("Socket is already connected to server."); - Socket = new(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); + Socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); ReadBuffer = new byte[ReadBufferLength]; ReadBufferIndex = 0; - PingTimer = new(30000); - PingTimer.Elapsed += (_, _) => + PingTimer = new Timer(30000); + PingTimer.Elapsed += (x, y) => { if (!string.IsNullOrEmpty(ServerNameFromPing)) SendRawMessage("PING :{0}", ServerNameFromPing); }; var checkQueue = new Timer(1000); - checkQueue.Elapsed += (_, _) => + checkQueue.Elapsed += (x, y) => { if (!WriteQueue.IsEmpty) { @@ -260,7 +260,7 @@ namespace ChatSharp if (UseSSL) { if (IgnoreInvalidSSL) - NetworkStream = new SslStream(NetworkStream, false, (_, _, _, _) => true); + NetworkStream = new SslStream(NetworkStream, false, (a, b, c, d) => true); else NetworkStream = new SslStream(NetworkStream); ((SslStream)NetworkStream).AuthenticateAsClient(ServerHostname); @@ -279,11 +279,11 @@ namespace ChatSharp } catch (SocketException e) { - OnNetworkError(new(e.SocketErrorCode)); + OnNetworkError(new SocketErrorEventArgs(e.SocketErrorCode)); } catch (Exception e) { - OnError(new(e)); + OnError(new ErrorEventArgs(e)); } } @@ -291,7 +291,7 @@ namespace ChatSharp { if (NetworkStream == null) { - OnNetworkError(new(SocketError.NotConnected)); + OnNetworkError(new SocketErrorEventArgs(SocketError.NotConnected)); return; } @@ -303,7 +303,7 @@ namespace ChatSharp catch (IOException e) { if (e.InnerException is SocketException socketException) - OnNetworkError(new(socketException.SocketErrorCode)); + OnNetworkError(new SocketErrorEventArgs(socketException.SocketErrorCode)); else throw; return; @@ -332,7 +332,7 @@ namespace ChatSharp private void HandleMessage(string rawMessage) { - OnRawMessageReceived(new(rawMessage, false)); + OnRawMessageReceived(new RawMessageEventArgs(rawMessage, false)); var message = new IrcMessage(rawMessage); if (Handlers.ContainsKey(message.Command.ToUpper())) { @@ -347,7 +347,7 @@ namespace ChatSharp { if (NetworkStream == null) { - OnNetworkError(new(SocketError.NotConnected)); + OnNetworkError(new SocketErrorEventArgs(SocketError.NotConnected)); return; } @@ -377,7 +377,7 @@ namespace ChatSharp { if (NetworkStream == null) { - OnNetworkError(new(SocketError.NotConnected)); + OnNetworkError(new SocketErrorEventArgs(SocketError.NotConnected)); IsWriting = false; return; } @@ -389,7 +389,7 @@ namespace ChatSharp catch (IOException e) { if (e.InnerException is SocketException socketException) - OnNetworkError(new(socketException.SocketErrorCode)); + OnNetworkError(new SocketErrorEventArgs(socketException.SocketErrorCode)); else throw; return; @@ -399,7 +399,7 @@ namespace ChatSharp IsWriting = false; } - OnRawMessageSent(new((string)result.AsyncState, true)); + OnRawMessageSent(new RawMessageEventArgs((string)result.AsyncState, true)); string nextMessage; if (!WriteQueue.IsEmpty) diff --git a/ChatSharp/IrcMessage.cs b/ChatSharp/IrcMessage.cs index 51af89f..e15f49f 100644 --- a/ChatSharp/IrcMessage.cs +++ b/ChatSharp/IrcMessage.cs @@ -29,13 +29,13 @@ namespace ChatSharp { var replacedTag = rawTag.Replace(@"\:", ";"); // The spec declares `@a=` as a tag with an empty value, while `@b;` as a tag with a null value - KeyValuePair tag = new(replacedTag, null); + KeyValuePair tag = new KeyValuePair(replacedTag, null); if (replacedTag.Contains("=")) { var key = replacedTag.Substring(0, replacedTag.IndexOf("=", StringComparison.Ordinal)); var value = replacedTag[(replacedTag.IndexOf("=", StringComparison.Ordinal) + 1)..]; - tag = new(key, value); + tag = new KeyValuePair(key, value); } tags.Add(tag); @@ -91,13 +91,13 @@ namespace ChatSharp if (Tags.Any(tag => tag.Key == "t")) { var tag = Tags.SingleOrDefault(x => x.Key == "t"); - Timestamp = new(tag.Value, true); + Timestamp = new Timestamp(tag.Value, true); } // server-time tag else if (Tags.Any(tag => tag.Key == "time")) { var tag = Tags.SingleOrDefault(x => x.Key == "time"); - Timestamp = new(tag.Value); + Timestamp = new Timestamp(tag.Value); } } diff --git a/ChatSharp/IrcUser.cs b/ChatSharp/IrcUser.cs index 63c711c..074d0c3 100644 --- a/ChatSharp/IrcUser.cs +++ b/ChatSharp/IrcUser.cs @@ -10,8 +10,8 @@ namespace ChatSharp { internal IrcUser() { - Channels = new(); - ChannelModes = new(); + Channels = new ChannelCollection(); + ChannelModes = new Dictionary>(); Account = "*"; } diff --git a/ChatSharp/MaskCollection.cs b/ChatSharp/MaskCollection.cs index 6507839..31c4fb2 100644 --- a/ChatSharp/MaskCollection.cs +++ b/ChatSharp/MaskCollection.cs @@ -11,7 +11,7 @@ namespace ChatSharp { internal MaskCollection() { - Masks = new(); + Masks = new List(); } private List Masks { get; } diff --git a/ChatSharp/RequestManager.cs b/ChatSharp/RequestManager.cs index fd97768..9970545 100644 --- a/ChatSharp/RequestManager.cs +++ b/ChatSharp/RequestManager.cs @@ -8,7 +8,7 @@ namespace ChatSharp { public RequestManager() { - PendingOperations = new(); + PendingOperations = new Dictionary(); } internal Dictionary PendingOperations { get; } diff --git a/ChatSharp/ServerInfo.cs b/ChatSharp/ServerInfo.cs index 13e6d6b..bb5d5c1 100644 --- a/ChatSharp/ServerInfo.cs +++ b/ChatSharp/ServerInfo.cs @@ -11,7 +11,7 @@ namespace ChatSharp { // Guess for some defaults Prefixes = new[] { "ovhaq", "@+%&~" }; - SupportedChannelModes = new(); + SupportedChannelModes = new ChannelModes(); IsGuess = true; ExtendedWho = false; } @@ -115,8 +115,8 @@ namespace ChatSharp public List GetModesForNick(string nick) { var supportedPrefixes = Prefixes[1]; - List modeList = new(); - List nickPrefixes = new(); + List modeList = new List(); + List nickPrefixes = new List(); foreach (var prefix in supportedPrefixes) if (nick.Contains(prefix)) diff --git a/ChatSharp/UserPool.cs b/ChatSharp/UserPool.cs index 1c513dd..4c18c3a 100644 --- a/ChatSharp/UserPool.cs +++ b/ChatSharp/UserPool.cs @@ -13,7 +13,7 @@ namespace ChatSharp { internal UserPool() { - Users = new(); + Users = new List(); } private List Users { get; } diff --git a/ChatSharp/WhoIs.cs b/ChatSharp/WhoIs.cs index 211861f..90c0077 100644 --- a/ChatSharp/WhoIs.cs +++ b/ChatSharp/WhoIs.cs @@ -10,7 +10,7 @@ namespace ChatSharp { internal WhoIs() { - User = new(); + User = new IrcUser(); SecondsIdle = -1; Channels = Array.Empty(); } diff --git a/ChatSharp/WhoX.cs b/ChatSharp/WhoX.cs index 810e76b..014753f 100644 --- a/ChatSharp/WhoX.cs +++ b/ChatSharp/WhoX.cs @@ -12,7 +12,7 @@ namespace ChatSharp { QueryType = -1; Channel = "*"; - User = new(); + User = new IrcUser(); IP = string.Empty; Server = string.Empty; Flags = string.Empty; diff --git a/ChatSharpTests/ChatSharp.Tests.csproj b/ChatSharpTests/ChatSharp.Tests.csproj index 8c79b1d..a0d8259 100644 --- a/ChatSharpTests/ChatSharp.Tests.csproj +++ b/ChatSharpTests/ChatSharp.Tests.csproj @@ -1,17 +1,8 @@ - + - net6.0 - false + net8.0 - - - - - all - - - \ No newline at end of file diff --git a/ChatSharpTests/Properties/AssemblyInfo.cs b/ChatSharpTests/Properties/AssemblyInfo.cs deleted file mode 100644 index ce4e7f7..0000000 --- a/ChatSharpTests/Properties/AssemblyInfo.cs +++ /dev/null @@ -1,19 +0,0 @@ -using System.Reflection; -using System.Runtime.InteropServices; - -[assembly: AssemblyTitle("ChatSharpTests")] -[assembly: AssemblyDescription("")] -[assembly: AssemblyConfiguration("")] -[assembly: AssemblyCompany("")] -[assembly: AssemblyProduct("ChatSharpTests")] -[assembly: AssemblyCopyright("Copyright © 2017")] -[assembly: AssemblyTrademark("")] -[assembly: AssemblyCulture("")] - -[assembly: ComVisible(false)] - -[assembly: Guid("24d593ec-ca81-41dc-9fe7-a434ddde229d")] - -// [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.0.0.0")] -[assembly: AssemblyFileVersion("1.0.0.0")] \ No newline at end of file