diff --git a/SharpChat/Misuzu/MisuzuAuthInfo.cs b/SharpChat.Misuzu/MisuzuAuthInfo.cs similarity index 100% rename from SharpChat/Misuzu/MisuzuAuthInfo.cs rename to SharpChat.Misuzu/MisuzuAuthInfo.cs diff --git a/SharpChat/Misuzu/MisuzuBanInfo.cs b/SharpChat.Misuzu/MisuzuBanInfo.cs similarity index 100% rename from SharpChat/Misuzu/MisuzuBanInfo.cs rename to SharpChat.Misuzu/MisuzuBanInfo.cs diff --git a/SharpChat/Misuzu/MisuzuClient.cs b/SharpChat.Misuzu/MisuzuClient.cs similarity index 100% rename from SharpChat/Misuzu/MisuzuClient.cs rename to SharpChat.Misuzu/MisuzuClient.cs diff --git a/SharpChat.Misuzu/SharpChat.Misuzu.csproj b/SharpChat.Misuzu/SharpChat.Misuzu.csproj new file mode 100644 index 0000000..d9d410b --- /dev/null +++ b/SharpChat.Misuzu/SharpChat.Misuzu.csproj @@ -0,0 +1,12 @@ + + + + net6.0 + enable + + + + + + + diff --git a/SharpChat/Commands/BanListCommand.cs b/SharpChat.SockChat/Commands/BanListCommand.cs similarity index 94% rename from SharpChat/Commands/BanListCommand.cs rename to SharpChat.SockChat/Commands/BanListCommand.cs index 2bc4328..4a9eedc 100644 --- a/SharpChat/Commands/BanListCommand.cs +++ b/SharpChat.SockChat/Commands/BanListCommand.cs @@ -1,10 +1,10 @@ using SharpChat.Misuzu; -using SharpChat.PacketsS2C; +using SharpChat.SockChat.PacketsS2C; using System; using System.Linq; using System.Threading.Tasks; -namespace SharpChat.Commands { +namespace SharpChat.SockChat.Commands { public class BanListCommand : ISockChatClientCommand { private readonly MisuzuClient Misuzu; diff --git a/SharpChat/Commands/ChannelCreateCommand.cs b/SharpChat.SockChat/Commands/ChannelCreateCommand.cs similarity index 96% rename from SharpChat/Commands/ChannelCreateCommand.cs rename to SharpChat.SockChat/Commands/ChannelCreateCommand.cs index 9726bea..93102c6 100644 --- a/SharpChat/Commands/ChannelCreateCommand.cs +++ b/SharpChat.SockChat/Commands/ChannelCreateCommand.cs @@ -1,7 +1,7 @@ -using SharpChat.PacketsS2C; +using SharpChat.SockChat.PacketsS2C; using System.Linq; -namespace SharpChat.Commands { +namespace SharpChat.SockChat.Commands { public class ChannelCreateCommand : ISockChatClientCommand { public bool IsMatch(SockChatClientCommandContext ctx) { return ctx.NameEquals("create"); diff --git a/SharpChat/Commands/ChannelDeleteCommand.cs b/SharpChat.SockChat/Commands/ChannelDeleteCommand.cs similarity index 94% rename from SharpChat/Commands/ChannelDeleteCommand.cs rename to SharpChat.SockChat/Commands/ChannelDeleteCommand.cs index ab3b1f6..443fef0 100644 --- a/SharpChat/Commands/ChannelDeleteCommand.cs +++ b/SharpChat.SockChat/Commands/ChannelDeleteCommand.cs @@ -1,7 +1,7 @@ -using SharpChat.PacketsS2C; +using SharpChat.SockChat.PacketsS2C; using System.Linq; -namespace SharpChat.Commands { +namespace SharpChat.SockChat.Commands { public class ChannelDeleteCommand : ISockChatClientCommand { public bool IsMatch(SockChatClientCommandContext ctx) { return ctx.NameEquals("delchan") || ( diff --git a/SharpChat/Commands/ChannelJoinCommand.cs b/SharpChat.SockChat/Commands/ChannelJoinCommand.cs similarity index 90% rename from SharpChat/Commands/ChannelJoinCommand.cs rename to SharpChat.SockChat/Commands/ChannelJoinCommand.cs index 8a0f28e..9d0b33d 100644 --- a/SharpChat/Commands/ChannelJoinCommand.cs +++ b/SharpChat.SockChat/Commands/ChannelJoinCommand.cs @@ -1,7 +1,7 @@ -using SharpChat.PacketsS2C; +using SharpChat.SockChat.PacketsS2C; using System.Linq; -namespace SharpChat.Commands { +namespace SharpChat.SockChat.Commands { public class ChannelJoinCommand : ISockChatClientCommand { public bool IsMatch(SockChatClientCommandContext ctx) { return ctx.NameEquals("join"); diff --git a/SharpChat/Commands/ChannelPasswordCommand.cs b/SharpChat.SockChat/Commands/ChannelPasswordCommand.cs similarity index 91% rename from SharpChat/Commands/ChannelPasswordCommand.cs rename to SharpChat.SockChat/Commands/ChannelPasswordCommand.cs index b059420..b8c66ff 100644 --- a/SharpChat/Commands/ChannelPasswordCommand.cs +++ b/SharpChat.SockChat/Commands/ChannelPasswordCommand.cs @@ -1,6 +1,6 @@ -using SharpChat.PacketsS2C; +using SharpChat.SockChat.PacketsS2C; -namespace SharpChat.Commands { +namespace SharpChat.SockChat.Commands { public class ChannelPasswordCommand : ISockChatClientCommand { public bool IsMatch(SockChatClientCommandContext ctx) { return ctx.NameEquals("pwd") diff --git a/SharpChat/Commands/ChannelRankCommand.cs b/SharpChat.SockChat/Commands/ChannelRankCommand.cs similarity index 92% rename from SharpChat/Commands/ChannelRankCommand.cs rename to SharpChat.SockChat/Commands/ChannelRankCommand.cs index 0822dc6..95eed6d 100644 --- a/SharpChat/Commands/ChannelRankCommand.cs +++ b/SharpChat.SockChat/Commands/ChannelRankCommand.cs @@ -1,7 +1,7 @@ -using SharpChat.PacketsS2C; +using SharpChat.SockChat.PacketsS2C; using System.Linq; -namespace SharpChat.Commands { +namespace SharpChat.SockChat.Commands { public class ChannelRankCommand : ISockChatClientCommand { public bool IsMatch(SockChatClientCommandContext ctx) { return ctx.NameEquals("rank") diff --git a/SharpChat/Commands/ISockChatClientCommand.cs b/SharpChat.SockChat/Commands/ISockChatClientCommand.cs similarity index 79% rename from SharpChat/Commands/ISockChatClientCommand.cs rename to SharpChat.SockChat/Commands/ISockChatClientCommand.cs index fc03beb..250db7d 100644 --- a/SharpChat/Commands/ISockChatClientCommand.cs +++ b/SharpChat.SockChat/Commands/ISockChatClientCommand.cs @@ -1,4 +1,4 @@ -namespace SharpChat.Commands { +namespace SharpChat.SockChat.Commands { public interface ISockChatClientCommand { bool IsMatch(SockChatClientCommandContext ctx); void Dispatch(SockChatClientCommandContext ctx); diff --git a/SharpChat/Commands/KickBanCommand.cs b/SharpChat.SockChat/Commands/KickBanCommand.cs similarity index 97% rename from SharpChat/Commands/KickBanCommand.cs rename to SharpChat.SockChat/Commands/KickBanCommand.cs index 8705cd6..800ff6a 100644 --- a/SharpChat/Commands/KickBanCommand.cs +++ b/SharpChat.SockChat/Commands/KickBanCommand.cs @@ -1,10 +1,10 @@ using SharpChat.Misuzu; -using SharpChat.PacketsS2C; +using SharpChat.SockChat.PacketsS2C; using System; using System.Linq; using System.Threading.Tasks; -namespace SharpChat.Commands { +namespace SharpChat.SockChat.Commands { public class KickBanCommand : ISockChatClientCommand { private readonly MisuzuClient Misuzu; diff --git a/SharpChat/Commands/MessageActionCommand.cs b/SharpChat.SockChat/Commands/MessageActionCommand.cs similarity index 95% rename from SharpChat/Commands/MessageActionCommand.cs rename to SharpChat.SockChat/Commands/MessageActionCommand.cs index 4fc11fe..5f665c7 100644 --- a/SharpChat/Commands/MessageActionCommand.cs +++ b/SharpChat.SockChat/Commands/MessageActionCommand.cs @@ -2,7 +2,7 @@ using System; using System.Linq; -namespace SharpChat.Commands { +namespace SharpChat.SockChat.Commands { public class MessageActionCommand : ISockChatClientCommand { public bool IsMatch(SockChatClientCommandContext ctx) { return ctx.NameEquals("action") diff --git a/SharpChat/Commands/MessageBroadcastCommand.cs b/SharpChat.SockChat/Commands/MessageBroadcastCommand.cs similarity index 91% rename from SharpChat/Commands/MessageBroadcastCommand.cs rename to SharpChat.SockChat/Commands/MessageBroadcastCommand.cs index d53d9d4..5870c2d 100644 --- a/SharpChat/Commands/MessageBroadcastCommand.cs +++ b/SharpChat.SockChat/Commands/MessageBroadcastCommand.cs @@ -1,8 +1,8 @@ using SharpChat.Events; -using SharpChat.PacketsS2C; +using SharpChat.SockChat.PacketsS2C; using System; -namespace SharpChat.Commands { +namespace SharpChat.SockChat.Commands { public class MessageBroadcastCommand : ISockChatClientCommand { public bool IsMatch(SockChatClientCommandContext ctx) { return ctx.NameEquals("say") diff --git a/SharpChat/Commands/MessageDeleteCommand.cs b/SharpChat.SockChat/Commands/MessageDeleteCommand.cs similarity index 95% rename from SharpChat/Commands/MessageDeleteCommand.cs rename to SharpChat.SockChat/Commands/MessageDeleteCommand.cs index f7497b5..553d497 100644 --- a/SharpChat/Commands/MessageDeleteCommand.cs +++ b/SharpChat.SockChat/Commands/MessageDeleteCommand.cs @@ -1,8 +1,8 @@ using SharpChat.EventStorage; -using SharpChat.PacketsS2C; +using SharpChat.SockChat.PacketsS2C; using System.Linq; -namespace SharpChat.Commands { +namespace SharpChat.SockChat.Commands { public class MessageDeleteCommand : ISockChatClientCommand { public bool IsMatch(SockChatClientCommandContext ctx) { return ctx.NameEquals("delmsg") || ( diff --git a/SharpChat/Commands/MessageWhisperCommand.cs b/SharpChat.SockChat/Commands/MessageWhisperCommand.cs similarity index 94% rename from SharpChat/Commands/MessageWhisperCommand.cs rename to SharpChat.SockChat/Commands/MessageWhisperCommand.cs index 782e8ba..7180968 100644 --- a/SharpChat/Commands/MessageWhisperCommand.cs +++ b/SharpChat.SockChat/Commands/MessageWhisperCommand.cs @@ -1,9 +1,9 @@ using SharpChat.Events; -using SharpChat.PacketsS2C; +using SharpChat.SockChat.PacketsS2C; using System; using System.Linq; -namespace SharpChat.Commands { +namespace SharpChat.SockChat.Commands { public class MessageWhisperCommand : ISockChatClientCommand { public bool IsMatch(SockChatClientCommandContext ctx) { return ctx.NameEquals("whisper") diff --git a/SharpChat/Commands/PardonAddressCommand.cs b/SharpChat.SockChat/Commands/PardonAddressCommand.cs similarity index 96% rename from SharpChat/Commands/PardonAddressCommand.cs rename to SharpChat.SockChat/Commands/PardonAddressCommand.cs index bb270a4..36adfe3 100644 --- a/SharpChat/Commands/PardonAddressCommand.cs +++ b/SharpChat.SockChat/Commands/PardonAddressCommand.cs @@ -1,10 +1,10 @@ using SharpChat.Misuzu; -using SharpChat.PacketsS2C; +using SharpChat.SockChat.PacketsS2C; using System.Linq; using System.Net; using System.Threading.Tasks; -namespace SharpChat.Commands { +namespace SharpChat.SockChat.Commands { public class PardonAddressCommand : ISockChatClientCommand { private readonly MisuzuClient Misuzu; diff --git a/SharpChat/Commands/PardonUserCommand.cs b/SharpChat.SockChat/Commands/PardonUserCommand.cs similarity index 96% rename from SharpChat/Commands/PardonUserCommand.cs rename to SharpChat.SockChat/Commands/PardonUserCommand.cs index d251f21..4642445 100644 --- a/SharpChat/Commands/PardonUserCommand.cs +++ b/SharpChat.SockChat/Commands/PardonUserCommand.cs @@ -1,9 +1,9 @@ using SharpChat.Misuzu; -using SharpChat.PacketsS2C; +using SharpChat.SockChat.PacketsS2C; using System.Linq; using System.Threading.Tasks; -namespace SharpChat.Commands { +namespace SharpChat.SockChat.Commands { public class PardonUserCommand : ISockChatClientCommand { private readonly MisuzuClient Misuzu; diff --git a/SharpChat/Commands/ShutdownRestartCommand.cs b/SharpChat.SockChat/Commands/ShutdownRestartCommand.cs similarity index 93% rename from SharpChat/Commands/ShutdownRestartCommand.cs rename to SharpChat.SockChat/Commands/ShutdownRestartCommand.cs index 72f975a..bf03711 100644 --- a/SharpChat/Commands/ShutdownRestartCommand.cs +++ b/SharpChat.SockChat/Commands/ShutdownRestartCommand.cs @@ -1,8 +1,8 @@ -using SharpChat.PacketsS2C; +using SharpChat.SockChat.PacketsS2C; using System; using System.Threading; -namespace SharpChat.Commands { +namespace SharpChat.SockChat.Commands { public class ShutdownRestartCommand : ISockChatClientCommand { private readonly ManualResetEvent WaitHandle; private readonly Func ShuttingDown; diff --git a/SharpChat/Commands/SockChatClientCommandContext.cs b/SharpChat.SockChat/Commands/SockChatClientCommandContext.cs similarity index 78% rename from SharpChat/Commands/SockChatClientCommandContext.cs rename to SharpChat.SockChat/Commands/SockChatClientCommandContext.cs index 9c0a1d7..cc28a8f 100644 --- a/SharpChat/Commands/SockChatClientCommandContext.cs +++ b/SharpChat.SockChat/Commands/SockChatClientCommandContext.cs @@ -1,20 +1,20 @@ using System; using System.Linq; -namespace SharpChat.Commands { +namespace SharpChat.SockChat.Commands { public class SockChatClientCommandContext { public string Name { get; } public string[] Args { get; } - public ChatContext Chat { get; } + public SockChatContext Chat { get; } public UserInfo User { get; } - public ConnectionInfo Connection { get; } + public SockChatConnectionInfo Connection { get; } public ChannelInfo Channel { get; } public SockChatClientCommandContext( string text, - ChatContext chat, + SockChatContext chat, UserInfo user, - ConnectionInfo connection, + SockChatConnectionInfo connection, ChannelInfo channel ) { Chat = chat; diff --git a/SharpChat/Commands/UserAFKCommand.cs b/SharpChat.SockChat/Commands/UserAFKCommand.cs similarity index 95% rename from SharpChat/Commands/UserAFKCommand.cs rename to SharpChat.SockChat/Commands/UserAFKCommand.cs index 12e2925..b90ef31 100644 --- a/SharpChat/Commands/UserAFKCommand.cs +++ b/SharpChat.SockChat/Commands/UserAFKCommand.cs @@ -1,6 +1,6 @@ using System.Linq; -namespace SharpChat.Commands { +namespace SharpChat.SockChat.Commands { public class UserAFKCommand : ISockChatClientCommand { private const string DEFAULT = "AFK"; private const int MAX_LENGTH = 5; diff --git a/SharpChat/Commands/UserNickCommand.cs b/SharpChat.SockChat/Commands/UserNickCommand.cs similarity index 96% rename from SharpChat/Commands/UserNickCommand.cs rename to SharpChat.SockChat/Commands/UserNickCommand.cs index 46f9424..cdde2b1 100644 --- a/SharpChat/Commands/UserNickCommand.cs +++ b/SharpChat.SockChat/Commands/UserNickCommand.cs @@ -1,7 +1,7 @@ -using SharpChat.PacketsS2C; +using SharpChat.SockChat.PacketsS2C; using System.Linq; -namespace SharpChat.Commands { +namespace SharpChat.SockChat.Commands { public class UserNickCommand : ISockChatClientCommand { public bool IsMatch(SockChatClientCommandContext ctx) { return ctx.NameEquals("nick"); diff --git a/SharpChat/Commands/WhoCommand.cs b/SharpChat.SockChat/Commands/WhoCommand.cs similarity index 95% rename from SharpChat/Commands/WhoCommand.cs rename to SharpChat.SockChat/Commands/WhoCommand.cs index 2c2139a..474234b 100644 --- a/SharpChat/Commands/WhoCommand.cs +++ b/SharpChat.SockChat/Commands/WhoCommand.cs @@ -1,7 +1,7 @@ -using SharpChat.PacketsS2C; +using SharpChat.SockChat.PacketsS2C; using System.Linq; -namespace SharpChat.Commands { +namespace SharpChat.SockChat.Commands { public class WhoCommand : ISockChatClientCommand { public bool IsMatch(SockChatClientCommandContext ctx) { return ctx.NameEquals("who"); diff --git a/SharpChat/Commands/WhoisCommand.cs b/SharpChat.SockChat/Commands/WhoisCommand.cs similarity index 93% rename from SharpChat/Commands/WhoisCommand.cs rename to SharpChat.SockChat/Commands/WhoisCommand.cs index 5045db2..1b66044 100644 --- a/SharpChat/Commands/WhoisCommand.cs +++ b/SharpChat.SockChat/Commands/WhoisCommand.cs @@ -1,7 +1,7 @@ -using SharpChat.PacketsS2C; +using SharpChat.SockChat.PacketsS2C; using System.Linq; -namespace SharpChat.Commands { +namespace SharpChat.SockChat.Commands { public class WhoisCommand : ISockChatClientCommand { public bool IsMatch(SockChatClientCommandContext ctx) { return ctx.NameEquals("ip") diff --git a/SharpChat/PacketsC2S/AuthC2SPacketHandler.cs b/SharpChat.SockChat/PacketsC2S/AuthC2SPacketHandler.cs similarity index 98% rename from SharpChat/PacketsC2S/AuthC2SPacketHandler.cs rename to SharpChat.SockChat/PacketsC2S/AuthC2SPacketHandler.cs index 50bce6a..5ec01e9 100644 --- a/SharpChat/PacketsC2S/AuthC2SPacketHandler.cs +++ b/SharpChat.SockChat/PacketsC2S/AuthC2SPacketHandler.cs @@ -1,13 +1,13 @@ using SharpChat.Config; using SharpChat.Misuzu; -using SharpChat.PacketsS2C; +using SharpChat.SockChat.PacketsS2C; using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Threading.Tasks; -namespace SharpChat.PacketsC2S { +namespace SharpChat.SockChat.PacketsC2S { public class AuthC2SPacketHandler : IC2SPacketHandler { public const string MOTD_FILE = @"welcome.txt"; diff --git a/SharpChat/PacketsC2S/C2SPacketHandlerContext.cs b/SharpChat.SockChat/PacketsC2S/C2SPacketHandlerContext.cs similarity index 62% rename from SharpChat/PacketsC2S/C2SPacketHandlerContext.cs rename to SharpChat.SockChat/PacketsC2S/C2SPacketHandlerContext.cs index f567e5c..a71506c 100644 --- a/SharpChat/PacketsC2S/C2SPacketHandlerContext.cs +++ b/SharpChat.SockChat/PacketsC2S/C2SPacketHandlerContext.cs @@ -1,10 +1,10 @@ -namespace SharpChat.PacketsC2S { +namespace SharpChat.SockChat.PacketsC2S { public class C2SPacketHandlerContext { public string Text { get; } - public ChatContext Chat { get; } - public ConnectionInfo Connection { get; } + public SockChatContext Chat { get; } + public SockChatConnectionInfo Connection { get; } - public C2SPacketHandlerContext(string text, ChatContext chat, ConnectionInfo connection) { + public C2SPacketHandlerContext(string text, SockChatContext chat, SockChatConnectionInfo connection) { Text = text; Chat = chat; Connection = connection; diff --git a/SharpChat/PacketsC2S/IC2SPacketHandler.cs b/SharpChat.SockChat/PacketsC2S/IC2SPacketHandler.cs similarity index 76% rename from SharpChat/PacketsC2S/IC2SPacketHandler.cs rename to SharpChat.SockChat/PacketsC2S/IC2SPacketHandler.cs index 844e8b9..8cba17c 100644 --- a/SharpChat/PacketsC2S/IC2SPacketHandler.cs +++ b/SharpChat.SockChat/PacketsC2S/IC2SPacketHandler.cs @@ -1,4 +1,4 @@ -namespace SharpChat.PacketsC2S { +namespace SharpChat.SockChat.PacketsC2S { public interface IC2SPacketHandler { bool IsMatch(C2SPacketHandlerContext ctx); void Handle(C2SPacketHandlerContext ctx); diff --git a/SharpChat/PacketsC2S/PingC2SPacketHandler.cs b/SharpChat.SockChat/PacketsC2S/PingC2SPacketHandler.cs similarity index 96% rename from SharpChat/PacketsC2S/PingC2SPacketHandler.cs rename to SharpChat.SockChat/PacketsC2S/PingC2SPacketHandler.cs index f2509b8..5ce6f08 100644 --- a/SharpChat/PacketsC2S/PingC2SPacketHandler.cs +++ b/SharpChat.SockChat/PacketsC2S/PingC2SPacketHandler.cs @@ -1,11 +1,11 @@ using SharpChat.Misuzu; -using SharpChat.PacketsS2C; +using SharpChat.SockChat.PacketsS2C; using System; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; -namespace SharpChat.PacketsC2S { +namespace SharpChat.SockChat.PacketsC2S { public class PingC2SPacketHandler : IC2SPacketHandler { private readonly MisuzuClient Misuzu; diff --git a/SharpChat/PacketsC2S/SendMessageC2SPacketHandler.cs b/SharpChat.SockChat/PacketsC2S/SendMessageC2SPacketHandler.cs similarity index 96% rename from SharpChat/PacketsC2S/SendMessageC2SPacketHandler.cs rename to SharpChat.SockChat/PacketsC2S/SendMessageC2SPacketHandler.cs index 676639a..9a02e3c 100644 --- a/SharpChat/PacketsC2S/SendMessageC2SPacketHandler.cs +++ b/SharpChat.SockChat/PacketsC2S/SendMessageC2SPacketHandler.cs @@ -1,11 +1,11 @@ -using SharpChat.Commands; -using SharpChat.Config; +using SharpChat.Config; using SharpChat.Events; +using SharpChat.SockChat.Commands; using System; using System.Collections.Generic; using System.Linq; -namespace SharpChat.PacketsC2S { +namespace SharpChat.SockChat.PacketsC2S { public class SendMessageC2SPacketHandler : IC2SPacketHandler { private readonly CachedValue MaxMessageLength; diff --git a/SharpChat/PacketsS2C/AuthFailS2CPacket.cs b/SharpChat.SockChat/PacketsS2C/AuthFailS2CPacket.cs similarity index 96% rename from SharpChat/PacketsS2C/AuthFailS2CPacket.cs rename to SharpChat.SockChat/PacketsS2C/AuthFailS2CPacket.cs index 38140c6..4b511cb 100644 --- a/SharpChat/PacketsS2C/AuthFailS2CPacket.cs +++ b/SharpChat.SockChat/PacketsS2C/AuthFailS2CPacket.cs @@ -1,6 +1,6 @@ using System; -namespace SharpChat.PacketsS2C { +namespace SharpChat.SockChat.PacketsS2C { public class AuthFailS2CPacket : SockChatS2CPacket { public enum FailReason { AuthInvalid, diff --git a/SharpChat/PacketsS2C/AuthSuccessS2CPacket.cs b/SharpChat.SockChat/PacketsS2C/AuthSuccessS2CPacket.cs similarity index 97% rename from SharpChat/PacketsS2C/AuthSuccessS2CPacket.cs rename to SharpChat.SockChat/PacketsS2C/AuthSuccessS2CPacket.cs index 6844139..ba653b3 100644 --- a/SharpChat/PacketsS2C/AuthSuccessS2CPacket.cs +++ b/SharpChat.SockChat/PacketsS2C/AuthSuccessS2CPacket.cs @@ -1,4 +1,4 @@ -namespace SharpChat.PacketsS2C { +namespace SharpChat.SockChat.PacketsS2C { public class AuthSuccessS2CPacket : SockChatS2CPacket { private readonly long UserId; private readonly string UserName; diff --git a/SharpChat/PacketsS2C/BanListResponseS2CPacket.cs b/SharpChat.SockChat/PacketsS2C/BanListResponseS2CPacket.cs similarity index 94% rename from SharpChat/PacketsS2C/BanListResponseS2CPacket.cs rename to SharpChat.SockChat/PacketsS2C/BanListResponseS2CPacket.cs index 5ea307f..7e49752 100644 --- a/SharpChat/PacketsS2C/BanListResponseS2CPacket.cs +++ b/SharpChat.SockChat/PacketsS2C/BanListResponseS2CPacket.cs @@ -1,6 +1,6 @@ using System.Text; -namespace SharpChat.PacketsS2C { +namespace SharpChat.SockChat.PacketsS2C { public class BanListResponseS2CPacket : SockChatTimedS2CPacket { private readonly string[] Bans; diff --git a/SharpChat/PacketsS2C/ChannelCreateResponseS2CPacket.cs b/SharpChat.SockChat/PacketsS2C/ChannelCreateResponseS2CPacket.cs similarity index 92% rename from SharpChat/PacketsS2C/ChannelCreateResponseS2CPacket.cs rename to SharpChat.SockChat/PacketsS2C/ChannelCreateResponseS2CPacket.cs index 5a8c32b..b681530 100644 --- a/SharpChat/PacketsS2C/ChannelCreateResponseS2CPacket.cs +++ b/SharpChat.SockChat/PacketsS2C/ChannelCreateResponseS2CPacket.cs @@ -1,4 +1,4 @@ -namespace SharpChat.PacketsS2C { +namespace SharpChat.SockChat.PacketsS2C { public class ChannelCreateResponseS2CPacket : SockChatTimedS2CPacket { private readonly string ChannelName; diff --git a/SharpChat/PacketsS2C/ChannelCreateS2CPacket.cs b/SharpChat.SockChat/PacketsS2C/ChannelCreateS2CPacket.cs similarity index 94% rename from SharpChat/PacketsS2C/ChannelCreateS2CPacket.cs rename to SharpChat.SockChat/PacketsS2C/ChannelCreateS2CPacket.cs index b9d6021..e3a2aa0 100644 --- a/SharpChat/PacketsS2C/ChannelCreateS2CPacket.cs +++ b/SharpChat.SockChat/PacketsS2C/ChannelCreateS2CPacket.cs @@ -1,4 +1,4 @@ -namespace SharpChat.PacketsS2C { +namespace SharpChat.SockChat.PacketsS2C { public class ChannelCreateS2CPacket : SockChatS2CPacket { private readonly string ChannelName; private readonly bool ChannelHasPassword; diff --git a/SharpChat/PacketsS2C/ChannelDeleteNotAllowedErrorS2CPacket.cs b/SharpChat.SockChat/PacketsS2C/ChannelDeleteNotAllowedErrorS2CPacket.cs similarity index 92% rename from SharpChat/PacketsS2C/ChannelDeleteNotAllowedErrorS2CPacket.cs rename to SharpChat.SockChat/PacketsS2C/ChannelDeleteNotAllowedErrorS2CPacket.cs index b22f40c..468d5ea 100644 --- a/SharpChat/PacketsS2C/ChannelDeleteNotAllowedErrorS2CPacket.cs +++ b/SharpChat.SockChat/PacketsS2C/ChannelDeleteNotAllowedErrorS2CPacket.cs @@ -1,4 +1,4 @@ -namespace SharpChat.PacketsS2C { +namespace SharpChat.SockChat.PacketsS2C { public class ChannelDeleteNotAllowedErrorS2CPacket : SockChatTimedS2CPacket { private readonly string ChannelName; diff --git a/SharpChat/PacketsS2C/ChannelDeleteResponseS2CPacket.cs b/SharpChat.SockChat/PacketsS2C/ChannelDeleteResponseS2CPacket.cs similarity index 92% rename from SharpChat/PacketsS2C/ChannelDeleteResponseS2CPacket.cs rename to SharpChat.SockChat/PacketsS2C/ChannelDeleteResponseS2CPacket.cs index 19ca5e4..45c5d79 100644 --- a/SharpChat/PacketsS2C/ChannelDeleteResponseS2CPacket.cs +++ b/SharpChat.SockChat/PacketsS2C/ChannelDeleteResponseS2CPacket.cs @@ -1,4 +1,4 @@ -namespace SharpChat.PacketsS2C { +namespace SharpChat.SockChat.PacketsS2C { public class ChannelDeleteResponseS2CPacket : SockChatTimedS2CPacket { private readonly string ChannelName; diff --git a/SharpChat/PacketsS2C/ChannelDeleteS2CPacket.cs b/SharpChat.SockChat/PacketsS2C/ChannelDeleteS2CPacket.cs similarity index 90% rename from SharpChat/PacketsS2C/ChannelDeleteS2CPacket.cs rename to SharpChat.SockChat/PacketsS2C/ChannelDeleteS2CPacket.cs index aadac7e..d2fcfd7 100644 --- a/SharpChat/PacketsS2C/ChannelDeleteS2CPacket.cs +++ b/SharpChat.SockChat/PacketsS2C/ChannelDeleteS2CPacket.cs @@ -1,4 +1,4 @@ -namespace SharpChat.PacketsS2C { +namespace SharpChat.SockChat.PacketsS2C { public class ChannelDeleteS2CPacket : SockChatS2CPacket { private readonly string ChannelName; diff --git a/SharpChat/PacketsS2C/ChannelNameFormatErrorS2CPacket.cs b/SharpChat.SockChat/PacketsS2C/ChannelNameFormatErrorS2CPacket.cs similarity index 87% rename from SharpChat/PacketsS2C/ChannelNameFormatErrorS2CPacket.cs rename to SharpChat.SockChat/PacketsS2C/ChannelNameFormatErrorS2CPacket.cs index 74f2f41..542cecb 100644 --- a/SharpChat/PacketsS2C/ChannelNameFormatErrorS2CPacket.cs +++ b/SharpChat.SockChat/PacketsS2C/ChannelNameFormatErrorS2CPacket.cs @@ -1,4 +1,4 @@ -namespace SharpChat.PacketsS2C { +namespace SharpChat.SockChat.PacketsS2C { public class ChannelNameFormatErrorS2CPacket : SockChatTimedS2CPacket { public override string Pack() { return string.Format( diff --git a/SharpChat/PacketsS2C/ChannelNameInUseErrorS2CPacket.cs b/SharpChat.SockChat/PacketsS2C/ChannelNameInUseErrorS2CPacket.cs similarity index 92% rename from SharpChat/PacketsS2C/ChannelNameInUseErrorS2CPacket.cs rename to SharpChat.SockChat/PacketsS2C/ChannelNameInUseErrorS2CPacket.cs index 4c6a9ae..c0ae77d 100644 --- a/SharpChat/PacketsS2C/ChannelNameInUseErrorS2CPacket.cs +++ b/SharpChat.SockChat/PacketsS2C/ChannelNameInUseErrorS2CPacket.cs @@ -1,4 +1,4 @@ -namespace SharpChat.PacketsS2C { +namespace SharpChat.SockChat.PacketsS2C { public class ChannelNameInUseErrorS2CPacket : SockChatTimedS2CPacket { private readonly string ChannelName; diff --git a/SharpChat/PacketsS2C/ChannelNotFoundErrorS2CPacket.cs b/SharpChat.SockChat/PacketsS2C/ChannelNotFoundErrorS2CPacket.cs similarity index 92% rename from SharpChat/PacketsS2C/ChannelNotFoundErrorS2CPacket.cs rename to SharpChat.SockChat/PacketsS2C/ChannelNotFoundErrorS2CPacket.cs index 3a18830..786cc9a 100644 --- a/SharpChat/PacketsS2C/ChannelNotFoundErrorS2CPacket.cs +++ b/SharpChat.SockChat/PacketsS2C/ChannelNotFoundErrorS2CPacket.cs @@ -1,4 +1,4 @@ -namespace SharpChat.PacketsS2C { +namespace SharpChat.SockChat.PacketsS2C { public class ChannelNotFoundErrorS2CPacket : SockChatTimedS2CPacket { private readonly string ChannelName; diff --git a/SharpChat/PacketsS2C/ChannelPasswordChangedResponseS2CPacket.cs b/SharpChat.SockChat/PacketsS2C/ChannelPasswordChangedResponseS2CPacket.cs similarity index 87% rename from SharpChat/PacketsS2C/ChannelPasswordChangedResponseS2CPacket.cs rename to SharpChat.SockChat/PacketsS2C/ChannelPasswordChangedResponseS2CPacket.cs index 282729b..8a09a37 100644 --- a/SharpChat/PacketsS2C/ChannelPasswordChangedResponseS2CPacket.cs +++ b/SharpChat.SockChat/PacketsS2C/ChannelPasswordChangedResponseS2CPacket.cs @@ -1,4 +1,4 @@ -namespace SharpChat.PacketsS2C { +namespace SharpChat.SockChat.PacketsS2C { public class ChannelPasswordChangedResponseS2CPacket : SockChatTimedS2CPacket { public override string Pack() { return string.Format( diff --git a/SharpChat/PacketsS2C/ChannelPasswordWrongErrorS2CPacket.cs b/SharpChat.SockChat/PacketsS2C/ChannelPasswordWrongErrorS2CPacket.cs similarity index 92% rename from SharpChat/PacketsS2C/ChannelPasswordWrongErrorS2CPacket.cs rename to SharpChat.SockChat/PacketsS2C/ChannelPasswordWrongErrorS2CPacket.cs index 18d513c..3bb7236 100644 --- a/SharpChat/PacketsS2C/ChannelPasswordWrongErrorS2CPacket.cs +++ b/SharpChat.SockChat/PacketsS2C/ChannelPasswordWrongErrorS2CPacket.cs @@ -1,4 +1,4 @@ -namespace SharpChat.PacketsS2C { +namespace SharpChat.SockChat.PacketsS2C { public class ChannelPasswordWrongErrorS2CPacket : SockChatTimedS2CPacket { private readonly string ChannelName; diff --git a/SharpChat/PacketsS2C/ChannelRankChangedResponseS2CPacket.cs b/SharpChat.SockChat/PacketsS2C/ChannelRankChangedResponseS2CPacket.cs similarity index 87% rename from SharpChat/PacketsS2C/ChannelRankChangedResponseS2CPacket.cs rename to SharpChat.SockChat/PacketsS2C/ChannelRankChangedResponseS2CPacket.cs index c5635b0..ab9845f 100644 --- a/SharpChat/PacketsS2C/ChannelRankChangedResponseS2CPacket.cs +++ b/SharpChat.SockChat/PacketsS2C/ChannelRankChangedResponseS2CPacket.cs @@ -1,4 +1,4 @@ -namespace SharpChat.PacketsS2C { +namespace SharpChat.SockChat.PacketsS2C { public class ChannelRankChangedResponseS2CPacket : SockChatTimedS2CPacket { public override string Pack() { return string.Format( diff --git a/SharpChat/PacketsS2C/ChannelRankTooHighErrorS2CPacket.cs b/SharpChat.SockChat/PacketsS2C/ChannelRankTooHighErrorS2CPacket.cs similarity index 87% rename from SharpChat/PacketsS2C/ChannelRankTooHighErrorS2CPacket.cs rename to SharpChat.SockChat/PacketsS2C/ChannelRankTooHighErrorS2CPacket.cs index c8c9d53..3ff244f 100644 --- a/SharpChat/PacketsS2C/ChannelRankTooHighErrorS2CPacket.cs +++ b/SharpChat.SockChat/PacketsS2C/ChannelRankTooHighErrorS2CPacket.cs @@ -1,4 +1,4 @@ -namespace SharpChat.PacketsS2C { +namespace SharpChat.SockChat.PacketsS2C { public class ChannelRankTooHighErrorS2CPacket : SockChatTimedS2CPacket { public override string Pack() { return string.Format( diff --git a/SharpChat/PacketsS2C/ChannelRankTooLowErrorS2CPacket.cs b/SharpChat.SockChat/PacketsS2C/ChannelRankTooLowErrorS2CPacket.cs similarity index 92% rename from SharpChat/PacketsS2C/ChannelRankTooLowErrorS2CPacket.cs rename to SharpChat.SockChat/PacketsS2C/ChannelRankTooLowErrorS2CPacket.cs index e13e17a..718213c 100644 --- a/SharpChat/PacketsS2C/ChannelRankTooLowErrorS2CPacket.cs +++ b/SharpChat.SockChat/PacketsS2C/ChannelRankTooLowErrorS2CPacket.cs @@ -1,4 +1,4 @@ -namespace SharpChat.PacketsS2C { +namespace SharpChat.SockChat.PacketsS2C { public class ChannelRankTooLowErrorS2CPacket : SockChatTimedS2CPacket { private readonly string ChannelName; diff --git a/SharpChat/PacketsS2C/ChannelUpdateS2CPacket.cs b/SharpChat.SockChat/PacketsS2C/ChannelUpdateS2CPacket.cs similarity index 95% rename from SharpChat/PacketsS2C/ChannelUpdateS2CPacket.cs rename to SharpChat.SockChat/PacketsS2C/ChannelUpdateS2CPacket.cs index 2fb687b..35eb5e4 100644 --- a/SharpChat/PacketsS2C/ChannelUpdateS2CPacket.cs +++ b/SharpChat.SockChat/PacketsS2C/ChannelUpdateS2CPacket.cs @@ -1,4 +1,4 @@ -namespace SharpChat.PacketsS2C { +namespace SharpChat.SockChat.PacketsS2C { public class ChannelUpdateS2CPacket : SockChatS2CPacket { private readonly string ChannelNamePrevious; private readonly string ChannelNameNew; diff --git a/SharpChat/PacketsS2C/ChannelsPopulateS2CPacket.cs b/SharpChat.SockChat/PacketsS2C/ChannelsPopulateS2CPacket.cs similarity index 95% rename from SharpChat/PacketsS2C/ChannelsPopulateS2CPacket.cs rename to SharpChat.SockChat/PacketsS2C/ChannelsPopulateS2CPacket.cs index b5d7dc5..0527134 100644 --- a/SharpChat/PacketsS2C/ChannelsPopulateS2CPacket.cs +++ b/SharpChat.SockChat/PacketsS2C/ChannelsPopulateS2CPacket.cs @@ -1,6 +1,6 @@ using System.Text; -namespace SharpChat.PacketsS2C { +namespace SharpChat.SockChat.PacketsS2C { public class ChannelsPopulateS2CPacket : SockChatS2CPacket { public record ListEntry(string Name, bool HasPassword, bool IsTemporary); diff --git a/SharpChat/PacketsS2C/CommandFormatErrorS2CPacket.cs b/SharpChat.SockChat/PacketsS2C/CommandFormatErrorS2CPacket.cs similarity index 87% rename from SharpChat/PacketsS2C/CommandFormatErrorS2CPacket.cs rename to SharpChat.SockChat/PacketsS2C/CommandFormatErrorS2CPacket.cs index 91814e1..c78feb5 100644 --- a/SharpChat/PacketsS2C/CommandFormatErrorS2CPacket.cs +++ b/SharpChat.SockChat/PacketsS2C/CommandFormatErrorS2CPacket.cs @@ -1,4 +1,4 @@ -namespace SharpChat.PacketsS2C { +namespace SharpChat.SockChat.PacketsS2C { public class CommandFormatErrorS2CPacket : SockChatTimedS2CPacket { public override string Pack() { return string.Format( diff --git a/SharpChat/PacketsS2C/CommandNotAllowedErrorS2CPacket.cs b/SharpChat.SockChat/PacketsS2C/CommandNotAllowedErrorS2CPacket.cs similarity index 91% rename from SharpChat/PacketsS2C/CommandNotAllowedErrorS2CPacket.cs rename to SharpChat.SockChat/PacketsS2C/CommandNotAllowedErrorS2CPacket.cs index 33a4743..6b1914b 100644 --- a/SharpChat/PacketsS2C/CommandNotAllowedErrorS2CPacket.cs +++ b/SharpChat.SockChat/PacketsS2C/CommandNotAllowedErrorS2CPacket.cs @@ -1,4 +1,4 @@ -namespace SharpChat.PacketsS2C { +namespace SharpChat.SockChat.PacketsS2C { public class CommandNotAllowedErrorS2CPacket : SockChatTimedS2CPacket { private readonly string CommandName; diff --git a/SharpChat/PacketsS2C/ContextClearS2CPacket.cs b/SharpChat.SockChat/PacketsS2C/ContextClearS2CPacket.cs similarity index 91% rename from SharpChat/PacketsS2C/ContextClearS2CPacket.cs rename to SharpChat.SockChat/PacketsS2C/ContextClearS2CPacket.cs index a9b5803..f76b7a7 100644 --- a/SharpChat/PacketsS2C/ContextClearS2CPacket.cs +++ b/SharpChat.SockChat/PacketsS2C/ContextClearS2CPacket.cs @@ -1,4 +1,4 @@ -namespace SharpChat.PacketsS2C { +namespace SharpChat.SockChat.PacketsS2C { public class ContextClearS2CPacket : SockChatS2CPacket { public enum ClearMode { Messages = 0, diff --git a/SharpChat/PacketsS2C/FloodWarningS2CPacket.cs b/SharpChat.SockChat/PacketsS2C/FloodWarningS2CPacket.cs similarity index 86% rename from SharpChat/PacketsS2C/FloodWarningS2CPacket.cs rename to SharpChat.SockChat/PacketsS2C/FloodWarningS2CPacket.cs index f29f84e..9cfd9f7 100644 --- a/SharpChat/PacketsS2C/FloodWarningS2CPacket.cs +++ b/SharpChat.SockChat/PacketsS2C/FloodWarningS2CPacket.cs @@ -1,4 +1,4 @@ -namespace SharpChat.PacketsS2C { +namespace SharpChat.SockChat.PacketsS2C { public class FloodWarningS2CPacket : SockChatTimedS2CPacket { public override string Pack() { return string.Format( diff --git a/SharpChat/PacketsS2C/ForceDisconnectS2CPacket.cs b/SharpChat.SockChat/PacketsS2C/ForceDisconnectS2CPacket.cs similarity index 92% rename from SharpChat/PacketsS2C/ForceDisconnectS2CPacket.cs rename to SharpChat.SockChat/PacketsS2C/ForceDisconnectS2CPacket.cs index 1880c10..052213a 100644 --- a/SharpChat/PacketsS2C/ForceDisconnectS2CPacket.cs +++ b/SharpChat.SockChat/PacketsS2C/ForceDisconnectS2CPacket.cs @@ -1,6 +1,6 @@ using System; -namespace SharpChat.PacketsS2C { +namespace SharpChat.SockChat.PacketsS2C { public class ForceDisconnectS2CPacket : SockChatS2CPacket { private readonly long Expires; diff --git a/SharpChat/PacketsS2C/KickBanNoRecordErrorS2CPacket.cs b/SharpChat.SockChat/PacketsS2C/KickBanNoRecordErrorS2CPacket.cs similarity index 91% rename from SharpChat/PacketsS2C/KickBanNoRecordErrorS2CPacket.cs rename to SharpChat.SockChat/PacketsS2C/KickBanNoRecordErrorS2CPacket.cs index 3d740a1..e3914e3 100644 --- a/SharpChat/PacketsS2C/KickBanNoRecordErrorS2CPacket.cs +++ b/SharpChat.SockChat/PacketsS2C/KickBanNoRecordErrorS2CPacket.cs @@ -1,4 +1,4 @@ -namespace SharpChat.PacketsS2C { +namespace SharpChat.SockChat.PacketsS2C { public class KickBanNoRecordErrorS2CPacket : SockChatTimedS2CPacket { private readonly string TargetName; diff --git a/SharpChat/PacketsS2C/KickBanNotAllowedErrorS2CPacket.cs b/SharpChat.SockChat/PacketsS2C/KickBanNotAllowedErrorS2CPacket.cs similarity index 91% rename from SharpChat/PacketsS2C/KickBanNotAllowedErrorS2CPacket.cs rename to SharpChat.SockChat/PacketsS2C/KickBanNotAllowedErrorS2CPacket.cs index 41dca46..a471d6e 100644 --- a/SharpChat/PacketsS2C/KickBanNotAllowedErrorS2CPacket.cs +++ b/SharpChat.SockChat/PacketsS2C/KickBanNotAllowedErrorS2CPacket.cs @@ -1,4 +1,4 @@ -namespace SharpChat.PacketsS2C { +namespace SharpChat.SockChat.PacketsS2C { public class KickBanNotAllowedErrorS2CPacket : SockChatTimedS2CPacket { private readonly string UserName; diff --git a/SharpChat/PacketsS2C/MOTDS2CPacket.cs b/SharpChat.SockChat/PacketsS2C/MOTDS2CPacket.cs similarity index 92% rename from SharpChat/PacketsS2C/MOTDS2CPacket.cs rename to SharpChat.SockChat/PacketsS2C/MOTDS2CPacket.cs index d4afb0e..25aba1b 100644 --- a/SharpChat/PacketsS2C/MOTDS2CPacket.cs +++ b/SharpChat.SockChat/PacketsS2C/MOTDS2CPacket.cs @@ -1,6 +1,6 @@ using System; -namespace SharpChat.PacketsS2C { +namespace SharpChat.SockChat.PacketsS2C { public class MOTDS2CPacket : SockChatTimedS2CPacket { private readonly string Body; diff --git a/SharpChat/PacketsS2C/MessageAddLogS2CPacket.cs b/SharpChat.SockChat/PacketsS2C/MessageAddLogS2CPacket.cs similarity index 98% rename from SharpChat/PacketsS2C/MessageAddLogS2CPacket.cs rename to SharpChat.SockChat/PacketsS2C/MessageAddLogS2CPacket.cs index 625a72d..9ca3837 100644 --- a/SharpChat/PacketsS2C/MessageAddLogS2CPacket.cs +++ b/SharpChat.SockChat/PacketsS2C/MessageAddLogS2CPacket.cs @@ -1,6 +1,6 @@ using System; -namespace SharpChat.PacketsS2C { +namespace SharpChat.SockChat.PacketsS2C { public class MessageAddLogS2CPacket : SockChatTimedS2CPacket { private readonly long UserId; private readonly string UserName; diff --git a/SharpChat/PacketsS2C/MessageAddS2CPacket.cs b/SharpChat.SockChat/PacketsS2C/MessageAddS2CPacket.cs similarity index 96% rename from SharpChat/PacketsS2C/MessageAddS2CPacket.cs rename to SharpChat.SockChat/PacketsS2C/MessageAddS2CPacket.cs index 4fb3295..65e3761 100644 --- a/SharpChat/PacketsS2C/MessageAddS2CPacket.cs +++ b/SharpChat.SockChat/PacketsS2C/MessageAddS2CPacket.cs @@ -1,6 +1,6 @@ using System; -namespace SharpChat.PacketsS2C { +namespace SharpChat.SockChat.PacketsS2C { public class MessageAddS2CPacket : SockChatTimedS2CPacket { private readonly long UserId; private readonly string Body; diff --git a/SharpChat/PacketsS2C/MessageBroadcastS2CPacket.cs b/SharpChat.SockChat/PacketsS2C/MessageBroadcastS2CPacket.cs similarity index 91% rename from SharpChat/PacketsS2C/MessageBroadcastS2CPacket.cs rename to SharpChat.SockChat/PacketsS2C/MessageBroadcastS2CPacket.cs index 6feec92..3effe63 100644 --- a/SharpChat/PacketsS2C/MessageBroadcastS2CPacket.cs +++ b/SharpChat.SockChat/PacketsS2C/MessageBroadcastS2CPacket.cs @@ -1,4 +1,4 @@ -namespace SharpChat.PacketsS2C { +namespace SharpChat.SockChat.PacketsS2C { public class MessageBroadcastS2CPacket : SockChatTimedS2CPacket { private readonly string Body; diff --git a/SharpChat/PacketsS2C/MessageDeleteNotAllowedErrorS2CPacket.cs b/SharpChat.SockChat/PacketsS2C/MessageDeleteNotAllowedErrorS2CPacket.cs similarity index 87% rename from SharpChat/PacketsS2C/MessageDeleteNotAllowedErrorS2CPacket.cs rename to SharpChat.SockChat/PacketsS2C/MessageDeleteNotAllowedErrorS2CPacket.cs index e68c29b..6fce7ac 100644 --- a/SharpChat/PacketsS2C/MessageDeleteNotAllowedErrorS2CPacket.cs +++ b/SharpChat.SockChat/PacketsS2C/MessageDeleteNotAllowedErrorS2CPacket.cs @@ -1,4 +1,4 @@ -namespace SharpChat.PacketsS2C { +namespace SharpChat.SockChat.PacketsS2C { public class MessageDeleteNotAllowedErrorS2CPacket : SockChatTimedS2CPacket { public override string Pack() { return string.Format( diff --git a/SharpChat/PacketsS2C/MessageDeleteS2CPacket.cs b/SharpChat.SockChat/PacketsS2C/MessageDeleteS2CPacket.cs similarity index 88% rename from SharpChat/PacketsS2C/MessageDeleteS2CPacket.cs rename to SharpChat.SockChat/PacketsS2C/MessageDeleteS2CPacket.cs index 6309e21..846962e 100644 --- a/SharpChat/PacketsS2C/MessageDeleteS2CPacket.cs +++ b/SharpChat.SockChat/PacketsS2C/MessageDeleteS2CPacket.cs @@ -1,4 +1,4 @@ -namespace SharpChat.PacketsS2C { +namespace SharpChat.SockChat.PacketsS2C { public class MessageDeleteS2CPacket : SockChatS2CPacket { private readonly long DeletedMessageId; diff --git a/SharpChat/PacketsS2C/PardonResponseS2CPacket.cs b/SharpChat.SockChat/PacketsS2C/PardonResponseS2CPacket.cs similarity index 91% rename from SharpChat/PacketsS2C/PardonResponseS2CPacket.cs rename to SharpChat.SockChat/PacketsS2C/PardonResponseS2CPacket.cs index e3a3ce0..aa1d8af 100644 --- a/SharpChat/PacketsS2C/PardonResponseS2CPacket.cs +++ b/SharpChat.SockChat/PacketsS2C/PardonResponseS2CPacket.cs @@ -1,4 +1,4 @@ -namespace SharpChat.PacketsS2C { +namespace SharpChat.SockChat.PacketsS2C { public class PardonResponseS2CPacket : SockChatTimedS2CPacket { private readonly string Subject; diff --git a/SharpChat/PacketsS2C/PongS2CPacket.cs b/SharpChat.SockChat/PacketsS2C/PongS2CPacket.cs similarity index 75% rename from SharpChat/PacketsS2C/PongS2CPacket.cs rename to SharpChat.SockChat/PacketsS2C/PongS2CPacket.cs index ebcdc7e..ce332c1 100644 --- a/SharpChat/PacketsS2C/PongS2CPacket.cs +++ b/SharpChat.SockChat/PacketsS2C/PongS2CPacket.cs @@ -1,4 +1,4 @@ -namespace SharpChat.PacketsS2C { +namespace SharpChat.SockChat.PacketsS2C { public class PongS2CPacket : SockChatS2CPacket { public override string Pack() { return "0\tpong"; diff --git a/SharpChat/PacketsS2C/SockChatS2CPacket.cs b/SharpChat.SockChat/PacketsS2C/SockChatS2CPacket.cs similarity index 87% rename from SharpChat/PacketsS2C/SockChatS2CPacket.cs rename to SharpChat.SockChat/PacketsS2C/SockChatS2CPacket.cs index 9a01b89..a38e5d5 100644 --- a/SharpChat/PacketsS2C/SockChatS2CPacket.cs +++ b/SharpChat.SockChat/PacketsS2C/SockChatS2CPacket.cs @@ -1,4 +1,4 @@ -namespace SharpChat.PacketsS2C { +namespace SharpChat.SockChat.PacketsS2C { public abstract class SockChatS2CPacket { protected readonly long MessageId; diff --git a/SharpChat/PacketsS2C/SockChatTimedS2CPacket.cs b/SharpChat.SockChat/PacketsS2C/SockChatTimedS2CPacket.cs similarity index 92% rename from SharpChat/PacketsS2C/SockChatTimedS2CPacket.cs rename to SharpChat.SockChat/PacketsS2C/SockChatTimedS2CPacket.cs index 79d55b8..1ac2b4d 100644 --- a/SharpChat/PacketsS2C/SockChatTimedS2CPacket.cs +++ b/SharpChat.SockChat/PacketsS2C/SockChatTimedS2CPacket.cs @@ -1,6 +1,6 @@ using System; -namespace SharpChat.PacketsS2C { +namespace SharpChat.SockChat.PacketsS2C { public abstract class SockChatTimedS2CPacket : SockChatS2CPacket { protected readonly DateTimeOffset TimeStamp; diff --git a/SharpChat/PacketsS2C/UserChannelForceJoinS2CPacket.cs b/SharpChat.SockChat/PacketsS2C/UserChannelForceJoinS2CPacket.cs similarity index 90% rename from SharpChat/PacketsS2C/UserChannelForceJoinS2CPacket.cs rename to SharpChat.SockChat/PacketsS2C/UserChannelForceJoinS2CPacket.cs index abe538b..17c1699 100644 --- a/SharpChat/PacketsS2C/UserChannelForceJoinS2CPacket.cs +++ b/SharpChat.SockChat/PacketsS2C/UserChannelForceJoinS2CPacket.cs @@ -1,4 +1,4 @@ -namespace SharpChat.PacketsS2C { +namespace SharpChat.SockChat.PacketsS2C { public class UserChannelForceJoinS2CPacket : SockChatS2CPacket { private readonly string ChannelName; diff --git a/SharpChat/PacketsS2C/UserChannelJoinLogS2CPacket.cs b/SharpChat.SockChat/PacketsS2C/UserChannelJoinLogS2CPacket.cs similarity index 93% rename from SharpChat/PacketsS2C/UserChannelJoinLogS2CPacket.cs rename to SharpChat.SockChat/PacketsS2C/UserChannelJoinLogS2CPacket.cs index 37cfb8f..8ce40d8 100644 --- a/SharpChat/PacketsS2C/UserChannelJoinLogS2CPacket.cs +++ b/SharpChat.SockChat/PacketsS2C/UserChannelJoinLogS2CPacket.cs @@ -1,6 +1,6 @@ using System; -namespace SharpChat.PacketsS2C { +namespace SharpChat.SockChat.PacketsS2C { public class UserChannelJoinLogS2CPacket : SockChatTimedS2CPacket { private readonly string UserName; diff --git a/SharpChat/PacketsS2C/UserChannelJoinS2CPacket.cs b/SharpChat.SockChat/PacketsS2C/UserChannelJoinS2CPacket.cs similarity index 96% rename from SharpChat/PacketsS2C/UserChannelJoinS2CPacket.cs rename to SharpChat.SockChat/PacketsS2C/UserChannelJoinS2CPacket.cs index d003992..9c9a1e3 100644 --- a/SharpChat/PacketsS2C/UserChannelJoinS2CPacket.cs +++ b/SharpChat.SockChat/PacketsS2C/UserChannelJoinS2CPacket.cs @@ -1,4 +1,4 @@ -namespace SharpChat.PacketsS2C { +namespace SharpChat.SockChat.PacketsS2C { public class UserChannelJoinS2CPacket : SockChatS2CPacket { private readonly long UserId; private readonly string UserName; diff --git a/SharpChat/PacketsS2C/UserChannelLeaveLogS2CPacket.cs b/SharpChat.SockChat/PacketsS2C/UserChannelLeaveLogS2CPacket.cs similarity index 93% rename from SharpChat/PacketsS2C/UserChannelLeaveLogS2CPacket.cs rename to SharpChat.SockChat/PacketsS2C/UserChannelLeaveLogS2CPacket.cs index 48a2ba8..3ee9c3a 100644 --- a/SharpChat/PacketsS2C/UserChannelLeaveLogS2CPacket.cs +++ b/SharpChat.SockChat/PacketsS2C/UserChannelLeaveLogS2CPacket.cs @@ -1,6 +1,6 @@ using System; -namespace SharpChat.PacketsS2C { +namespace SharpChat.SockChat.PacketsS2C { public class UserChannelLeaveLogS2CPacket : SockChatTimedS2CPacket { private readonly string UserName; diff --git a/SharpChat/PacketsS2C/UserChannelLeaveS2CPacket.cs b/SharpChat.SockChat/PacketsS2C/UserChannelLeaveS2CPacket.cs similarity index 89% rename from SharpChat/PacketsS2C/UserChannelLeaveS2CPacket.cs rename to SharpChat.SockChat/PacketsS2C/UserChannelLeaveS2CPacket.cs index eb83820..52ba001 100644 --- a/SharpChat/PacketsS2C/UserChannelLeaveS2CPacket.cs +++ b/SharpChat.SockChat/PacketsS2C/UserChannelLeaveS2CPacket.cs @@ -1,4 +1,4 @@ -namespace SharpChat.PacketsS2C { +namespace SharpChat.SockChat.PacketsS2C { public class UserChannelLeaveS2CPacket : SockChatS2CPacket { private readonly long UserId; diff --git a/SharpChat/PacketsS2C/UserConnectLogS2CPacket.cs b/SharpChat.SockChat/PacketsS2C/UserConnectLogS2CPacket.cs similarity index 93% rename from SharpChat/PacketsS2C/UserConnectLogS2CPacket.cs rename to SharpChat.SockChat/PacketsS2C/UserConnectLogS2CPacket.cs index 9f2219d..2710233 100644 --- a/SharpChat/PacketsS2C/UserConnectLogS2CPacket.cs +++ b/SharpChat.SockChat/PacketsS2C/UserConnectLogS2CPacket.cs @@ -1,6 +1,6 @@ using System; -namespace SharpChat.PacketsS2C { +namespace SharpChat.SockChat.PacketsS2C { public class UserConnectLogS2CPacket : SockChatTimedS2CPacket { private readonly string UserName; diff --git a/SharpChat/PacketsS2C/UserConnectS2CPacket.cs b/SharpChat.SockChat/PacketsS2C/UserConnectS2CPacket.cs similarity index 96% rename from SharpChat/PacketsS2C/UserConnectS2CPacket.cs rename to SharpChat.SockChat/PacketsS2C/UserConnectS2CPacket.cs index c6e090c..9ca32c5 100644 --- a/SharpChat/PacketsS2C/UserConnectS2CPacket.cs +++ b/SharpChat.SockChat/PacketsS2C/UserConnectS2CPacket.cs @@ -1,4 +1,4 @@ -namespace SharpChat.PacketsS2C { +namespace SharpChat.SockChat.PacketsS2C { public class UserConnectS2CPacket : SockChatTimedS2CPacket { private readonly long UserId; private readonly string UserName; diff --git a/SharpChat/PacketsS2C/UserDisconnectLogS2CPacket.cs b/SharpChat.SockChat/PacketsS2C/UserDisconnectLogS2CPacket.cs similarity index 96% rename from SharpChat/PacketsS2C/UserDisconnectLogS2CPacket.cs rename to SharpChat.SockChat/PacketsS2C/UserDisconnectLogS2CPacket.cs index 8343a6e..21e259a 100644 --- a/SharpChat/PacketsS2C/UserDisconnectLogS2CPacket.cs +++ b/SharpChat.SockChat/PacketsS2C/UserDisconnectLogS2CPacket.cs @@ -1,6 +1,6 @@ using System; -namespace SharpChat.PacketsS2C { +namespace SharpChat.SockChat.PacketsS2C { public class UserDisconnectLogS2CPacket : SockChatTimedS2CPacket { private readonly string UserName; private readonly UserDisconnectReason Reason; diff --git a/SharpChat/PacketsS2C/UserDisconnectS2CPacket.cs b/SharpChat.SockChat/PacketsS2C/UserDisconnectS2CPacket.cs similarity index 95% rename from SharpChat/PacketsS2C/UserDisconnectS2CPacket.cs rename to SharpChat.SockChat/PacketsS2C/UserDisconnectS2CPacket.cs index 2d365c7..41e9f12 100644 --- a/SharpChat/PacketsS2C/UserDisconnectS2CPacket.cs +++ b/SharpChat.SockChat/PacketsS2C/UserDisconnectS2CPacket.cs @@ -1,4 +1,4 @@ -namespace SharpChat.PacketsS2C { +namespace SharpChat.SockChat.PacketsS2C { public class UserDisconnectS2CPacket : SockChatTimedS2CPacket { private readonly long UserId; private readonly string UserName; diff --git a/SharpChat/PacketsS2C/UserNameInUseErrorS2CPacket.cs b/SharpChat.SockChat/PacketsS2C/UserNameInUseErrorS2CPacket.cs similarity index 91% rename from SharpChat/PacketsS2C/UserNameInUseErrorS2CPacket.cs rename to SharpChat.SockChat/PacketsS2C/UserNameInUseErrorS2CPacket.cs index a166623..61e6671 100644 --- a/SharpChat/PacketsS2C/UserNameInUseErrorS2CPacket.cs +++ b/SharpChat.SockChat/PacketsS2C/UserNameInUseErrorS2CPacket.cs @@ -1,4 +1,4 @@ -namespace SharpChat.PacketsS2C { +namespace SharpChat.SockChat.PacketsS2C { public class UserNameInUseErrorS2CPacket : SockChatTimedS2CPacket { private readonly string UserName; diff --git a/SharpChat/PacketsS2C/UserNotFoundErrorS2CPacket.cs b/SharpChat.SockChat/PacketsS2C/UserNotFoundErrorS2CPacket.cs similarity index 91% rename from SharpChat/PacketsS2C/UserNotFoundErrorS2CPacket.cs rename to SharpChat.SockChat/PacketsS2C/UserNotFoundErrorS2CPacket.cs index 7967f8a..4aaf821 100644 --- a/SharpChat/PacketsS2C/UserNotFoundErrorS2CPacket.cs +++ b/SharpChat.SockChat/PacketsS2C/UserNotFoundErrorS2CPacket.cs @@ -1,4 +1,4 @@ -namespace SharpChat.PacketsS2C { +namespace SharpChat.SockChat.PacketsS2C { public class UserNotFoundErrorS2CPacket : SockChatTimedS2CPacket { private readonly string UserName; diff --git a/SharpChat/PacketsS2C/UserUpdateNotificationS2CPacket.cs b/SharpChat.SockChat/PacketsS2C/UserUpdateNotificationS2CPacket.cs similarity index 93% rename from SharpChat/PacketsS2C/UserUpdateNotificationS2CPacket.cs rename to SharpChat.SockChat/PacketsS2C/UserUpdateNotificationS2CPacket.cs index 17c084c..909dd0d 100644 --- a/SharpChat/PacketsS2C/UserUpdateNotificationS2CPacket.cs +++ b/SharpChat.SockChat/PacketsS2C/UserUpdateNotificationS2CPacket.cs @@ -1,4 +1,4 @@ -namespace SharpChat.PacketsS2C { +namespace SharpChat.SockChat.PacketsS2C { public class UserUpdateNotificationS2CPacket : SockChatTimedS2CPacket { private readonly string PreviousName; private readonly string NewName; diff --git a/SharpChat/PacketsS2C/UserUpdateS2CPacket.cs b/SharpChat.SockChat/PacketsS2C/UserUpdateS2CPacket.cs similarity index 96% rename from SharpChat/PacketsS2C/UserUpdateS2CPacket.cs rename to SharpChat.SockChat/PacketsS2C/UserUpdateS2CPacket.cs index 891fb93..4ba5055 100644 --- a/SharpChat/PacketsS2C/UserUpdateS2CPacket.cs +++ b/SharpChat.SockChat/PacketsS2C/UserUpdateS2CPacket.cs @@ -1,4 +1,4 @@ -namespace SharpChat.PacketsS2C { +namespace SharpChat.SockChat.PacketsS2C { public class UserUpdateS2CPacket : SockChatS2CPacket { private readonly long UserId; private readonly string UserName; diff --git a/SharpChat/PacketsS2C/UsersPopulateS2CPacket.cs b/SharpChat.SockChat/PacketsS2C/UsersPopulateS2CPacket.cs similarity index 96% rename from SharpChat/PacketsS2C/UsersPopulateS2CPacket.cs rename to SharpChat.SockChat/PacketsS2C/UsersPopulateS2CPacket.cs index c0ddbf8..ec2a499 100644 --- a/SharpChat/PacketsS2C/UsersPopulateS2CPacket.cs +++ b/SharpChat.SockChat/PacketsS2C/UsersPopulateS2CPacket.cs @@ -1,6 +1,6 @@ using System.Text; -namespace SharpChat.PacketsS2C { +namespace SharpChat.SockChat.PacketsS2C { public class UsersPopulateS2CPacket : SockChatS2CPacket { public record ListEntry(long Id, string Name, Colour Colour, int Rank, UserPermissions Perms, bool Visible); diff --git a/SharpChat/PacketsS2C/WhoChannelNotFoundErrorS2CPacket.cs b/SharpChat.SockChat/PacketsS2C/WhoChannelNotFoundErrorS2CPacket.cs similarity index 92% rename from SharpChat/PacketsS2C/WhoChannelNotFoundErrorS2CPacket.cs rename to SharpChat.SockChat/PacketsS2C/WhoChannelNotFoundErrorS2CPacket.cs index 5a87faa..c9b3d49 100644 --- a/SharpChat/PacketsS2C/WhoChannelNotFoundErrorS2CPacket.cs +++ b/SharpChat.SockChat/PacketsS2C/WhoChannelNotFoundErrorS2CPacket.cs @@ -1,4 +1,4 @@ -namespace SharpChat.PacketsS2C { +namespace SharpChat.SockChat.PacketsS2C { public class WhoChannelNotFoundErrorS2CPacket : SockChatTimedS2CPacket { private readonly string ChannelName; diff --git a/SharpChat/PacketsS2C/WhoChannelResponseS2CPacket.cs b/SharpChat.SockChat/PacketsS2C/WhoChannelResponseS2CPacket.cs similarity index 96% rename from SharpChat/PacketsS2C/WhoChannelResponseS2CPacket.cs rename to SharpChat.SockChat/PacketsS2C/WhoChannelResponseS2CPacket.cs index 824ba26..73299ec 100644 --- a/SharpChat/PacketsS2C/WhoChannelResponseS2CPacket.cs +++ b/SharpChat.SockChat/PacketsS2C/WhoChannelResponseS2CPacket.cs @@ -1,7 +1,7 @@ using System; using System.Text; -namespace SharpChat.PacketsS2C { +namespace SharpChat.SockChat.PacketsS2C { public class WhoChannelResponseS2CPacket : SockChatTimedS2CPacket { private readonly string ChannelName; private readonly string[] Users; diff --git a/SharpChat/PacketsS2C/WhoServerResponseS2CPacket.cs b/SharpChat.SockChat/PacketsS2C/WhoServerResponseS2CPacket.cs similarity index 96% rename from SharpChat/PacketsS2C/WhoServerResponseS2CPacket.cs rename to SharpChat.SockChat/PacketsS2C/WhoServerResponseS2CPacket.cs index d369248..6dd7983 100644 --- a/SharpChat/PacketsS2C/WhoServerResponseS2CPacket.cs +++ b/SharpChat.SockChat/PacketsS2C/WhoServerResponseS2CPacket.cs @@ -1,7 +1,7 @@ using System; using System.Text; -namespace SharpChat.PacketsS2C { +namespace SharpChat.SockChat.PacketsS2C { public class WhoServerResponseS2CPacket : SockChatTimedS2CPacket { private readonly string[] Users; private readonly string SelfName; diff --git a/SharpChat/PacketsS2C/WhoisResponseS2CPacket.cs b/SharpChat.SockChat/PacketsS2C/WhoisResponseS2CPacket.cs similarity index 93% rename from SharpChat/PacketsS2C/WhoisResponseS2CPacket.cs rename to SharpChat.SockChat/PacketsS2C/WhoisResponseS2CPacket.cs index 7faedd5..69d7d74 100644 --- a/SharpChat/PacketsS2C/WhoisResponseS2CPacket.cs +++ b/SharpChat.SockChat/PacketsS2C/WhoisResponseS2CPacket.cs @@ -1,4 +1,4 @@ -namespace SharpChat.PacketsS2C { +namespace SharpChat.SockChat.PacketsS2C { public class WhoisResponseS2CPacket : SockChatTimedS2CPacket { private readonly string UserName; private readonly string RemoteAddress; diff --git a/SharpChat.SockChat/SharpChat.SockChat.csproj b/SharpChat.SockChat/SharpChat.SockChat.csproj new file mode 100644 index 0000000..e595e12 --- /dev/null +++ b/SharpChat.SockChat/SharpChat.SockChat.csproj @@ -0,0 +1,17 @@ + + + + net6.0 + enable + + + + + + + + + + + + diff --git a/SharpChat/ConnectionInfo.cs b/SharpChat.SockChat/SockChatConnectionInfo.cs similarity index 91% rename from SharpChat/ConnectionInfo.cs rename to SharpChat.SockChat/SockChatConnectionInfo.cs index 8fedf25..25fafcd 100644 --- a/SharpChat/ConnectionInfo.cs +++ b/SharpChat.SockChat/SockChatConnectionInfo.cs @@ -1,10 +1,10 @@ using Fleck; -using SharpChat.PacketsS2C; +using SharpChat.SockChat.PacketsS2C; using System; using System.Net; -namespace SharpChat { - public class ConnectionInfo { +namespace SharpChat.SockChat { + public class SockChatConnectionInfo { public IWebSocketConnection Socket { get; } public DateTimeOffset LastPing { get; private set; } @@ -14,7 +14,7 @@ namespace SharpChat { public ushort RemotePort { get; } public string RemoteEndPoint { get; } - public ConnectionInfo(IWebSocketConnection sock) { + public SockChatConnectionInfo(IWebSocketConnection sock) { Socket = sock; BumpPing(); diff --git a/SharpChat/ConnectionsContext.cs b/SharpChat.SockChat/SockChatConnectionsContext.cs similarity index 69% rename from SharpChat/ConnectionsContext.cs rename to SharpChat.SockChat/SockChatConnectionsContext.cs index f1b53ea..82f6b12 100644 --- a/SharpChat/ConnectionsContext.cs +++ b/SharpChat.SockChat/SockChatConnectionsContext.cs @@ -2,31 +2,31 @@ using System.Collections.Generic; using System.Linq; -namespace SharpChat { - public class ConnectionsContext { +namespace SharpChat.SockChat { + public class SockChatConnectionsContext { public static readonly TimeSpan TimeOut = TimeSpan.FromMinutes(5); - private readonly HashSet Connections = new(); - private readonly HashSet AuthedConnections = new(); - private readonly Dictionary> UserConnections = new(); + private readonly HashSet Connections = new(); + private readonly HashSet AuthedConnections = new(); + private readonly Dictionary> UserConnections = new(); - public ConnectionInfo[] All => Connections.ToArray(); - public ConnectionInfo[] Authed => AuthedConnections.ToArray(); + public SockChatConnectionInfo[] All => Connections.ToArray(); + public SockChatConnectionInfo[] Authed => AuthedConnections.ToArray(); - public void WithAll(Action body) { - foreach(ConnectionInfo conn in Connections) + public void WithAll(Action body) { + foreach(SockChatConnectionInfo conn in Connections) body(conn); } - public void WithAuthed(Action body) { - foreach(ConnectionInfo conn in AuthedConnections) + public void WithAuthed(Action body) { + foreach(SockChatConnectionInfo conn in AuthedConnections) body(conn); } - public ConnectionInfo[] GetTimedOut() { - List conns = new(); + public SockChatConnectionInfo[] GetTimedOut() { + List conns = new(); - foreach(ConnectionInfo conn in Connections) + foreach(SockChatConnectionInfo conn in Connections) if(DateTimeOffset.UtcNow - conn.LastPing > TimeOut) conns.Add(conn); @@ -49,33 +49,33 @@ namespace SharpChat { return HasUser(userInfo.UserId); } - public ConnectionInfo[] GetUser(long userId) { + public SockChatConnectionInfo[] GetUser(long userId) { if(!UserConnections.ContainsKey(userId)) - return Array.Empty(); + return Array.Empty(); return UserConnections[userId].ToArray(); } - public ConnectionInfo[] GetUser(UserInfo userInfo) { + public SockChatConnectionInfo[] GetUser(UserInfo userInfo) { return GetUser(userInfo.UserId); } - public void WithUser(long userId, Action body) { + public void WithUser(long userId, Action body) { if(!UserConnections.ContainsKey(userId)) return; - foreach(ConnectionInfo conn in UserConnections[userId]) + foreach(SockChatConnectionInfo conn in UserConnections[userId]) body(conn); } - public void WithUser(UserInfo userInfo, Action body) { + public void WithUser(UserInfo userInfo, Action body) { WithUser(userInfo.UserId, body); } public string[] GetAllRemoteAddresses() { HashSet addrs = new(); - foreach(ConnectionInfo conn in Connections) + foreach(SockChatConnectionInfo conn in Connections) addrs.Add(conn.RemoteAddress); return addrs.ToArray(); @@ -84,7 +84,7 @@ namespace SharpChat { public string[] GetAuthedRemoteAddresses() { HashSet addrs = new(); - foreach(ConnectionInfo conn in AuthedConnections) + foreach(SockChatConnectionInfo conn in AuthedConnections) addrs.Add(conn.RemoteAddress); return addrs.ToArray(); @@ -96,7 +96,7 @@ namespace SharpChat { HashSet addrs = new(); - foreach(ConnectionInfo conn in UserConnections[userId]) + foreach(SockChatConnectionInfo conn in UserConnections[userId]) addrs.Add(conn.RemoteAddress); return addrs.ToArray(); @@ -106,7 +106,7 @@ namespace SharpChat { return GetUserRemoteAddresses(userInfo.UserId); } - public void Add(ConnectionInfo conn) { + public void Add(SockChatConnectionInfo conn) { if(Connections.Contains(conn)) return; @@ -122,7 +122,7 @@ namespace SharpChat { } } - public void Remove(ConnectionInfo conn) { + public void Remove(SockChatConnectionInfo conn) { if(Connections.Contains(conn)) Connections.Remove(conn); @@ -137,7 +137,7 @@ namespace SharpChat { } } - public void SetUser(ConnectionInfo conn, long userId) { + public void SetUser(SockChatConnectionInfo conn, long userId) { if(!Connections.Contains(conn)) return; @@ -169,7 +169,7 @@ namespace SharpChat { } } - public void SetUser(ConnectionInfo conn, UserInfo userInfo) { + public void SetUser(SockChatConnectionInfo conn, UserInfo userInfo) { SetUser(conn, userInfo.UserId); } } diff --git a/SharpChat/ChatContext.cs b/SharpChat.SockChat/SockChatContext.cs similarity index 97% rename from SharpChat/ChatContext.cs rename to SharpChat.SockChat/SockChatContext.cs index 3b54454..01b6a7b 100644 --- a/SharpChat/ChatContext.cs +++ b/SharpChat.SockChat/SockChatContext.cs @@ -1,23 +1,24 @@ using SharpChat.Events; using SharpChat.EventStorage; -using SharpChat.PacketsS2C; +using SharpChat.SockChat; +using SharpChat.SockChat.PacketsS2C; using System; using System.Collections.Generic; using System.Linq; using System.Threading; namespace SharpChat { - public class ChatContext { + public class SockChatContext { public readonly SemaphoreSlim ContextAccess = new(1, 1); public ChannelsContext Channels { get; } = new(); - public ConnectionsContext Connections { get; } = new(); + public SockChatConnectionsContext Connections { get; } = new(); public UsersContext Users { get; } = new(); public IEventStorage Events { get; } public ChannelsUsersContext ChannelsUsers { get; } = new(); public Dictionary UserRateLimiters { get; } = new(); - public ChatContext(IEventStorage evtStore) { + public SockChatContext(IEventStorage evtStore) { Events = evtStore; } @@ -78,8 +79,8 @@ namespace SharpChat { } public void Update() { - ConnectionInfo[] timedOut = Connections.GetTimedOut(); - foreach(ConnectionInfo conn in timedOut) { + SockChatConnectionInfo[] timedOut = Connections.GetTimedOut(); + foreach(SockChatConnectionInfo conn in timedOut) { Connections.Remove(conn); conn.Close(1002); @@ -189,8 +190,8 @@ namespace SharpChat { } else SendTo(user, new ForceDisconnectS2CPacket()); - ConnectionInfo[] conns = Connections.GetUser(user); - foreach(ConnectionInfo conn in conns) { + SockChatConnectionInfo[] conns = Connections.GetUser(user); + foreach(SockChatConnectionInfo conn in conns) { Connections.Remove(conn); conn.Close(1000); @@ -242,7 +243,7 @@ namespace SharpChat { }); } - public void HandleJoin(UserInfo user, ChannelInfo chan, ConnectionInfo conn, int maxMsgLength) { + public void HandleJoin(UserInfo user, ChannelInfo chan, SockChatConnectionInfo conn, int maxMsgLength) { if(!ChannelsUsers.Has(chan, user)) { SendTo(chan, new UserConnectS2CPacket( user.UserId, diff --git a/SharpChat/SockChatServer.cs b/SharpChat.SockChat/SockChatServer.cs similarity index 93% rename from SharpChat/SockChatServer.cs rename to SharpChat.SockChat/SockChatServer.cs index 725a8de..0aa2f79 100644 --- a/SharpChat/SockChatServer.cs +++ b/SharpChat.SockChat/SockChatServer.cs @@ -1,17 +1,17 @@ using Fleck; -using SharpChat.Commands; using SharpChat.Config; using SharpChat.EventStorage; using SharpChat.Misuzu; -using SharpChat.PacketsS2C; -using SharpChat.PacketsC2S; +using SharpChat.SockChat.Commands; +using SharpChat.SockChat.PacketsC2S; +using SharpChat.SockChat.PacketsS2C; using System; using System.Collections.Generic; using System.Linq; using System.Net.Http; using System.Threading; -namespace SharpChat { +namespace SharpChat.SockChat { public class SockChatServer : IDisposable { public const ushort DEFAULT_PORT = 6770; public const int DEFAULT_MSG_LENGTH_MAX = 5000; @@ -19,7 +19,7 @@ namespace SharpChat { public const int DEFAULT_FLOOD_KICK_LENGTH = 30; public IWebSocketServer Server { get; } - public ChatContext Context { get; } + public SockChatContext Context { get; } private readonly HttpClient HttpClient; private readonly MisuzuClient Misuzu; @@ -46,7 +46,7 @@ namespace SharpChat { MaxConnections = config.ReadCached("connMaxCount", DEFAULT_MAX_CONNECTIONS); FloodKickLength = config.ReadCached("floodKickLength", DEFAULT_FLOOD_KICK_LENGTH); - Context = new ChatContext(evtStore); + Context = new SockChatContext(evtStore); string[]? channelNames = config.ReadValue("channels", new[] { "lounge" }); @@ -104,7 +104,7 @@ namespace SharpChat { }); ushort port = config.SafeReadValue("port", DEFAULT_PORT); - Server = new SharpChatWebSocketServer($"ws://0.0.0.0:{port}"); + Server = new SockChatWebSocketServer($"ws://0.0.0.0:{port}"); } public void Listen(ManualResetEvent waitHandle) { @@ -124,7 +124,7 @@ namespace SharpChat { return; } - ConnectionInfo conn = new(sock); + SockChatConnectionInfo conn = new(sock); Context.Connections.Add(conn); sock.OnOpen = () => OnOpen(conn); @@ -136,17 +136,17 @@ namespace SharpChat { Logger.Write("Listening..."); } - private void OnOpen(ConnectionInfo conn) { + private void OnOpen(SockChatConnectionInfo conn) { Logger.Write($"Connection opened from {conn.RemoteEndPoint}"); Context.SafeUpdate(); } - private void OnError(ConnectionInfo conn, Exception ex) { + private void OnError(SockChatConnectionInfo conn, Exception ex) { Logger.Write($"<{conn.RemoteEndPoint}> {ex}"); Context.SafeUpdate(); } - private void OnClose(ConnectionInfo conn) { + private void OnClose(SockChatConnectionInfo conn) { Logger.Write($"Connection closed from {conn.RemoteEndPoint}"); Context.ContextAccess.Wait(); @@ -165,7 +165,7 @@ namespace SharpChat { } } - private void OnMessage(ConnectionInfo conn, string msg) { + private void OnMessage(SockChatConnectionInfo conn, string msg) { Context.SafeUpdate(); // this doesn't affect non-authed connections????? diff --git a/SharpChat/SockChatUtility.cs b/SharpChat.SockChat/SockChatUtility.cs similarity index 98% rename from SharpChat/SockChatUtility.cs rename to SharpChat.SockChat/SockChatUtility.cs index 1d6aa2b..d6fe317 100644 --- a/SharpChat/SockChatUtility.cs +++ b/SharpChat.SockChat/SockChatUtility.cs @@ -1,7 +1,7 @@ using System; using System.Text.RegularExpressions; -namespace SharpChat { +namespace SharpChat.SockChat { public static class SockChatUtility { private static readonly Regex ChannelName = new(@"[^A-Za-z0-9\-_]", RegexOptions.CultureInvariant | RegexOptions.Compiled); diff --git a/SharpChat/SharpChatWebSocketServer.cs b/SharpChat.SockChat/SockChatWebSocketServer.cs similarity index 97% rename from SharpChat/SharpChatWebSocketServer.cs rename to SharpChat.SockChat/SockChatWebSocketServer.cs index e2ec842..fc8d81c 100644 --- a/SharpChat/SharpChatWebSocketServer.cs +++ b/SharpChat.SockChat/SockChatWebSocketServer.cs @@ -16,13 +16,13 @@ using System.Text; // https://github.com/statianzo/Fleck/blob/1.1.0/src/Fleck/WebSocketServer.cs namespace SharpChat { - public class SharpChatWebSocketServer : IWebSocketServer { + public class SockChatWebSocketServer : IWebSocketServer { private readonly string _scheme; private readonly IPAddress _locationIP; private Action _config; - public SharpChatWebSocketServer(string location, bool supportDualStack = true) { + public SockChatWebSocketServer(string location, bool supportDualStack = true) { Uri uri = new(location); Port = uri.Port; diff --git a/SharpChat.sln b/SharpChat.sln index b79e108..7a43f9a 100644 --- a/SharpChat.sln +++ b/SharpChat.sln @@ -16,6 +16,12 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution start.sh = start.sh EndProjectSection EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SharpChatCommon", "SharpChatCommon\SharpChatCommon.csproj", "{B2228E3C-E0DB-4AAF-A603-2A822B531F76}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SharpChat.SockChat", "SharpChat.SockChat\SharpChat.SockChat.csproj", "{4D48CCFB-5D3B-4AB6-AF94-04377474078C}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SharpChat.Misuzu", "SharpChat.Misuzu\SharpChat.Misuzu.csproj", "{08FD8B99-011A-43F9-A6C9-A3C1979604CF}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -26,6 +32,18 @@ Global {DDB24C19-B802-4C96-AC15-0449C6FC77F2}.Debug|Any CPU.Build.0 = Debug|Any CPU {DDB24C19-B802-4C96-AC15-0449C6FC77F2}.Release|Any CPU.ActiveCfg = Release|Any CPU {DDB24C19-B802-4C96-AC15-0449C6FC77F2}.Release|Any CPU.Build.0 = Release|Any CPU + {B2228E3C-E0DB-4AAF-A603-2A822B531F76}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {B2228E3C-E0DB-4AAF-A603-2A822B531F76}.Debug|Any CPU.Build.0 = Debug|Any CPU + {B2228E3C-E0DB-4AAF-A603-2A822B531F76}.Release|Any CPU.ActiveCfg = Release|Any CPU + {B2228E3C-E0DB-4AAF-A603-2A822B531F76}.Release|Any CPU.Build.0 = Release|Any CPU + {4D48CCFB-5D3B-4AB6-AF94-04377474078C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {4D48CCFB-5D3B-4AB6-AF94-04377474078C}.Debug|Any CPU.Build.0 = Debug|Any CPU + {4D48CCFB-5D3B-4AB6-AF94-04377474078C}.Release|Any CPU.ActiveCfg = Release|Any CPU + {4D48CCFB-5D3B-4AB6-AF94-04377474078C}.Release|Any CPU.Build.0 = Release|Any CPU + {08FD8B99-011A-43F9-A6C9-A3C1979604CF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {08FD8B99-011A-43F9-A6C9-A3C1979604CF}.Debug|Any CPU.Build.0 = Debug|Any CPU + {08FD8B99-011A-43F9-A6C9-A3C1979604CF}.Release|Any CPU.ActiveCfg = Release|Any CPU + {08FD8B99-011A-43F9-A6C9-A3C1979604CF}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/SharpChat/Program.cs b/SharpChat/Program.cs index cd2fbb6..b8acec1 100644 --- a/SharpChat/Program.cs +++ b/SharpChat/Program.cs @@ -1,6 +1,7 @@ using SharpChat.Config; using SharpChat.EventStorage; using SharpChat.Misuzu; +using SharpChat.SockChat; using System; using System.IO; using System.Net.Http; diff --git a/SharpChat/SharpChat.csproj b/SharpChat/SharpChat.csproj index 4b3e98d..d73896f 100644 --- a/SharpChat/SharpChat.csproj +++ b/SharpChat/SharpChat.csproj @@ -6,11 +6,6 @@ enable - - - - - @@ -23,4 +18,10 @@ + + + + + + diff --git a/SharpChat/BuildInfo.cs b/SharpChatCommon/BuildInfo.cs similarity index 89% rename from SharpChat/BuildInfo.cs rename to SharpChatCommon/BuildInfo.cs index ccdfa58..6429065 100644 --- a/SharpChat/BuildInfo.cs +++ b/SharpChatCommon/BuildInfo.cs @@ -18,7 +18,7 @@ namespace SharpChat { #endif try { - using Stream? s = Assembly.GetExecutingAssembly().GetManifestResourceStream(@"SharpChat.version.txt"); + using Stream? s = Assembly.GetEntryAssembly()?.GetManifestResourceStream(@"SharpChat.version.txt"); if(s != null) { using StreamReader sr = new(s); VersionString = sr.ReadLine()?.Trim() ?? string.Empty; diff --git a/SharpChat/ChannelInfo.cs b/SharpChatCommon/ChannelInfo.cs similarity index 100% rename from SharpChat/ChannelInfo.cs rename to SharpChatCommon/ChannelInfo.cs diff --git a/SharpChat/ChannelsContext.cs b/SharpChatCommon/ChannelsContext.cs similarity index 100% rename from SharpChat/ChannelsContext.cs rename to SharpChatCommon/ChannelsContext.cs diff --git a/SharpChat/ChannelsUsersContext.cs b/SharpChatCommon/ChannelsUsersContext.cs similarity index 100% rename from SharpChat/ChannelsUsersContext.cs rename to SharpChatCommon/ChannelsUsersContext.cs diff --git a/SharpChat/Colour.cs b/SharpChatCommon/Colour.cs similarity index 100% rename from SharpChat/Colour.cs rename to SharpChatCommon/Colour.cs diff --git a/SharpChat/Config/CachedValue.cs b/SharpChatCommon/Config/CachedValue.cs similarity index 100% rename from SharpChat/Config/CachedValue.cs rename to SharpChatCommon/Config/CachedValue.cs diff --git a/SharpChat/Config/ConfigExceptions.cs b/SharpChatCommon/Config/ConfigExceptions.cs similarity index 100% rename from SharpChat/Config/ConfigExceptions.cs rename to SharpChatCommon/Config/ConfigExceptions.cs diff --git a/SharpChat/Config/IConfig.cs b/SharpChatCommon/Config/IConfig.cs similarity index 100% rename from SharpChat/Config/IConfig.cs rename to SharpChatCommon/Config/IConfig.cs diff --git a/SharpChat/Config/ScopedConfig.cs b/SharpChatCommon/Config/ScopedConfig.cs similarity index 100% rename from SharpChat/Config/ScopedConfig.cs rename to SharpChatCommon/Config/ScopedConfig.cs diff --git a/SharpChat/Config/StreamConfig.cs b/SharpChatCommon/Config/StreamConfig.cs similarity index 100% rename from SharpChat/Config/StreamConfig.cs rename to SharpChatCommon/Config/StreamConfig.cs diff --git a/SharpChat/EventStorage/IEventStorage.cs b/SharpChatCommon/EventStorage/IEventStorage.cs similarity index 100% rename from SharpChat/EventStorage/IEventStorage.cs rename to SharpChatCommon/EventStorage/IEventStorage.cs diff --git a/SharpChat/EventStorage/MariaDBEventStorage.cs b/SharpChatCommon/EventStorage/MariaDBEventStorage.cs similarity index 100% rename from SharpChat/EventStorage/MariaDBEventStorage.cs rename to SharpChatCommon/EventStorage/MariaDBEventStorage.cs diff --git a/SharpChat/EventStorage/MariaDBEventStorage_Database.cs b/SharpChatCommon/EventStorage/MariaDBEventStorage_Database.cs similarity index 100% rename from SharpChat/EventStorage/MariaDBEventStorage_Database.cs rename to SharpChatCommon/EventStorage/MariaDBEventStorage_Database.cs diff --git a/SharpChat/EventStorage/MariaDBEventStorage_Migrations.cs b/SharpChatCommon/EventStorage/MariaDBEventStorage_Migrations.cs similarity index 100% rename from SharpChat/EventStorage/MariaDBEventStorage_Migrations.cs rename to SharpChatCommon/EventStorage/MariaDBEventStorage_Migrations.cs diff --git a/SharpChat/EventStorage/StoredEventFlags.cs b/SharpChatCommon/EventStorage/StoredEventFlags.cs similarity index 100% rename from SharpChat/EventStorage/StoredEventFlags.cs rename to SharpChatCommon/EventStorage/StoredEventFlags.cs diff --git a/SharpChat/EventStorage/StoredEventInfo.cs b/SharpChatCommon/EventStorage/StoredEventInfo.cs similarity index 100% rename from SharpChat/EventStorage/StoredEventInfo.cs rename to SharpChatCommon/EventStorage/StoredEventInfo.cs diff --git a/SharpChat/EventStorage/VirtualEventStorage.cs b/SharpChatCommon/EventStorage/VirtualEventStorage.cs similarity index 100% rename from SharpChat/EventStorage/VirtualEventStorage.cs rename to SharpChatCommon/EventStorage/VirtualEventStorage.cs diff --git a/SharpChat/Events/IChatEvent.cs b/SharpChatCommon/Events/IChatEvent.cs similarity index 100% rename from SharpChat/Events/IChatEvent.cs rename to SharpChatCommon/Events/IChatEvent.cs diff --git a/SharpChat/Events/MessageCreateEvent.cs b/SharpChatCommon/Events/MessageCreateEvent.cs similarity index 100% rename from SharpChat/Events/MessageCreateEvent.cs rename to SharpChatCommon/Events/MessageCreateEvent.cs diff --git a/SharpChat/Logger.cs b/SharpChatCommon/Logger.cs similarity index 100% rename from SharpChat/Logger.cs rename to SharpChatCommon/Logger.cs diff --git a/SharpChat/RNG.cs b/SharpChatCommon/RNG.cs similarity index 100% rename from SharpChat/RNG.cs rename to SharpChatCommon/RNG.cs diff --git a/SharpChat/RateLimiter.cs b/SharpChatCommon/RateLimiter.cs similarity index 100% rename from SharpChat/RateLimiter.cs rename to SharpChatCommon/RateLimiter.cs diff --git a/SharpChatCommon/SharpChatCommon.csproj b/SharpChatCommon/SharpChatCommon.csproj new file mode 100644 index 0000000..ab43315 --- /dev/null +++ b/SharpChatCommon/SharpChatCommon.csproj @@ -0,0 +1,13 @@ + + + + net6.0 + enable + SharpChat + + + + + + + diff --git a/SharpChat/SharpId.cs b/SharpChatCommon/SharpId.cs similarity index 100% rename from SharpChat/SharpId.cs rename to SharpChatCommon/SharpId.cs diff --git a/SharpChat/UserDisconnectReason.cs b/SharpChatCommon/UserDisconnectReason.cs similarity index 100% rename from SharpChat/UserDisconnectReason.cs rename to SharpChatCommon/UserDisconnectReason.cs diff --git a/SharpChat/UserInfo.cs b/SharpChatCommon/UserInfo.cs similarity index 100% rename from SharpChat/UserInfo.cs rename to SharpChatCommon/UserInfo.cs diff --git a/SharpChat/UserPermissions.cs b/SharpChatCommon/UserPermissions.cs similarity index 100% rename from SharpChat/UserPermissions.cs rename to SharpChatCommon/UserPermissions.cs diff --git a/SharpChat/UserStatus.cs b/SharpChatCommon/UserStatus.cs similarity index 100% rename from SharpChat/UserStatus.cs rename to SharpChatCommon/UserStatus.cs diff --git a/SharpChat/UsersContext.cs b/SharpChatCommon/UsersContext.cs similarity index 100% rename from SharpChat/UsersContext.cs rename to SharpChatCommon/UsersContext.cs