public DownloadWebSocketService( IWebSocketHandler webSocketHandler, IDirectoryHandler directoryHandler, IDownloadHandler downloadHandler, IFileHandler fileHandler, IFileHistoryHandler fileHistoryHandler, ISettingsHandler settingsHandler, IDebugHandler debugHandler) { debugHandler.TraceMessage("Constructor called.", DebugSource.CONSTRUCTOR, DebugType.ENTRY_EXIT); DebugHandler = debugHandler; WebSocketHandler = webSocketHandler; DirectoryHandler = directoryHandler; DownloadHandler = downloadHandler; FileHandler = fileHandler; FileHistoryHandler = fileHistoryHandler; SettingsHandler = settingsHandler; LastDownloadedInfo = new JsonDownloadInfo(); LittleWeebSettings = SettingsHandler.GetLittleWeebSettings(); IrcSettings = SettingsHandler.GetIrcSettings(); downloadHandler.OnDownloadUpdateEvent += OnDownloadUpdateEvent; }
public DebugHandler() { LittleWeebSettings = new LittleWeebSettings() { Local = true, Port = 1515, DebugLevel = new List <int>() { 0, 1, 2, 3, 4, 5 }, DebugType = new List <int>() { 0, 1, 2, 3, 4 }, RandomUsernameLength = 6, MaxDebugLogSize = 2000 }; MessageQueue = new ConcurrentBag <string[]>(); foreach (int level in LittleWeebSettings.DebugLevel) { WriteTrace("DEBUG LEVEL: " + level); } currentLog = ""; CreateFile(); #pragma warning disable CS4014 // Because this call is not awaited, execution of the current method continues before the call is completed TraceWriter(); #pragma warning restore CS4014 // Because this call is not awaited, execution of the current method continues before the call is completed WriteTrace("Succesfully initiated debug handler!"); }
public void SetLittleWeebSettings(LittleWeebSettings settings) { DebugHandler.TraceMessage("SetLittleWeebSettings called.", DebugSource.TASK, DebugType.ENTRY_EXIT); DebugHandler.TraceMessage(settings.ToString(), DebugSource.TASK, DebugType.PARAMETERS); LittleWeebSettings = settings; }
public Task SetSettingsClasses( ISettingsHandler settingsHandler, IIrcClientHandler ircClientHandler, IFileHandler fileHandler, IDownloadHandler downloadHandler, IDirectoryWebSocketService directoryWebSocketService, IIrcWebSocketService ircWebSocketService ) { DebugHandler.TraceMessage("SetSettingsClasses Called.", DebugSource.TASK, DebugType.ENTRY_EXIT); SettingsHandler = settingsHandler; IrcClientHandler = ircClientHandler; DownloadHandler = downloadHandler; DirectoryWebSocketService = directoryWebSocketService; IrcWebSocketService = ircWebSocketService; WebSocketHandlerSettings = WebSocketHandler as ISettingsInterface; IrcClientHandlerSettings = ircClientHandler as ISettingsInterface; DebugHandlerSettings = DebugHandler as ISettingsInterface; FileHandlerSettings = fileHandler as ISettingsInterface; DownloadHandlerSettings = downloadHandler as ISettingsInterface; DirectoryWebSocketServiceSettings = directoryWebSocketService as ISettingsInterface; IrcWebSocketServiceSettings = ircWebSocketService as ISettingsInterface; LittleWeebSettings = settingsHandler.GetLittleWeebSettings(); IrcSettings = settingsHandler.GetIrcSettings(); SetAllIrcSettings(IrcSettings); SetAllLittleWeebSettings(LittleWeebSettings); return(Task.CompletedTask); }
public async Task SetLittleWeebSettings(JObject jsonLittleWeebSettings) { DebugHandler.TraceMessage("SetLittleWeebSettings Called.", DebugSource.TASK, DebugType.ENTRY_EXIT); DebugHandler.TraceMessage(jsonLittleWeebSettings.ToString(), DebugSource.TASK, DebugType.PARAMETERS); try { LittleWeebSettings = SettingsHandler.GetLittleWeebSettings(); LittleWeebSettings.RandomUsernameLength = jsonLittleWeebSettings.Value <int>("randomusernamelength"); LittleWeebSettings.DebugLevel = jsonLittleWeebSettings.Value <JArray>("debuglevel").ToObject <List <int> >(); LittleWeebSettings.DebugType = jsonLittleWeebSettings.Value <JArray>("debugtype").ToObject <List <int> >(); LittleWeebSettings.MaxDebugLogSize = jsonLittleWeebSettings.Value <int>("maxdebuglogsize"); SetAllLittleWeebSettings(LittleWeebSettings); SettingsHandler.WriteLittleWeebSettings(LittleWeebSettings); await GetCurrentLittleWeebSettings(); } catch (Exception e) { DebugHandler.TraceMessage(e.ToString(), DebugSource.TASK, DebugType.WARNING); JsonError error = new JsonError { type = "set_littleweeb_settings_error", errortype = "Exception", errormessage = "Failed to set littleweeb settings.", exception = e.ToString() }; await WebSocketHandler.SendMessage(error.ToJson()); } }
private void SetAllLittleWeebSettings(LittleWeebSettings settings) { DebugHandler.TraceMessage("SetAllLittleWeebSettings Called.", DebugSource.TASK, DebugType.ENTRY_EXIT); DebugHandler.TraceMessage(settings.ToString(), DebugSource.TASK, DebugType.PARAMETERS); IrcClientHandlerSettings.SetLittleWeebSettings(settings); FileHandlerSettings.SetLittleWeebSettings(settings); DownloadHandlerSettings.SetLittleWeebSettings(settings); DirectoryWebSocketServiceSettings.SetLittleWeebSettings(settings); IrcWebSocketServiceSettings.SetLittleWeebSettings(settings); }
public async Task GetCurrentLittleWeebSettings() { DebugHandler.TraceMessage("GetCurrentLittleWeebSettings Called.", DebugSource.TASK, DebugType.ENTRY_EXIT); LittleWeebSettings = SettingsHandler.GetLittleWeebSettings(); JsonLittleWeebSettings settings = new JsonLittleWeebSettings() { port = LittleWeebSettings.Port, local = LittleWeebSettings.Local, randomusernamelength = LittleWeebSettings.RandomUsernameLength, debuglevel = LittleWeebSettings.DebugLevel, debugtype = LittleWeebSettings.DebugType, maxdebuglogsize = LittleWeebSettings.MaxDebugLogSize }; await WebSocketHandler.SendMessage(settings.ToJson()); }
public IrcWebSocketService(IWebSocketHandler webSocketHandler, IIrcClientHandler ircClientHandler, ISettingsHandler settingsHandler, IDebugHandler debugHandler) { debugHandler.TraceMessage("IrcWebSocketService Constructor called.", DebugSource.CONSTRUCTOR, DebugType.ENTRY_EXIT); SendMessageToWebSocketClient = false; IsIrcConnected = false; SettingsHandler = settingsHandler; IrcClientHandler = ircClientHandler; WebSocketHandler = webSocketHandler; DebugHandler = debugHandler; LittleWeebSettings = SettingsHandler.GetLittleWeebSettings(); IrcSettings = SettingsHandler.GetIrcSettings(); IrcClientHandler.OnIrcClientMessageEvent += OnIrcClientMessageEvent; IrcClientHandler.OnIrcClientConnectionStatusEvent += OnIrcClientConnectionStatusEvent; }
public IrcClientHandler(ISettingsHandler settingsHandler, IDebugHandler debugHandler) { debugHandler.TraceMessage("Constructor Called.", DebugSource.CONSTRUCTOR, DebugType.ENTRY_EXIT); SettingsHandler = settingsHandler; DebugHandler = debugHandler; IrcSettings = SettingsHandler.GetIrcSettings(); LittleWeebSettings = SettingsHandler.GetLittleWeebSettings(); IrcClient = new SimpleIRC(); IrcClient.SetCustomDownloadDir(IrcSettings.fullfilepath); IrcClient.IrcClient.OnUserListReceived += OnUserListUpdate; IrcClient.IrcClient.OnMessageReceived += OnMessage; IrcClient.IrcClient.OnDebugMessage += OnMessageDebug; IrcClient.DccClient.OnDccEvent += OnDownloadUpdate; IrcClient.DccClient.OnDccDebugMessage += OnDownloadUpdateDebug; }
public void WriteLittleWeebSettings(LittleWeebSettings littleWeebSettings) { DebugHandler.TraceMessage("WriteLittleWeebSettings Called.", DebugSource.TASK, DebugType.ENTRY_EXIT); DebugHandler.TraceMessage(littleWeebSettings.ToString(), DebugSource.TASK, DebugType.PARAMETERS); try { string settingsName = "LittleWeebSettings.json"; string settingsJson = JsonConvert.SerializeObject(littleWeebSettings); if (!File.Exists(Path.Combine(SettingsPath, settingsName))) { using (var fileStream = File.Open(Path.Combine(SettingsPath, settingsName), FileMode.OpenOrCreate, FileAccess.Write, FileShare.ReadWrite)) { using (var streamWriter = new StreamWriter(fileStream)) { streamWriter.Write(settingsJson); } } } else { using (var fileStream = File.Open(Path.Combine(SettingsPath, settingsName), FileMode.Truncate, FileAccess.ReadWrite, FileShare.ReadWrite)) { using (var streamWriter = new StreamWriter(fileStream)) { streamWriter.Write(settingsJson); } } } } catch (Exception e) { DebugHandler.TraceMessage(e.ToString(), DebugSource.TASK, DebugType.WARNING); } }
public WebSocketHandler(ISettingsHandler settingsHandler, IDebugHandler debugHandler) { debugHandler.TraceMessage("Constructor Called", DebugSource.CONSTRUCTOR, DebugType.ENTRY_EXIT); LittleWeebSettings = settingsHandler.GetLittleWeebSettings(); DebugHandler = debugHandler; }
public void SetSettings(ISettingsHandler settingsHandler) { LittleWeebSettings = settingsHandler.GetLittleWeebSettings(); SettingsHandler = settingsHandler; }