namespace SimpleLog { public interface ILogger : IMessageFormatter { /// /// Registers a log handler with this logger /// /// The log handler to register void RegisterLogHandler(ILogHandler handler); /// /// Unregisters the given log handler /// /// TRUE if successfully unregistered, FALSE if not //bool UnregisterLogHandler(ILogHandler handler); /// /// Removes all log handlers that match the given assembly name /// /// Number of log handlers that were unregistered int UnregisterLogHandlerType(string assemblyName); /// /// Unregisters all registered log handlers /// /// Number of log handlers that were unregistered int UnregisterAllLogHandlers(); /// /// Gets or sets the log level /// LogLevel LogLevel {get; set;} /// /// Logs a message at the specified log level /// /// The message to log /// The log level of the message /// TRUE if all handler succesfully logged, or false if any of them failed bool Log(object message, LogLevel level); /// /// Gets or sets the message handler /// IMessageHandler MessageHandler { get; set; } } }