Ejemplo n.º 1
0
 public static ILogger GetMultiTargetLogger(ILogger logger)
 {
     if (multiTargetLogger == null)
     {
         MultiTargetLogger multiLogger = new MultiTargetLogger();
         multiLogger.AddLogger(logger);
         multiLogger.StartLoggingThread();
         multiTargetLogger = multiLogger;
     }
     return(multiTargetLogger);
 }
Ejemplo n.º 2
0
 public static ILogger GetMultiTargetLogger(ILogger logger)
 {
     if (multiTargetLogger == null)
     {
         MultiTargetLogger multiLogger = new MultiTargetLogger();
         TextFileLogger    fileLogger  = new TextFileLogger();
         fileLogger.Folder = new DirectoryInfo(ContentRoot);
         multiLogger.AddLogger(fileLogger);
         multiLogger.AddLogger(logger);
         multiLogger.StartLoggingThread();
         multiTargetLogger = multiLogger;
     }
     return(multiTargetLogger);
 }
Ejemplo n.º 3
0
        /// <summary>
        /// Generates a Dao Assembly for the underlying
        /// storable types if it has not yet been generated
        /// </summary>
        /// <returns></returns>
        public Assembly EnsureDaoAssemblyAndSchema(bool useExisting = true)
        {
            if (_daoAssembly == null)
            {
                _daoAssembly = GenerateDaoAssembly(useExisting);
            }

            Args.ThrowIfNull(Database, "Database");
            if (SchemaStatus == EnsureSchemaStatus.Invalid)
            {
                MultiTargetLogger logger = new MultiTargetLogger();
                Subscribers.Each(l => logger.AddLogger(l));
                SchemaStatus = Database.TryEnsureSchema(_daoAssembly.GetTypes().First(type => type.HasCustomAttributeOfType(out TableAttribute attr) && attr.ConnectionName.Equals(SchemaName)), logger);
            }

            return(_daoAssembly);
        }
Ejemplo n.º 4
0
        public void AddLogger(ILogger logger)
        {
            MultiTargetLogger mtl = new MultiTargetLogger();

            if (MainLogger != null)
            {
                if (MainLogger.GetType() == typeof(MultiTargetLogger))
                {
                    mtl = (MultiTargetLogger)MainLogger;
                }
                else
                {
                    mtl.AddLogger(MainLogger);
                }
            }

            mtl.AddLogger(logger);
            MainLogger = mtl;
        }