Ejemplo n.º 1
0
        public DefaultLogManager(IDependencyResolver dependencyResolver = null)
        {
            dependencyResolver = dependencyResolver ?? Locator.Current;

            loggerCache = new MemoizingMRUCache <Type, IFullLogger>((type, _) => {
                var ret = dependencyResolver.GetService <ILogger>();
                if (ret == null)
                {
                    throw new Exception("Couldn't find an ILogger. This should never happen, your dependency resolver is probably broken.");
                }

                return(new WrappingFullLogger(ret, type));
            }, 64);
        }
Ejemplo n.º 2
0
        public DefaultLogManager(IDependencyResolver dependencyResolver = null)
        {
            Func <Type, object, IFullLogger> calculationFunc = null;

            dependencyResolver = dependencyResolver ?? Locator.Current;
            if (calculationFunc == null)
            {
                calculationFunc = delegate(Type type, object _) {
                    ILogger service = dependencyResolver.GetService <ILogger>(null);
                    if (service == null)
                    {
                        throw new Exception("Couldn't find an ILogger. This should never happen, your dependency resolver is probably broken.");
                    }
                    return(new WrappingFullLogger(service, type));
                };
            }
            this.loggerCache = new MemoizingMRUCache <Type, IFullLogger>(calculationFunc, 0x40, null);
        }