123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349 |
- #region Apache License
- #endregion
- using System;
- using System.Collections;
- #if NETCF_1_0
- using Stack = log4net.Util.ThreadContextStack.Stack;
- #endif
- namespace log4net
- {
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- public sealed class NDC
- {
- #region Private Instance Constructors
-
-
-
-
-
-
- private NDC()
- {
- }
- #endregion Private Instance Constructors
- #region Public Static Properties
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- public static int Depth
- {
- get { return ThreadContext.Stacks["NDC"].Count; }
- }
- #endregion Public Static Properties
- #region Public Static Methods
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- public static void Clear()
- {
- ThreadContext.Stacks["NDC"].Clear();
- }
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- public static Stack CloneStack()
- {
- return ThreadContext.Stacks["NDC"].InternalStack;
- }
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- public static void Inherit(Stack stack)
- {
- ThreadContext.Stacks["NDC"].InternalStack = stack;
- }
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- public static string Pop()
- {
- return ThreadContext.Stacks["NDC"].Pop();
- }
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- public static IDisposable Push(string message)
- {
- return ThreadContext.Stacks["NDC"].Push(message);
- }
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- public static IDisposable PushFormat(string messageFormat, params object[] args)
- {
- return Push(string.Format(messageFormat, args));
- }
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- public static void Remove()
- {
- }
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- public static void SetMaxDepth(int maxDepth)
- {
- if (maxDepth >= 0)
- {
- log4net.Util.ThreadContextStack stack = ThreadContext.Stacks["NDC"];
- if (maxDepth == 0)
- {
- stack.Clear();
- }
- else
- {
- while(stack.Count > maxDepth)
- {
- stack.Pop();
- }
- }
- }
- }
- #endregion Public Static Methods
- }
- }
|