public AddonService(AddonSettings settings, IAddonStorage storage) { if (!IPAddress.TryParse(settings.ipAddress, out IPAddress ip)) { throw new Exception($"IP Address '{settings.ipAddress}' is not valid"); } Console.WriteLine("Starting AddonService listener on {0}:{1}", ip.ToString(), settings.port); listener = new AddonServiceListener(ip, settings, storage); }
public AddonServiceListener(IPAddress ip, AddonSettings settings, IAddonStorage storage) { this.settings = settings; this.storage = storage; tcpListener = new TcpListener(ip, settings.port); tcpListener.Start(); listenThread = new Thread(new ThreadStart(Listen)); listenThread.Start(); }
private void GenerateConfig(AddonSettings settings) { // Generate a config js file that addons can use, to make configuring 2pc setup addons less painful string pattern = $@"// THIS FILE IS AUTOMATICALLY GENERATED // Sniffer addon service connection details var ip = ""{settings.ipAddress}""; var port = {settings.port}; "; var configPath = Path.Combine(addonsPath, "config.js"); File.WriteAllText(configPath, pattern); }