/[AnywhereTS-MSSQL]/trunk/AnywhereTS.Logging/Logging.cs
ViewVC logotype

Diff of /trunk/AnywhereTS.Logging/Logging.cs

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 70 by william, Thu Jul 12 20:47:35 2012 UTC revision 106 by william, Sat Jul 14 06:23:20 2012 UTC
# Line 18  namespace AnywhereTS Line 18  namespace AnywhereTS
18          #region Log access          #region Log access
19          public static readonly ILog ATSAdminLog = LogManager.GetLogger("AnywhereTS.ATSAmdin");          public static readonly ILog ATSAdminLog = LogManager.GetLogger("AnywhereTS.ATSAmdin");
20          public static readonly ILog TSControlPanelLog = LogManager.GetLogger("AnywhereTS.TSControlPanel");          public static readonly ILog TSControlPanelLog = LogManager.GetLogger("AnywhereTS.TSControlPanel");
21            public static readonly ILog DatabaseLog = LogManager.GetLogger("AnywhereTS.DBSupport");
22          #endregion          #endregion
23    
24          #region log4net help          #region log4net help
# Line 29  namespace AnywhereTS Line 30  namespace AnywhereTS
30                  if (tc == null) { return new List<string>(); }                  if (tc == null) { return new List<string>(); }
31                  else { return GetMessagesFromThreadContextStack(tc); }                  else { return GetMessagesFromThreadContextStack(tc); }
32              }              }
33              catch { return new List<string>(); }                          catch { return new List<string>(); }
34          }          }
35          public static List<string> GetMessagesFromThreadContextStack(ThreadContextStack rawTCS)          public static List<string> GetMessagesFromThreadContextStack(ThreadContextStack rawTCS)
36          {          {
37              ThreadContextStack oldrawTCS = rawTCS;              Type t = typeof(ThreadContextStack);
38              List<string> stack_objects = new List<string>();              //ConstructorInfo ci = t.GetConstructor(BindingFlags.NonPublic | BindingFlags.Instance, null, new Type[0], null);
39                          //ThreadContextStack tmpRawTCS = null;
40                  ThreadContextStack context = (rawTCS as ThreadContextStack);              //tmpRawTCS = (ThreadContextStack)ci.Invoke(null);
41                  for (int i = 0; i < context.Count; i++)              List<string> stObjects = new List<string>();
42                  {              ThreadContextStack context = (rawTCS as ThreadContextStack);
43                      Type t = typeof(ThreadContextStack);              for (int i = 0; i < context.Count; i++)
44                      MethodInfo mi = t.GetMethod("GetFullMessage", BindingFlags.NonPublic | BindingFlags.Instance);              {
45                      string message = mi.Invoke(context, null).ToString();                  MethodInfo mi = t.GetMethod("GetFullMessage", BindingFlags.NonPublic | BindingFlags.Instance);
46                      stack_objects.Add(message);                  string message = mi.Invoke(context, null).ToString();
47                      context.Pop();                  stObjects.Add(message);
48                  }                  context.Pop();
49                  rawTCS = oldrawTCS;                          }
50              return stack_objects;              stObjects.Reverse();
51                rawTCS.Clear();
52                // push the popped Context message back onto the original ContextStack
53                foreach (string stObject in stObjects) { rawTCS.Push(stObject); }
54                return stObjects;
55          }          }
56          #endregion          #endregion
57      }      }

Legend:
Removed from v.70  
changed lines
  Added in v.106

  ViewVC Help
Powered by ViewVC 1.1.22