/// <summary> /// Default constructor /// </summary> /// <param name="service"></param> public IRCServicePlugin(IRCService service) { if (service == null) { throw new ArgumentNullException("service"); } Service = service; service.RegisterPlugin(this); servers = new List<IServer>(); }
/// <summary> /// Default constructor /// </summary> /// <param name="name"></param> /// <param name="creationTimeStamp"></param> public Channel(IRCService service, string name, UnixTimestamp creationTimeStamp = null) { Name = name; Key = ""; modes = 0; Limit = 0; Service = service; if (creationTimestamp == null) { creationTimestamp = UnixTimestamp.CurrentTimestamp(); } creationTimestamp = creationTimeStamp; bans = new List<Ban>(); invitations = new List<IUser>(); }
public MainViewModel(RCViewModel rcViewModel, IConfigReaderService configReaderService, ILogService logService, IRCService rcService, ICCService ccService, IConnectivityService connectivityService) { x = rcViewModel; _configReaderService = configReaderService; _logService = logService; _rcService = rcService; _ccService = ccService; _connectivityService = connectivityService; _connectivityService.MessageReceived += OnMessageReceived; BindingOperations.EnableCollectionSynchronization(Logs, _lock); try { SubnetworkConfig = configReaderService.ReadSubnetworkConfig(); } catch (Exception e) { _logService.LogError("WRONG CONFIG: " + e.Message); } if (SubnetworkConfig.IsDomain) { _connectivityService.ConnectToNCCorDomain("127.0.0.1", SubnetworkConfig.NCCPort, SubnetworkConfig.Name); _connectivityService.StartListening("127.0.0.1", SubnetworkConfig.ServerPort); } else { //_cableCloudConnectionService.StartClient("127.0.0.1", SubnetworkConfig.CableCloudPort, SubnetworkConfig.Name); _connectivityService.ConnectToNCCorDomain("127.0.0.1", SubnetworkConfig.ClientPort, SubnetworkConfig.Name); _connectivityService.StartListening("127.0.0.1", SubnetworkConfig.ServerPort); } Task.Run(async() => { while (true) { await CheckList(); Thread.Sleep(50); } }); }
/// <summary> /// Constructs a new Server /// </summary> /// <param name="service">The service that the server belongs to</param> /// <param name="numeric">The servers numeric</param> /// <param name="name">The servers name</param> /// <param name="description">The servers description</param> /// <param name="created">The servers creation timestamp</param> /// <param name="maxUsers">The maximum ammount of users on the server (1-262143)</param> /// <param name="controlled">Is the server controlled by the service?</param> /// <param name="upLink">Tbe servers uplink</param> public Server(IRCService service, string numeric, string name, string description, UnixTimestamp created, int maxUsers, bool controlled, IServer upLink) { Service = service; Numeric = numeric; Name = name; Description = description; Created = created; MaxUsers = maxUsers; if (MaxUsers < 0) { MaxUsers = 1; } if (MaxUsers > 262143) { MaxUsers = 262143; } UpLink = upLink; IsControlled = controlled; users = new Dictionary<string, IUser>(); channels = new Dictionary<string, IChannel>(StringComparer.CurrentCultureIgnoreCase); ChannelEntries = new Dictionary<IChannel, IEnumerable<ChannelEntry>>(); }