public void Log(string log) { if (_flags.HasFlag(LoggingFlags.Console)) { Console.WriteLine(log); } if (_flags.HasFlag(LoggingFlags.File)) { LogWriter.Write(log + "\n"); LogWriter.Flush(); } }
private string DumpObject(object obj, LoggingFlags flags) { var objType = obj.GetType(); var objFields = objType.GetFields(); var objProperties = objType.GetProperties(); var objLog = string.Empty; if (flags.HasFlag(LoggingFlags.Properties)) { //TODO: Remove this dirty code repetition. for (int i = 0; i < objProperties.Length; i++) { var property = objProperties[i]; var propertyName = property.Name; if (!flags.HasFlag(LoggingFlags.Unknowns)) // check if we loggin unknowns { if (propertyName.StartsWith("Unknown")) { continue; } } var propertyValue = property.GetValue(obj); propertyValue = DumpObjectValue(propertyValue); objLog += m_CurrentIndent + propertyName + ": " + propertyValue; if (i != objProperties.Length - 1) { objLog += "\r\n"; } } } if (flags.HasFlag(LoggingFlags.Fields)) { //TODO: Remove this dirty code repetition. for (int i = 0; i < objFields.Length; i++) { var field = objFields[i]; var fieldName = field.Name; if (!flags.HasFlag(LoggingFlags.Unknowns)) // check if we loggin unknowns { if (fieldName.StartsWith("Unknown")) { continue; } } var fieldValue = field.GetValue(obj); fieldValue = DumpObjectValue(fieldValue); objLog += m_CurrentIndent + fieldName + ": " + fieldValue; if (i != objFields.Length - 1) { objLog += "\r\n"; } } } //var debug = m_StringBuilder.ToString(); return(objLog); }
private string DumpObject(object obj, LoggingFlags flags) { var objType = obj.GetType(); var objFields = objType.GetFields(); var objProperties = objType.GetProperties(); var objLog = string.Empty; if (flags.HasFlag(LoggingFlags.Properties)) { //TODO: Remove this dirty code repetition. for (int i = 0; i < objProperties.Length; i++) { var property = objProperties[i]; var propertyName = property.Name; if (!flags.HasFlag(LoggingFlags.Unknowns)) // check if we loggin unknowns if (propertyName.StartsWith("Unknown")) continue; var propertyValue = property.GetValue(obj); propertyValue = DumpObjectValue(propertyValue); objLog += m_CurrentIndent + propertyName + ": " + propertyValue; if (i != objProperties.Length - 1) objLog += "\r\n"; } } if (flags.HasFlag(LoggingFlags.Fields)) { //TODO: Remove this dirty code repetition. for (int i = 0; i < objFields.Length; i++) { var field = objFields[i]; var fieldName = field.Name; if (!flags.HasFlag(LoggingFlags.Unknowns)) // check if we loggin unknowns if (fieldName.StartsWith("Unknown")) continue; var fieldValue = field.GetValue(obj); fieldValue = DumpObjectValue(fieldValue); objLog += m_CurrentIndent + fieldName + ": " + fieldValue; if (i != objFields.Length - 1) objLog += "\r\n"; } } //var debug = m_StringBuilder.ToString(); return objLog; }