using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace SuperSocket.SocketBase.Logging { /// <summary> /// Console Log /// </summary> public class ConsoleLog : ILog { private string m_Name; private const string m_MessageTemplate = "{0}-{1}: {2}"; private const string m_Debug = "DEBUG"; private const string m_Error = "ERROR"; private const string m_Fatal = "FATAL"; private const string m_Info = "INFO"; private const string m_Warn = "WARN"; /// <summary> /// Initializes a new instance of the <see cref="ConsoleLog"/> class. /// </summary> /// <param name="name">The name.</param> public ConsoleLog(string name) { m_Name = name; } /// <summary> /// Gets a value indicating whether this instance is debug enabled. /// </summary> /// <value> /// <c>true</c> if this instance is debug enabled; otherwise, <c>false</c>. /// </value> public bool IsDebugEnabled { get { return true; } } /// <summary> /// Gets a value indicating whether this instance is error enabled. /// </summary> /// <value> /// <c>true</c> if this instance is error enabled; otherwise, <c>false</c>. /// </value> public bool IsErrorEnabled { get { return true; } } /// <summary> /// Gets a value indicating whether this instance is fatal enabled. /// </summary> /// <value> /// <c>true</c> if this instance is fatal enabled; otherwise, <c>false</c>. /// </value> public bool IsFatalEnabled { get { return true; } } /// <summary> /// Gets a value indicating whether this instance is info enabled. /// </summary> /// <value> /// <c>true</c> if this instance is info enabled; otherwise, <c>false</c>. /// </value> public bool IsInfoEnabled { get { return true; } } /// <summary> /// Gets a value indicating whether this instance is warn enabled. /// </summary> /// <value> /// <c>true</c> if this instance is warn enabled; otherwise, <c>false</c>. /// </value> public bool IsWarnEnabled { get { return true; } } /// <summary> /// Logs the debug message. /// </summary> /// <param name="message">The message.</param> public void Debug(object message) { Console.WriteLine(m_MessageTemplate, m_Name, m_Debug, message); } /// <summary> /// Logs the debug message. /// </summary> /// <param name="message">The message.</param> /// <param name="exception">The exception.</param> public void Debug(object message, Exception exception) { Console.WriteLine(m_MessageTemplate, m_Name, m_Debug, message + Environment.NewLine + exception.Message + exception.StackTrace); } /// <summary> /// Logs the debug message. /// </summary> /// <param name="format">The format.</param> /// <param name="arg0">The arg0.</param> public void DebugFormat(string format, object arg0) { Console.WriteLine(m_MessageTemplate, m_Name, m_Debug, string.Format(format, arg0)); } /// <summary> /// Logs the debug message. /// </summary> /// <param name="format">The format.</param> /// <param name="args">The args.</param> public void DebugFormat(string format, params object[] args) { Console.WriteLine(m_MessageTemplate, m_Name, m_Debug, string.Format(format, args)); } /// <summary> /// Logs the debug message. /// </summary> /// <param name="provider">The provider.</param> /// <param name="format">The format.</param> /// <param name="args">The args.</param> public void DebugFormat(IFormatProvider provider, string format, params object[] args) { Console.WriteLine(m_MessageTemplate, m_Name, m_Debug, string.Format(provider, format, args)); } /// <summary> /// Logs the debug message. /// </summary> /// <param name="format">The format.</param> /// <param name="arg0">The arg0.</param> /// <param name="arg1">The arg1.</param> public void DebugFormat(string format, object arg0, object arg1) { Console.WriteLine(m_MessageTemplate, m_Name, m_Debug, string.Format(format, arg0, arg1)); } /// <summary> /// Logs the debug message. /// </summary> /// <param name="format">The format.</param> /// <param name="arg0">The arg0.</param> /// <param name="arg1">The arg1.</param> /// <param name="arg2">The arg2.</param> public void DebugFormat(string format, object arg0, object arg1, object arg2) { Console.WriteLine(m_MessageTemplate, m_Name, m_Debug, string.Format(format, arg0, arg1, arg2)); } /// <summary> /// Logs the error message. /// </summary> /// <param name="message">The message.</param> public void Error(object message) { Console.WriteLine(m_MessageTemplate, m_Name, m_Error, message); } /// <summary> /// Logs the error message. /// </summary> /// <param name="message">The message.</param> /// <param name="exception">The exception.</param> public void Error(object message, Exception exception) { Console.WriteLine(m_MessageTemplate, m_Name, m_Error, message + Environment.NewLine + exception.Message + exception.StackTrace); } /// <summary> /// Logs the error message. /// </summary> /// <param name="format">The format.</param> /// <param name="arg0">The arg0.</param> public void ErrorFormat(string format, object arg0) { Console.WriteLine(m_MessageTemplate, m_Name, m_Error, string.Format(format, arg0)); } /// <summary> /// Logs the error message. /// </summary> /// <param name="format">The format.</param> /// <param name="args">The args.</param> public void ErrorFormat(string format, params object[] args) { Console.WriteLine(m_MessageTemplate, m_Name, m_Error, string.Format(format, args)); } /// <summary> /// Logs the error message. /// </summary> /// <param name="provider">The provider.</param> /// <param name="format">The format.</param> /// <param name="args">The args.</param> public void ErrorFormat(IFormatProvider provider, string format, params object[] args) { Console.WriteLine(m_MessageTemplate, m_Name, m_Error, string.Format(provider, format, args)); } /// <summary> /// Logs the error message. /// </summary> /// <param name="format">The format.</param> /// <param name="arg0">The arg0.</param> /// <param name="arg1">The arg1.</param> public void ErrorFormat(string format, object arg0, object arg1) { Console.WriteLine(m_MessageTemplate, m_Name, m_Error, string.Format(format, arg0, arg1)); } /// <summary> /// Logs the error message. /// </summary> /// <param name="format">The format.</param> /// <param name="arg0">The arg0.</param> /// <param name="arg1">The arg1.</param> /// <param name="arg2">The arg2.</param> public void ErrorFormat(string format, object arg0, object arg1, object arg2) { Console.WriteLine(m_MessageTemplate, m_Name, m_Error, string.Format(format, arg0, arg2)); } /// <summary> /// Logs the fatal error message. /// </summary> /// <param name="message">The message.</param> public void Fatal(object message) { Console.WriteLine(m_MessageTemplate, m_Name, m_Fatal, message); } /// <summary> /// Logs the fatal error message. /// </summary> /// <param name="message">The message.</param> /// <param name="exception">The exception.</param> public void Fatal(object message, Exception exception) { Console.WriteLine(m_MessageTemplate, m_Name, m_Fatal, message + Environment.NewLine + exception.Message + exception.StackTrace); } /// <summary> /// Logs the fatal error message. /// </summary> /// <param name="format">The format.</param> /// <param name="arg0">The arg0.</param> public void FatalFormat(string format, object arg0) { Console.WriteLine(m_MessageTemplate, m_Name, m_Fatal, string.Format(format, arg0)); } /// <summary> /// Logs the fatal error message. /// </summary> /// <param name="format">The format.</param> /// <param name="args">The args.</param> public void FatalFormat(string format, params object[] args) { Console.WriteLine(m_MessageTemplate, m_Name, m_Fatal, string.Format(format, args)); } /// <summary> /// Logs the fatal error message. /// </summary> /// <param name="provider">The provider.</param> /// <param name="format">The format.</param> /// <param name="args">The args.</param> public void FatalFormat(IFormatProvider provider, string format, params object[] args) { Console.WriteLine(m_MessageTemplate, m_Name, m_Fatal, string.Format(provider, format, args)); } /// <summary> /// Logs the fatal error message. /// </summary> /// <param name="format">The format.</param> /// <param name="arg0">The arg0.</param> /// <param name="arg1">The arg1.</param> public void FatalFormat(string format, object arg0, object arg1) { Console.WriteLine(m_MessageTemplate, m_Name, m_Fatal, string.Format(format, arg0, arg1)); } /// <summary> /// Logs the fatal error message. /// </summary> /// <param name="format">The format.</param> /// <param name="arg0">The arg0.</param> /// <param name="arg1">The arg1.</param> /// <param name="arg2">The arg2.</param> public void FatalFormat(string format, object arg0, object arg1, object arg2) { Console.WriteLine(m_MessageTemplate, m_Name, m_Fatal, string.Format(format, arg0, arg1, arg2)); } /// <summary> /// Logs the info message. /// </summary> /// <param name="message">The message.</param> public void Info(object message) { Console.WriteLine(m_MessageTemplate, m_Name, m_Info, message); } /// <summary> /// Logs the info message. /// </summary> /// <param name="message">The message.</param> /// <param name="exception">The exception.</param> public void Info(object message, Exception exception) { Console.WriteLine(m_MessageTemplate, m_Name, m_Info, message + Environment.NewLine + exception.Message + exception.StackTrace); } /// <summary> /// Logs the info message. /// </summary> /// <param name="format">The format.</param> /// <param name="arg0">The arg0.</param> public void InfoFormat(string format, object arg0) { Console.WriteLine(m_MessageTemplate, m_Name, m_Info, string.Format(format, arg0)); } /// <summary> /// Logs the info message. /// </summary> /// <param name="format">The format.</param> /// <param name="args">The args.</param> public void InfoFormat(string format, params object[] args) { Console.WriteLine(m_MessageTemplate, m_Name, m_Info, string.Format(format, args)); } /// <summary> /// Logs the info message. /// </summary> /// <param name="provider">The provider.</param> /// <param name="format">The format.</param> /// <param name="args">The args.</param> public void InfoFormat(IFormatProvider provider, string format, params object[] args) { Console.WriteLine(m_MessageTemplate, m_Name, m_Info, string.Format(provider, format, args)); } /// <summary> /// Logs the info message. /// </summary> /// <param name="format">The format.</param> /// <param name="arg0">The arg0.</param> /// <param name="arg1">The arg1.</param> public void InfoFormat(string format, object arg0, object arg1) { Console.WriteLine(m_MessageTemplate, m_Name, m_Info, string.Format(format, arg0, arg1)); } /// <summary> /// Logs the info message. /// </summary> /// <param name="format">The format.</param> /// <param name="arg0">The arg0.</param> /// <param name="arg1">The arg1.</param> /// <param name="arg2">The arg2.</param> public void InfoFormat(string format, object arg0, object arg1, object arg2) { Console.WriteLine(m_MessageTemplate, m_Name, m_Info, string.Format(format, arg0, arg1, arg2)); } /// <summary> /// Logs the warning message. /// </summary> /// <param name="message">The message.</param> public void Warn(object message) { Console.WriteLine(m_MessageTemplate, m_Name, m_Warn, message); } /// <summary> /// Logs the warning message. /// </summary> /// <param name="message">The message.</param> /// <param name="exception">The exception.</param> public void Warn(object message, Exception exception) { Console.WriteLine(m_MessageTemplate, m_Name, m_Warn, message + Environment.NewLine + exception.Message + exception.StackTrace); } /// <summary> /// Logs the warning message. /// </summary> /// <param name="format">The format.</param> /// <param name="arg0">The arg0.</param> public void WarnFormat(string format, object arg0) { Console.WriteLine(m_MessageTemplate, m_Name, m_Warn, string.Format(format, arg0)); } /// <summary> /// Logs the warning message. /// </summary> /// <param name="format">The format.</param> /// <param name="args">The args.</param> public void WarnFormat(string format, params object[] args) { Console.WriteLine(m_MessageTemplate, m_Name, m_Warn, string.Format(format, args)); } /// <summary> /// Logs the warning message. /// </summary> /// <param name="provider">The provider.</param> /// <param name="format">The format.</param> /// <param name="args">The args.</param> public void WarnFormat(IFormatProvider provider, string format, params object[] args) { Console.WriteLine(m_MessageTemplate, m_Name, m_Warn, string.Format(provider, format, args)); } /// <summary> /// Logs the warning message. /// </summary> /// <param name="format">The format.</param> /// <param name="arg0">The arg0.</param> /// <param name="arg1">The arg1.</param> public void WarnFormat(string format, object arg0, object arg1) { Console.WriteLine(m_MessageTemplate, m_Name, m_Warn, string.Format(format, arg0, arg1)); } /// <summary> /// Logs the warning message. /// </summary> /// <param name="format">The format.</param> /// <param name="arg0">The arg0.</param> /// <param name="arg1">The arg1.</param> /// <param name="arg2">The arg2.</param> public void WarnFormat(string format, object arg0, object arg1, object arg2) { Console.WriteLine(m_MessageTemplate, m_Name, m_Warn, string.Format(format, arg0, arg1, arg2)); } } }