//#region SyncMethods //public void AddWarningLog(string data) //{ // AddLog(data, LogLevel.Warning.ToString()); //} //public void AddInfoLog(string data) //{ // AddLog(data, LogLevel.Info.ToString()); //} //public void AddFatelLog(string data) //{ // AddLog(data, LogLevel.Fatel.ToString()); //} //private void AddLog(string data, string logType) //{ // if (data == null) // throw new ArgumentNullException(); // IParser<T> parser = parserFactory.Build(data); // var parsedData = parser.Parse(data); // var props = new Helper().ConvertTModelPropertyAndValueToString<T>(parsedData); // saveToDB(props, logType); //} //private void saveToDB(object data, string logType) //{ // repoLogger.Add(new DomainModels.Logger() // { // LogLevel = logType, // LogTime = DateTime.Now, // Message = data.ToString() // }); // repoLogger.SaveChanges(); //} //#endregion #region AsyncMethods private async Task AddLogAsync(string data, string logType) { if (data == null) { throw new ArgumentNullException(); } IParser <T> parser = parserFactory.Build(data); var parsedData = parser.Parse(data); var props = new Helper().ConvertTModelPropertyAndValueToString <T>(parsedData); await saveToDBAsync(props, logType); }