using SharpChat.Sessions; using SharpChat.Users; using System; using System.Collections.Generic; namespace SharpChat.Protocol.IRC.ClientCommands { public class ClientCommandContext { public IRCConnection Connection { get; } public IEnumerable Arguments { get; } public ISession Session => Connection.Session; public ILocalUser User => Session?.User; public ClientCommandContext(IRCConnection connection, IEnumerable args) { Connection = connection ?? throw new ArgumentNullException(nameof(connection)); Arguments = args ?? throw new ArgumentNullException(nameof(args)); } } }