<?xml version="1.0"?>
<doc>
    <assembly>
        <name>Dapplo.Log</name>
    </assembly>
    <members>
        <member name="T:Dapplo.Log.AbstractLogger">
            <summary>
                Abstract implementation for ILogger, which safes some time.
                In general you will only need to implement Write (without exception) as:
                1) WriteLine in calls Write after appending a newline.
                2) WriteLine with Exception calls WriteLine with the template/parameters and again with the Exception.ToString()
            </summary>
        </member>
        <member name="M:Dapplo.Log.AbstractLogger.Configure(Dapplo.Log.ILoggerConfiguration)">
            <inheritdoc />
        </member>
        <member name="M:Dapplo.Log.AbstractLogger.Format(Dapplo.Log.LogInfo,System.String,System.Object[])">
            <inheritdoc />
        </member>
        <member name="P:Dapplo.Log.AbstractLogger.LogLevel">
            <inheritdoc />
        </member>
        <member name="P:Dapplo.Log.AbstractLogger.UseShortSource">
            <inheritdoc />
        </member>
        <member name="P:Dapplo.Log.AbstractLogger.DateTimeFormat">
            <inheritdoc />
        </member>
        <member name="P:Dapplo.Log.AbstractLogger.LogLineFormat">
            <inheritdoc />
        </member>
        <member name="M:Dapplo.Log.AbstractLogger.IsLogLevelEnabled(Dapplo.Log.LogLevels,Dapplo.Log.LogSource)">
            <inheritdoc />
        </member>
        <member name="M:Dapplo.Log.AbstractLogger.ReplacedWith(Dapplo.Log.ILogger)">
            <inheritdoc />
        </member>
        <member name="M:Dapplo.Log.AbstractLogger.Write(Dapplo.Log.LogInfo,System.String,System.Object[])">
            <inheritdoc />
        </member>
        <member name="M:Dapplo.Log.AbstractLogger.WriteLine(Dapplo.Log.LogInfo,System.String,System.Object[])">
            <inheritdoc />
        </member>
        <member name="M:Dapplo.Log.AbstractLogger.WriteLine(Dapplo.Log.LogInfo,System.Exception,System.String,System.Object[])">
            <inheritdoc />
        </member>
        <member name="T:Dapplo.Log.ILogger">
            <summary>
                This is the interface used for internal logging.
                The idea is that you can implement a small wrapper for you favorite logger which implements this interface.
                Assign it to the HttpExtensionsGlobals.Logger and Dapplo.HttpExtensions will start logger with your class.
                A TraceLogger implementation is supplied, so you can see some output while your project is in development.
            </summary>
        </member>
        <member name="M:Dapplo.Log.ILogger.Configure(Dapplo.Log.ILoggerConfiguration)">
            <summary>
                Configure the logger with the values from the ILoggerConfiguration
            </summary>
            <param name="loggerConfiguration">ILoggerConfiguration</param>
        </member>
        <member name="M:Dapplo.Log.ILogger.Format(Dapplo.Log.LogInfo,System.String,System.Object[])">
            <summary>
                This can be overriden to format the line message differently
            </summary>
            <param name="logInfo">LogInfo</param>
            <param name="messageTemplate">string</param>
            <param name="parameters">object array with the parameters</param>
            <returns>string formatted</returns>
        </member>
        <member name="M:Dapplo.Log.ILogger.ReplacedWith(Dapplo.Log.ILogger)">
            <summary>
                This is called when your logger was the default, and is replaced with a different one.
                In this method a buffer logger could place all it's content into the new logger.
            </summary>
            <param name="newLogger">ILogger</param>
        </member>
        <member name="M:Dapplo.Log.ILogger.IsLogLevelEnabled(Dapplo.Log.LogLevels,Dapplo.Log.LogSource)">
            <summary>
                A simple test, to see if the log level is enabled.
                Note: level == LogLevels.None should always return false
                Level == LogLevels.None is actually checked in the extension
                Optionally the LogSource for which this is requested is supplied and can be used.
            </summary>
            <param name="logLevel">LogLevels</param>
            <param name="logSource">Optional LogSource</param>
            <returns>true if enabled</returns>
        </member>
        <member name="M:Dapplo.Log.ILogger.Write(Dapplo.Log.LogInfo,System.String,System.Object[])">
            <summary>
                This writes the LogInfo, messageTemplate and the log parameters to the log
            </summary>
            <param name="logInfo">LogInfo with source, timestamp, level etc</param>
            <param name="messageTemplate">Message (template) with formatting</param>
            <param name="logParameters">Parameters for the template</param>
        </member>
        <member name="M:Dapplo.Log.ILogger.WriteLine(Dapplo.Log.LogInfo,System.String,System.Object[])">
            <summary>
                This writes the LogInfo, messageTemplate and the log parameters to the log, finishing with a newline
            </summary>
            <param name="logInfo">LogInfo with source, timestamp, level etc</param>
            <param name="messageTemplate">Message (template) with formatting</param>
            <param name="logParameters">Parameters for the template</param>
        </member>
        <member name="M:Dapplo.Log.ILogger.WriteLine(Dapplo.Log.LogInfo,System.Exception,System.String,System.Object[])">
            <summary>
                This writes the LogInfo, exception, messageTemplate and the log parameters to the log, finishing with a newline
            </summary>
            <param name="logInfo">LogInfo with source, timestamp, level etc</param>
            <param name="exception">exception to log</param>
            <param name="messageTemplate">Message (template) with formatting</param>
            <param name="logParameters">Parameters for the template</param>
        </member>
        <member name="T:Dapplo.Log.ILoggerConfiguration">
            <summary>
                Interface for the LoggerConfiguration
            </summary>
        </member>
        <member name="P:Dapplo.Log.ILoggerConfiguration.LogLevel">
            <summary>
                The LogLevels enum a logger uses
            </summary>
        </member>
        <member name="P:Dapplo.Log.ILoggerConfiguration.UseShortSource">
            <summary>
                Defines if the Source is written like d.l.LoggerTest (default) or Dapplo.Log.LoggerTest
            </summary>
        </member>
        <member name="P:Dapplo.Log.ILoggerConfiguration.DateTimeFormat">
            <summary>
                Timestamp format which is used in the output, when outputting the LogInfo details
            </summary>
        </member>
        <member name="P:Dapplo.Log.ILoggerConfiguration.LogLineFormat">
            <summary>
                Default line format for loggers which use the DefaultFormatter.
                The first argument is the LogInfo, the second the message + parameters formatted
            </summary>
        </member>
        <member name="T:Dapplo.Log.LoggerMapper">
            <summary>
                The logic for the mapping of loggers
            </summary>
        </member>
        <member name="P:Dapplo.Log.LoggerMapper.LoggerMap">
            <summary>
                The lookup table for finding the loggers for a LogSource.Source
            </summary>
        </member>
        <member name="M:Dapplo.Log.LoggerMapper.Loggers(Dapplo.Log.LogSource)">
            <summary>
                The default lookup implementation
            </summary>
            <param name="logSource">LogSource to find loggers for</param>
            <returns>enumerable with loggers</returns>
        </member>
        <member name="M:Dapplo.Log.LoggerMapper.RegisterLoggerFor(System.String,Dapplo.Log.ILogger)">
            <summary>
                Takes care of registering the supplied logger for a certain source
            </summary>
            <param name="source">string for the source</param>
            <param name="logger">ILogger to register</param>
        </member>
        <member name="M:Dapplo.Log.LoggerMapper.LogTo(Dapplo.Log.LogSource,Dapplo.Log.ILogger)">
            <summary>
                Takes care of registering the supplied logger for a LogSource
            </summary>
            <param name="logSource">LogSource to register for</param>
            <param name="logger">ILogger to register</param>
        </member>
        <member name="M:Dapplo.Log.LoggerMapper.RegisterLoggerFor(System.Type,Dapplo.Log.ILogger)">
            <summary>
                Takes care of registering the supplied logger for a certain source
            </summary>
            <param name="type">Type for the source</param>
            <param name="logger">ILogger to register</param>
        </member>
        <member name="M:Dapplo.Log.LoggerMapper.RegisterLoggerFor``1(Dapplo.Log.ILogger)">
            <summary>
                Takes care of registering the supplied logger for a certain source
            </summary>
            <typeparam name="TType">Type for the source</typeparam>
            <param name="logger">ILogger to register</param>
        </member>
        <member name="M:Dapplo.Log.LoggerMapper.DeregisterLoggerFor(System.String,Dapplo.Log.ILogger)">
            <summary>
                Takes care of de-registering the supplied logger for a certain source
            </summary>
            <param name="source">string for the source</param>
            <param name="logger">ILogger to register</param>
        </member>
        <member name="M:Dapplo.Log.LoggerMapper.DeregisterLoggerFor(Dapplo.Log.LogSource,Dapplo.Log.ILogger)">
            <summary>
                Takes care of de-registering the supplied logger for a LogSource
            </summary>
            <param name="logSource">LogSource for the source</param>
            <param name="logger">ILogger to register</param>
        </member>
        <member name="M:Dapplo.Log.LoggerMapper.DeregisterLoggerFor(System.Type,Dapplo.Log.ILogger)">
            <summary>
                Takes care of de-registering the supplied logger for a certain source
            </summary>
            <param name="type">Type for the source</param>
            <param name="logger">ILogger to register</param>
        </member>
        <member name="M:Dapplo.Log.LoggerMapper.DeregisterLoggerFor``1(Dapplo.Log.ILogger)">
            <summary>
                Takes care of de-registering the supplied logger for a certain source
            </summary>
            <typeparam name="TType">Type for the source</typeparam>
            <param name="logger">ILogger to register</param>
        </member>
        <member name="T:Dapplo.Log.LogInfo">
            <summary>
                A simple wrapper for some information which is passed to the logger
            </summary>
        </member>
        <member name="M:Dapplo.Log.LogInfo.#ctor(Dapplo.Log.LogSource,System.String,System.Int32,Dapplo.Log.LogLevels)">
            <summary>
            Create a LogInfo
            </summary>
            <param name="source">LogSource</param>
            <param name="method">string with the name of the method</param>
            <param name="line">int with the line number</param>
            <param name="logLevel">LogLevels</param>
        </member>
        <member name="P:Dapplo.Log.LogInfo.LogLevel">
            <summary>
                The LogLevels enum for the log
            </summary>
        </member>
        <member name="P:Dapplo.Log.LogInfo.Line">
            <summary>
                The line of the log
            </summary>
        </member>
        <member name="P:Dapplo.Log.LogInfo.Method">
            <summary>
                Method in the Caller (class) from where the log statement came
            </summary>
        </member>
        <member name="P:Dapplo.Log.LogInfo.Source">
            <summary>
                Class from where the log statement came
            </summary>
        </member>
        <member name="P:Dapplo.Log.LogInfo.Timestamp">
            <summary>
                Timestamp for the log
            </summary>
        </member>
        <member name="M:Dapplo.Log.LogInfo.ToString">
            <summary>
                Create a string representation of the LogInfo, this by default has a timestamp, level, source, method and line.
                If the format needs to be changed, LogSettings.LogInfoFormatter can be assigned with your custom formatter Func
            </summary>
            <returns>string</returns>
        </member>
        <member name="T:Dapplo.Log.LogInfoExtensions">
            <summary>
                The extensions for making logging easy and flexible
            </summary>
        </member>
        <member name="M:Dapplo.Log.LogInfoExtensions.Write(Dapplo.Log.LogInfo,System.String,System.Object[])">
            <summary>
                This extension method passes the messageTemplate and parameters to the loggers Write method.
            </summary>
            <param name="logInfo">LogInfo</param>
            <param name="messageTemplate">string with formatting</param>
            <param name="logParameters">parameters for the formatting</param>
        </member>
        <member name="M:Dapplo.Log.LogInfoExtensions.WriteLine(Dapplo.Log.LogInfo,System.String,System.Object[])">
            <summary>
                This extension method passes the messageTemplate and parameters to the loggers WriteLine method.
            </summary>
            <param name="logInfo">LogInfo</param>
            <param name="messageTemplate">string with formatting</param>
            <param name="logParameters">parameters for the formatting</param>
        </member>
        <member name="M:Dapplo.Log.LogInfoExtensions.WriteLine(Dapplo.Log.LogInfo,System.Exception,System.String,System.Object[])">
            <summary>
                This extension method passes the Exception, messageTemplate and parameters to the loggers WriteLine method.
            </summary>
            <param name="logInfo">LogInfo</param>
            <param name="exception">Exception to log</param>
            <param name="messageTemplate">string with formatting</param>
            <param name="logParameters">parameters for the formatting</param>
        </member>
        <member name="T:Dapplo.Log.LogLevels">
            <summary>
                Log level for the log, default(LogLevel) gives None which doesn't log anything
                LogLevels.None is actually checked internally, before IsLogLevelEnabled.
            </summary>
        </member>
        <member name="F:Dapplo.Log.LogLevels.None">
            <summary>
                Default, no logging
            </summary>
        </member>
        <member name="F:Dapplo.Log.LogLevels.Verbose">
            <summary>
                Verbose logs pretty much everything
            </summary>
        </member>
        <member name="F:Dapplo.Log.LogLevels.Debug">
            <summary>
                Debugging information, usually needed when troubleshooting
            </summary>
        </member>
        <member name="F:Dapplo.Log.LogLevels.Info">
            <summary>
                Informational logging
            </summary>
        </member>
        <member name="F:Dapplo.Log.LogLevels.Warn">
            <summary>
                Warn that something didn't went well
            </summary>
        </member>
        <member name="F:Dapplo.Log.LogLevels.Error">
            <summary>
                Used for logging real errors
            </summary>
        </member>
        <member name="F:Dapplo.Log.LogLevels.Fatal">
            <summary>
                Used for unrecoverable problems
            </summary>
        </member>
        <member name="T:Dapplo.Log.LogSettings">
            <summary>
                This is to specify global settings for the Log "framework"
            </summary>
        </member>
        <member name="P:Dapplo.Log.LogSettings.DefaultLoggerConfiguration">
            <summary>
                Default configuration, if any
            </summary>
        </member>
        <member name="P:Dapplo.Log.LogSettings.DefaultLogger">
            <summary>
                The default logger used, if the logger implements IDisposable it will be disposed if another logger is assigned
            </summary>
        </member>
        <member name="P:Dapplo.Log.LogSettings.DefaultLoggerArray">
            <summary>
                The constructed default logger array
            </summary>
        </member>
        <member name="P:Dapplo.Log.LogSettings.LoggerLookup">
            <summary>
                This function is responsible for finding the right loggers for a LogSource.
                Default implementation is from the LoggerMapper.
            </summary>
        </member>
        <member name="P:Dapplo.Log.LogSettings.ExceptionToStacktrace">
            <summary>
            This function converts an exception to a stacktrace string.
            This can come in handy if replaced with exception => exception.ToStringDemystified() from the NuGet package Ben.Demystifier
            </summary>
        </member>
        <member name="M:Dapplo.Log.LogSettings.RegisterDefaultLogger``1(Dapplo.Log.ILoggerConfiguration,System.Object[])">
            <summary>
                Takes care of registering the default logger with a logger, configuration and arguments
            </summary>
            <typeparam name="TLogger">Type for the logger</typeparam>
            <param name="loggerConfiguration">ILoggerConfiguration to configure the logger with</param>
            <param name="arguments">params</param>
            <returns>The newly created logger, this might be needed elsewhere</returns>
        </member>
        <member name="M:Dapplo.Log.LogSettings.RegisterDefaultLogger``1(Dapplo.Log.LogLevels,System.Object[])">
            <summary>
                Takes care of registering the default logger with a logger, LogLevel and arguments
            </summary>
            <typeparam name="TLogger">Type for the logger</typeparam>
            <param name="logLevel">LogLevels level</param>
            <param name="arguments">params</param>
            <returns>The newly created logger, this might be needed elsewhere</returns>
        </member>
        <member name="M:Dapplo.Log.LogSettings.ReplaceDefaultLogger(Dapplo.Log.ILogger)">
            <summary>
                Helper method to replace the default logger
            </summary>
            <param name="newLogger">ILogger</param>
        </member>
        <member name="T:Dapplo.Log.LogSource">
            <summary>
                This defines the "source" (origin) for log statements, it should have a Type or a identifier (string) so it's clear
                where the log
                entries come from. In general this should be instanciated with the default constructor without arguments, which
                takes care of initiating it.
                For normal .NET 4.5 this uses the Stack to find the type which called the constructor.
                For other platforms this uses the CallerFilePath, which supplies the source-file.
            </summary>
        </member>
        <member name="M:Dapplo.Log.LogSource.#ctor(System.Type)">
            <summary>
            Initializes a new instance of the <see cref="T:Dapplo.Log.LogSource"/> class. 
                The constructor for specifying the type manually
            </summary>
            <param name="callerType">Type for the LogSource, not null</param>
        </member>
        <member name="M:Dapplo.Log.LogSource.#ctor(System.Boolean)">
            <summary>
                Private constructor used internally, to differentiate from the empty constructor
            </summary>
        </member>
        <member name="M:Dapplo.Log.LogSource.#ctor(System.String)">
            <summary>
                The NON desktop default constructor which should be called without an argument.
                It will use the CallerFilePath attribute, to make sure the source file is passed as an argument.
            </summary>
        </member>
        <member name="M:Dapplo.Log.LogSource.ForCustomSource(System.String)">
            <summary>
                Factory method where you can specify the type manually
            </summary>
            <param name="source">A custom identifier for the LogSource</param>
            <returns>LogSource</returns>
        </member>
        <member name="M:Dapplo.Log.LogSource.SetSourceFromString(System.String)">
            <summary>
                Use a string to set the source information
            </summary>
            <param name="source">Source to se</param>
        </member>
        <member name="M:Dapplo.Log.LogSource.SetSourceFromType(System.Type)">
            <summary>
                Use a type to set the source information
            </summary>
            <param name="sourceType"></param>
        </member>
        <member name="P:Dapplo.Log.LogSource.SourceType">
            <summary>
                The Type where this LogSource was created
            </summary>
        </member>
        <member name="P:Dapplo.Log.LogSource.ShortSource">
            <summary>
                The Type, as string, where this LogSource was created
                Every part of the namespace is shortened to one letter.
                e.g. this class would return d.l.LogSource
            </summary>
        </member>
        <member name="P:Dapplo.Log.LogSource.Source">
            <summary>
                The Type, as string, where this LogSource was created
                e.g. this class would return Dapplo.Log.LogSource
            </summary>
        </member>
        <member name="T:Dapplo.Log.LogSourceExtensions">
            <summary>
                The extensions for making logging easy and flexible
            </summary>
        </member>
        <member name="M:Dapplo.Log.LogSourceExtensions.IsDebugEnabled(Dapplo.Log.LogSource)">
            <summary>
                Test if LogLevels.Debug is enabled
            </summary>
            <returns>true if enabled</returns>
        </member>
        <member name="M:Dapplo.Log.LogSourceExtensions.IsErrorEnabled(Dapplo.Log.LogSource)">
            <summary>
                Test if LogLevels.Error enabled
            </summary>
            <returns>true if enabled</returns>
        </member>
        <member name="M:Dapplo.Log.LogSourceExtensions.IsFatalEnabled(Dapplo.Log.LogSource)">
            <summary>
                Test if LogLevels.Fatal is enabled
            </summary>
            <returns>true if enabled</returns>
        </member>
        <member name="M:Dapplo.Log.LogSourceExtensions.IsInfoEnabled(Dapplo.Log.LogSource)">
            <summary>
                Test if LogLevels.Info is enabled
            </summary>
            <returns>true if enabled</returns>
        </member>
        <member name="M:Dapplo.Log.LogSourceExtensions.IsVerboseEnabled(Dapplo.Log.LogSource)">
            <summary>
                Test if LogLevels.Verbose is enabled
            </summary>
            <returns>true if enabled</returns>
        </member>
        <member name="M:Dapplo.Log.LogSourceExtensions.IsWarnEnabled(Dapplo.Log.LogSource)">
            <summary>
                Test if LogLevels.Warn is enabled
            </summary>
            <returns>true if enabled</returns>
        </member>
        <member name="M:Dapplo.Log.LogSourceExtensions.IsLogLevelEnabled(Dapplo.Log.LogSource,Dapplo.Log.LogLevels)">
            <summary>
                A simple test, to see if the log level is enabled.
                Note: logLevel == LogLevels.None should always return false
                logLevel == LogLevels.None is actually checked in the extension
            </summary>
            <param name="logSource">LogSource</param>
            <param name="logLevel">LogLevels</param>
            <returns>true if there are loggers which will log for the LogSource</returns>
        </member>
        <member name="M:Dapplo.Log.LogSourceExtensions.CreateLogInfo(Dapplo.Log.LogSource,Dapplo.Log.LogLevels,System.Int32,System.String)">
            <summary>
                This helper method will create LogInfo, if there is anything to log to
            </summary>
            <param name="logSource">LogContext is the context (source) from where the log entry came</param>
            <param name="logLevel">LogLevels enum for the LogInfo</param>
            <param name="lineNumber">Should be set by the compiler, int lineNumber of the log statement</param>
            <param name="methodName">Should be set by the compiler, is the calling method</param>
            <returns>LogInfo</returns>
        </member>
        <member name="M:Dapplo.Log.LogSourceExtensions.Debug(Dapplo.Log.LogSource,System.Int32,System.String)">
            <summary>
                This extension will create LogInfo, for LogLevels.Debug
            </summary>
            <param name="logSource">LogContext is the context (source) from where the log entry came</param>
            <param name="lineNumber">Should be set by the compiler, int lineNumber of the log statement</param>
            <param name="methodName">Should be set by the compiler, is the calling method</param>
            <returns>LogInfo</returns>
        </member>
        <member name="M:Dapplo.Log.LogSourceExtensions.Error(Dapplo.Log.LogSource,System.Int32,System.String)">
            <summary>
                This extension will create LogInfo, for LogLevels.Error
            </summary>
            <param name="logSource">LogContext is the context (source) from where the log entry came</param>
            <param name="lineNumber">Should be set by the compiler, int lineNumber of the log statement</param>
            <param name="methodName">Should be set by the compiler, is the calling method</param>
            <returns>LogInfo</returns>
        </member>
        <member name="M:Dapplo.Log.LogSourceExtensions.Fatal(Dapplo.Log.LogSource,System.Int32,System.String)">
            <summary>
                This extension will create LogInfo, for LogLevels.Fatal
            </summary>
            <param name="logSource">LogContext is the context (source) from where the log entry came</param>
            <param name="lineNumber">Should be set by the compiler, int lineNumber of the log statement</param>
            <param name="methodName">Should be set by the compiler, is the calling method</param>
            <returns>LogInfo</returns>
        </member>
        <member name="M:Dapplo.Log.LogSourceExtensions.Info(Dapplo.Log.LogSource,System.Int32,System.String)">
            <summary>
                This extension will create LogInfo, for LogLevels.Info
            </summary>
            <param name="logSource">LogContext is the context (source) from where the log entry came</param>
            <param name="lineNumber">Should be set by the compiler, int lineNumber of the log statement</param>
            <param name="methodName">Should be set by the compiler, is the calling method</param>
            <returns>LogInfo</returns>
        </member>
        <member name="M:Dapplo.Log.LogSourceExtensions.Verbose(Dapplo.Log.LogSource,System.Int32,System.String)">
            <summary>
                This extension will create LogInfo, for LogLevels.Verbose
            </summary>
            <param name="logSource">LogContext is the context (source) from where the log entry came</param>
            <param name="lineNumber">Should be set by the compiler, int lineNumber of the log statement</param>
            <param name="methodName">Should be set by the compiler, is the calling method</param>
            <returns>LogInfo</returns>
        </member>
        <member name="M:Dapplo.Log.LogSourceExtensions.Warn(Dapplo.Log.LogSource,System.Int32,System.String)">
            <summary>
                This extension will create LogInfo, for LogLevels.Warn
            </summary>
            <param name="logSource">LogContext is the context (source) from where the log entry came</param>
            <param name="lineNumber">Should be set by the compiler, int lineNumber of the log statement</param>
            <param name="methodName">Should be set by the compiler, is the calling method</param>
            <returns>LogInfo</returns>
        </member>
        <member name="T:Dapplo.Log.NullLogger">
            <summary>
                An null logger, doesn't log anything!
                This can be used to shut-up certain LogSources
            </summary>
        </member>
        <member name="M:Dapplo.Log.NullLogger.IsLogLevelEnabled(Dapplo.Log.LogLevels,Dapplo.Log.LogSource)">
            <summary>
                Always returns false, there is no logging
            </summary>
            <param name="logLevel">LogLevel</param>
            <param name="logSource">optional LogSource</param>
            <returns>false</returns>
        </member>
    </members>
</doc>
