using System; using System.Collections.Generic; using System.Linq; using System.Text; using KPlan.Util; namespace KPlan.Logger { public class TDefaultLogger { private static TDefaultLogger _instance = null; private TLogManager theLogManager; private TLogAgent logger; public TLogAgent LogAgent { get { return logger; } } public static TDefaultLogger CreateInstance() { if (_instance == null) TDefaultLogger._instance = new TDefaultLogger(); return _instance; } public static void UpdateInstance() { TDefaultLogger._instance = null; TDefaultLogger._instance = new TDefaultLogger(); } public TLogManager Get() { return theLogManager; } public TLogAgent GetLogagent(string tag) { return theLogManager.GetLogger(tag); } public TLogAgent GetLogagent(object tag) { return theLogManager.GetLogger(tag); } public TLogAgent GetLogagent(Type tag) { return theLogManager.GetLogger(tag); } private TDefaultLogger() { theLogManager = TLogManager.Create(); theLogManager.State = TLogManager.StateType.AlwaysON; logger = theLogManager.GetLogger("KLogger"); } } }