can you send a pull request?

K

On 01/12/2011 8:33 PM, Marwijn wrote:
Hello All,

I've tried to use NLog with silverlight. This works with some minor
(IMHO) changes (see below) to allow creating a NLogFactory with a
Configuration instead of config file (as reading file is not supported
in silverlight). If this change is not to big, risky or plain wrong,
could it be incorperated in v3 ?

Kind regards,

Marwijn.




In NLogFactory (probably same/similair change should be made in the
extended nlog factory):

Added additional constructor:

public MyNLogFactory(LoggingConfiguration configuration)
         {
             LogManager.Configuration = configuration;
         }


in LoggingFacility:

Added

private ILoggerFactory loggerFactory;

public MyLoggingFacility
LogUsing<TCustomLoggerFactory>(TCustomLoggerFactory loggerFactory)
where TCustomLoggerFactory : ILoggerFactory
         {
             loggerImplementation = LoggerImplementation.Custom;
             this.loggerFactory = loggerFactory;
             return this;
         }

Changed

  protected override void Init()
         {
             SetUpTypeConverter();
             if (loggerFactory == null) // Added null check to see the
user has provided it's own LoggerFactory
             {
                 loggerFactory =
ReadConfigurationAndCreateLoggerFactory();
             }
             RegisterLoggerFactory(loggerFactory);
             RegisterDefaultILogger(loggerFactory);
             RegisterSubResolver(loggerFactory);
         }




Usage example:


LoggingConfiguration config = new LoggingConfiguration();
var debugTarget = new NLog.Targets.
config.AddTarget("console", debugTarget);
config.LoggingRules.Add(new LoggingRule("*", NLog.LogLevel.Info,
debugTarget));

var logFactory = new NLogFactory(config);
var logger = logFactory.Create("Bootstrapper");

_container.AddFacility(new LoggingFacility().LogUsing(logFactory));


--
You received this message because you are subscribed to the Google Groups "Castle 
Project Development List" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/castle-project-devel?hl=en.

Reply via email to