Fixed incoming OAuth message type discernment.
[dotnetoauth.git] / lib / log4net.xml
blobfab7af26df6b732349df203cbfced4f49485d56c
1 <?xml version="1.0"?>\r
2 <doc>\r
3     <assembly>\r
4         <name>log4net</name>\r
5     </assembly>\r
6     <members>\r
7         <member name="T:log4net.Appender.AdoNetAppender">\r
8             <summary>\r
9             Appender that logs to a database.\r
10             </summary>\r
11             <remarks>\r
12             <para>\r
13             <see cref="T:log4net.Appender.AdoNetAppender"/> appends logging events to a table within a\r
14             database. The appender can be configured to specify the connection \r
15             string by setting the <see cref="P:log4net.Appender.AdoNetAppender.ConnectionString"/> property. \r
16             The connection type (provider) can be specified by setting the <see cref="P:log4net.Appender.AdoNetAppender.ConnectionType"/>\r
17             property. For more information on database connection strings for\r
18             your specific database see <a href="http://www.connectionstrings.com/">http://www.connectionstrings.com/</a>.\r
19             </para>\r
20             <para>\r
21             Records are written into the database either using a prepared\r
22             statement or a stored procedure. The <see cref="P:log4net.Appender.AdoNetAppender.CommandType"/> property\r
23             is set to <see cref="F:System.Data.CommandType.Text"/> (<c>System.Data.CommandType.Text</c>) to specify a prepared statement\r
24             or to <see cref="F:System.Data.CommandType.StoredProcedure"/> (<c>System.Data.CommandType.StoredProcedure</c>) to specify a stored\r
25             procedure.\r
26             </para>\r
27             <para>\r
28             The prepared statement text or the name of the stored procedure\r
29             must be set in the <see cref="P:log4net.Appender.AdoNetAppender.CommandText"/> property.\r
30             </para>\r
31             <para>\r
32             The prepared statement or stored procedure can take a number\r
33             of parameters. Parameters are added using the <see cref="M:log4net.Appender.AdoNetAppender.AddParameter(log4net.Appender.AdoNetAppenderParameter)"/>\r
34             method. This adds a single <see cref="T:log4net.Appender.AdoNetAppenderParameter"/> to the\r
35             ordered list of parameters. The <see cref="T:log4net.Appender.AdoNetAppenderParameter"/>\r
36             type may be subclassed if required to provide database specific\r
37             functionality. The <see cref="T:log4net.Appender.AdoNetAppenderParameter"/> specifies\r
38             the parameter name, database type, size, and how the value should\r
39             be generated using a <see cref="T:log4net.Layout.ILayout"/>.\r
40             </para>\r
41             </remarks>\r
42             <example>\r
43             An example of a SQL Server table that could be logged to:\r
44             <code lang="SQL">\r
45             CREATE TABLE [dbo].[Log] ( \r
46               [ID] [int] IDENTITY (1, 1) NOT NULL ,\r
47               [Date] [datetime] NOT NULL ,\r
48               [Thread] [varchar] (255) NOT NULL ,\r
49               [Level] [varchar] (20) NOT NULL ,\r
50               [Logger] [varchar] (255) NOT NULL ,\r
51               [Message] [varchar] (4000) NOT NULL \r
52             ) ON [PRIMARY]\r
53             </code>\r
54             </example>\r
55             <example>\r
56             An example configuration to log to the above table:\r
57             <code lang="XML" escaped="true">\r
58             <appender name="AdoNetAppender_SqlServer" type="log4net.Appender.AdoNetAppender">\r
59               <connectionType value="System.Data.SqlClient.SqlConnection, System.Data, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>\r
60               <connectionString value="data source=SQLSVR;initial catalog=test_log4net;integrated security=false;persist security info=True;User ID=sa;Password=sa"/>\r
61               <commandText value="INSERT INTO Log ([Date],[Thread],[Level],[Logger],[Message]) VALUES (@log_date, @thread, @log_level, @logger, @message)"/>\r
62               <parameter>\r
63                 <parameterName value="@log_date"/>\r
64                 <dbType value="DateTime"/>\r
65                 <layout type="log4net.Layout.PatternLayout" value="%date{yyyy'-'MM'-'dd HH':'mm':'ss'.'fff}"/>\r
66               </parameter>\r
67               <parameter>\r
68                 <parameterName value="@thread"/>\r
69                 <dbType value="String"/>\r
70                 <size value="255"/>\r
71                 <layout type="log4net.Layout.PatternLayout" value="%thread"/>\r
72               </parameter>\r
73               <parameter>\r
74                 <parameterName value="@log_level"/>\r
75                 <dbType value="String"/>\r
76                 <size value="50"/>\r
77                 <layout type="log4net.Layout.PatternLayout" value="%level"/>\r
78               </parameter>\r
79               <parameter>\r
80                 <parameterName value="@logger"/>\r
81                 <dbType value="String"/>\r
82                 <size value="255"/>\r
83                 <layout type="log4net.Layout.PatternLayout" value="%logger"/>\r
84               </parameter>\r
85               <parameter>\r
86                 <parameterName value="@message"/>\r
87                 <dbType value="String"/>\r
88                 <size value="4000"/>\r
89                 <layout type="log4net.Layout.PatternLayout" value="%message"/>\r
90               </parameter>\r
91             </appender>\r
92             </code>\r
93             </example>\r
94             <author>Julian Biddle</author>\r
95             <author>Nicko Cadell</author>\r
96             <author>Gert Driesen</author>\r
97             <author>Lance Nehring</author>\r
98         </member>\r
99         <member name="T:log4net.Appender.BufferingAppenderSkeleton">\r
100             <summary>\r
101             Abstract base class implementation of <see cref="T:log4net.Appender.IAppender"/> that \r
102             buffers events in a fixed size buffer.\r
103             </summary>\r
104             <remarks>\r
105             <para>\r
106             This base class should be used by appenders that need to buffer a \r
107             number of events before logging them. For example the <see cref="T:log4net.Appender.AdoNetAppender"/> \r
108             buffers events and then submits the entire contents of the buffer to \r
109             the underlying database in one go.\r
110             </para>\r
111             <para>\r
112             Subclasses should override the <see cref="M:log4net.Appender.BufferingAppenderSkeleton.SendBuffer(log4net.Core.LoggingEvent[])"/>\r
113             method to deliver the buffered events.\r
114             </para>\r
115             <para>The BufferingAppenderSkeleton maintains a fixed size cyclic \r
116             buffer of events. The size of the buffer is set using \r
117             the <see cref="P:log4net.Appender.BufferingAppenderSkeleton.BufferSize"/> property.\r
118             </para>\r
119             <para>A <see cref="T:log4net.Core.ITriggeringEventEvaluator"/> is used to inspect \r
120             each event as it arrives in the appender. If the <see cref="P:log4net.Appender.BufferingAppenderSkeleton.Evaluator"/> \r
121             triggers, then the current buffer is sent immediately \r
122             (see <see cref="M:log4net.Appender.BufferingAppenderSkeleton.SendBuffer(log4net.Core.LoggingEvent[])"/>). Otherwise the event \r
123             is stored in the buffer. For example, an evaluator can be used to \r
124             deliver the events immediately when an ERROR event arrives.\r
125             </para>\r
126             <para>\r
127             The buffering appender can be configured in a <see cref="P:log4net.Appender.BufferingAppenderSkeleton.Lossy"/> mode. \r
128             By default the appender is NOT lossy. When the buffer is full all \r
129             the buffered events are sent with <see cref="M:log4net.Appender.BufferingAppenderSkeleton.SendBuffer(log4net.Core.LoggingEvent[])"/>.\r
130             If the <see cref="P:log4net.Appender.BufferingAppenderSkeleton.Lossy"/> property is set to <c>true</c> then the \r
131             buffer will not be sent when it is full, and new events arriving \r
132             in the appender will overwrite the oldest event in the buffer. \r
133             In lossy mode the buffer will only be sent when the <see cref="P:log4net.Appender.BufferingAppenderSkeleton.Evaluator"/>\r
134             triggers. This can be useful behavior when you need to know about \r
135             ERROR events but not about events with a lower level, configure an \r
136             evaluator that will trigger when an ERROR event arrives, the whole \r
137             buffer will be sent which gives a history of events leading up to\r
138             the ERROR event.\r
139             </para>\r
140             </remarks>\r
141             <author>Nicko Cadell</author>\r
142             <author>Gert Driesen</author>\r
143         </member>\r
144         <member name="T:log4net.Appender.AppenderSkeleton">\r
145             <summary>\r
146             Abstract base class implementation of <see cref="T:log4net.Appender.IAppender"/>. \r
147             </summary>\r
148             <remarks>\r
149             <para>\r
150             This class provides the code for common functionality, such \r
151             as support for threshold filtering and support for general filters.\r
152             </para>\r
153             <para>\r
154             Appenders can also implement the <see cref="T:log4net.Core.IOptionHandler"/> interface. Therefore\r
155             they would require that the <see cref="M:log4net.Core.IOptionHandler.ActivateOptions"/> method\r
156             be called after the appenders properties have been configured.\r
157             </para>\r
158             </remarks>\r
159             <author>Nicko Cadell</author>\r
160             <author>Gert Driesen</author>\r
161         </member>\r
162         <member name="T:log4net.Appender.IAppender">\r
163             <summary>\r
164             Implement this interface for your own strategies for printing log statements.\r
165             </summary>\r
166             <remarks>\r
167             <para>\r
168             Implementors should consider extending the <see cref="T:log4net.Appender.AppenderSkeleton"/>\r
169             class which provides a default implementation of this interface.\r
170             </para>\r
171             <para>\r
172             Appenders can also implement the <see cref="T:log4net.Core.IOptionHandler"/> interface. Therefore\r
173             they would require that the <see cref="M:log4net.Core.IOptionHandler.ActivateOptions"/> method\r
174             be called after the appenders properties have been configured.\r
175             </para>\r
176             </remarks>\r
177             <author>Nicko Cadell</author>\r
178             <author>Gert Driesen</author>\r
179         </member>\r
180         <member name="M:log4net.Appender.IAppender.Close">\r
181             <summary>\r
182             Closes the appender and releases resources.\r
183             </summary>\r
184             <remarks>\r
185             <para>\r
186             Releases any resources allocated within the appender such as file handles, \r
187             network connections, etc.\r
188             </para>\r
189             <para>\r
190             It is a programming error to append to a closed appender.\r
191             </para>\r
192             </remarks>\r
193         </member>\r
194         <member name="M:log4net.Appender.IAppender.DoAppend(log4net.Core.LoggingEvent)">\r
195             <summary>\r
196             Log the logging event in Appender specific way.\r
197             </summary>\r
198             <param name="loggingEvent">The event to log</param>\r
199             <remarks>\r
200             <para>\r
201             This method is called to log a message into this appender.\r
202             </para>\r
203             </remarks>\r
204         </member>\r
205         <member name="P:log4net.Appender.IAppender.Name">\r
206             <summary>\r
207             Gets or sets the name of this appender.\r
208             </summary>\r
209             <value>The name of the appender.</value>\r
210             <remarks>\r
211             <para>The name uniquely identifies the appender.</para>\r
212             </remarks>\r
213         </member>\r
214         <member name="T:log4net.Appender.IBulkAppender">\r
215             <summary>\r
216             Interface for appenders that support bulk logging.\r
217             </summary>\r
218             <remarks>\r
219             <para>\r
220             This interface extends the <see cref="T:log4net.Appender.IAppender"/> interface to\r
221             support bulk logging of <see cref="T:log4net.Core.LoggingEvent"/> objects. Appenders\r
222             should only implement this interface if they can bulk log efficiently.\r
223             </para>\r
224             </remarks>\r
225             <author>Nicko Cadell</author>\r
226         </member>\r
227         <member name="M:log4net.Appender.IBulkAppender.DoAppend(log4net.Core.LoggingEvent[])">\r
228             <summary>\r
229             Log the array of logging events in Appender specific way.\r
230             </summary>\r
231             <param name="loggingEvents">The events to log</param>\r
232             <remarks>\r
233             <para>\r
234             This method is called to log an array of events into this appender.\r
235             </para>\r
236             </remarks>\r
237         </member>\r
238         <member name="T:log4net.Core.IOptionHandler">\r
239             <summary>\r
240             Interface used to delay activate a configured object.\r
241             </summary>\r
242             <remarks>\r
243             <para>\r
244             This allows an object to defer activation of its options until all\r
245             options have been set. This is required for components which have\r
246             related options that remain ambiguous until all are set.\r
247             </para>\r
248             <para>\r
249             If a component implements this interface then the <see cref="M:log4net.Core.IOptionHandler.ActivateOptions"/> method \r
250             must be called by the container after its all the configured properties have been set \r
251             and before the component can be used.\r
252             </para>\r
253             </remarks>\r
254             <author>Nicko Cadell</author>\r
255         </member>\r
256         <member name="M:log4net.Core.IOptionHandler.ActivateOptions">\r
257             <summary>\r
258             Activate the options that were previously set with calls to properties.\r
259             </summary>\r
260             <remarks>\r
261             <para>\r
262             This allows an object to defer activation of its options until all\r
263             options have been set. This is required for components which have\r
264             related options that remain ambiguous until all are set.\r
265             </para>\r
266             <para>\r
267             If a component implements this interface then this method must be called\r
268             after its properties have been set before the component can be used.\r
269             </para>\r
270             </remarks>\r
271         </member>\r
272         <member name="F:log4net.Appender.AppenderSkeleton.c_renderBufferSize">\r
273             <summary>\r
274             Initial buffer size\r
275             </summary>\r
276         </member>\r
277         <member name="F:log4net.Appender.AppenderSkeleton.c_renderBufferMaxCapacity">\r
278             <summary>\r
279             Maximum buffer size before it is recycled\r
280             </summary>\r
281         </member>\r
282         <member name="M:log4net.Appender.AppenderSkeleton.#ctor">\r
283             <summary>\r
284             Default constructor\r
285             </summary>\r
286             <remarks>\r
287             <para>Empty default constructor</para>\r
288             </remarks>\r
289         </member>\r
290         <member name="M:log4net.Appender.AppenderSkeleton.Finalize">\r
291             <summary>\r
292             Finalizes this appender by calling the implementation's \r
293             <see cref="M:log4net.Appender.AppenderSkeleton.Close"/> method.\r
294             </summary>\r
295             <remarks>\r
296             <para>\r
297             If this appender has not been closed then the <c>Finalize</c> method\r
298             will call <see cref="M:log4net.Appender.AppenderSkeleton.Close"/>.\r
299             </para>\r
300             </remarks>\r
301         </member>\r
302         <member name="M:log4net.Appender.AppenderSkeleton.ActivateOptions">\r
303             <summary>\r
304             Initialize the appender based on the options set\r
305             </summary>\r
306             <remarks>\r
307             <para>\r
308             This is part of the <see cref="T:log4net.Core.IOptionHandler"/> delayed object\r
309             activation scheme. The <see cref="M:log4net.Appender.AppenderSkeleton.ActivateOptions"/> method must \r
310             be called on this object after the configuration properties have\r
311             been set. Until <see cref="M:log4net.Appender.AppenderSkeleton.ActivateOptions"/> is called this\r
312             object is in an undefined state and must not be used. \r
313             </para>\r
314             <para>\r
315             If any of the configuration properties are modified then \r
316             <see cref="M:log4net.Appender.AppenderSkeleton.ActivateOptions"/> must be called again.\r
317             </para>\r
318             </remarks>\r
319         </member>\r
320         <member name="M:log4net.Appender.AppenderSkeleton.Close">\r
321             <summary>\r
322             Closes the appender and release resources.\r
323             </summary>\r
324             <remarks>\r
325             <para>\r
326             Release any resources allocated within the appender such as file handles, \r
327             network connections, etc.\r
328             </para>\r
329             <para>\r
330             It is a programming error to append to a closed appender.\r
331             </para>\r
332             <para>\r
333             This method cannot be overridden by subclasses. This method \r
334             delegates the closing of the appender to the <see cref="M:log4net.Appender.AppenderSkeleton.OnClose"/>\r
335             method which must be overridden in the subclass.\r
336             </para>\r
337             </remarks>\r
338         </member>\r
339         <member name="M:log4net.Appender.AppenderSkeleton.DoAppend(log4net.Core.LoggingEvent)">\r
340             <summary>\r
341             Performs threshold checks and invokes filters before \r
342             delegating actual logging to the subclasses specific \r
343             <see cref="M:log4net.Appender.AppenderSkeleton.Append(log4net.Core.LoggingEvent)"/> method.\r
344             </summary>\r
345             <param name="loggingEvent">The event to log.</param>\r
346             <remarks>\r
347             <para>\r
348             This method cannot be overridden by derived classes. A\r
349             derived class should override the <see cref="M:log4net.Appender.AppenderSkeleton.Append(log4net.Core.LoggingEvent)"/> method\r
350             which is called by this method.\r
351             </para>\r
352             <para>\r
353             The implementation of this method is as follows:\r
354             </para>\r
355             <para>\r
356             <list type="bullet">\r
357                 <item>\r
358                         <description>\r
359                         Checks that the severity of the <paramref name="loggingEvent"/>\r
360                         is greater than or equal to the <see cref="P:log4net.Appender.AppenderSkeleton.Threshold"/> of this\r
361                         appender.</description>\r
362                 </item>\r
363                 <item>\r
364                         <description>\r
365                         Checks that the <see cref="T:log4net.Filter.IFilter"/> chain accepts the \r
366                         <paramref name="loggingEvent"/>.\r
367                         </description>\r
368                 </item>\r
369                 <item>\r
370                         <description>\r
371                         Calls <see cref="M:log4net.Appender.AppenderSkeleton.PreAppendCheck"/> and checks that \r
372                         it returns <c>true</c>.</description>\r
373                 </item>\r
374             </list>\r
375             </para>\r
376             <para>\r
377             If all of the above steps succeed then the <paramref name="loggingEvent"/>\r
378             will be passed to the abstract <see cref="M:log4net.Appender.AppenderSkeleton.Append(log4net.Core.LoggingEvent)"/> method.\r
379             </para>\r
380             </remarks>\r
381         </member>\r
382         <member name="M:log4net.Appender.AppenderSkeleton.DoAppend(log4net.Core.LoggingEvent[])">\r
383             <summary>\r
384             Performs threshold checks and invokes filters before \r
385             delegating actual logging to the subclasses specific \r
386             <see cref="M:log4net.Appender.AppenderSkeleton.Append(log4net.Core.LoggingEvent[])"/> method.\r
387             </summary>\r
388             <param name="loggingEvents">The array of events to log.</param>\r
389             <remarks>\r
390             <para>\r
391             This method cannot be overridden by derived classes. A\r
392             derived class should override the <see cref="M:log4net.Appender.AppenderSkeleton.Append(log4net.Core.LoggingEvent[])"/> method\r
393             which is called by this method.\r
394             </para>\r
395             <para>\r
396             The implementation of this method is as follows:\r
397             </para>\r
398             <para>\r
399             <list type="bullet">\r
400                 <item>\r
401                         <description>\r
402                         Checks that the severity of the <paramref name="loggingEvent"/>\r
403                         is greater than or equal to the <see cref="P:log4net.Appender.AppenderSkeleton.Threshold"/> of this\r
404                         appender.</description>\r
405                 </item>\r
406                 <item>\r
407                         <description>\r
408                         Checks that the <see cref="T:log4net.Filter.IFilter"/> chain accepts the \r
409                         <paramref name="loggingEvent"/>.\r
410                         </description>\r
411                 </item>\r
412                 <item>\r
413                         <description>\r
414                         Calls <see cref="M:log4net.Appender.AppenderSkeleton.PreAppendCheck"/> and checks that \r
415                         it returns <c>true</c>.</description>\r
416                 </item>\r
417             </list>\r
418             </para>\r
419             <para>\r
420             If all of the above steps succeed then the <paramref name="loggingEvents"/>\r
421             will be passed to the <see cref="M:log4net.Appender.AppenderSkeleton.Append(log4net.Core.LoggingEvent[])"/> method.\r
422             </para>\r
423             </remarks>\r
424         </member>\r
425         <member name="M:log4net.Appender.AppenderSkeleton.FilterEvent(log4net.Core.LoggingEvent)">\r
426             <summary>\r
427             Test if the logging event should we output by this appender\r
428             </summary>\r
429             <param name="loggingEvent">the event to test</param>\r
430             <returns><c>true</c> if the event should be output, <c>false</c> if the event should be ignored</returns>\r
431             <remarks>\r
432             <para>\r
433             This method checks the logging event against the threshold level set\r
434             on this appender and also against the filters specified on this\r
435             appender.\r
436             </para>\r
437             <para>\r
438             The implementation of this method is as follows:\r
439             </para>\r
440             <para>\r
441             <list type="bullet">\r
442                 <item>\r
443                         <description>\r
444                         Checks that the severity of the <paramref name="loggingEvent"/>\r
445                         is greater than or equal to the <see cref="P:log4net.Appender.AppenderSkeleton.Threshold"/> of this\r
446                         appender.</description>\r
447                 </item>\r
448                 <item>\r
449                         <description>\r
450                         Checks that the <see cref="T:log4net.Filter.IFilter"/> chain accepts the \r
451                         <paramref name="loggingEvent"/>.\r
452                         </description>\r
453                 </item>\r
454             </list>\r
455             </para>\r
456             </remarks>\r
457         </member>\r
458         <member name="M:log4net.Appender.AppenderSkeleton.AddFilter(log4net.Filter.IFilter)">\r
459             <summary>\r
460             Adds a filter to the end of the filter chain.\r
461             </summary>\r
462             <param name="filter">the filter to add to this appender</param>\r
463             <remarks>\r
464             <para>\r
465             The Filters are organized in a linked list.\r
466             </para>\r
467             <para>\r
468             Setting this property causes the new filter to be pushed onto the \r
469             back of the filter chain.\r
470             </para>\r
471             </remarks>\r
472         </member>\r
473         <member name="M:log4net.Appender.AppenderSkeleton.ClearFilters">\r
474             <summary>\r
475             Clears the filter list for this appender.\r
476             </summary>\r
477             <remarks>\r
478             <para>\r
479             Clears the filter list for this appender.\r
480             </para>\r
481             </remarks>\r
482         </member>\r
483         <member name="M:log4net.Appender.AppenderSkeleton.IsAsSevereAsThreshold(log4net.Core.Level)">\r
484             <summary>\r
485             Checks if the message level is below this appender's threshold.\r
486             </summary>\r
487             <param name="level"><see cref="T:log4net.Core.Level"/> to test against.</param>\r
488             <remarks>\r
489             <para>\r
490             If there is no threshold set, then the return value is always <c>true</c>.\r
491             </para>\r
492             </remarks>\r
493             <returns>\r
494             <c>true</c> if the <paramref name="level"/> meets the <see cref="P:log4net.Appender.AppenderSkeleton.Threshold"/> \r
495             requirements of this appender.\r
496             </returns>\r
497         </member>\r
498         <member name="M:log4net.Appender.AppenderSkeleton.OnClose">\r
499             <summary>\r
500             Is called when the appender is closed. Derived classes should override \r
501             this method if resources need to be released.\r
502             </summary>\r
503             <remarks>\r
504             <para>\r
505             Releases any resources allocated within the appender such as file handles, \r
506             network connections, etc.\r
507             </para>\r
508             <para>\r
509             It is a programming error to append to a closed appender.\r
510             </para>\r
511             </remarks>\r
512         </member>\r
513         <member name="M:log4net.Appender.AppenderSkeleton.Append(log4net.Core.LoggingEvent)">\r
514             <summary>\r
515             Subclasses of <see cref="T:log4net.Appender.AppenderSkeleton"/> should implement this method \r
516             to perform actual logging.\r
517             </summary>\r
518             <param name="loggingEvent">The event to append.</param>\r
519             <remarks>\r
520             <para>\r
521             A subclass must implement this method to perform\r
522             logging of the <paramref name="loggingEvent"/>.\r
523             </para>\r
524             <para>This method will be called by <see cref="M:log4net.Appender.AppenderSkeleton.DoAppend(log4net.Core.LoggingEvent)"/>\r
525             if all the conditions listed for that method are met.\r
526             </para>\r
527             <para>\r
528             To restrict the logging of events in the appender\r
529             override the <see cref="M:log4net.Appender.AppenderSkeleton.PreAppendCheck"/> method.\r
530             </para>\r
531             </remarks>\r
532         </member>\r
533         <member name="M:log4net.Appender.AppenderSkeleton.Append(log4net.Core.LoggingEvent[])">\r
534             <summary>\r
535             Append a bulk array of logging events.\r
536             </summary>\r
537             <param name="loggingEvents">the array of logging events</param>\r
538             <remarks>\r
539             <para>\r
540             This base class implementation calls the <see cref="M:log4net.Appender.AppenderSkeleton.Append(log4net.Core.LoggingEvent)"/>\r
541             method for each element in the bulk array.\r
542             </para>\r
543             <para>\r
544             A sub class that can better process a bulk array of events should\r
545             override this method in addition to <see cref="M:log4net.Appender.AppenderSkeleton.Append(log4net.Core.LoggingEvent)"/>.\r
546             </para>\r
547             </remarks>\r
548         </member>\r
549         <member name="M:log4net.Appender.AppenderSkeleton.PreAppendCheck">\r
550             <summary>\r
551             Called before <see cref="M:log4net.Appender.AppenderSkeleton.Append(log4net.Core.LoggingEvent)"/> as a precondition.\r
552             </summary>\r
553             <remarks>\r
554             <para>\r
555             This method is called by <see cref="M:log4net.Appender.AppenderSkeleton.DoAppend(log4net.Core.LoggingEvent)"/>\r
556             before the call to the abstract <see cref="M:log4net.Appender.AppenderSkeleton.Append(log4net.Core.LoggingEvent)"/> method.\r
557             </para>\r
558             <para>\r
559             This method can be overridden in a subclass to extend the checks \r
560             made before the event is passed to the <see cref="M:log4net.Appender.AppenderSkeleton.Append(log4net.Core.LoggingEvent)"/> method.\r
561             </para>\r
562             <para>\r
563             A subclass should ensure that they delegate this call to\r
564             this base class if it is overridden.\r
565             </para>\r
566             </remarks>\r
567             <returns><c>true</c> if the call to <see cref="M:log4net.Appender.AppenderSkeleton.Append(log4net.Core.LoggingEvent)"/> should proceed.</returns>\r
568         </member>\r
569         <member name="M:log4net.Appender.AppenderSkeleton.RenderLoggingEvent(log4net.Core.LoggingEvent)">\r
570             <summary>\r
571             Renders the <see cref="T:log4net.Core.LoggingEvent"/> to a string.\r
572             </summary>\r
573             <param name="loggingEvent">The event to render.</param>\r
574             <returns>The event rendered as a string.</returns>\r
575             <remarks>\r
576             <para>\r
577             Helper method to render a <see cref="T:log4net.Core.LoggingEvent"/> to \r
578             a string. This appender must have a <see cref="P:log4net.Appender.AppenderSkeleton.Layout"/>\r
579             set to render the <paramref name="loggingEvent"/> to \r
580             a string.\r
581             </para>\r
582             <para>If there is exception data in the logging event and \r
583             the layout does not process the exception, this method \r
584             will append the exception text to the rendered string.\r
585             </para>\r
586             <para>\r
587             Where possible use the alternative version of this method\r
588             <see cref="M:log4net.Appender.AppenderSkeleton.RenderLoggingEvent(System.IO.TextWriter,log4net.Core.LoggingEvent)"/>.\r
589             That method streams the rendering onto an existing Writer\r
590             which can give better performance if the caller already has\r
591             a <see cref="T:System.IO.TextWriter"/> open and ready for writing.\r
592             </para>\r
593             </remarks>\r
594         </member>\r
595         <member name="M:log4net.Appender.AppenderSkeleton.RenderLoggingEvent(System.IO.TextWriter,log4net.Core.LoggingEvent)">\r
596             <summary>\r
597             Renders the <see cref="T:log4net.Core.LoggingEvent"/> to a string.\r
598             </summary>\r
599             <param name="loggingEvent">The event to render.</param>\r
600             <param name="writer">The TextWriter to write the formatted event to</param>\r
601             <remarks>\r
602             <para>\r
603             Helper method to render a <see cref="T:log4net.Core.LoggingEvent"/> to \r
604             a string. This appender must have a <see cref="P:log4net.Appender.AppenderSkeleton.Layout"/>\r
605             set to render the <paramref name="loggingEvent"/> to \r
606             a string.\r
607             </para>\r
608             <para>If there is exception data in the logging event and \r
609             the layout does not process the exception, this method \r
610             will append the exception text to the rendered string.\r
611             </para>\r
612             <para>\r
613             Use this method in preference to <see cref="M:log4net.Appender.AppenderSkeleton.RenderLoggingEvent(log4net.Core.LoggingEvent)"/>\r
614             where possible. If, however, the caller needs to render the event\r
615             to a string then <see cref="M:log4net.Appender.AppenderSkeleton.RenderLoggingEvent(log4net.Core.LoggingEvent)"/> does\r
616             provide an efficient mechanism for doing so.\r
617             </para>\r
618             </remarks>\r
619         </member>\r
620         <member name="F:log4net.Appender.AppenderSkeleton.m_layout">\r
621             <summary>\r
622             The layout of this appender.\r
623             </summary>\r
624             <remarks>\r
625             See <see cref="P:log4net.Appender.AppenderSkeleton.Layout"/> for more information.\r
626             </remarks>\r
627         </member>\r
628         <member name="F:log4net.Appender.AppenderSkeleton.m_name">\r
629             <summary>\r
630             The name of this appender.\r
631             </summary>\r
632             <remarks>\r
633             See <see cref="P:log4net.Appender.AppenderSkeleton.Name"/> for more information.\r
634             </remarks>\r
635         </member>\r
636         <member name="F:log4net.Appender.AppenderSkeleton.m_threshold">\r
637             <summary>\r
638             The level threshold of this appender.\r
639             </summary>\r
640             <remarks>\r
641             <para>\r
642             There is no level threshold filtering by default.\r
643             </para>\r
644             <para>\r
645             See <see cref="P:log4net.Appender.AppenderSkeleton.Threshold"/> for more information.\r
646             </para>\r
647             </remarks>\r
648         </member>\r
649         <member name="F:log4net.Appender.AppenderSkeleton.m_errorHandler">\r
650             <summary>\r
651             It is assumed and enforced that errorHandler is never null.\r
652             </summary>\r
653             <remarks>\r
654             <para>\r
655             It is assumed and enforced that errorHandler is never null.\r
656             </para>\r
657             <para>\r
658             See <see cref="P:log4net.Appender.AppenderSkeleton.ErrorHandler"/> for more information.\r
659             </para>\r
660             </remarks>\r
661         </member>\r
662         <member name="F:log4net.Appender.AppenderSkeleton.m_headFilter">\r
663             <summary>\r
664             The first filter in the filter chain.\r
665             </summary>\r
666             <remarks>\r
667             <para>\r
668             Set to <c>null</c> initially.\r
669             </para>\r
670             <para>\r
671             See <see cref="T:log4net.Filter.IFilter"/> for more information.\r
672             </para>\r
673             </remarks>\r
674         </member>\r
675         <member name="F:log4net.Appender.AppenderSkeleton.m_tailFilter">\r
676             <summary>\r
677             The last filter in the filter chain.\r
678             </summary>\r
679             <remarks>\r
680             See <see cref="T:log4net.Filter.IFilter"/> for more information.\r
681             </remarks>\r
682         </member>\r
683         <member name="F:log4net.Appender.AppenderSkeleton.m_closed">\r
684             <summary>\r
685             Flag indicating if this appender is closed.\r
686             </summary>\r
687             <remarks>\r
688             See <see cref="M:log4net.Appender.AppenderSkeleton.Close"/> for more information.\r
689             </remarks>\r
690         </member>\r
691         <member name="F:log4net.Appender.AppenderSkeleton.m_recursiveGuard">\r
692             <summary>\r
693             The guard prevents an appender from repeatedly calling its own DoAppend method\r
694             </summary>\r
695         </member>\r
696         <member name="F:log4net.Appender.AppenderSkeleton.m_renderWriter">\r
697             <summary>\r
698             StringWriter used to render events\r
699             </summary>\r
700         </member>\r
701         <member name="P:log4net.Appender.AppenderSkeleton.Threshold">\r
702             <summary>\r
703             Gets or sets the threshold <see cref="T:log4net.Core.Level"/> of this appender.\r
704             </summary>\r
705             <value>\r
706             The threshold <see cref="T:log4net.Core.Level"/> of the appender. \r
707             </value>\r
708             <remarks>\r
709             <para>\r
710             All log events with lower level than the threshold level are ignored \r
711             by the appender.\r
712             </para>\r
713             <para>\r
714             In configuration files this option is specified by setting the\r
715             value of the <see cref="P:log4net.Appender.AppenderSkeleton.Threshold"/> option to a level\r
716             string, such as "DEBUG", "INFO" and so on.\r
717             </para>\r
718             </remarks>\r
719         </member>\r
720         <member name="P:log4net.Appender.AppenderSkeleton.ErrorHandler">\r
721             <summary>\r
722             Gets or sets the <see cref="T:log4net.Core.IErrorHandler"/> for this appender.\r
723             </summary>\r
724             <value>The <see cref="T:log4net.Core.IErrorHandler"/> of the appender</value>\r
725             <remarks>\r
726             <para>\r
727             The <see cref="T:log4net.Appender.AppenderSkeleton"/> provides a default \r
728             implementation for the <see cref="P:log4net.Appender.AppenderSkeleton.ErrorHandler"/> property. \r
729             </para>\r
730             </remarks>\r
731         </member>\r
732         <member name="P:log4net.Appender.AppenderSkeleton.FilterHead">\r
733             <summary>\r
734             The filter chain.\r
735             </summary>\r
736             <value>The head of the filter chain filter chain.</value>\r
737             <remarks>\r
738             <para>\r
739             Returns the head Filter. The Filters are organized in a linked list\r
740             and so all Filters on this Appender are available through the result.\r
741             </para>\r
742             </remarks>\r
743         </member>\r
744         <member name="P:log4net.Appender.AppenderSkeleton.Layout">\r
745             <summary>\r
746             Gets or sets the <see cref="T:log4net.Layout.ILayout"/> for this appender.\r
747             </summary>\r
748             <value>The layout of the appender.</value>\r
749             <remarks>\r
750             <para>\r
751             See <see cref="P:log4net.Appender.AppenderSkeleton.RequiresLayout"/> for more information.\r
752             </para>\r
753             </remarks>\r
754             <seealso cref="P:log4net.Appender.AppenderSkeleton.RequiresLayout"/>\r
755         </member>\r
756         <member name="P:log4net.Appender.AppenderSkeleton.Name">\r
757             <summary>\r
758             Gets or sets the name of this appender.\r
759             </summary>\r
760             <value>The name of the appender.</value>\r
761             <remarks>\r
762             <para>\r
763             The name uniquely identifies the appender.\r
764             </para>\r
765             </remarks>\r
766         </member>\r
767         <member name="P:log4net.Appender.AppenderSkeleton.RequiresLayout">\r
768             <summary>\r
769             Tests if this appender requires a <see cref="P:log4net.Appender.AppenderSkeleton.Layout"/> to be set.\r
770             </summary>\r
771             <remarks>\r
772             <para>\r
773             In the rather exceptional case, where the appender \r
774             implementation admits a layout but can also work without it, \r
775             then the appender should return <c>true</c>.\r
776             </para>\r
777             <para>\r
778             This default implementation always returns <c>true</c>.\r
779             </para>\r
780             </remarks>\r
781             <returns>\r
782             <c>true</c> if the appender requires a layout object, otherwise <c>false</c>.\r
783             </returns>\r
784         </member>\r
785         <member name="F:log4net.Appender.BufferingAppenderSkeleton.DEFAULT_BUFFER_SIZE">\r
786             <summary>\r
787             The default buffer size.\r
788             </summary>\r
789             <remarks>\r
790             The default size of the cyclic buffer used to store events.\r
791             This is set to 512 by default.\r
792             </remarks>\r
793         </member>\r
794         <member name="M:log4net.Appender.BufferingAppenderSkeleton.#ctor">\r
795             <summary>\r
796             Initializes a new instance of the <see cref="T:log4net.Appender.BufferingAppenderSkeleton"/> class.\r
797             </summary>\r
798             <remarks>\r
799             <para>\r
800             Protected default constructor to allow subclassing.\r
801             </para>\r
802             </remarks>\r
803         </member>\r
804         <member name="M:log4net.Appender.BufferingAppenderSkeleton.#ctor(System.Boolean)">\r
805             <summary>\r
806             Initializes a new instance of the <see cref="T:log4net.Appender.BufferingAppenderSkeleton"/> class.\r
807             </summary>\r
808             <param name="eventMustBeFixed">the events passed through this appender must be\r
809             fixed by the time that they arrive in the derived class' <c>SendBuffer</c> method.</param>\r
810             <remarks>\r
811             <para>\r
812             Protected constructor to allow subclassing.\r
813             </para>\r
814             <para>\r
815             The <paramref name="eventMustBeFixed"/> should be set if the subclass\r
816             expects the events delivered to be fixed even if the \r
817             <see cref="P:log4net.Appender.BufferingAppenderSkeleton.BufferSize"/> is set to zero, i.e. when no buffering occurs.\r
818             </para>\r
819             </remarks>\r
820         </member>\r
821         <member name="M:log4net.Appender.BufferingAppenderSkeleton.Flush">\r
822             <summary>\r
823             Flush the currently buffered events\r
824             </summary>\r
825             <remarks>\r
826             <para>\r
827             Flushes any events that have been buffered.\r
828             </para>\r
829             <para>\r
830             If the appender is buffering in <see cref="P:log4net.Appender.BufferingAppenderSkeleton.Lossy"/> mode then the contents\r
831             of the buffer will NOT be flushed to the appender.\r
832             </para>\r
833             </remarks>\r
834         </member>\r
835         <member name="M:log4net.Appender.BufferingAppenderSkeleton.Flush(System.Boolean)">\r
836             <summary>\r
837             Flush the currently buffered events\r
838             </summary>\r
839             <param name="flushLossyBuffer">set to <c>true</c> to flush the buffer of lossy events</param>\r
840             <remarks>\r
841             <para>\r
842             Flushes events that have been buffered. If <paramref name="flushLossyBuffer"/> is\r
843             <c>false</c> then events will only be flushed if this buffer is non-lossy mode.\r
844             </para>\r
845             <para>\r
846             If the appender is buffering in <see cref="P:log4net.Appender.BufferingAppenderSkeleton.Lossy"/> mode then the contents\r
847             of the buffer will only be flushed if <paramref name="flushLossyBuffer"/> is <c>true</c>.\r
848             In this case the contents of the buffer will be tested against the \r
849             <see cref="P:log4net.Appender.BufferingAppenderSkeleton.LossyEvaluator"/> and if triggering will be output. All other buffered\r
850             events will be discarded.\r
851             </para>\r
852             <para>\r
853             If <paramref name="flushLossyBuffer"/> is <c>true</c> then the buffer will always\r
854             be emptied by calling this method.\r
855             </para>\r
856             </remarks>\r
857         </member>\r
858         <member name="M:log4net.Appender.BufferingAppenderSkeleton.ActivateOptions">\r
859             <summary>\r
860             Initialize the appender based on the options set\r
861             </summary>\r
862             <remarks>\r
863             <para>\r
864             This is part of the <see cref="T:log4net.Core.IOptionHandler"/> delayed object\r
865             activation scheme. The <see cref="M:log4net.Appender.BufferingAppenderSkeleton.ActivateOptions"/> method must \r
866             be called on this object after the configuration properties have\r
867             been set. Until <see cref="M:log4net.Appender.BufferingAppenderSkeleton.ActivateOptions"/> is called this\r
868             object is in an undefined state and must not be used. \r
869             </para>\r
870             <para>\r
871             If any of the configuration properties are modified then \r
872             <see cref="M:log4net.Appender.BufferingAppenderSkeleton.ActivateOptions"/> must be called again.\r
873             </para>\r
874             </remarks>\r
875         </member>\r
876         <member name="M:log4net.Appender.BufferingAppenderSkeleton.OnClose">\r
877             <summary>\r
878             Close this appender instance.\r
879             </summary>\r
880             <remarks>\r
881             <para>\r
882             Close this appender instance. If this appender is marked\r
883             as not <see cref="P:log4net.Appender.BufferingAppenderSkeleton.Lossy"/> then the remaining events in \r
884             the buffer must be sent when the appender is closed.\r
885             </para>\r
886             </remarks>\r
887         </member>\r
888         <member name="M:log4net.Appender.BufferingAppenderSkeleton.Append(log4net.Core.LoggingEvent)">\r
889             <summary>\r
890             This method is called by the <see cref="M:log4net.Appender.AppenderSkeleton.DoAppend(log4net.Core.LoggingEvent)"/> method. \r
891             </summary>\r
892             <param name="loggingEvent">the event to log</param>\r
893             <remarks>\r
894             <para>\r
895             Stores the <paramref name="loggingEvent"/> in the cyclic buffer.\r
896             </para>\r
897             <para>\r
898             The buffer will be sent (i.e. passed to the <see cref="M:log4net.Appender.BufferingAppenderSkeleton.SendBuffer(log4net.Core.LoggingEvent[])"/> \r
899             method) if one of the following conditions is met:\r
900             </para>\r
901             <list type="bullet">\r
902                 <item>\r
903                         <description>The cyclic buffer is full and this appender is\r
904                         marked as not lossy (see <see cref="P:log4net.Appender.BufferingAppenderSkeleton.Lossy"/>)</description>\r
905                 </item>\r
906                 <item>\r
907                         <description>An <see cref="P:log4net.Appender.BufferingAppenderSkeleton.Evaluator"/> is set and\r
908                         it is triggered for the <paramref name="loggingEvent"/>\r
909                         specified.</description>\r
910                 </item>\r
911             </list>\r
912             <para>\r
913             Before the event is stored in the buffer it is fixed\r
914             (see <see cref="M:log4net.Core.LoggingEvent.FixVolatileData(log4net.Core.FixFlags)"/>) to ensure that\r
915             any data referenced by the event will be valid when the buffer\r
916             is processed.\r
917             </para>\r
918             </remarks>\r
919         </member>\r
920         <member name="M:log4net.Appender.BufferingAppenderSkeleton.SendFromBuffer(log4net.Core.LoggingEvent,log4net.Util.CyclicBuffer)">\r
921             <summary>\r
922             Sends the contents of the buffer.\r
923             </summary>\r
924             <param name="firstLoggingEvent">The first logging event.</param>\r
925             <param name="buffer">The buffer containing the events that need to be send.</param>\r
926             <remarks>\r
927             <para>\r
928             The subclass must override <see cref="M:log4net.Appender.BufferingAppenderSkeleton.SendBuffer(log4net.Core.LoggingEvent[])"/>.\r
929             </para>\r
930             </remarks>\r
931         </member>\r
932         <member name="M:log4net.Appender.BufferingAppenderSkeleton.SendBuffer(log4net.Core.LoggingEvent[])">\r
933             <summary>\r
934             Sends the events.\r
935             </summary>\r
936             <param name="events">The events that need to be send.</param>\r
937             <remarks>\r
938             <para>\r
939             The subclass must override this method to process the buffered events.\r
940             </para>\r
941             </remarks>\r
942         </member>\r
943         <member name="F:log4net.Appender.BufferingAppenderSkeleton.m_bufferSize">\r
944             <summary>\r
945             The size of the cyclic buffer used to hold the logging events.\r
946             </summary>\r
947             <remarks>\r
948             Set to <see cref="F:log4net.Appender.BufferingAppenderSkeleton.DEFAULT_BUFFER_SIZE"/> by default.\r
949             </remarks>\r
950         </member>\r
951         <member name="F:log4net.Appender.BufferingAppenderSkeleton.m_cb">\r
952             <summary>\r
953             The cyclic buffer used to store the logging events.\r
954             </summary>\r
955         </member>\r
956         <member name="F:log4net.Appender.BufferingAppenderSkeleton.m_evaluator">\r
957             <summary>\r
958             The triggering event evaluator that causes the buffer to be sent immediately.\r
959             </summary>\r
960             <remarks>\r
961             The object that is used to determine if an event causes the entire\r
962             buffer to be sent immediately. This field can be <c>null</c>, which \r
963             indicates that event triggering is not to be done. The evaluator\r
964             can be set using the <see cref="P:log4net.Appender.BufferingAppenderSkeleton.Evaluator"/> property. If this appender\r
965             has the <see cref="F:log4net.Appender.BufferingAppenderSkeleton.m_lossy"/> (<see cref="P:log4net.Appender.BufferingAppenderSkeleton.Lossy"/> property) set to \r
966             <c>true</c> then an <see cref="P:log4net.Appender.BufferingAppenderSkeleton.Evaluator"/> must be set.\r
967             </remarks>\r
968         </member>\r
969         <member name="F:log4net.Appender.BufferingAppenderSkeleton.m_lossy">\r
970             <summary>\r
971             Indicates if the appender should overwrite events in the cyclic buffer \r
972             when it becomes full, or if the buffer should be flushed when the \r
973             buffer is full.\r
974             </summary>\r
975             <remarks>\r
976             If this field is set to <c>true</c> then an <see cref="P:log4net.Appender.BufferingAppenderSkeleton.Evaluator"/> must \r
977             be set.\r
978             </remarks>\r
979         </member>\r
980         <member name="F:log4net.Appender.BufferingAppenderSkeleton.m_lossyEvaluator">\r
981             <summary>\r
982             The triggering event evaluator filters discarded events.\r
983             </summary>\r
984             <remarks>\r
985             The object that is used to determine if an event that is discarded should\r
986             really be discarded or if it should be sent to the appenders. \r
987             This field can be <c>null</c>, which indicates that all discarded events will\r
988             be discarded. \r
989             </remarks>\r
990         </member>\r
991         <member name="F:log4net.Appender.BufferingAppenderSkeleton.m_fixFlags">\r
992             <summary>\r
993             Value indicating which fields in the event should be fixed\r
994             </summary>\r
995             <remarks>\r
996             By default all fields are fixed\r
997             </remarks>\r
998         </member>\r
999         <member name="F:log4net.Appender.BufferingAppenderSkeleton.m_eventMustBeFixed">\r
1000             <summary>\r
1001             The events delivered to the subclass must be fixed.\r
1002             </summary>\r
1003         </member>\r
1004         <member name="P:log4net.Appender.BufferingAppenderSkeleton.Lossy">\r
1005             <summary>\r
1006             Gets or sets a value that indicates whether the appender is lossy.\r
1007             </summary>\r
1008             <value>\r
1009             <c>true</c> if the appender is lossy, otherwise <c>false</c>. The default is <c>false</c>.\r
1010             </value>\r
1011             <remarks>\r
1012             <para>\r
1013             This appender uses a buffer to store logging events before \r
1014             delivering them. A triggering event causes the whole buffer\r
1015             to be send to the remote sink. If the buffer overruns before\r
1016             a triggering event then logging events could be lost. Set\r
1017             <see cref="P:log4net.Appender.BufferingAppenderSkeleton.Lossy"/> to <c>false</c> to prevent logging events \r
1018             from being lost.\r
1019             </para>\r
1020             <para>If <see cref="P:log4net.Appender.BufferingAppenderSkeleton.Lossy"/> is set to <c>true</c> then an\r
1021             <see cref="P:log4net.Appender.BufferingAppenderSkeleton.Evaluator"/> must be specified.</para>\r
1022             </remarks>\r
1023         </member>\r
1024         <member name="P:log4net.Appender.BufferingAppenderSkeleton.BufferSize">\r
1025             <summary>\r
1026             Gets or sets the size of the cyclic buffer used to hold the \r
1027             logging events.\r
1028             </summary>\r
1029             <value>\r
1030             The size of the cyclic buffer used to hold the logging events.\r
1031             </value>\r
1032             <remarks>\r
1033             <para>\r
1034             The <see cref="P:log4net.Appender.BufferingAppenderSkeleton.BufferSize"/> option takes a positive integer\r
1035             representing the maximum number of logging events to collect in \r
1036             a cyclic buffer. When the <see cref="P:log4net.Appender.BufferingAppenderSkeleton.BufferSize"/> is reached,\r
1037             oldest events are deleted as new events are added to the\r
1038             buffer. By default the size of the cyclic buffer is 512 events.\r
1039             </para>\r
1040             <para>\r
1041             If the <see cref="P:log4net.Appender.BufferingAppenderSkeleton.BufferSize"/> is set to a value less than\r
1042             or equal to 1 then no buffering will occur. The logging event\r
1043             will be delivered synchronously (depending on the <see cref="P:log4net.Appender.BufferingAppenderSkeleton.Lossy"/>\r
1044             and <see cref="P:log4net.Appender.BufferingAppenderSkeleton.Evaluator"/> properties). Otherwise the event will\r
1045             be buffered.\r
1046             </para>\r
1047             </remarks>\r
1048         </member>\r
1049         <member name="P:log4net.Appender.BufferingAppenderSkeleton.Evaluator">\r
1050             <summary>\r
1051             Gets or sets the <see cref="T:log4net.Core.ITriggeringEventEvaluator"/> that causes the \r
1052             buffer to be sent immediately.\r
1053             </summary>\r
1054             <value>\r
1055             The <see cref="T:log4net.Core.ITriggeringEventEvaluator"/> that causes the buffer to be\r
1056             sent immediately.\r
1057             </value>\r
1058             <remarks>\r
1059             <para>\r
1060             The evaluator will be called for each event that is appended to this \r
1061             appender. If the evaluator triggers then the current buffer will \r
1062             immediately be sent (see <see cref="M:log4net.Appender.BufferingAppenderSkeleton.SendBuffer(log4net.Core.LoggingEvent[])"/>).\r
1063             </para>\r
1064             <para>If <see cref="P:log4net.Appender.BufferingAppenderSkeleton.Lossy"/> is set to <c>true</c> then an\r
1065             <see cref="P:log4net.Appender.BufferingAppenderSkeleton.Evaluator"/> must be specified.</para>\r
1066             </remarks>\r
1067         </member>\r
1068         <member name="P:log4net.Appender.BufferingAppenderSkeleton.LossyEvaluator">\r
1069             <summary>\r
1070             Gets or sets the value of the <see cref="T:log4net.Core.ITriggeringEventEvaluator"/> to use.\r
1071             </summary>\r
1072             <value>\r
1073             The value of the <see cref="T:log4net.Core.ITriggeringEventEvaluator"/> to use.\r
1074             </value>\r
1075             <remarks>\r
1076             <para>\r
1077             The evaluator will be called for each event that is discarded from this \r
1078             appender. If the evaluator triggers then the current buffer will immediately \r
1079             be sent (see <see cref="M:log4net.Appender.BufferingAppenderSkeleton.SendBuffer(log4net.Core.LoggingEvent[])"/>).\r
1080             </para>\r
1081             </remarks>\r
1082         </member>\r
1083         <member name="P:log4net.Appender.BufferingAppenderSkeleton.OnlyFixPartialEventData">\r
1084             <summary>\r
1085             Gets or sets a value indicating if only part of the logging event data\r
1086             should be fixed.\r
1087             </summary>\r
1088             <value>\r
1089             <c>true</c> if the appender should only fix part of the logging event \r
1090             data, otherwise <c>false</c>. The default is <c>false</c>.\r
1091             </value>\r
1092             <remarks>\r
1093             <para>\r
1094             Setting this property to <c>true</c> will cause only part of the\r
1095             event data to be fixed and serialized. This will improve performance.\r
1096             </para>\r
1097             <para>\r
1098             See <see cref="M:log4net.Core.LoggingEvent.FixVolatileData(log4net.Core.FixFlags)"/> for more information.\r
1099             </para>\r
1100             </remarks>\r
1101         </member>\r
1102         <member name="P:log4net.Appender.BufferingAppenderSkeleton.Fix">\r
1103             <summary>\r
1104             Gets or sets a the fields that will be fixed in the event\r
1105             </summary>\r
1106             <value>\r
1107             The event fields that will be fixed before the event is buffered\r
1108             </value>\r
1109             <remarks>\r
1110             <para>\r
1111             The logging event needs to have certain thread specific values \r
1112             captured before it can be buffered. See <see cref="P:log4net.Core.LoggingEvent.Fix"/>\r
1113             for details.\r
1114             </para>\r
1115             </remarks>\r
1116             <seealso cref="P:log4net.Core.LoggingEvent.Fix"/>\r
1117         </member>\r
1118         <member name="M:log4net.Appender.AdoNetAppender.#ctor">\r
1119             <summary> \r
1120             Initializes a new instance of the <see cref="T:log4net.Appender.AdoNetAppender"/> class.\r
1121             </summary>\r
1122             <remarks>\r
1123             Public default constructor to initialize a new instance of this class.\r
1124             </remarks>\r
1125         </member>\r
1126         <member name="M:log4net.Appender.AdoNetAppender.ActivateOptions">\r
1127             <summary>\r
1128             Initialize the appender based on the options set\r
1129             </summary>\r
1130             <remarks>\r
1131             <para>\r
1132             This is part of the <see cref="T:log4net.Core.IOptionHandler"/> delayed object\r
1133             activation scheme. The <see cref="M:log4net.Appender.AdoNetAppender.ActivateOptions"/> method must \r
1134             be called on this object after the configuration properties have\r
1135             been set. Until <see cref="M:log4net.Appender.AdoNetAppender.ActivateOptions"/> is called this\r
1136             object is in an undefined state and must not be used. \r
1137             </para>\r
1138             <para>\r
1139             If any of the configuration properties are modified then \r
1140             <see cref="M:log4net.Appender.AdoNetAppender.ActivateOptions"/> must be called again.\r
1141             </para>\r
1142             </remarks>\r
1143         </member>\r
1144         <member name="M:log4net.Appender.AdoNetAppender.OnClose">\r
1145             <summary>\r
1146             Override the parent method to close the database\r
1147             </summary>\r
1148             <remarks>\r
1149             <para>\r
1150             Closes the database command and database connection.\r
1151             </para>\r
1152             </remarks>\r
1153         </member>\r
1154         <member name="M:log4net.Appender.AdoNetAppender.SendBuffer(log4net.Core.LoggingEvent[])">\r
1155             <summary>\r
1156             Inserts the events into the database.\r
1157             </summary>\r
1158             <param name="events">The events to insert into the database.</param>\r
1159             <remarks>\r
1160             <para>\r
1161             Insert all the events specified in the <paramref name="events"/>\r
1162             array into the database.\r
1163             </para>\r
1164             </remarks>\r
1165         </member>\r
1166         <member name="M:log4net.Appender.AdoNetAppender.AddParameter(log4net.Appender.AdoNetAppenderParameter)">\r
1167             <summary>\r
1168             Adds a parameter to the command.\r
1169             </summary>\r
1170             <param name="parameter">The parameter to add to the command.</param>\r
1171             <remarks>\r
1172             <para>\r
1173             Adds a parameter to the ordered list of command parameters.\r
1174             </para>\r
1175             </remarks>\r
1176         </member>\r
1177         <member name="M:log4net.Appender.AdoNetAppender.SendBuffer(System.Data.IDbTransaction,log4net.Core.LoggingEvent[])">\r
1178             <summary>\r
1179             Writes the events to the database using the transaction specified.\r
1180             </summary>\r
1181             <param name="dbTran">The transaction that the events will be executed under.</param>\r
1182             <param name="events">The array of events to insert into the database.</param>\r
1183             <remarks>\r
1184             <para>\r
1185             The transaction argument can be <c>null</c> if the appender has been\r
1186             configured not to use transactions. See <see cref="P:log4net.Appender.AdoNetAppender.UseTransactions"/>\r
1187             property for more information.\r
1188             </para>\r
1189             </remarks>\r
1190         </member>\r
1191         <member name="M:log4net.Appender.AdoNetAppender.GetLogStatement(log4net.Core.LoggingEvent)">\r
1192             <summary>\r
1193             Formats the log message into database statement text.\r
1194             </summary>\r
1195             <param name="logEvent">The event being logged.</param>\r
1196             <remarks>\r
1197             This method can be overridden by subclasses to provide \r
1198             more control over the format of the database statement.\r
1199             </remarks>\r
1200             <returns>\r
1201             Text that can be passed to a <see cref="T:System.Data.IDbCommand"/>.\r
1202             </returns>\r
1203         </member>\r
1204         <member name="M:log4net.Appender.AdoNetAppender.InitializeDatabaseConnection">\r
1205             <summary>\r
1206             Connects to the database.\r
1207             </summary>          \r
1208         </member>\r
1209         <member name="M:log4net.Appender.AdoNetAppender.ResolveConnectionType">\r
1210             <summary>\r
1211             Retrieves the class type of the ADO.NET provider.\r
1212             </summary>\r
1213             <remarks>\r
1214             <para>\r
1215             Gets the Type of the ADO.NET provider to use to connect to the\r
1216             database. This method resolves the type specified in the \r
1217             <see cref="P:log4net.Appender.AdoNetAppender.ConnectionType"/> property.\r
1218             </para>\r
1219             <para>\r
1220             Subclasses can override this method to return a different type\r
1221             if necessary.\r
1222             </para>\r
1223             </remarks>\r
1224             <returns>The <see cref="T:System.Type"/> of the ADO.NET provider</returns>\r
1225         </member>\r
1226         <member name="M:log4net.Appender.AdoNetAppender.InitializeDatabaseCommand">\r
1227             <summary>\r
1228             Prepares the database command and initialize the parameters.\r
1229             </summary>\r
1230         </member>\r
1231         <member name="F:log4net.Appender.AdoNetAppender.m_usePreparedCommand">\r
1232             <summary>\r
1233             Flag to indicate if we are using a command object\r
1234             </summary>\r
1235             <remarks>\r
1236             <para>\r
1237             Set to <c>true</c> when the appender is to use a prepared\r
1238             statement or stored procedure to insert into the database.\r
1239             </para>\r
1240             </remarks>\r
1241         </member>\r
1242         <member name="F:log4net.Appender.AdoNetAppender.m_parameters">\r
1243             <summary>\r
1244             The list of <see cref="T:log4net.Appender.AdoNetAppenderParameter"/> objects.\r
1245             </summary>\r
1246             <remarks>\r
1247             <para>\r
1248             The list of <see cref="T:log4net.Appender.AdoNetAppenderParameter"/> objects.\r
1249             </para>\r
1250             </remarks>\r
1251         </member>\r
1252         <member name="F:log4net.Appender.AdoNetAppender.m_securityContext">\r
1253             <summary>\r
1254             The security context to use for privileged calls\r
1255             </summary>\r
1256         </member>\r
1257         <member name="F:log4net.Appender.AdoNetAppender.m_dbConnection">\r
1258             <summary>\r
1259             The <see cref="T:System.Data.IDbConnection"/> that will be used\r
1260             to insert logging events into a database.\r
1261             </summary>\r
1262         </member>\r
1263         <member name="F:log4net.Appender.AdoNetAppender.m_dbCommand">\r
1264             <summary>\r
1265             The database command.\r
1266             </summary>\r
1267         </member>\r
1268         <member name="F:log4net.Appender.AdoNetAppender.m_connectionString">\r
1269             <summary>\r
1270             Database connection string.\r
1271             </summary>\r
1272         </member>\r
1273         <member name="F:log4net.Appender.AdoNetAppender.m_connectionType">\r
1274             <summary>\r
1275             String type name of the <see cref="T:System.Data.IDbConnection"/> type name.\r
1276             </summary>\r
1277         </member>\r
1278         <member name="F:log4net.Appender.AdoNetAppender.m_commandText">\r
1279             <summary>\r
1280             The text of the command.\r
1281             </summary>\r
1282         </member>\r
1283         <member name="F:log4net.Appender.AdoNetAppender.m_commandType">\r
1284             <summary>\r
1285             The command type.\r
1286             </summary>\r
1287         </member>\r
1288         <member name="F:log4net.Appender.AdoNetAppender.m_useTransactions">\r
1289             <summary>\r
1290             Indicates whether to use transactions when writing to the database.\r
1291             </summary>\r
1292         </member>\r
1293         <member name="F:log4net.Appender.AdoNetAppender.m_reconnectOnError">\r
1294             <summary>\r
1295             Indicates whether to use transactions when writing to the database.\r
1296             </summary>\r
1297         </member>\r
1298         <member name="P:log4net.Appender.AdoNetAppender.ConnectionString">\r
1299             <summary>\r
1300             Gets or sets the database connection string that is used to connect to \r
1301             the database.\r
1302             </summary>\r
1303             <value>\r
1304             The database connection string used to connect to the database.\r
1305             </value>\r
1306             <remarks>\r
1307             <para>\r
1308             The connections string is specific to the connection type.\r
1309             See <see cref="P:log4net.Appender.AdoNetAppender.ConnectionType"/> for more information.\r
1310             </para>\r
1311             </remarks>\r
1312             <example>Connection string for MS Access via ODBC:\r
1313             <code>"DSN=MS Access Database;UID=admin;PWD=;SystemDB=C:\data\System.mdw;SafeTransactions = 0;FIL=MS Access;DriverID = 25;DBQ=C:\data\train33.mdb"</code>\r
1314             </example>\r
1315             <example>Another connection string for MS Access via ODBC:\r
1316             <code>"Driver={Microsoft Access Driver (*.mdb)};DBQ=C:\Work\cvs_root\log4net-1.2\access.mdb;UID=;PWD=;"</code>\r
1317             </example>\r
1318             <example>Connection string for MS Access via OLE DB:\r
1319             <code>"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Work\cvs_root\log4net-1.2\access.mdb;User Id=;Password=;"</code>\r
1320             </example>\r
1321         </member>\r
1322         <member name="P:log4net.Appender.AdoNetAppender.ConnectionType">\r
1323             <summary>\r
1324             Gets or sets the type name of the <see cref="T:System.Data.IDbConnection"/> connection\r
1325             that should be created.\r
1326             </summary>\r
1327             <value>\r
1328             The type name of the <see cref="T:System.Data.IDbConnection"/> connection.\r
1329             </value>\r
1330             <remarks>\r
1331             <para>\r
1332             The type name of the ADO.NET provider to use.\r
1333             </para>\r
1334             <para>\r
1335             The default is to use the OLE DB provider.\r
1336             </para>\r
1337             </remarks>\r
1338             <example>Use the OLE DB Provider. This is the default value.\r
1339             <code>System.Data.OleDb.OleDbConnection, System.Data, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</code>\r
1340             </example>\r
1341             <example>Use the MS SQL Server Provider. \r
1342             <code>System.Data.SqlClient.SqlConnection, System.Data, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</code>\r
1343             </example>\r
1344             <example>Use the ODBC Provider. \r
1345             <code>Microsoft.Data.Odbc.OdbcConnection,Microsoft.Data.Odbc,version=1.0.3300.0,publicKeyToken=b77a5c561934e089,culture=neutral</code>\r
1346             This is an optional package that you can download from \r
1347             <a href="http://msdn.microsoft.com/downloads">http://msdn.microsoft.com/downloads</a> \r
1348             search for <b>ODBC .NET Data Provider</b>.\r
1349             </example>\r
1350             <example>Use the Oracle Provider. \r
1351             <code>System.Data.OracleClient.OracleConnection, System.Data.OracleClient, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</code>\r
1352             This is an optional package that you can download from \r
1353             <a href="http://msdn.microsoft.com/downloads">http://msdn.microsoft.com/downloads</a> \r
1354             search for <b>.NET Managed Provider for Oracle</b>.\r
1355             </example>\r
1356         </member>\r
1357         <member name="P:log4net.Appender.AdoNetAppender.CommandText">\r
1358             <summary>\r
1359             Gets or sets the command text that is used to insert logging events\r
1360             into the database.\r
1361             </summary>\r
1362             <value>\r
1363             The command text used to insert logging events into the database.\r
1364             </value>\r
1365             <remarks>\r
1366             <para>\r
1367             Either the text of the prepared statement or the\r
1368             name of the stored procedure to execute to write into\r
1369             the database.\r
1370             </para>\r
1371             <para>\r
1372             The <see cref="P:log4net.Appender.AdoNetAppender.CommandType"/> property determines if\r
1373             this text is a prepared statement or a stored procedure.\r
1374             </para>\r
1375             </remarks>\r
1376         </member>\r
1377         <member name="P:log4net.Appender.AdoNetAppender.CommandType">\r
1378             <summary>\r
1379             Gets or sets the command type to execute.\r
1380             </summary>\r
1381             <value>\r
1382             The command type to execute.\r
1383             </value>\r
1384             <remarks>\r
1385             <para>\r
1386             This value may be either <see cref="F:System.Data.CommandType.Text"/> (<c>System.Data.CommandType.Text</c>) to specify\r
1387             that the <see cref="P:log4net.Appender.AdoNetAppender.CommandText"/> is a prepared statement to execute, \r
1388             or <see cref="F:System.Data.CommandType.StoredProcedure"/> (<c>System.Data.CommandType.StoredProcedure</c>) to specify that the\r
1389             <see cref="P:log4net.Appender.AdoNetAppender.CommandText"/> property is the name of a stored procedure\r
1390             to execute.\r
1391             </para>\r
1392             <para>\r
1393             The default value is <see cref="F:System.Data.CommandType.Text"/> (<c>System.Data.CommandType.Text</c>).\r
1394             </para>\r
1395             </remarks>\r
1396         </member>\r
1397         <member name="P:log4net.Appender.AdoNetAppender.UseTransactions">\r
1398             <summary>\r
1399             Should transactions be used to insert logging events in the database.\r
1400             </summary>\r
1401             <value>\r
1402             <c>true</c> if transactions should be used to insert logging events in\r
1403             the database, otherwise <c>false</c>. The default value is <c>true</c>.\r
1404             </value>\r
1405             <remarks>\r
1406             <para>\r
1407             Gets or sets a value that indicates whether transactions should be used\r
1408             to insert logging events in the database.\r
1409             </para>\r
1410             <para>\r
1411             When set a single transaction will be used to insert the buffered events\r
1412             into the database. Otherwise each event will be inserted without using\r
1413             an explicit transaction.\r
1414             </para>\r
1415             </remarks>\r
1416         </member>\r
1417         <member name="P:log4net.Appender.AdoNetAppender.SecurityContext">\r
1418             <summary>\r
1419             Gets or sets the <see cref="P:log4net.Appender.AdoNetAppender.SecurityContext"/> used to call the NetSend method.\r
1420             </summary>\r
1421             <value>\r
1422             The <see cref="P:log4net.Appender.AdoNetAppender.SecurityContext"/> used to call the NetSend method.\r
1423             </value>\r
1424             <remarks>\r
1425             <para>\r
1426             Unless a <see cref="P:log4net.Appender.AdoNetAppender.SecurityContext"/> specified here for this appender\r
1427             the <see cref="P:log4net.Core.SecurityContextProvider.DefaultProvider"/> is queried for the\r
1428             security context to use. The default behavior is to use the security context\r
1429             of the current thread.\r
1430             </para>\r
1431             </remarks>\r
1432         </member>\r
1433         <member name="P:log4net.Appender.AdoNetAppender.ReconnectOnError">\r
1434             <summary>\r
1435             Should this appender try to reconnect to the database on error.\r
1436             </summary>\r
1437             <value>\r
1438             <c>true</c> if the appender should try to reconnect to the database after an\r
1439             error has occurred, otherwise <c>false</c>. The default value is <c>false</c>, \r
1440             i.e. not to try to reconnect.\r
1441             </value>\r
1442             <remarks>\r
1443             <para>\r
1444             The default behaviour is for the appender not to try to reconnect to the\r
1445             database if an error occurs. Subsequent logging events are discarded.\r
1446             </para>\r
1447             <para>\r
1448             To force the appender to attempt to reconnect to the database set this\r
1449             property to <c>true</c>.\r
1450             </para>\r
1451             <note>\r
1452             When the appender attempts to connect to the database there may be a\r
1453             delay of up to the connection timeout specified in the connection string.\r
1454             This delay will block the calling application's thread. \r
1455             Until the connection can be reestablished this potential delay may occur multiple times.\r
1456             </note>\r
1457             </remarks>\r
1458         </member>\r
1459         <member name="P:log4net.Appender.AdoNetAppender.Connection">\r
1460             <summary>\r
1461             Gets or sets the underlying <see cref="T:System.Data.IDbConnection"/>.\r
1462             </summary>\r
1463             <value>\r
1464             The underlying <see cref="T:System.Data.IDbConnection"/>.\r
1465             </value>\r
1466             <remarks>\r
1467             <see cref="T:log4net.Appender.AdoNetAppender"/> creates a <see cref="T:System.Data.IDbConnection"/> to insert \r
1468             logging events into a database.  Classes deriving from <see cref="T:log4net.Appender.AdoNetAppender"/> \r
1469             can use this property to get or set this <see cref="T:System.Data.IDbConnection"/>.  Use the \r
1470             underlying <see cref="T:System.Data.IDbConnection"/> returned from <see cref="P:log4net.Appender.AdoNetAppender.Connection"/> if \r
1471             you require access beyond that which <see cref="T:log4net.Appender.AdoNetAppender"/> provides.\r
1472             </remarks>\r
1473         </member>\r
1474         <member name="T:log4net.Appender.AdoNetAppenderParameter">\r
1475             <summary>\r
1476             Parameter type used by the <see cref="T:log4net.Appender.AdoNetAppender"/>.\r
1477             </summary>\r
1478             <remarks>\r
1479             <para>\r
1480             This class provides the basic database parameter properties\r
1481             as defined by the <see cref="T:System.Data.IDbDataParameter"/> interface.\r
1482             </para>\r
1483             <para>This type can be subclassed to provide database specific\r
1484             functionality. The two methods that are called externally are\r
1485             <see cref="M:log4net.Appender.AdoNetAppenderParameter.Prepare(System.Data.IDbCommand)"/> and <see cref="M:log4net.Appender.AdoNetAppenderParameter.FormatValue(System.Data.IDbCommand,log4net.Core.LoggingEvent)"/>.\r
1486             </para>\r
1487             </remarks>\r
1488         </member>\r
1489         <member name="M:log4net.Appender.AdoNetAppenderParameter.#ctor">\r
1490             <summary>\r
1491             Initializes a new instance of the <see cref="T:log4net.Appender.AdoNetAppenderParameter"/> class.\r
1492             </summary>\r
1493             <remarks>\r
1494             Default constructor for the AdoNetAppenderParameter class.\r
1495             </remarks>\r
1496         </member>\r
1497         <member name="M:log4net.Appender.AdoNetAppenderParameter.Prepare(System.Data.IDbCommand)">\r
1498             <summary>\r
1499             Prepare the specified database command object.\r
1500             </summary>\r
1501             <param name="command">The command to prepare.</param>\r
1502             <remarks>\r
1503             <para>\r
1504             Prepares the database command object by adding\r
1505             this parameter to its collection of parameters.\r
1506             </para>\r
1507             </remarks>\r
1508         </member>\r
1509         <member name="M:log4net.Appender.AdoNetAppenderParameter.FormatValue(System.Data.IDbCommand,log4net.Core.LoggingEvent)">\r
1510             <summary>\r
1511             Renders the logging event and set the parameter value in the command.\r
1512             </summary>\r
1513             <param name="command">The command containing the parameter.</param>\r
1514             <param name="loggingEvent">The event to be rendered.</param>\r
1515             <remarks>\r
1516             <para>\r
1517             Renders the logging event using this parameters layout\r
1518             object. Sets the value of the parameter on the command object.\r
1519             </para>\r
1520             </remarks>\r
1521         </member>\r
1522         <member name="F:log4net.Appender.AdoNetAppenderParameter.m_parameterName">\r
1523             <summary>\r
1524             The name of this parameter.\r
1525             </summary>\r
1526         </member>\r
1527         <member name="F:log4net.Appender.AdoNetAppenderParameter.m_dbType">\r
1528             <summary>\r
1529             The database type for this parameter.\r
1530             </summary>\r
1531         </member>\r
1532         <member name="F:log4net.Appender.AdoNetAppenderParameter.m_inferType">\r
1533             <summary>\r
1534             Flag to infer type rather than use the DbType\r
1535             </summary>\r
1536         </member>\r
1537         <member name="F:log4net.Appender.AdoNetAppenderParameter.m_precision">\r
1538             <summary>\r
1539             The precision for this parameter.\r
1540             </summary>\r
1541         </member>\r
1542         <member name="F:log4net.Appender.AdoNetAppenderParameter.m_scale">\r
1543             <summary>\r
1544             The scale for this parameter.\r
1545             </summary>\r
1546         </member>\r
1547         <member name="F:log4net.Appender.AdoNetAppenderParameter.m_size">\r
1548             <summary>\r
1549             The size for this parameter.\r
1550             </summary>\r
1551         </member>\r
1552         <member name="F:log4net.Appender.AdoNetAppenderParameter.m_layout">\r
1553             <summary>\r
1554             The <see cref="T:log4net.Layout.IRawLayout"/> to use to render the\r
1555             logging event into an object for this parameter.\r
1556             </summary>\r
1557         </member>\r
1558         <member name="P:log4net.Appender.AdoNetAppenderParameter.ParameterName">\r
1559             <summary>\r
1560             Gets or sets the name of this parameter.\r
1561             </summary>\r
1562             <value>\r
1563             The name of this parameter.\r
1564             </value>\r
1565             <remarks>\r
1566             <para>\r
1567             The name of this parameter. The parameter name\r
1568             must match up to a named parameter to the SQL stored procedure\r
1569             or prepared statement.\r
1570             </para>\r
1571             </remarks>\r
1572         </member>\r
1573         <member name="P:log4net.Appender.AdoNetAppenderParameter.DbType">\r
1574             <summary>\r
1575             Gets or sets the database type for this parameter.\r
1576             </summary>\r
1577             <value>\r
1578             The database type for this parameter.\r
1579             </value>\r
1580             <remarks>\r
1581             <para>\r
1582             The database type for this parameter. This property should\r
1583             be set to the database type from the <see cref="P:log4net.Appender.AdoNetAppenderParameter.DbType"/>\r
1584             enumeration. See <see cref="P:System.Data.IDataParameter.DbType"/>.\r
1585             </para>\r
1586             <para>\r
1587             This property is optional. If not specified the ADO.NET provider \r
1588             will attempt to infer the type from the value.\r
1589             </para>\r
1590             </remarks>\r
1591             <seealso cref="P:System.Data.IDataParameter.DbType"/>\r
1592         </member>\r
1593         <member name="P:log4net.Appender.AdoNetAppenderParameter.Precision">\r
1594             <summary>\r
1595             Gets or sets the precision for this parameter.\r
1596             </summary>\r
1597             <value>\r
1598             The precision for this parameter.\r
1599             </value>\r
1600             <remarks>\r
1601             <para>\r
1602             The maximum number of digits used to represent the Value.\r
1603             </para>\r
1604             <para>\r
1605             This property is optional. If not specified the ADO.NET provider \r
1606             will attempt to infer the precision from the value.\r
1607             </para>\r
1608             </remarks>\r
1609             <seealso cref="P:System.Data.IDbDataParameter.Precision"/>\r
1610         </member>\r
1611         <member name="P:log4net.Appender.AdoNetAppenderParameter.Scale">\r
1612             <summary>\r
1613             Gets or sets the scale for this parameter.\r
1614             </summary>\r
1615             <value>\r
1616             The scale for this parameter.\r
1617             </value>\r
1618             <remarks>\r
1619             <para>\r
1620             The number of decimal places to which Value is resolved.\r
1621             </para>\r
1622             <para>\r
1623             This property is optional. If not specified the ADO.NET provider \r
1624             will attempt to infer the scale from the value.\r
1625             </para>\r
1626             </remarks>\r
1627             <seealso cref="P:System.Data.IDbDataParameter.Scale"/>\r
1628         </member>\r
1629         <member name="P:log4net.Appender.AdoNetAppenderParameter.Size">\r
1630             <summary>\r
1631             Gets or sets the size for this parameter.\r
1632             </summary>\r
1633             <value>\r
1634             The size for this parameter.\r
1635             </value>\r
1636             <remarks>\r
1637             <para>\r
1638             The maximum size, in bytes, of the data within the column.\r
1639             </para>\r
1640             <para>\r
1641             This property is optional. If not specified the ADO.NET provider \r
1642             will attempt to infer the size from the value.\r
1643             </para>\r
1644             </remarks>\r
1645             <seealso cref="P:System.Data.IDbDataParameter.Size"/>\r
1646         </member>\r
1647         <member name="P:log4net.Appender.AdoNetAppenderParameter.Layout">\r
1648             <summary>\r
1649             Gets or sets the <see cref="T:log4net.Layout.IRawLayout"/> to use to \r
1650             render the logging event into an object for this \r
1651             parameter.\r
1652             </summary>\r
1653             <value>\r
1654             The <see cref="T:log4net.Layout.IRawLayout"/> used to render the\r
1655             logging event into an object for this parameter.\r
1656             </value>\r
1657             <remarks>\r
1658             <para>\r
1659             The <see cref="T:log4net.Layout.IRawLayout"/> that renders the value for this\r
1660             parameter.\r
1661             </para>\r
1662             <para>\r
1663             The <see cref="T:log4net.Layout.RawLayoutConverter"/> can be used to adapt\r
1664             any <see cref="T:log4net.Layout.ILayout"/> into a <see cref="T:log4net.Layout.IRawLayout"/>\r
1665             for use in the property.\r
1666             </para>\r
1667             </remarks>\r
1668         </member>\r
1669         <member name="T:log4net.Appender.AnsiColorTerminalAppender">\r
1670             <summary>\r
1671             Appends logging events to the terminal using ANSI color escape sequences.\r
1672             </summary>\r
1673             <remarks>\r
1674             <para>\r
1675             AnsiColorTerminalAppender appends log events to the standard output stream\r
1676             or the error output stream using a layout specified by the \r
1677             user. It also allows the color of a specific level of message to be set.\r
1678             </para>\r
1679             <note>\r
1680             This appender expects the terminal to understand the VT100 control set \r
1681             in order to interpret the color codes. If the terminal or console does not\r
1682             understand the control codes the behavior is not defined.\r
1683             </note>\r
1684             <para>\r
1685             By default, all output is written to the console's standard output stream.\r
1686             The <see cref="P:log4net.Appender.AnsiColorTerminalAppender.Target"/> property can be set to direct the output to the\r
1687             error stream.\r
1688             </para>\r
1689             <para>\r
1690             NOTE: This appender writes each message to the <c>System.Console.Out</c> or \r
1691             <c>System.Console.Error</c> that is set at the time the event is appended.\r
1692             Therefore it is possible to programmatically redirect the output of this appender \r
1693             (for example NUnit does this to capture program output). While this is the desired\r
1694             behavior of this appender it may have security implications in your application. \r
1695             </para>\r
1696             <para>\r
1697             When configuring the ANSI colored terminal appender, a mapping should be\r
1698             specified to map a logging level to a color. For example:\r
1699             </para>\r
1700             <code lang="XML" escaped="true">\r
1701             <mapping>\r
1702                 <level value="ERROR"/>\r
1703                 <foreColor value="White"/>\r
1704                 <backColor value="Red"/>\r
1705                 <attributes value="Bright,Underscore"/>\r
1706             </mapping>\r
1707             <mapping>\r
1708                 <level value="DEBUG"/>\r
1709                 <backColor value="Green"/>\r
1710             </mapping>\r
1711             </code>\r
1712             <para>\r
1713             The Level is the standard log4net logging level and ForeColor and BackColor can be any\r
1714             of the following values:\r
1715             <list type="bullet">\r
1716             <item><term>Blue</term><description></description></item>\r
1717             <item><term>Green</term><description></description></item>\r
1718             <item><term>Red</term><description></description></item>\r
1719             <item><term>White</term><description></description></item>\r
1720             <item><term>Yellow</term><description></description></item>\r
1721             <item><term>Purple</term><description></description></item>\r
1722             <item><term>Cyan</term><description></description></item>\r
1723             </list>\r
1724             These color values cannot be combined together to make new colors.\r
1725             </para>\r
1726             <para>\r
1727             The attributes can be any combination of the following:\r
1728             <list type="bullet">\r
1729             <item><term>Bright</term><description>foreground is brighter</description></item>\r
1730             <item><term>Dim</term><description>foreground is dimmer</description></item>\r
1731             <item><term>Underscore</term><description>message is underlined</description></item>\r
1732             <item><term>Blink</term><description>foreground is blinking (does not work on all terminals)</description></item>\r
1733             <item><term>Reverse</term><description>foreground and background are reversed</description></item>\r
1734             <item><term>Hidden</term><description>output is hidden</description></item>\r
1735             <item><term>Strikethrough</term><description>message has a line through it</description></item>\r
1736             </list>\r
1737             While any of these attributes may be combined together not all combinations\r
1738             work well together, for example setting both <i>Bright</i> and <i>Dim</i> attributes makes\r
1739             no sense.\r
1740             </para>\r
1741             </remarks>\r
1742             <author>Patrick Wagstrom</author>\r
1743             <author>Nicko Cadell</author>\r
1744         </member>\r
1745         <member name="F:log4net.Appender.AnsiColorTerminalAppender.ConsoleOut">\r
1746             <summary>\r
1747             The <see cref="P:log4net.Appender.AnsiColorTerminalAppender.Target"/> to use when writing to the Console \r
1748             standard output stream.\r
1749             </summary>\r
1750             <remarks>\r
1751             <para>\r
1752             The <see cref="P:log4net.Appender.AnsiColorTerminalAppender.Target"/> to use when writing to the Console \r
1753             standard output stream.\r
1754             </para>\r
1755             </remarks>\r
1756         </member>\r
1757         <member name="F:log4net.Appender.AnsiColorTerminalAppender.ConsoleError">\r
1758             <summary>\r
1759             The <see cref="P:log4net.Appender.AnsiColorTerminalAppender.Target"/> to use when writing to the Console \r
1760             standard error output stream.\r
1761             </summary>\r
1762             <remarks>\r
1763             <para>\r
1764             The <see cref="P:log4net.Appender.AnsiColorTerminalAppender.Target"/> to use when writing to the Console \r
1765             standard error output stream.\r
1766             </para>\r
1767             </remarks>\r
1768         </member>\r
1769         <member name="F:log4net.Appender.AnsiColorTerminalAppender.PostEventCodes">\r
1770             <summary>\r
1771             Ansi code to reset terminal\r
1772             </summary>\r
1773         </member>\r
1774         <member name="M:log4net.Appender.AnsiColorTerminalAppender.#ctor">\r
1775             <summary>\r
1776             Initializes a new instance of the <see cref="T:log4net.Appender.AnsiColorTerminalAppender"/> class.\r
1777             </summary>\r
1778             <remarks>\r
1779             The instance of the <see cref="T:log4net.Appender.AnsiColorTerminalAppender"/> class is set up to write \r
1780             to the standard output stream.\r
1781             </remarks>\r
1782         </member>\r
1783         <member name="M:log4net.Appender.AnsiColorTerminalAppender.AddMapping(log4net.Appender.AnsiColorTerminalAppender.LevelColors)">\r
1784             <summary>\r
1785             Add a mapping of level to color\r
1786             </summary>\r
1787             <param name="mapping">The mapping to add</param>\r
1788             <remarks>\r
1789             <para>\r
1790             Add a <see cref="T:log4net.Appender.AnsiColorTerminalAppender.LevelColors"/> mapping to this appender.\r
1791             Each mapping defines the foreground and background colours\r
1792             for a level.\r
1793             </para>\r
1794             </remarks>\r
1795         </member>\r
1796         <member name="M:log4net.Appender.AnsiColorTerminalAppender.Append(log4net.Core.LoggingEvent)">\r
1797             <summary>\r
1798             This method is called by the <see cref="M:log4net.Appender.AppenderSkeleton.DoAppend(log4net.Core.LoggingEvent)"/> method.\r
1799             </summary>\r
1800             <param name="loggingEvent">The event to log.</param>\r
1801             <remarks>\r
1802             <para>\r
1803             Writes the event to the console.\r
1804             </para>\r
1805             <para>\r
1806             The format of the output will depend on the appender's layout.\r
1807             </para>\r
1808             </remarks>\r
1809         </member>\r
1810         <member name="M:log4net.Appender.AnsiColorTerminalAppender.ActivateOptions">\r
1811             <summary>\r
1812             Initialize the options for this appender\r
1813             </summary>\r
1814             <remarks>\r
1815             <para>\r
1816             Initialize the level to color mappings set on this appender.\r
1817             </para>\r
1818             </remarks>\r
1819         </member>\r
1820         <member name="F:log4net.Appender.AnsiColorTerminalAppender.m_writeToErrorStream">\r
1821             <summary>\r
1822             Flag to write output to the error stream rather than the standard output stream\r
1823             </summary>\r
1824         </member>\r
1825         <member name="F:log4net.Appender.AnsiColorTerminalAppender.m_levelMapping">\r
1826             <summary>\r
1827             Mapping from level object to color value\r
1828             </summary>\r
1829         </member>\r
1830         <member name="P:log4net.Appender.AnsiColorTerminalAppender.Target">\r
1831             <summary>\r
1832             Target is the value of the console output stream.\r
1833             </summary>\r
1834             <value>\r
1835             Target is the value of the console output stream.\r
1836             This is either <c>"Console.Out"</c> or <c>"Console.Error"</c>.\r
1837             </value>\r
1838             <remarks>\r
1839             <para>\r
1840             Target is the value of the console output stream.\r
1841             This is either <c>"Console.Out"</c> or <c>"Console.Error"</c>.\r
1842             </para>\r
1843             </remarks>\r
1844         </member>\r
1845         <member name="P:log4net.Appender.AnsiColorTerminalAppender.RequiresLayout">\r
1846             <summary>\r
1847             This appender requires a <see cref="N:log4net.Layout"/> to be set.\r
1848             </summary>\r
1849             <value><c>true</c></value>\r
1850             <remarks>\r
1851             <para>\r
1852             This appender requires a <see cref="N:log4net.Layout"/> to be set.\r
1853             </para>\r
1854             </remarks>\r
1855         </member>\r
1856         <member name="T:log4net.Appender.AnsiColorTerminalAppender.AnsiAttributes">\r
1857             <summary>\r
1858             The enum of possible display attributes\r
1859             </summary>\r
1860             <remarks>\r
1861             <para>\r
1862             The following flags can be combined together to\r
1863             form the ANSI color attributes.\r
1864             </para>\r
1865             </remarks>\r
1866             <seealso cref="T:log4net.Appender.AnsiColorTerminalAppender"/>\r
1867         </member>\r
1868         <member name="F:log4net.Appender.AnsiColorTerminalAppender.AnsiAttributes.Bright">\r
1869             <summary>\r
1870             text is bright\r
1871             </summary>\r
1872         </member>\r
1873         <member name="F:log4net.Appender.AnsiColorTerminalAppender.AnsiAttributes.Dim">\r
1874             <summary>\r
1875             text is dim\r
1876             </summary>\r
1877         </member>\r
1878         <member name="F:log4net.Appender.AnsiColorTerminalAppender.AnsiAttributes.Underscore">\r
1879             <summary>\r
1880             text is underlined\r
1881             </summary>\r
1882         </member>\r
1883         <member name="F:log4net.Appender.AnsiColorTerminalAppender.AnsiAttributes.Blink">\r
1884             <summary>\r
1885             text is blinking\r
1886             </summary>\r
1887             <remarks>\r
1888             Not all terminals support this attribute\r
1889             </remarks>\r
1890         </member>\r
1891         <member name="F:log4net.Appender.AnsiColorTerminalAppender.AnsiAttributes.Reverse">\r
1892             <summary>\r
1893             text and background colors are reversed\r
1894             </summary>\r
1895         </member>\r
1896         <member name="F:log4net.Appender.AnsiColorTerminalAppender.AnsiAttributes.Hidden">\r
1897             <summary>\r
1898             text is hidden\r
1899             </summary>\r
1900         </member>\r
1901         <member name="F:log4net.Appender.AnsiColorTerminalAppender.AnsiAttributes.Strikethrough">\r
1902             <summary>\r
1903             text is displayed with a strikethrough\r
1904             </summary>\r
1905         </member>\r
1906         <member name="T:log4net.Appender.AnsiColorTerminalAppender.AnsiColor">\r
1907             <summary>\r
1908             The enum of possible foreground or background color values for \r
1909             use with the color mapping method\r
1910             </summary>\r
1911             <remarks>\r
1912             <para>\r
1913             The output can be in one for the following ANSI colors.\r
1914             </para>\r
1915             </remarks>\r
1916             <seealso cref="T:log4net.Appender.AnsiColorTerminalAppender"/>\r
1917         </member>\r
1918         <member name="F:log4net.Appender.AnsiColorTerminalAppender.AnsiColor.Black">\r
1919             <summary>\r
1920             color is black\r
1921             </summary>\r
1922         </member>\r
1923         <member name="F:log4net.Appender.AnsiColorTerminalAppender.AnsiColor.Red">\r
1924             <summary>\r
1925             color is red\r
1926             </summary>\r
1927         </member>\r
1928         <member name="F:log4net.Appender.AnsiColorTerminalAppender.AnsiColor.Green">\r
1929             <summary>\r
1930             color is green\r
1931             </summary>\r
1932         </member>\r
1933         <member name="F:log4net.Appender.AnsiColorTerminalAppender.AnsiColor.Yellow">\r
1934             <summary>\r
1935             color is yellow\r
1936             </summary>\r
1937         </member>\r
1938         <member name="F:log4net.Appender.AnsiColorTerminalAppender.AnsiColor.Blue">\r
1939             <summary>\r
1940             color is blue\r
1941             </summary>\r
1942         </member>\r
1943         <member name="F:log4net.Appender.AnsiColorTerminalAppender.AnsiColor.Magenta">\r
1944             <summary>\r
1945             color is magenta\r
1946             </summary>\r
1947         </member>\r
1948         <member name="F:log4net.Appender.AnsiColorTerminalAppender.AnsiColor.Cyan">\r
1949             <summary>\r
1950             color is cyan\r
1951             </summary>\r
1952         </member>\r
1953         <member name="F:log4net.Appender.AnsiColorTerminalAppender.AnsiColor.White">\r
1954             <summary>\r
1955             color is white\r
1956             </summary>\r
1957         </member>\r
1958         <member name="T:log4net.Appender.AnsiColorTerminalAppender.LevelColors">\r
1959             <summary>\r
1960             A class to act as a mapping between the level that a logging call is made at and\r
1961             the color it should be displayed as.\r
1962             </summary>\r
1963             <remarks>\r
1964             <para>\r
1965             Defines the mapping between a level and the color it should be displayed in.\r
1966             </para>\r
1967             </remarks>\r
1968         </member>\r
1969         <member name="T:log4net.Util.LevelMappingEntry">\r
1970             <summary>\r
1971             An entry in the <see cref="T:log4net.Util.LevelMapping"/>\r
1972             </summary>\r
1973             <remarks>\r
1974             <para>\r
1975             This is an abstract base class for types that are stored in the\r
1976             <see cref="T:log4net.Util.LevelMapping"/> object.\r
1977             </para>\r
1978             </remarks>\r
1979             <author>Nicko Cadell</author>\r
1980         </member>\r
1981         <member name="M:log4net.Util.LevelMappingEntry.#ctor">\r
1982             <summary>\r
1983             Default protected constructor\r
1984             </summary>\r
1985             <remarks>\r
1986             <para>\r
1987             Default protected constructor\r
1988             </para>\r
1989             </remarks>\r
1990         </member>\r
1991         <member name="M:log4net.Util.LevelMappingEntry.ActivateOptions">\r
1992             <summary>\r
1993             Initialize any options defined on this entry\r
1994             </summary>\r
1995             <remarks>\r
1996             <para>\r
1997             Should be overridden by any classes that need to initialise based on their options\r
1998             </para>\r
1999             </remarks>\r
2000         </member>\r
2001         <member name="P:log4net.Util.LevelMappingEntry.Level">\r
2002             <summary>\r
2003             The level that is the key for this mapping \r
2004             </summary>\r
2005             <value>\r
2006             The <see cref="P:log4net.Util.LevelMappingEntry.Level"/> that is the key for this mapping \r
2007             </value>\r
2008             <remarks>\r
2009             <para>\r
2010             Get or set the <see cref="P:log4net.Util.LevelMappingEntry.Level"/> that is the key for this\r
2011             mapping subclass.\r
2012             </para>\r
2013             </remarks>\r
2014         </member>\r
2015         <member name="M:log4net.Appender.AnsiColorTerminalAppender.LevelColors.ActivateOptions">\r
2016             <summary>\r
2017             Initialize the options for the object\r
2018             </summary>\r
2019             <remarks>\r
2020             <para>\r
2021             Combine the <see cref="P:log4net.Appender.AnsiColorTerminalAppender.LevelColors.ForeColor"/> and <see cref="P:log4net.Appender.AnsiColorTerminalAppender.LevelColors.BackColor"/> together\r
2022             and append the attributes.\r
2023             </para>\r
2024             </remarks>\r
2025         </member>\r
2026         <member name="P:log4net.Appender.AnsiColorTerminalAppender.LevelColors.ForeColor">\r
2027             <summary>\r
2028             The mapped foreground color for the specified level\r
2029             </summary>\r
2030             <remarks>\r
2031             <para>\r
2032             Required property.\r
2033             The mapped foreground color for the specified level\r
2034             </para>\r
2035             </remarks>\r
2036         </member>\r
2037         <member name="P:log4net.Appender.AnsiColorTerminalAppender.LevelColors.BackColor">\r
2038             <summary>\r
2039             The mapped background color for the specified level\r
2040             </summary>\r
2041             <remarks>\r
2042             <para>\r
2043             Required property.\r
2044             The mapped background color for the specified level\r
2045             </para>\r
2046             </remarks>\r
2047         </member>\r
2048         <member name="P:log4net.Appender.AnsiColorTerminalAppender.LevelColors.Attributes">\r
2049             <summary>\r
2050             The color attributes for the specified level\r
2051             </summary>\r
2052             <remarks>\r
2053             <para>\r
2054             Required property.\r
2055             The color attributes for the specified level\r
2056             </para>\r
2057             </remarks>\r
2058         </member>\r
2059         <member name="P:log4net.Appender.AnsiColorTerminalAppender.LevelColors.CombinedColor">\r
2060             <summary>\r
2061             The combined <see cref="P:log4net.Appender.AnsiColorTerminalAppender.LevelColors.ForeColor"/>, <see cref="P:log4net.Appender.AnsiColorTerminalAppender.LevelColors.BackColor"/> and\r
2062             <see cref="P:log4net.Appender.AnsiColorTerminalAppender.LevelColors.Attributes"/> suitable for setting the ansi terminal color.\r
2063             </summary>\r
2064         </member>\r
2065         <member name="T:log4net.Appender.AppenderCollection">\r
2066             <summary>\r
2067             A strongly-typed collection of <see cref="T:log4net.Appender.IAppender"/> objects.\r
2068             </summary>\r
2069             <author>Nicko Cadell</author>\r
2070         </member>\r
2071         <member name="M:log4net.Appender.AppenderCollection.ReadOnly(log4net.Appender.AppenderCollection)">\r
2072             <summary>\r
2073             Creates a read-only wrapper for a <c>AppenderCollection</c> instance.\r
2074             </summary>\r
2075             <param name="list">list to create a readonly wrapper arround</param>\r
2076             <returns>\r
2077             An <c>AppenderCollection</c> wrapper that is read-only.\r
2078             </returns>\r
2079         </member>\r
2080         <member name="F:log4net.Appender.AppenderCollection.EmptyCollection">\r
2081             <summary>\r
2082             An empty readonly static AppenderCollection\r
2083             </summary>\r
2084         </member>\r
2085         <member name="M:log4net.Appender.AppenderCollection.#ctor">\r
2086             <summary>\r
2087             Initializes a new instance of the <c>AppenderCollection</c> class\r
2088             that is empty and has the default initial capacity.\r
2089             </summary>\r
2090         </member>\r
2091         <member name="M:log4net.Appender.AppenderCollection.#ctor(System.Int32)">\r
2092             <summary>\r
2093             Initializes a new instance of the <c>AppenderCollection</c> class\r
2094             that has the specified initial capacity.\r
2095             </summary>\r
2096             <param name="capacity">\r
2097             The number of elements that the new <c>AppenderCollection</c> is initially capable of storing.\r
2098             </param>\r
2099         </member>\r
2100         <member name="M:log4net.Appender.AppenderCollection.#ctor(log4net.Appender.AppenderCollection)">\r
2101             <summary>\r
2102             Initializes a new instance of the <c>AppenderCollection</c> class\r
2103             that contains elements copied from the specified <c>AppenderCollection</c>.\r
2104             </summary>\r
2105             <param name="c">The <c>AppenderCollection</c> whose elements are copied to the new collection.</param>\r
2106         </member>\r
2107         <member name="M:log4net.Appender.AppenderCollection.#ctor(log4net.Appender.IAppender[])">\r
2108             <summary>\r
2109             Initializes a new instance of the <c>AppenderCollection</c> class\r
2110             that contains elements copied from the specified <see cref="T:log4net.Appender.IAppender"/> array.\r
2111             </summary>\r
2112             <param name="a">The <see cref="T:log4net.Appender.IAppender"/> array whose elements are copied to the new list.</param>\r
2113         </member>\r
2114         <member name="M:log4net.Appender.AppenderCollection.#ctor(System.Collections.ICollection)">\r
2115             <summary>\r
2116             Initializes a new instance of the <c>AppenderCollection</c> class\r
2117             that contains elements copied from the specified <see cref="T:log4net.Appender.IAppender"/> collection.\r
2118             </summary>\r
2119             <param name="col">The <see cref="T:log4net.Appender.IAppender"/> collection whose elements are copied to the new list.</param>\r
2120         </member>\r
2121         <member name="M:log4net.Appender.AppenderCollection.#ctor(log4net.Appender.AppenderCollection.Tag)">\r
2122             <summary>\r
2123             Allow subclasses to avoid our default constructors\r
2124             </summary>\r
2125             <param name="tag"></param>\r
2126             <exclude/>\r
2127         </member>\r
2128         <member name="M:log4net.Appender.AppenderCollection.CopyTo(log4net.Appender.IAppender[])">\r
2129             <summary>\r
2130             Copies the entire <c>AppenderCollection</c> to a one-dimensional\r
2131             <see cref="T:log4net.Appender.IAppender"/> array.\r
2132             </summary>\r
2133             <param name="array">The one-dimensional <see cref="T:log4net.Appender.IAppender"/> array to copy to.</param>\r
2134         </member>\r
2135         <member name="M:log4net.Appender.AppenderCollection.CopyTo(log4net.Appender.IAppender[],System.Int32)">\r
2136             <summary>\r
2137             Copies the entire <c>AppenderCollection</c> to a one-dimensional\r
2138             <see cref="T:log4net.Appender.IAppender"/> array, starting at the specified index of the target array.\r
2139             </summary>\r
2140             <param name="array">The one-dimensional <see cref="T:log4net.Appender.IAppender"/> array to copy to.</param>\r
2141             <param name="start">The zero-based index in <paramref name="array"/> at which copying begins.</param>\r
2142         </member>\r
2143         <member name="M:log4net.Appender.AppenderCollection.Add(log4net.Appender.IAppender)">\r
2144             <summary>\r
2145             Adds a <see cref="T:log4net.Appender.IAppender"/> to the end of the <c>AppenderCollection</c>.\r
2146             </summary>\r
2147             <param name="item">The <see cref="T:log4net.Appender.IAppender"/> to be added to the end of the <c>AppenderCollection</c>.</param>\r
2148             <returns>The index at which the value has been added.</returns>\r
2149         </member>\r
2150         <member name="M:log4net.Appender.AppenderCollection.Clear">\r
2151             <summary>\r
2152             Removes all elements from the <c>AppenderCollection</c>.\r
2153             </summary>\r
2154         </member>\r
2155         <member name="M:log4net.Appender.AppenderCollection.Clone">\r
2156             <summary>\r
2157             Creates a shallow copy of the <see cref="T:log4net.Appender.AppenderCollection"/>.\r
2158             </summary>\r
2159             <returns>A new <see cref="T:log4net.Appender.AppenderCollection"/> with a shallow copy of the collection data.</returns>\r
2160         </member>\r
2161         <member name="M:log4net.Appender.AppenderCollection.Contains(log4net.Appender.IAppender)">\r
2162             <summary>\r
2163             Determines whether a given <see cref="T:log4net.Appender.IAppender"/> is in the <c>AppenderCollection</c>.\r
2164             </summary>\r
2165             <param name="item">The <see cref="T:log4net.Appender.IAppender"/> to check for.</param>\r
2166             <returns><c>true</c> if <paramref name="item"/> is found in the <c>AppenderCollection</c>; otherwise, <c>false</c>.</returns>\r
2167         </member>\r
2168         <member name="M:log4net.Appender.AppenderCollection.IndexOf(log4net.Appender.IAppender)">\r
2169             <summary>\r
2170             Returns the zero-based index of the first occurrence of a <see cref="T:log4net.Appender.IAppender"/>\r
2171             in the <c>AppenderCollection</c>.\r
2172             </summary>\r
2173             <param name="item">The <see cref="T:log4net.Appender.IAppender"/> to locate in the <c>AppenderCollection</c>.</param>\r
2174             <returns>\r
2175             The zero-based index of the first occurrence of <paramref name="item"/> \r
2176             in the entire <c>AppenderCollection</c>, if found; otherwise, -1.\r
2177             </returns>\r
2178         </member>\r
2179         <member name="M:log4net.Appender.AppenderCollection.Insert(System.Int32,log4net.Appender.IAppender)">\r
2180             <summary>\r
2181             Inserts an element into the <c>AppenderCollection</c> at the specified index.\r
2182             </summary>\r
2183             <param name="index">The zero-based index at which <paramref name="item"/> should be inserted.</param>\r
2184             <param name="item">The <see cref="T:log4net.Appender.IAppender"/> to insert.</param>\r
2185             <exception cref="T:System.ArgumentOutOfRangeException">\r
2186             <para><paramref name="index"/> is less than zero</para>\r
2187             <para>-or-</para>\r
2188             <para><paramref name="index"/> is equal to or greater than <see cref="P:log4net.Appender.AppenderCollection.Count"/>.</para>\r
2189             </exception>\r
2190         </member>\r
2191         <member name="M:log4net.Appender.AppenderCollection.Remove(log4net.Appender.IAppender)">\r
2192             <summary>\r
2193             Removes the first occurrence of a specific <see cref="T:log4net.Appender.IAppender"/> from the <c>AppenderCollection</c>.\r
2194             </summary>\r
2195             <param name="item">The <see cref="T:log4net.Appender.IAppender"/> to remove from the <c>AppenderCollection</c>.</param>\r
2196             <exception cref="T:System.ArgumentException">\r
2197             The specified <see cref="T:log4net.Appender.IAppender"/> was not found in the <c>AppenderCollection</c>.\r
2198             </exception>\r
2199         </member>\r
2200         <member name="M:log4net.Appender.AppenderCollection.RemoveAt(System.Int32)">\r
2201             <summary>\r
2202             Removes the element at the specified index of the <c>AppenderCollection</c>.\r
2203             </summary>\r
2204             <param name="index">The zero-based index of the element to remove.</param>\r
2205             <exception cref="T:System.ArgumentOutOfRangeException">\r
2206             <para><paramref name="index"/> is less than zero</para>\r
2207             <para>-or-</para>\r
2208             <para><paramref name="index"/> is equal to or greater than <see cref="P:log4net.Appender.AppenderCollection.Count"/>.</para>\r
2209             </exception>\r
2210         </member>\r
2211         <member name="M:log4net.Appender.AppenderCollection.GetEnumerator">\r
2212             <summary>\r
2213             Returns an enumerator that can iterate through the <c>AppenderCollection</c>.\r
2214             </summary>\r
2215             <returns>An <see cref="T:log4net.Appender.AppenderCollection.Enumerator"/> for the entire <c>AppenderCollection</c>.</returns>\r
2216         </member>\r
2217         <member name="M:log4net.Appender.AppenderCollection.AddRange(log4net.Appender.AppenderCollection)">\r
2218             <summary>\r
2219             Adds the elements of another <c>AppenderCollection</c> to the current <c>AppenderCollection</c>.\r
2220             </summary>\r
2221             <param name="x">The <c>AppenderCollection</c> whose elements should be added to the end of the current <c>AppenderCollection</c>.</param>\r
2222             <returns>The new <see cref="P:log4net.Appender.AppenderCollection.Count"/> of the <c>AppenderCollection</c>.</returns>\r
2223         </member>\r
2224         <member name="M:log4net.Appender.AppenderCollection.AddRange(log4net.Appender.IAppender[])">\r
2225             <summary>\r
2226             Adds the elements of a <see cref="T:log4net.Appender.IAppender"/> array to the current <c>AppenderCollection</c>.\r
2227             </summary>\r
2228             <param name="x">The <see cref="T:log4net.Appender.IAppender"/> array whose elements should be added to the end of the <c>AppenderCollection</c>.</param>\r
2229             <returns>The new <see cref="P:log4net.Appender.AppenderCollection.Count"/> of the <c>AppenderCollection</c>.</returns>\r
2230         </member>\r
2231         <member name="M:log4net.Appender.AppenderCollection.AddRange(System.Collections.ICollection)">\r
2232             <summary>\r
2233             Adds the elements of a <see cref="T:log4net.Appender.IAppender"/> collection to the current <c>AppenderCollection</c>.\r
2234             </summary>\r
2235             <param name="col">The <see cref="T:log4net.Appender.IAppender"/> collection whose elements should be added to the end of the <c>AppenderCollection</c>.</param>\r
2236             <returns>The new <see cref="P:log4net.Appender.AppenderCollection.Count"/> of the <c>AppenderCollection</c>.</returns>\r
2237         </member>\r
2238         <member name="M:log4net.Appender.AppenderCollection.TrimToSize">\r
2239             <summary>\r
2240             Sets the capacity to the actual number of elements.\r
2241             </summary>\r
2242         </member>\r
2243         <member name="M:log4net.Appender.AppenderCollection.ToArray">\r
2244             <summary>\r
2245             Return the collection elements as an array\r
2246             </summary>\r
2247             <returns>the array</returns>\r
2248         </member>\r
2249         <member name="M:log4net.Appender.AppenderCollection.ValidateIndex(System.Int32)">\r
2250             <exception cref="T:System.ArgumentOutOfRangeException">\r
2251             <para><paramref name="index"/> is less than zero</para>\r
2252             <para>-or-</para>\r
2253             <para><paramref name="index"/> is equal to or greater than <see cref="P:log4net.Appender.AppenderCollection.Count"/>.</para>\r
2254             </exception>\r
2255         </member>\r
2256         <member name="M:log4net.Appender.AppenderCollection.ValidateIndex(System.Int32,System.Boolean)">\r
2257             <exception cref="T:System.ArgumentOutOfRangeException">\r
2258             <para><paramref name="index"/> is less than zero</para>\r
2259             <para>-or-</para>\r
2260             <para><paramref name="index"/> is equal to or greater than <see cref="P:log4net.Appender.AppenderCollection.Count"/>.</para>\r
2261             </exception>\r
2262         </member>\r
2263         <member name="P:log4net.Appender.AppenderCollection.Count">\r
2264             <summary>\r
2265             Gets the number of elements actually contained in the <c>AppenderCollection</c>.\r
2266             </summary>\r
2267         </member>\r
2268         <member name="P:log4net.Appender.AppenderCollection.IsSynchronized">\r
2269             <summary>\r
2270             Gets a value indicating whether access to the collection is synchronized (thread-safe).\r
2271             </summary>\r
2272             <returns>true if access to the ICollection is synchronized (thread-safe); otherwise, false.</returns>\r
2273         </member>\r
2274         <member name="P:log4net.Appender.AppenderCollection.SyncRoot">\r
2275             <summary>\r
2276             Gets an object that can be used to synchronize access to the collection.\r
2277             </summary>\r
2278         </member>\r
2279         <member name="P:log4net.Appender.AppenderCollection.Item(System.Int32)">\r
2280             <summary>\r
2281             Gets or sets the <see cref="T:log4net.Appender.IAppender"/> at the specified index.\r
2282             </summary>\r
2283             <param name="index">The zero-based index of the element to get or set.</param>\r
2284             <exception cref="T:System.ArgumentOutOfRangeException">\r
2285                 <para><paramref name="index"/> is less than zero</para>\r
2286                 <para>-or-</para>\r
2287                 <para><paramref name="index"/> is equal to or greater than <see cref="P:log4net.Appender.AppenderCollection.Count"/>.</para>\r
2288             </exception>\r
2289         </member>\r
2290         <member name="P:log4net.Appender.AppenderCollection.IsFixedSize">\r
2291             <summary>\r
2292             Gets a value indicating whether the collection has a fixed size.\r
2293             </summary>\r
2294             <value>true if the collection has a fixed size; otherwise, false. The default is false</value>\r
2295         </member>\r
2296         <member name="P:log4net.Appender.AppenderCollection.IsReadOnly">\r
2297             <summary>\r
2298             Gets a value indicating whether the IList is read-only.\r
2299             </summary>\r
2300             <value>true if the collection is read-only; otherwise, false. The default is false</value>\r
2301         </member>\r
2302         <member name="P:log4net.Appender.AppenderCollection.Capacity">\r
2303             <summary>\r
2304             Gets or sets the number of elements the <c>AppenderCollection</c> can contain.\r
2305             </summary>\r
2306         </member>\r
2307         <member name="T:log4net.Appender.AppenderCollection.IAppenderCollectionEnumerator">\r
2308             <summary>\r
2309             Supports type-safe iteration over a <see cref="T:log4net.Appender.AppenderCollection"/>.\r
2310             </summary>\r
2311             <exclude/>\r
2312         </member>\r
2313         <member name="M:log4net.Appender.AppenderCollection.IAppenderCollectionEnumerator.MoveNext">\r
2314             <summary>\r
2315             Advances the enumerator to the next element in the collection.\r
2316             </summary>\r
2317             <returns>\r
2318             <c>true</c> if the enumerator was successfully advanced to the next element; \r
2319             <c>false</c> if the enumerator has passed the end of the collection.\r
2320             </returns>\r
2321             <exception cref="T:System.InvalidOperationException">\r
2322             The collection was modified after the enumerator was created.\r
2323             </exception>\r
2324         </member>\r
2325         <member name="M:log4net.Appender.AppenderCollection.IAppenderCollectionEnumerator.Reset">\r
2326             <summary>\r
2327             Sets the enumerator to its initial position, before the first element in the collection.\r
2328             </summary>\r
2329         </member>\r
2330         <member name="P:log4net.Appender.AppenderCollection.IAppenderCollectionEnumerator.Current">\r
2331             <summary>\r
2332             Gets the current element in the collection.\r
2333             </summary>\r
2334         </member>\r
2335         <member name="T:log4net.Appender.AppenderCollection.Tag">\r
2336             <summary>\r
2337             Type visible only to our subclasses\r
2338             Used to access protected constructor\r
2339             </summary>\r
2340             <exclude/>\r
2341         </member>\r
2342         <member name="F:log4net.Appender.AppenderCollection.Tag.Default">\r
2343             <summary>\r
2344             A value\r
2345             </summary>\r
2346         </member>\r
2347         <member name="T:log4net.Appender.AppenderCollection.Enumerator">\r
2348             <summary>\r
2349             Supports simple iteration over a <see cref="T:log4net.Appender.AppenderCollection"/>.\r
2350             </summary>\r
2351             <exclude/>\r
2352         </member>\r
2353         <member name="M:log4net.Appender.AppenderCollection.Enumerator.#ctor(log4net.Appender.AppenderCollection)">\r
2354             <summary>\r
2355             Initializes a new instance of the <c>Enumerator</c> class.\r
2356             </summary>\r
2357             <param name="tc"></param>\r
2358         </member>\r
2359         <member name="M:log4net.Appender.AppenderCollection.Enumerator.MoveNext">\r
2360             <summary>\r
2361             Advances the enumerator to the next element in the collection.\r
2362             </summary>\r
2363             <returns>\r
2364             <c>true</c> if the enumerator was successfully advanced to the next element; \r
2365             <c>false</c> if the enumerator has passed the end of the collection.\r
2366             </returns>\r
2367             <exception cref="T:System.InvalidOperationException">\r
2368             The collection was modified after the enumerator was created.\r
2369             </exception>\r
2370         </member>\r
2371         <member name="M:log4net.Appender.AppenderCollection.Enumerator.Reset">\r
2372             <summary>\r
2373             Sets the enumerator to its initial position, before the first element in the collection.\r
2374             </summary>\r
2375         </member>\r
2376         <member name="P:log4net.Appender.AppenderCollection.Enumerator.Current">\r
2377             <summary>\r
2378             Gets the current element in the collection.\r
2379             </summary>\r
2380         </member>\r
2381         <member name="T:log4net.Appender.AppenderCollection.ReadOnlyAppenderCollection">\r
2382             <exclude/>\r
2383         </member>\r
2384         <member name="T:log4net.Appender.AspNetTraceAppender">\r
2385             <summary>\r
2386             <para>\r
2387             Appends log events to the ASP.NET <see cref="T:System.Web.TraceContext"/> system.\r
2388             </para>\r
2389             </summary>\r
2390             <remarks>\r
2391             <para>\r
2392             Diagnostic information and tracing messages that you specify are appended to the output \r
2393             of the page that is sent to the requesting browser. Optionally, you can view this information\r
2394             from a separate trace viewer (Trace.axd) that displays trace information for every page in a \r
2395             given application.\r
2396             </para>\r
2397             <para>\r
2398             Trace statements are processed and displayed only when tracing is enabled. You can control \r
2399             whether tracing is displayed to a page, to the trace viewer, or both.\r
2400             </para>\r
2401             <para>\r
2402             The logging event is passed to the <see cref="M:System.Web.TraceContext.Write(System.String)"/> or \r
2403             <see cref="M:System.Web.TraceContext.Warn(System.String)"/> method depending on the level of the logging event.\r
2404             </para>\r
2405             </remarks>\r
2406             <author>Nicko Cadell</author>\r
2407             <author>Gert Driesen</author>\r
2408         </member>\r
2409         <member name="M:log4net.Appender.AspNetTraceAppender.#ctor">\r
2410             <summary>\r
2411             Initializes a new instance of the <see cref="T:log4net.Appender.AspNetTraceAppender"/> class.\r
2412             </summary>\r
2413             <remarks>\r
2414             <para>\r
2415             Default constructor.\r
2416             </para>\r
2417             </remarks>\r
2418         </member>\r
2419         <member name="M:log4net.Appender.AspNetTraceAppender.Append(log4net.Core.LoggingEvent)">\r
2420             <summary>\r
2421             Write the logging event to the ASP.NET trace\r
2422             </summary>\r
2423             <param name="loggingEvent">the event to log</param>\r
2424             <remarks>\r
2425             <para>\r
2426             Write the logging event to the ASP.NET trace\r
2427             <c>HttpContext.Current.Trace</c> \r
2428             (<see cref="T:System.Web.TraceContext"/>).\r
2429             </para>\r
2430             </remarks>\r
2431         </member>\r
2432         <member name="P:log4net.Appender.AspNetTraceAppender.RequiresLayout">\r
2433             <summary>\r
2434             This appender requires a <see cref="N:log4net.Layout"/> to be set.\r
2435             </summary>\r
2436             <value><c>true</c></value>\r
2437             <remarks>\r
2438             <para>\r
2439             This appender requires a <see cref="N:log4net.Layout"/> to be set.\r
2440             </para>\r
2441             </remarks>\r
2442         </member>\r
2443         <member name="T:log4net.Appender.BufferingForwardingAppender">\r
2444             <summary>\r
2445             Buffers events and then forwards them to attached appenders.\r
2446             </summary>\r
2447             <remarks>\r
2448             <para>\r
2449             The events are buffered in this appender until conditions are\r
2450             met to allow the appender to deliver the events to the attached \r
2451             appenders. See <see cref="T:log4net.Appender.BufferingAppenderSkeleton"/> for the\r
2452             conditions that cause the buffer to be sent.\r
2453             </para>\r
2454             <para>The forwarding appender can be used to specify different \r
2455             thresholds and filters for the same appender at different locations \r
2456             within the hierarchy.\r
2457             </para>\r
2458             </remarks>\r
2459             <author>Nicko Cadell</author>\r
2460             <author>Gert Driesen</author>\r
2461         </member>\r
2462         <member name="T:log4net.Core.IAppenderAttachable">\r
2463             <summary>\r
2464             Interface for attaching appenders to objects.\r
2465             </summary>\r
2466             <remarks>\r
2467             <para>\r
2468             Interface for attaching, removing and retrieving appenders.\r
2469             </para>\r
2470             </remarks>\r
2471             <author>Nicko Cadell</author>\r
2472             <author>Gert Driesen</author>\r
2473         </member>\r
2474         <member name="M:log4net.Core.IAppenderAttachable.AddAppender(log4net.Appender.IAppender)">\r
2475             <summary>\r
2476             Attaches an appender.\r
2477             </summary>\r
2478             <param name="appender">The appender to add.</param>\r
2479             <remarks>\r
2480             <para>\r
2481             Add the specified appender. The implementation may\r
2482             choose to allow or deny duplicate appenders.\r
2483             </para>\r
2484             </remarks>\r
2485         </member>\r
2486         <member name="M:log4net.Core.IAppenderAttachable.GetAppender(System.String)">\r
2487             <summary>\r
2488             Gets an attached appender with the specified name.\r
2489             </summary>\r
2490             <param name="name">The name of the appender to get.</param>\r
2491             <returns>\r
2492             The appender with the name specified, or <c>null</c> if no appender with the\r
2493             specified name is found.\r
2494             </returns>\r
2495             <remarks>\r
2496             <para>\r
2497             Returns an attached appender with the <paramref name="name"/> specified.\r
2498             If no appender with the specified name is found <c>null</c> will be\r
2499             returned.\r
2500             </para>\r
2501             </remarks>\r
2502         </member>\r
2503         <member name="M:log4net.Core.IAppenderAttachable.RemoveAllAppenders">\r
2504             <summary>\r
2505             Removes all attached appenders.\r
2506             </summary>\r
2507             <remarks>\r
2508             <para>\r
2509             Removes and closes all attached appenders\r
2510             </para>\r
2511             </remarks>\r
2512         </member>\r
2513         <member name="M:log4net.Core.IAppenderAttachable.RemoveAppender(log4net.Appender.IAppender)">\r
2514             <summary>\r
2515             Removes the specified appender from the list of attached appenders.\r
2516             </summary>\r
2517             <param name="appender">The appender to remove.</param>\r
2518             <returns>The appender removed from the list</returns>\r
2519             <remarks>\r
2520             <para>\r
2521             The appender removed is not closed.\r
2522             If you are discarding the appender you must call\r
2523             <see cref="M:log4net.Appender.IAppender.Close"/> on the appender removed.\r
2524             </para>\r
2525             </remarks>\r
2526         </member>\r
2527         <member name="M:log4net.Core.IAppenderAttachable.RemoveAppender(System.String)">\r
2528             <summary>\r
2529             Removes the appender with the specified name from the list of appenders.\r
2530             </summary>\r
2531             <param name="name">The name of the appender to remove.</param>\r
2532             <returns>The appender removed from the list</returns>\r
2533             <remarks>\r
2534             <para>\r
2535             The appender removed is not closed.\r
2536             If you are discarding the appender you must call\r
2537             <see cref="M:log4net.Appender.IAppender.Close"/> on the appender removed.\r
2538             </para>\r
2539             </remarks>\r
2540         </member>\r
2541         <member name="P:log4net.Core.IAppenderAttachable.Appenders">\r
2542             <summary>\r
2543             Gets all attached appenders.\r
2544             </summary>\r
2545             <value>\r
2546             A collection of attached appenders.\r
2547             </value>\r
2548             <remarks>\r
2549             <para>\r
2550             Gets a collection of attached appenders.\r
2551             If there are no attached appenders the\r
2552             implementation should return an empty \r
2553             collection rather than <c>null</c>.\r
2554             </para>\r
2555             </remarks>\r
2556         </member>\r
2557         <member name="M:log4net.Appender.BufferingForwardingAppender.#ctor">\r
2558             <summary>\r
2559             Initializes a new instance of the <see cref="T:log4net.Appender.BufferingForwardingAppender"/> class.\r
2560             </summary>\r
2561             <remarks>\r
2562             <para>\r
2563             Default constructor.\r
2564             </para>\r
2565             </remarks>\r
2566         </member>\r
2567         <member name="M:log4net.Appender.BufferingForwardingAppender.OnClose">\r
2568             <summary>\r
2569             Closes the appender and releases resources.\r
2570             </summary>\r
2571             <remarks>\r
2572             <para>\r
2573             Releases any resources allocated within the appender such as file handles, \r
2574             network connections, etc.\r
2575             </para>\r
2576             <para>\r
2577             It is a programming error to append to a closed appender.\r
2578             </para>\r
2579             </remarks>\r
2580         </member>\r
2581         <member name="M:log4net.Appender.BufferingForwardingAppender.SendBuffer(log4net.Core.LoggingEvent[])">\r
2582             <summary>\r
2583             Send the events.\r
2584             </summary>\r
2585             <param name="events">The events that need to be send.</param>\r
2586             <remarks>\r
2587             <para>\r
2588             Forwards the events to the attached appenders.\r
2589             </para>\r
2590             </remarks>\r
2591         </member>\r
2592         <member name="M:log4net.Appender.BufferingForwardingAppender.AddAppender(log4net.Appender.IAppender)">\r
2593             <summary>\r
2594             Adds an <see cref="T:log4net.Appender.IAppender"/> to the list of appenders of this\r
2595             instance.\r
2596             </summary>\r
2597             <param name="newAppender">The <see cref="T:log4net.Appender.IAppender"/> to add to this appender.</param>\r
2598             <remarks>\r
2599             <para>\r
2600             If the specified <see cref="T:log4net.Appender.IAppender"/> is already in the list of\r
2601             appenders, then it won't be added again.\r
2602             </para>\r
2603             </remarks>\r
2604         </member>\r
2605         <member name="M:log4net.Appender.BufferingForwardingAppender.GetAppender(System.String)">\r
2606             <summary>\r
2607             Looks for the appender with the specified name.\r
2608             </summary>\r
2609             <param name="name">The name of the appender to lookup.</param>\r
2610             <returns>\r
2611             The appender with the specified name, or <c>null</c>.\r
2612             </returns>\r
2613             <remarks>\r
2614             <para>\r
2615             Get the named appender attached to this buffering appender.\r
2616             </para>\r
2617             </remarks>\r
2618         </member>\r
2619         <member name="M:log4net.Appender.BufferingForwardingAppender.RemoveAllAppenders">\r
2620             <summary>\r
2621             Removes all previously added appenders from this appender.\r
2622             </summary>\r
2623             <remarks>\r
2624             <para>\r
2625             This is useful when re-reading configuration information.\r
2626             </para>\r
2627             </remarks>\r
2628         </member>\r
2629         <member name="M:log4net.Appender.BufferingForwardingAppender.RemoveAppender(log4net.Appender.IAppender)">\r
2630             <summary>\r
2631             Removes the specified appender from the list of appenders.\r
2632             </summary>\r
2633             <param name="appender">The appender to remove.</param>\r
2634             <returns>The appender removed from the list</returns>\r
2635             <remarks>\r
2636             The appender removed is not closed.\r
2637             If you are discarding the appender you must call\r
2638             <see cref="M:log4net.Appender.IAppender.Close"/> on the appender removed.\r
2639             </remarks>\r
2640         </member>\r
2641         <member name="M:log4net.Appender.BufferingForwardingAppender.RemoveAppender(System.String)">\r
2642             <summary>\r
2643             Removes the appender with the specified name from the list of appenders.\r
2644             </summary>\r
2645             <param name="name">The name of the appender to remove.</param>\r
2646             <returns>The appender removed from the list</returns>\r
2647             <remarks>\r
2648             The appender removed is not closed.\r
2649             If you are discarding the appender you must call\r
2650             <see cref="M:log4net.Appender.IAppender.Close"/> on the appender removed.\r
2651             </remarks>\r
2652         </member>\r
2653         <member name="F:log4net.Appender.BufferingForwardingAppender.m_appenderAttachedImpl">\r
2654             <summary>\r
2655             Implementation of the <see cref="T:log4net.Core.IAppenderAttachable"/> interface\r
2656             </summary>\r
2657         </member>\r
2658         <member name="P:log4net.Appender.BufferingForwardingAppender.Appenders">\r
2659             <summary>\r
2660             Gets the appenders contained in this appender as an \r
2661             <see cref="T:System.Collections.ICollection"/>.\r
2662             </summary>\r
2663             <remarks>\r
2664             If no appenders can be found, then an <see cref="T:log4net.Util.EmptyCollection"/> \r
2665             is returned.\r
2666             </remarks>\r
2667             <returns>\r
2668             A collection of the appenders in this appender.\r
2669             </returns>\r
2670         </member>\r
2671         <member name="T:log4net.Appender.ColoredConsoleAppender">\r
2672             <summary>\r
2673             Appends logging events to the console.\r
2674             </summary>\r
2675             <remarks>\r
2676             <para>\r
2677             ColoredConsoleAppender appends log events to the standard output stream\r
2678             or the error output stream using a layout specified by the \r
2679             user. It also allows the color of a specific type of message to be set.\r
2680             </para>\r
2681             <para>\r
2682             By default, all output is written to the console's standard output stream.\r
2683             The <see cref="P:log4net.Appender.ColoredConsoleAppender.Target"/> property can be set to direct the output to the\r
2684             error stream.\r
2685             </para>\r
2686             <para>\r
2687             NOTE: This appender writes directly to the application's attached console\r
2688             not to the <c>System.Console.Out</c> or <c>System.Console.Error</c> <c>TextWriter</c>.\r
2689             The <c>System.Console.Out</c> and <c>System.Console.Error</c> streams can be\r
2690             programmatically redirected (for example NUnit does this to capture program output).\r
2691             This appender will ignore these redirections because it needs to use Win32\r
2692             API calls to colorize the output. To respect these redirections the <see cref="T:log4net.Appender.ConsoleAppender"/>\r
2693             must be used.\r
2694             </para>\r
2695             <para>\r
2696             When configuring the colored console appender, mapping should be\r
2697             specified to map a logging level to a color. For example:\r
2698             </para>\r
2699             <code lang="XML" escaped="true">\r
2700             <mapping>\r
2701                 <level value="ERROR"/>\r
2702                 <foreColor value="White"/>\r
2703                 <backColor value="Red, HighIntensity"/>\r
2704             </mapping>\r
2705             <mapping>\r
2706                 <level value="DEBUG"/>\r
2707                 <backColor value="Green"/>\r
2708             </mapping>\r
2709             </code>\r
2710             <para>\r
2711             The Level is the standard log4net logging level and ForeColor and BackColor can be any\r
2712             combination of the following values:\r
2713             <list type="bullet">\r
2714             <item><term>Blue</term><description></description></item>\r
2715             <item><term>Green</term><description></description></item>\r
2716             <item><term>Red</term><description></description></item>\r
2717             <item><term>White</term><description></description></item>\r
2718             <item><term>Yellow</term><description></description></item>\r
2719             <item><term>Purple</term><description></description></item>\r
2720             <item><term>Cyan</term><description></description></item>\r
2721             <item><term>HighIntensity</term><description></description></item>\r
2722             </list>\r
2723             </para>\r
2724             </remarks>\r
2725             <author>Rick Hobbs</author>\r
2726             <author>Nicko Cadell</author>\r
2727         </member>\r
2728         <member name="F:log4net.Appender.ColoredConsoleAppender.ConsoleOut">\r
2729             <summary>\r
2730             The <see cref="P:log4net.Appender.ColoredConsoleAppender.Target"/> to use when writing to the Console \r
2731             standard output stream.\r
2732             </summary>\r
2733             <remarks>\r
2734             <para>\r
2735             The <see cref="P:log4net.Appender.ColoredConsoleAppender.Target"/> to use when writing to the Console \r
2736             standard output stream.\r
2737             </para>\r
2738             </remarks>\r
2739         </member>\r
2740         <member name="F:log4net.Appender.ColoredConsoleAppender.ConsoleError">\r
2741             <summary>\r
2742             The <see cref="P:log4net.Appender.ColoredConsoleAppender.Target"/> to use when writing to the Console \r
2743             standard error output stream.\r
2744             </summary>\r
2745             <remarks>\r
2746             <para>\r
2747             The <see cref="P:log4net.Appender.ColoredConsoleAppender.Target"/> to use when writing to the Console \r
2748             standard error output stream.\r
2749             </para>\r
2750             </remarks>\r
2751         </member>\r
2752         <member name="M:log4net.Appender.ColoredConsoleAppender.#ctor">\r
2753             <summary>\r
2754             Initializes a new instance of the <see cref="T:log4net.Appender.ColoredConsoleAppender"/> class.\r
2755             </summary>\r
2756             <remarks>\r
2757             The instance of the <see cref="T:log4net.Appender.ColoredConsoleAppender"/> class is set up to write \r
2758             to the standard output stream.\r
2759             </remarks>\r
2760         </member>\r
2761         <member name="M:log4net.Appender.ColoredConsoleAppender.#ctor(log4net.Layout.ILayout)">\r
2762             <summary>\r
2763             Initializes a new instance of the <see cref="T:log4net.Appender.ColoredConsoleAppender"/> class\r
2764             with the specified layout.\r
2765             </summary>\r
2766             <param name="layout">the layout to use for this appender</param>\r
2767             <remarks>\r
2768             The instance of the <see cref="T:log4net.Appender.ColoredConsoleAppender"/> class is set up to write \r
2769             to the standard output stream.\r
2770             </remarks>\r
2771         </member>\r
2772         <member name="M:log4net.Appender.ColoredConsoleAppender.#ctor(log4net.Layout.ILayout,System.Boolean)">\r
2773             <summary>\r
2774             Initializes a new instance of the <see cref="T:log4net.Appender.ColoredConsoleAppender"/> class\r
2775             with the specified layout.\r
2776             </summary>\r
2777             <param name="layout">the layout to use for this appender</param>\r
2778             <param name="writeToErrorStream">flag set to <c>true</c> to write to the console error stream</param>\r
2779             <remarks>\r
2780             When <paramref name="writeToErrorStream"/> is set to <c>true</c>, output is written to\r
2781             the standard error output stream.  Otherwise, output is written to the standard\r
2782             output stream.\r
2783             </remarks>\r
2784         </member>\r
2785         <member name="M:log4net.Appender.ColoredConsoleAppender.AddMapping(log4net.Appender.ColoredConsoleAppender.LevelColors)">\r
2786             <summary>\r
2787             Add a mapping of level to color - done by the config file\r
2788             </summary>\r
2789             <param name="mapping">The mapping to add</param>\r
2790             <remarks>\r
2791             <para>\r
2792             Add a <see cref="T:log4net.Appender.ColoredConsoleAppender.LevelColors"/> mapping to this appender.\r
2793             Each mapping defines the foreground and background colors\r
2794             for a level.\r
2795             </para>\r
2796             </remarks>\r
2797         </member>\r
2798         <member name="M:log4net.Appender.ColoredConsoleAppender.Append(log4net.Core.LoggingEvent)">\r
2799             <summary>\r
2800             This method is called by the <see cref="M:log4net.Appender.AppenderSkeleton.DoAppend(log4net.Core.LoggingEvent)"/> method.\r
2801             </summary>\r
2802             <param name="loggingEvent">The event to log.</param>\r
2803             <remarks>\r
2804             <para>\r
2805             Writes the event to the console.\r
2806             </para>\r
2807             <para>\r
2808             The format of the output will depend on the appender's layout.\r
2809             </para>\r
2810             </remarks>\r
2811         </member>\r
2812         <member name="M:log4net.Appender.ColoredConsoleAppender.ActivateOptions">\r
2813             <summary>\r
2814             Initialize the options for this appender\r
2815             </summary>\r
2816             <remarks>\r
2817             <para>\r
2818             Initialize the level to color mappings set on this appender.\r
2819             </para>\r
2820             </remarks>\r
2821         </member>\r
2822         <member name="F:log4net.Appender.ColoredConsoleAppender.m_writeToErrorStream">\r
2823             <summary>\r
2824             Flag to write output to the error stream rather than the standard output stream\r
2825             </summary>\r
2826         </member>\r
2827         <member name="F:log4net.Appender.ColoredConsoleAppender.m_levelMapping">\r
2828             <summary>\r
2829             Mapping from level object to color value\r
2830             </summary>\r
2831         </member>\r
2832         <member name="F:log4net.Appender.ColoredConsoleAppender.m_consoleOutputWriter">\r
2833             <summary>\r
2834             The console output stream writer to write to\r
2835             </summary>\r
2836             <remarks>\r
2837             <para>\r
2838             This writer is not thread safe.\r
2839             </para>\r
2840             </remarks>\r
2841         </member>\r
2842         <member name="P:log4net.Appender.ColoredConsoleAppender.Target">\r
2843             <summary>\r
2844             Target is the value of the console output stream.\r
2845             This is either <c>"Console.Out"</c> or <c>"Console.Error"</c>.\r
2846             </summary>\r
2847             <value>\r
2848             Target is the value of the console output stream.\r
2849             This is either <c>"Console.Out"</c> or <c>"Console.Error"</c>.\r
2850             </value>\r
2851             <remarks>\r
2852             <para>\r
2853             Target is the value of the console output stream.\r
2854             This is either <c>"Console.Out"</c> or <c>"Console.Error"</c>.\r
2855             </para>\r
2856             </remarks>\r
2857         </member>\r
2858         <member name="P:log4net.Appender.ColoredConsoleAppender.RequiresLayout">\r
2859             <summary>\r
2860             This appender requires a <see cref="N:log4net.Layout"/> to be set.\r
2861             </summary>\r
2862             <value><c>true</c></value>\r
2863             <remarks>\r
2864             <para>\r
2865             This appender requires a <see cref="N:log4net.Layout"/> to be set.\r
2866             </para>\r
2867             </remarks>\r
2868         </member>\r
2869         <member name="T:log4net.Appender.ColoredConsoleAppender.Colors">\r
2870             <summary>\r
2871             The enum of possible color values for use with the color mapping method\r
2872             </summary>\r
2873             <remarks>\r
2874             <para>\r
2875             The following flags can be combined together to\r
2876             form the colors.\r
2877             </para>\r
2878             </remarks>\r
2879             <seealso cref="T:log4net.Appender.ColoredConsoleAppender"/>\r
2880         </member>\r
2881         <member name="F:log4net.Appender.ColoredConsoleAppender.Colors.Blue">\r
2882             <summary>\r
2883             color is blue\r
2884             </summary>\r
2885         </member>\r
2886         <member name="F:log4net.Appender.ColoredConsoleAppender.Colors.Green">\r
2887             <summary>\r
2888             color is green\r
2889             </summary>\r
2890         </member>\r
2891         <member name="F:log4net.Appender.ColoredConsoleAppender.Colors.Red">\r
2892             <summary>\r
2893             color is red\r
2894             </summary>\r
2895         </member>\r
2896         <member name="F:log4net.Appender.ColoredConsoleAppender.Colors.White">\r
2897             <summary>\r
2898             color is white\r
2899             </summary>\r
2900         </member>\r
2901         <member name="F:log4net.Appender.ColoredConsoleAppender.Colors.Yellow">\r
2902             <summary>\r
2903             color is yellow\r
2904             </summary>\r
2905         </member>\r
2906         <member name="F:log4net.Appender.ColoredConsoleAppender.Colors.Purple">\r
2907             <summary>\r
2908             color is purple\r
2909             </summary>\r
2910         </member>\r
2911         <member name="F:log4net.Appender.ColoredConsoleAppender.Colors.Cyan">\r
2912             <summary>\r
2913             color is cyan\r
2914             </summary>\r
2915         </member>\r
2916         <member name="F:log4net.Appender.ColoredConsoleAppender.Colors.HighIntensity">\r
2917             <summary>\r
2918             color is intensified\r
2919             </summary>\r
2920         </member>\r
2921         <member name="T:log4net.Appender.ColoredConsoleAppender.LevelColors">\r
2922             <summary>\r
2923             A class to act as a mapping between the level that a logging call is made at and\r
2924             the color it should be displayed as.\r
2925             </summary>\r
2926             <remarks>\r
2927             <para>\r
2928             Defines the mapping between a level and the color it should be displayed in.\r
2929             </para>\r
2930             </remarks>\r
2931         </member>\r
2932         <member name="M:log4net.Appender.ColoredConsoleAppender.LevelColors.ActivateOptions">\r
2933             <summary>\r
2934             Initialize the options for the object\r
2935             </summary>\r
2936             <remarks>\r
2937             <para>\r
2938             Combine the <see cref="P:log4net.Appender.ColoredConsoleAppender.LevelColors.ForeColor"/> and <see cref="P:log4net.Appender.ColoredConsoleAppender.LevelColors.BackColor"/> together.\r
2939             </para>\r
2940             </remarks>\r
2941         </member>\r
2942         <member name="P:log4net.Appender.ColoredConsoleAppender.LevelColors.ForeColor">\r
2943             <summary>\r
2944             The mapped foreground color for the specified level\r
2945             </summary>\r
2946             <remarks>\r
2947             <para>\r
2948             Required property.\r
2949             The mapped foreground color for the specified level.\r
2950             </para>\r
2951             </remarks>\r
2952         </member>\r
2953         <member name="P:log4net.Appender.ColoredConsoleAppender.LevelColors.BackColor">\r
2954             <summary>\r
2955             The mapped background color for the specified level\r
2956             </summary>\r
2957             <remarks>\r
2958             <para>\r
2959             Required property.\r
2960             The mapped background color for the specified level.\r
2961             </para>\r
2962             </remarks>\r
2963         </member>\r
2964         <member name="P:log4net.Appender.ColoredConsoleAppender.LevelColors.CombinedColor">\r
2965             <summary>\r
2966             The combined <see cref="P:log4net.Appender.ColoredConsoleAppender.LevelColors.ForeColor"/> and <see cref="P:log4net.Appender.ColoredConsoleAppender.LevelColors.BackColor"/> suitable for \r
2967             setting the console color.\r
2968             </summary>\r
2969         </member>\r
2970         <member name="T:log4net.Appender.ConsoleAppender">\r
2971             <summary>\r
2972             Appends logging events to the console.\r
2973             </summary>\r
2974             <remarks>\r
2975             <para>\r
2976             ConsoleAppender appends log events to the standard output stream\r
2977             or the error output stream using a layout specified by the \r
2978             user.\r
2979             </para>\r
2980             <para>\r
2981             By default, all output is written to the console's standard output stream.\r
2982             The <see cref="P:log4net.Appender.ConsoleAppender.Target"/> property can be set to direct the output to the\r
2983             error stream.\r
2984             </para>\r
2985             <para>\r
2986             NOTE: This appender writes each message to the <c>System.Console.Out</c> or \r
2987             <c>System.Console.Error</c> that is set at the time the event is appended.\r
2988             Therefore it is possible to programmatically redirect the output of this appender \r
2989             (for example NUnit does this to capture program output). While this is the desired\r
2990             behavior of this appender it may have security implications in your application. \r
2991             </para>\r
2992             </remarks>\r
2993             <author>Nicko Cadell</author>\r
2994             <author>Gert Driesen</author>\r
2995         </member>\r
2996         <member name="F:log4net.Appender.ConsoleAppender.ConsoleOut">\r
2997             <summary>\r
2998             The <see cref="P:log4net.Appender.ConsoleAppender.Target"/> to use when writing to the Console \r
2999             standard output stream.\r
3000             </summary>\r
3001             <remarks>\r
3002             <para>\r
3003             The <see cref="P:log4net.Appender.ConsoleAppender.Target"/> to use when writing to the Console \r
3004             standard output stream.\r
3005             </para>\r
3006             </remarks>\r
3007         </member>\r
3008         <member name="F:log4net.Appender.ConsoleAppender.ConsoleError">\r
3009             <summary>\r
3010             The <see cref="P:log4net.Appender.ConsoleAppender.Target"/> to use when writing to the Console \r
3011             standard error output stream.\r
3012             </summary>\r
3013             <remarks>\r
3014             <para>\r
3015             The <see cref="P:log4net.Appender.ConsoleAppender.Target"/> to use when writing to the Console \r
3016             standard error output stream.\r
3017             </para>\r
3018             </remarks>\r
3019         </member>\r
3020         <member name="M:log4net.Appender.ConsoleAppender.#ctor">\r
3021             <summary>\r
3022             Initializes a new instance of the <see cref="T:log4net.Appender.ConsoleAppender"/> class.\r
3023             </summary>\r
3024             <remarks>\r
3025             The instance of the <see cref="T:log4net.Appender.ConsoleAppender"/> class is set up to write \r
3026             to the standard output stream.\r
3027             </remarks>\r
3028         </member>\r
3029         <member name="M:log4net.Appender.ConsoleAppender.#ctor(log4net.Layout.ILayout)">\r
3030             <summary>\r
3031             Initializes a new instance of the <see cref="T:log4net.Appender.ConsoleAppender"/> class\r
3032             with the specified layout.\r
3033             </summary>\r
3034             <param name="layout">the layout to use for this appender</param>\r
3035             <remarks>\r
3036             The instance of the <see cref="T:log4net.Appender.ConsoleAppender"/> class is set up to write \r
3037             to the standard output stream.\r
3038             </remarks>\r
3039         </member>\r
3040         <member name="M:log4net.Appender.ConsoleAppender.#ctor(log4net.Layout.ILayout,System.Boolean)">\r
3041             <summary>\r
3042             Initializes a new instance of the <see cref="T:log4net.Appender.ConsoleAppender"/> class\r
3043             with the specified layout.\r
3044             </summary>\r
3045             <param name="layout">the layout to use for this appender</param>\r
3046             <param name="writeToErrorStream">flag set to <c>true</c> to write to the console error stream</param>\r
3047             <remarks>\r
3048             When <paramref name="writeToErrorStream"/> is set to <c>true</c>, output is written to\r
3049             the standard error output stream.  Otherwise, output is written to the standard\r
3050             output stream.\r
3051             </remarks>\r
3052         </member>\r
3053         <member name="M:log4net.Appender.ConsoleAppender.Append(log4net.Core.LoggingEvent)">\r
3054             <summary>\r
3055             This method is called by the <see cref="M:log4net.Appender.AppenderSkeleton.DoAppend(log4net.Core.LoggingEvent)"/> method.\r
3056             </summary>\r
3057             <param name="loggingEvent">The event to log.</param>\r
3058             <remarks>\r
3059             <para>\r
3060             Writes the event to the console.\r
3061             </para>\r
3062             <para>\r
3063             The format of the output will depend on the appender's layout.\r
3064             </para>\r
3065             </remarks>\r
3066         </member>\r
3067         <member name="P:log4net.Appender.ConsoleAppender.Target">\r
3068             <summary>\r
3069             Target is the value of the console output stream.\r
3070             This is either <c>"Console.Out"</c> or <c>"Console.Error"</c>.\r
3071             </summary>\r
3072             <value>\r
3073             Target is the value of the console output stream.\r
3074             This is either <c>"Console.Out"</c> or <c>"Console.Error"</c>.\r
3075             </value>\r
3076             <remarks>\r
3077             <para>\r
3078             Target is the value of the console output stream.\r
3079             This is either <c>"Console.Out"</c> or <c>"Console.Error"</c>.\r
3080             </para>\r
3081             </remarks>\r
3082         </member>\r
3083         <member name="P:log4net.Appender.ConsoleAppender.RequiresLayout">\r
3084             <summary>\r
3085             This appender requires a <see cref="N:log4net.Layout"/> to be set.\r
3086             </summary>\r
3087             <value><c>true</c></value>\r
3088             <remarks>\r
3089             <para>\r
3090             This appender requires a <see cref="N:log4net.Layout"/> to be set.\r
3091             </para>\r
3092             </remarks>\r
3093         </member>\r
3094         <member name="T:log4net.Appender.DebugAppender">\r
3095             <summary>\r
3096             Appends log events to the <see cref="T:System.Diagnostics.Debug"/> system.\r
3097             </summary>\r
3098             <remarks>\r
3099             <para>\r
3100             The application configuration file can be used to control what listeners \r
3101             are actually used. See the MSDN documentation for the \r
3102             <see cref="T:System.Diagnostics.Debug"/> class for details on configuring the\r
3103             debug system.\r
3104             </para>\r
3105             <para>\r
3106             Events are written using the <see cref="M:System.Diagnostics.Debug.Write(System.String,System.String)"/>\r
3107             method. The event's logger name is passed as the value for the category name to the Write method.\r
3108             </para>\r
3109             </remarks>\r
3110             <author>Nicko Cadell</author>\r
3111         </member>\r
3112         <member name="M:log4net.Appender.DebugAppender.#ctor">\r
3113             <summary>\r
3114             Initializes a new instance of the <see cref="T:log4net.Appender.DebugAppender"/>.\r
3115             </summary>\r
3116             <remarks>\r
3117             <para>\r
3118             Default constructor.\r
3119             </para>\r
3120             </remarks>\r
3121         </member>\r
3122         <member name="M:log4net.Appender.DebugAppender.#ctor(log4net.Layout.ILayout)">\r
3123             <summary>\r
3124             Initializes a new instance of the <see cref="T:log4net.Appender.DebugAppender"/> \r
3125             with a specified layout.\r
3126             </summary>\r
3127             <param name="layout">The layout to use with this appender.</param>\r
3128             <remarks>\r
3129             <para>\r
3130             Obsolete constructor.\r
3131             </para>\r
3132             </remarks>\r
3133         </member>\r
3134         <member name="M:log4net.Appender.DebugAppender.Append(log4net.Core.LoggingEvent)">\r
3135             <summary>\r
3136             Writes the logging event to the <see cref="T:System.Diagnostics.Debug"/> system.\r
3137             </summary>\r
3138             <param name="loggingEvent">The event to log.</param>\r
3139             <remarks>\r
3140             <para>\r
3141             Writes the logging event to the <see cref="T:System.Diagnostics.Debug"/> system.\r
3142             If <see cref="P:log4net.Appender.DebugAppender.ImmediateFlush"/> is <c>true</c> then the <see cref="M:System.Diagnostics.Debug.Flush"/>\r
3143             is called.\r
3144             </para>\r
3145             </remarks>\r
3146         </member>\r
3147         <member name="F:log4net.Appender.DebugAppender.m_immediateFlush">\r
3148             <summary>\r
3149             Immediate flush means that the underlying writer or output stream\r
3150             will be flushed at the end of each append operation.\r
3151             </summary>\r
3152             <remarks>\r
3153             <para>\r
3154             Immediate flush is slower but ensures that each append request is \r
3155             actually written. If <see cref="P:log4net.Appender.DebugAppender.ImmediateFlush"/> is set to\r
3156             <c>false</c>, then there is a good chance that the last few\r
3157             logs events are not actually written to persistent media if and\r
3158             when the application crashes.\r
3159             </para>\r
3160             <para>\r
3161             The default value is <c>true</c>.</para>\r
3162             </remarks>\r
3163         </member>\r
3164         <member name="P:log4net.Appender.DebugAppender.ImmediateFlush">\r
3165             <summary>\r
3166             Gets or sets a value that indicates whether the appender will \r
3167             flush at the end of each write.\r
3168             </summary>\r
3169             <remarks>\r
3170             <para>The default behavior is to flush at the end of each \r
3171             write. If the option is set to<c>false</c>, then the underlying \r
3172             stream can defer writing to physical medium to a later time. \r
3173             </para>\r
3174             <para>\r
3175             Avoiding the flush operation at the end of each append results \r
3176             in a performance gain of 10 to 20 percent. However, there is safety\r
3177             trade-off involved in skipping flushing. Indeed, when flushing is\r
3178             skipped, then it is likely that the last few log events will not\r
3179             be recorded on disk when the application exits. This is a high\r
3180             price to pay even for a 20% performance gain.\r
3181             </para>\r
3182             </remarks>\r
3183         </member>\r
3184         <member name="P:log4net.Appender.DebugAppender.RequiresLayout">\r
3185             <summary>\r
3186             This appender requires a <see cref="N:log4net.Layout"/> to be set.\r
3187             </summary>\r
3188             <value><c>true</c></value>\r
3189             <remarks>\r
3190             <para>\r
3191             This appender requires a <see cref="N:log4net.Layout"/> to be set.\r
3192             </para>\r
3193             </remarks>\r
3194         </member>\r
3195         <member name="T:log4net.Appender.EventLogAppender">\r
3196             <summary>\r
3197             Writes events to the system event log.\r
3198             </summary>\r
3199             <remarks>\r
3200             <para>\r
3201             The <c>EventID</c> of the event log entry can be\r
3202             set using the <c>EventLogEventID</c> property (<see cref="P:log4net.Core.LoggingEvent.Properties"/>)\r
3203             on the <see cref="T:log4net.Core.LoggingEvent"/>.\r
3204             </para>\r
3205             <para>\r
3206             There is a limit of 32K characters for an event log message\r
3207             </para>\r
3208             <para>\r
3209             When configuring the EventLogAppender a mapping can be\r
3210             specified to map a logging level to an event log entry type. For example:\r
3211             </para>\r
3212             <code lang="XML">\r
3213             &lt;mapping&gt;\r
3214                 &lt;level value="ERROR" /&gt;\r
3215                 &lt;eventLogEntryType value="Error" /&gt;\r
3216             &lt;/mapping&gt;\r
3217             &lt;mapping&gt;\r
3218                 &lt;level value="DEBUG" /&gt;\r
3219                 &lt;eventLogEntryType value="Information" /&gt;\r
3220             &lt;/mapping&gt;\r
3221             </code>\r
3222             <para>\r
3223             The Level is the standard log4net logging level and eventLogEntryType can be any value\r
3224             from the <see cref="T:System.Diagnostics.EventLogEntryType"/> enum, i.e.:\r
3225             <list type="bullet">\r
3226             <item><term>Error</term><description>an error event</description></item>\r
3227             <item><term>Warning</term><description>a warning event</description></item>\r
3228             <item><term>Information</term><description>an informational event</description></item>\r
3229             </list>\r
3230             </para>\r
3231             </remarks>\r
3232             <author>Aspi Havewala</author>\r
3233             <author>Douglas de la Torre</author>\r
3234             <author>Nicko Cadell</author>\r
3235             <author>Gert Driesen</author>\r
3236             <author>Thomas Voss</author>\r
3237         </member>\r
3238         <member name="M:log4net.Appender.EventLogAppender.#ctor">\r
3239             <summary>\r
3240             Initializes a new instance of the <see cref="T:log4net.Appender.EventLogAppender"/> class.\r
3241             </summary>\r
3242             <remarks>\r
3243             <para>\r
3244             Default constructor.\r
3245             </para>\r
3246             </remarks>\r
3247         </member>\r
3248         <member name="M:log4net.Appender.EventLogAppender.#ctor(log4net.Layout.ILayout)">\r
3249             <summary>\r
3250             Initializes a new instance of the <see cref="T:log4net.Appender.EventLogAppender"/> class\r
3251             with the specified <see cref="T:log4net.Layout.ILayout"/>.\r
3252             </summary>\r
3253             <param name="layout">The <see cref="T:log4net.Layout.ILayout"/> to use with this appender.</param>\r
3254             <remarks>\r
3255             <para>\r
3256             Obsolete constructor.\r
3257             </para>\r
3258             </remarks>\r
3259         </member>\r
3260         <member name="M:log4net.Appender.EventLogAppender.AddMapping(log4net.Appender.EventLogAppender.Level2EventLogEntryType)">\r
3261             <summary>\r
3262             Add a mapping of level to <see cref="T:System.Diagnostics.EventLogEntryType"/> - done by the config file\r
3263             </summary>\r
3264             <param name="mapping">The mapping to add</param>\r
3265             <remarks>\r
3266             <para>\r
3267             Add a <see cref="T:log4net.Appender.EventLogAppender.Level2EventLogEntryType"/> mapping to this appender.\r
3268             Each mapping defines the event log entry type for a level.\r
3269             </para>\r
3270             </remarks>\r
3271         </member>\r
3272         <member name="M:log4net.Appender.EventLogAppender.ActivateOptions">\r
3273             <summary>\r
3274             Initialize the appender based on the options set\r
3275             </summary>\r
3276             <remarks>\r
3277             <para>\r
3278             This is part of the <see cref="T:log4net.Core.IOptionHandler"/> delayed object\r
3279             activation scheme. The <see cref="M:log4net.Appender.EventLogAppender.ActivateOptions"/> method must \r
3280             be called on this object after the configuration properties have\r
3281             been set. Until <see cref="M:log4net.Appender.EventLogAppender.ActivateOptions"/> is called this\r
3282             object is in an undefined state and must not be used. \r
3283             </para>\r
3284             <para>\r
3285             If any of the configuration properties are modified then \r
3286             <see cref="M:log4net.Appender.EventLogAppender.ActivateOptions"/> must be called again.\r
3287             </para>\r
3288             </remarks>\r
3289         </member>\r
3290         <member name="M:log4net.Appender.EventLogAppender.CreateEventSource(System.String,System.String,System.String)">\r
3291             <summary>\r
3292             Create an event log source\r
3293             </summary>\r
3294             <remarks>\r
3295             Uses different API calls under NET_2_0\r
3296             </remarks>\r
3297         </member>\r
3298         <member name="M:log4net.Appender.EventLogAppender.Append(log4net.Core.LoggingEvent)">\r
3299             <summary>\r
3300             This method is called by the <see cref="M:log4net.Appender.AppenderSkeleton.DoAppend(log4net.Core.LoggingEvent)"/>\r
3301             method. \r
3302             </summary>\r
3303             <param name="loggingEvent">the event to log</param>\r
3304             <remarks>\r
3305             <para>Writes the event to the system event log using the \r
3306             <see cref="P:log4net.Appender.EventLogAppender.ApplicationName"/>.</para>\r
3307             \r
3308             <para>If the event has an <c>EventID</c> property (see <see cref="P:log4net.Core.LoggingEvent.Properties"/>)\r
3309             set then this integer will be used as the event log event id.</para>\r
3310             \r
3311             <para>\r
3312             There is a limit of 32K characters for an event log message\r
3313             </para>\r
3314             </remarks>\r
3315         </member>\r
3316         <member name="M:log4net.Appender.EventLogAppender.GetEntryType(log4net.Core.Level)">\r
3317             <summary>\r
3318             Get the equivalent <see cref="T:System.Diagnostics.EventLogEntryType"/> for a <see cref="T:log4net.Core.Level"/> <paramref name="p"/>\r
3319             </summary>\r
3320             <param name="level">the Level to convert to an EventLogEntryType</param>\r
3321             <returns>The equivalent <see cref="T:System.Diagnostics.EventLogEntryType"/> for a <see cref="T:log4net.Core.Level"/> <paramref name="p"/></returns>\r
3322             <remarks>\r
3323             Because there are fewer applicable <see cref="T:System.Diagnostics.EventLogEntryType"/>\r
3324             values to use in logging levels than there are in the \r
3325             <see cref="T:log4net.Core.Level"/> this is a one way mapping. There is\r
3326             a loss of information during the conversion.\r
3327             </remarks>\r
3328         </member>\r
3329         <member name="F:log4net.Appender.EventLogAppender.m_logName">\r
3330             <summary>\r
3331             The log name is the section in the event logs where the messages\r
3332             are stored.\r
3333             </summary>\r
3334         </member>\r
3335         <member name="F:log4net.Appender.EventLogAppender.m_applicationName">\r
3336             <summary>\r
3337             Name of the application to use when logging.  This appears in the\r
3338             application column of the event log named by <see cref="F:log4net.Appender.EventLogAppender.m_logName"/>.\r
3339             </summary>\r
3340         </member>\r
3341         <member name="F:log4net.Appender.EventLogAppender.m_machineName">\r
3342             <summary>\r
3343             The name of the machine which holds the event log. This is\r
3344             currently only allowed to be '.' i.e. the current machine.\r
3345             </summary>\r
3346         </member>\r
3347         <member name="F:log4net.Appender.EventLogAppender.m_levelMapping">\r
3348             <summary>\r
3349             Mapping from level object to EventLogEntryType\r
3350             </summary>\r
3351         </member>\r
3352         <member name="F:log4net.Appender.EventLogAppender.m_securityContext">\r
3353             <summary>\r
3354             The security context to use for privileged calls\r
3355             </summary>\r
3356         </member>\r
3357         <member name="P:log4net.Appender.EventLogAppender.LogName">\r
3358             <summary>\r
3359             The name of the log where messages will be stored.\r
3360             </summary>\r
3361             <value>\r
3362             The string name of the log where messages will be stored.\r
3363             </value>\r
3364             <remarks>\r
3365             <para>This is the name of the log as it appears in the Event Viewer\r
3366             tree. The default value is to log into the <c>Application</c>\r
3367             log, this is where most applications write their events. However\r
3368             if you need a separate log for your application (or applications)\r
3369             then you should set the <see cref="P:log4net.Appender.EventLogAppender.LogName"/> appropriately.</para>\r
3370             <para>This should not be used to distinguish your event log messages\r
3371             from those of other applications, the <see cref="P:log4net.Appender.EventLogAppender.ApplicationName"/>\r
3372             property should be used to distinguish events. This property should be \r
3373             used to group together events into a single log.\r
3374             </para>\r
3375             </remarks>\r
3376         </member>\r
3377         <member name="P:log4net.Appender.EventLogAppender.ApplicationName">\r
3378             <summary>\r
3379             Property used to set the Application name.  This appears in the\r
3380             event logs when logging.\r
3381             </summary>\r
3382             <value>\r
3383             The string used to distinguish events from different sources.\r
3384             </value>\r
3385             <remarks>\r
3386             Sets the event log source property.\r
3387             </remarks>\r
3388         </member>\r
3389         <member name="P:log4net.Appender.EventLogAppender.MachineName">\r
3390             <summary>\r
3391             This property is used to return the name of the computer to use\r
3392             when accessing the event logs.  Currently, this is the current\r
3393             computer, denoted by a dot "."\r
3394             </summary>\r
3395             <value>\r
3396             The string name of the machine holding the event log that \r
3397             will be logged into.\r
3398             </value>\r
3399             <remarks>\r
3400             This property cannot be changed. It is currently set to '.'\r
3401             i.e. the local machine. This may be changed in future.\r
3402             </remarks>\r
3403         </member>\r
3404         <member name="P:log4net.Appender.EventLogAppender.SecurityContext">\r
3405             <summary>\r
3406             Gets or sets the <see cref="P:log4net.Appender.EventLogAppender.SecurityContext"/> used to write to the EventLog.\r
3407             </summary>\r
3408             <value>\r
3409             The <see cref="P:log4net.Appender.EventLogAppender.SecurityContext"/> used to write to the EventLog.\r
3410             </value>\r
3411             <remarks>\r
3412             <para>\r
3413             The system security context used to write to the EventLog.\r
3414             </para>\r
3415             <para>\r
3416             Unless a <see cref="P:log4net.Appender.EventLogAppender.SecurityContext"/> specified here for this appender\r
3417             the <see cref="P:log4net.Core.SecurityContextProvider.DefaultProvider"/> is queried for the\r
3418             security context to use. The default behavior is to use the security context\r
3419             of the current thread.\r
3420             </para>\r
3421             </remarks>\r
3422         </member>\r
3423         <member name="P:log4net.Appender.EventLogAppender.RequiresLayout">\r
3424             <summary>\r
3425             This appender requires a <see cref="N:log4net.Layout"/> to be set.\r
3426             </summary>\r
3427             <value><c>true</c></value>\r
3428             <remarks>\r
3429             <para>\r
3430             This appender requires a <see cref="N:log4net.Layout"/> to be set.\r
3431             </para>\r
3432             </remarks>\r
3433         </member>\r
3434         <member name="T:log4net.Appender.EventLogAppender.Level2EventLogEntryType">\r
3435             <summary>\r
3436             A class to act as a mapping between the level that a logging call is made at and\r
3437             the color it should be displayed as.\r
3438             </summary>\r
3439             <remarks>\r
3440             <para>\r
3441             Defines the mapping between a level and its event log entry type.\r
3442             </para>\r
3443             </remarks>\r
3444         </member>\r
3445         <member name="P:log4net.Appender.EventLogAppender.Level2EventLogEntryType.EventLogEntryType">\r
3446             <summary>\r
3447             The <see cref="P:log4net.Appender.EventLogAppender.Level2EventLogEntryType.EventLogEntryType"/> for this entry\r
3448             </summary>\r
3449             <remarks>\r
3450             <para>\r
3451             Required property.\r
3452             The <see cref="P:log4net.Appender.EventLogAppender.Level2EventLogEntryType.EventLogEntryType"/> for this entry\r
3453             </para>\r
3454             </remarks>\r
3455         </member>\r
3456         <member name="T:log4net.Appender.FileAppender">\r
3457             <summary>\r
3458             Appends logging events to a file.\r
3459             </summary>\r
3460             <remarks>\r
3461             <para>\r
3462             Logging events are sent to the file specified by\r
3463             the <see cref="P:log4net.Appender.FileAppender.File"/> property.\r
3464             </para>\r
3465             <para>\r
3466             The file can be opened in either append or overwrite mode \r
3467             by specifying the <see cref="P:log4net.Appender.FileAppender.AppendToFile"/> property.\r
3468             If the file path is relative it is taken as relative from \r
3469             the application base directory. The file encoding can be\r
3470             specified by setting the <see cref="P:log4net.Appender.FileAppender.Encoding"/> property.\r
3471             </para>\r
3472             <para>\r
3473             The layout's <see cref="P:log4net.Layout.ILayout.Header"/> and <see cref="P:log4net.Layout.ILayout.Footer"/>\r
3474             values will be written each time the file is opened and closed\r
3475             respectively. If the <see cref="P:log4net.Appender.FileAppender.AppendToFile"/> property is <see langword="true"/>\r
3476             then the file may contain multiple copies of the header and footer.\r
3477             </para>\r
3478             <para>\r
3479             This appender will first try to open the file for writing when <see cref="M:log4net.Appender.FileAppender.ActivateOptions"/>\r
3480             is called. This will typically be during configuration.\r
3481             If the file cannot be opened for writing the appender will attempt\r
3482             to open the file again each time a message is logged to the appender.\r
3483             If the file cannot be opened for writing when a message is logged then\r
3484             the message will be discarded by this appender.\r
3485             </para>\r
3486             <para>\r
3487             The <see cref="T:log4net.Appender.FileAppender"/> supports pluggable file locking models via\r
3488             the <see cref="P:log4net.Appender.FileAppender.LockingModel"/> property.\r
3489             The default behavior, implemented by <see cref="T:log4net.Appender.FileAppender.ExclusiveLock"/> \r
3490             is to obtain an exclusive write lock on the file until this appender is closed.\r
3491             The alternative model, <see cref="T:log4net.Appender.FileAppender.MinimalLock"/>, only holds a\r
3492             write lock while the appender is writing a logging event.\r
3493             </para>\r
3494             </remarks>\r
3495             <author>Nicko Cadell</author>\r
3496             <author>Gert Driesen</author>\r
3497             <author>Rodrigo B. de Oliveira</author>\r
3498             <author>Douglas de la Torre</author>\r
3499             <author>Niall Daley</author>\r
3500         </member>\r
3501         <member name="T:log4net.Appender.TextWriterAppender">\r
3502             <summary>\r
3503             Sends logging events to a <see cref="T:System.IO.TextWriter"/>.\r
3504             </summary>\r
3505             <remarks>\r
3506             <para>\r
3507             An Appender that writes to a <see cref="T:System.IO.TextWriter"/>.\r
3508             </para>\r
3509             <para>\r
3510             This appender may be used stand alone if initialized with an appropriate\r
3511             writer, however it is typically used as a base class for an appender that\r
3512             can open a <see cref="T:System.IO.TextWriter"/> to write to.\r
3513             </para>\r
3514             </remarks>\r
3515             <author>Nicko Cadell</author>\r
3516             <author>Gert Driesen</author>\r
3517             <author>Douglas de la Torre</author>\r
3518         </member>\r
3519         <member name="M:log4net.Appender.TextWriterAppender.#ctor">\r
3520             <summary>\r
3521             Initializes a new instance of the <see cref="T:log4net.Appender.TextWriterAppender"/> class.\r
3522             </summary>\r
3523             <remarks>\r
3524             <para>\r
3525             Default constructor.\r
3526             </para>\r
3527             </remarks>\r
3528         </member>\r
3529         <member name="M:log4net.Appender.TextWriterAppender.#ctor(log4net.Layout.ILayout,System.IO.Stream)">\r
3530             <summary>\r
3531             Initializes a new instance of the <see cref="T:log4net.Appender.TextWriterAppender"/> class and\r
3532             sets the output destination to a new <see cref="T:System.IO.StreamWriter"/> initialized \r
3533             with the specified <see cref="T:System.IO.Stream"/>.\r
3534             </summary>\r
3535             <param name="layout">The layout to use with this appender.</param>\r
3536             <param name="os">The <see cref="T:System.IO.Stream"/> to output to.</param>\r
3537             <remarks>\r
3538             <para>\r
3539             Obsolete constructor.\r
3540             </para>\r
3541             </remarks>\r
3542         </member>\r
3543         <member name="M:log4net.Appender.TextWriterAppender.#ctor(log4net.Layout.ILayout,System.IO.TextWriter)">\r
3544             <summary>\r
3545             Initializes a new instance of the <see cref="T:log4net.Appender.TextWriterAppender"/> class and sets\r
3546             the output destination to the specified <see cref="T:System.IO.StreamWriter"/>.\r
3547             </summary>\r
3548             <param name="layout">The layout to use with this appender</param>\r
3549             <param name="writer">The <see cref="T:System.IO.TextWriter"/> to output to</param>\r
3550             <remarks>\r
3551             The <see cref="T:System.IO.TextWriter"/> must have been previously opened.\r
3552             </remarks>\r
3553             <remarks>\r
3554             <para>\r
3555             Obsolete constructor.\r
3556             </para>\r
3557             </remarks>\r
3558         </member>\r
3559         <member name="M:log4net.Appender.TextWriterAppender.PreAppendCheck">\r
3560             <summary>\r
3561             This method determines if there is a sense in attempting to append.\r
3562             </summary>\r
3563             <remarks>\r
3564             <para>\r
3565             This method checked if an output target has been set and if a\r
3566             layout has been set. \r
3567             </para>\r
3568             </remarks>\r
3569             <returns><c>false</c> if any of the preconditions fail.</returns>\r
3570         </member>\r
3571         <member name="M:log4net.Appender.TextWriterAppender.Append(log4net.Core.LoggingEvent)">\r
3572             <summary>\r
3573             This method is called by the <see cref="M:log4net.Appender.AppenderSkeleton.DoAppend(log4net.Core.LoggingEvent)"/>\r
3574             method. \r
3575             </summary>\r
3576             <param name="loggingEvent">The event to log.</param>\r
3577             <remarks>\r
3578             <para>\r
3579             Writes a log statement to the output stream if the output stream exists \r
3580             and is writable.  \r
3581             </para>\r
3582             <para>\r
3583             The format of the output will depend on the appender's layout.\r
3584             </para>\r
3585             </remarks>\r
3586         </member>\r
3587         <member name="M:log4net.Appender.TextWriterAppender.Append(log4net.Core.LoggingEvent[])">\r
3588             <summary>\r
3589             This method is called by the <see cref="M:log4net.Appender.AppenderSkeleton.DoAppend(log4net.Core.LoggingEvent[])"/>\r
3590             method. \r
3591             </summary>\r
3592             <param name="loggingEvents">The array of events to log.</param>\r
3593             <remarks>\r
3594             <para>\r
3595             This method writes all the bulk logged events to the output writer\r
3596             before flushing the stream.\r
3597             </para>\r
3598             </remarks>\r
3599         </member>\r
3600         <member name="M:log4net.Appender.TextWriterAppender.OnClose">\r
3601             <summary>\r
3602             Close this appender instance. The underlying stream or writer is also closed.\r
3603             </summary>\r
3604             <remarks>\r
3605             Closed appenders cannot be reused.\r
3606             </remarks>\r
3607         </member>\r
3608         <member name="M:log4net.Appender.TextWriterAppender.WriteFooterAndCloseWriter">\r
3609             <summary>\r
3610             Writes the footer and closes the underlying <see cref="T:System.IO.TextWriter"/>.\r
3611             </summary>\r
3612             <remarks>\r
3613             <para>\r
3614             Writes the footer and closes the underlying <see cref="T:System.IO.TextWriter"/>.\r
3615             </para>\r
3616             </remarks>\r
3617         </member>\r
3618         <member name="M:log4net.Appender.TextWriterAppender.CloseWriter">\r
3619             <summary>\r
3620             Closes the underlying <see cref="T:System.IO.TextWriter"/>.\r
3621             </summary>\r
3622             <remarks>\r
3623             <para>\r
3624             Closes the underlying <see cref="T:System.IO.TextWriter"/>.\r
3625             </para>\r
3626             </remarks>\r
3627         </member>\r
3628         <member name="M:log4net.Appender.TextWriterAppender.Reset">\r
3629             <summary>\r
3630             Clears internal references to the underlying <see cref="T:System.IO.TextWriter"/> \r
3631             and other variables.\r
3632             </summary>\r
3633             <remarks>\r
3634             <para>\r
3635             Subclasses can override this method for an alternate closing behavior.\r
3636             </para>\r
3637             </remarks>\r
3638         </member>\r
3639         <member name="M:log4net.Appender.TextWriterAppender.WriteFooter">\r
3640             <summary>\r
3641             Writes a footer as produced by the embedded layout's <see cref="P:log4net.Layout.ILayout.Footer"/> property.\r
3642             </summary>\r
3643             <remarks>\r
3644             <para>\r
3645             Writes a footer as produced by the embedded layout's <see cref="P:log4net.Layout.ILayout.Footer"/> property.\r
3646             </para>\r
3647             </remarks>\r
3648         </member>\r
3649         <member name="M:log4net.Appender.TextWriterAppender.WriteHeader">\r
3650             <summary>\r
3651             Writes a header produced by the embedded layout's <see cref="P:log4net.Layout.ILayout.Header"/> property.\r
3652             </summary>\r
3653             <remarks>\r
3654             <para>\r
3655             Writes a header produced by the embedded layout's <see cref="P:log4net.Layout.ILayout.Header"/> property.\r
3656             </para>\r
3657             </remarks>\r
3658         </member>\r
3659         <member name="M:log4net.Appender.TextWriterAppender.PrepareWriter">\r
3660             <summary>\r
3661             Called to allow a subclass to lazily initialize the writer\r
3662             </summary>\r
3663             <remarks>\r
3664             <para>\r
3665             This method is called when an event is logged and the <see cref="P:log4net.Appender.TextWriterAppender.Writer"/> or\r
3666             <see cref="P:log4net.Appender.TextWriterAppender.QuietWriter"/> have not been set. This allows a subclass to\r
3667             attempt to initialize the writer multiple times.\r
3668             </para>\r
3669             </remarks>\r
3670         </member>\r
3671         <member name="F:log4net.Appender.TextWriterAppender.m_qtw">\r
3672             <summary>\r
3673             This is the <see cref="T:log4net.Util.QuietTextWriter"/> where logging events\r
3674             will be written to. \r
3675             </summary>\r
3676         </member>\r
3677         <member name="F:log4net.Appender.TextWriterAppender.m_immediateFlush">\r
3678             <summary>\r
3679             Immediate flush means that the underlying <see cref="T:System.IO.TextWriter"/> \r
3680             or output stream will be flushed at the end of each append operation.\r
3681             </summary>\r
3682             <remarks>\r
3683             <para>\r
3684             Immediate flush is slower but ensures that each append request is \r
3685             actually written. If <see cref="P:log4net.Appender.TextWriterAppender.ImmediateFlush"/> is set to\r
3686             <c>false</c>, then there is a good chance that the last few\r
3687             logging events are not actually persisted if and when the application \r
3688             crashes.\r
3689             </para>\r
3690             <para>\r
3691             The default value is <c>true</c>.\r
3692             </para>\r
3693             </remarks>\r
3694         </member>\r
3695         <member name="P:log4net.Appender.TextWriterAppender.ImmediateFlush">\r
3696             <summary>\r
3697             Gets or set whether the appender will flush at the end \r
3698             of each append operation.\r
3699             </summary>\r
3700             <value>\r
3701             <para>\r
3702             The default behavior is to flush at the end of each \r
3703             append operation.\r
3704             </para>\r
3705             <para>\r
3706             If this option is set to <c>false</c>, then the underlying \r
3707             stream can defer persisting the logging event to a later \r
3708             time.\r
3709             </para>\r
3710             </value>\r
3711             <remarks>\r
3712             Avoiding the flush operation at the end of each append results in\r
3713             a performance gain of 10 to 20 percent. However, there is safety\r
3714             trade-off involved in skipping flushing. Indeed, when flushing is\r
3715             skipped, then it is likely that the last few log events will not\r
3716             be recorded on disk when the application exits. This is a high\r
3717             price to pay even for a 20% performance gain.\r
3718             </remarks>\r
3719         </member>\r
3720         <member name="P:log4net.Appender.TextWriterAppender.Writer">\r
3721             <summary>\r
3722             Sets the <see cref="T:System.IO.TextWriter"/> where the log output will go.\r
3723             </summary>\r
3724             <remarks>\r
3725             <para>\r
3726             The specified <see cref="T:System.IO.TextWriter"/> must be open and writable.\r
3727             </para>\r
3728             <para>\r
3729             The <see cref="T:System.IO.TextWriter"/> will be closed when the appender \r
3730             instance is closed.\r
3731             </para>\r
3732             <para>\r
3733             <b>Note:</b> Logging to an unopened <see cref="T:System.IO.TextWriter"/> will fail.\r
3734             </para>\r
3735             </remarks>\r
3736         </member>\r
3737         <member name="P:log4net.Appender.TextWriterAppender.ErrorHandler">\r
3738             <summary>\r
3739             Gets or set the <see cref="T:log4net.Core.IErrorHandler"/> and the underlying \r
3740             <see cref="T:log4net.Util.QuietTextWriter"/>, if any, for this appender. \r
3741             </summary>\r
3742             <value>\r
3743             The <see cref="T:log4net.Core.IErrorHandler"/> for this appender.\r
3744             </value>\r
3745         </member>\r
3746         <member name="P:log4net.Appender.TextWriterAppender.RequiresLayout">\r
3747             <summary>\r
3748             This appender requires a <see cref="N:log4net.Layout"/> to be set.\r
3749             </summary>\r
3750             <value><c>true</c></value>\r
3751             <remarks>\r
3752             <para>\r
3753             This appender requires a <see cref="N:log4net.Layout"/> to be set.\r
3754             </para>\r
3755             </remarks>\r
3756         </member>\r
3757         <member name="P:log4net.Appender.TextWriterAppender.QuietWriter">\r
3758             <summary>\r
3759             Gets or sets the <see cref="T:log4net.Util.QuietTextWriter"/> where logging events\r
3760             will be written to. \r
3761             </summary>\r
3762             <value>\r
3763             The <see cref="T:log4net.Util.QuietTextWriter"/> where logging events are written.\r
3764             </value>\r
3765             <remarks>\r
3766             <para>\r
3767             This is the <see cref="T:log4net.Util.QuietTextWriter"/> where logging events\r
3768             will be written to. \r
3769             </para>\r
3770             </remarks>\r
3771         </member>\r
3772         <member name="M:log4net.Appender.FileAppender.#ctor">\r
3773             <summary>\r
3774             Default constructor\r
3775             </summary>\r
3776             <remarks>\r
3777             <para>\r
3778             Default constructor\r
3779             </para>\r
3780             </remarks>\r
3781         </member>\r
3782         <member name="M:log4net.Appender.FileAppender.#ctor(log4net.Layout.ILayout,System.String,System.Boolean)">\r
3783             <summary>\r
3784             Construct a new appender using the layout, file and append mode.\r
3785             </summary>\r
3786             <param name="layout">the layout to use with this appender</param>\r
3787             <param name="filename">the full path to the file to write to</param>\r
3788             <param name="append">flag to indicate if the file should be appended to</param>\r
3789             <remarks>\r
3790             <para>\r
3791             Obsolete constructor.\r
3792             </para>\r
3793             </remarks>\r
3794         </member>\r
3795         <member name="M:log4net.Appender.FileAppender.#ctor(log4net.Layout.ILayout,System.String)">\r
3796             <summary>\r
3797             Construct a new appender using the layout and file specified.\r
3798             The file will be appended to.\r
3799             </summary>\r
3800             <param name="layout">the layout to use with this appender</param>\r
3801             <param name="filename">the full path to the file to write to</param>\r
3802             <remarks>\r
3803             <para>\r
3804             Obsolete constructor.\r
3805             </para>\r
3806             </remarks>\r
3807         </member>\r
3808         <member name="M:log4net.Appender.FileAppender.ActivateOptions">\r
3809             <summary>\r
3810             Activate the options on the file appender. \r
3811             </summary>\r
3812             <remarks>\r
3813             <para>\r
3814             This is part of the <see cref="T:log4net.Core.IOptionHandler"/> delayed object\r
3815             activation scheme. The <see cref="M:log4net.Appender.FileAppender.ActivateOptions"/> method must \r
3816             be called on this object after the configuration properties have\r
3817             been set. Until <see cref="M:log4net.Appender.FileAppender.ActivateOptions"/> is called this\r
3818             object is in an undefined state and must not be used. \r
3819             </para>\r
3820             <para>\r
3821             If any of the configuration properties are modified then \r
3822             <see cref="M:log4net.Appender.FileAppender.ActivateOptions"/> must be called again.\r
3823             </para>\r
3824             <para>\r
3825             This will cause the file to be opened.\r
3826             </para>\r
3827             </remarks>\r
3828         </member>\r
3829         <member name="M:log4net.Appender.FileAppender.Reset">\r
3830             <summary>\r
3831             Closes any previously opened file and calls the parent's <see cref="M:log4net.Appender.TextWriterAppender.Reset"/>.\r
3832             </summary>\r
3833             <remarks>\r
3834             <para>\r
3835             Resets the filename and the file stream.\r
3836             </para>\r
3837             </remarks>\r
3838         </member>\r
3839         <member name="M:log4net.Appender.FileAppender.PrepareWriter">\r
3840             <summary>\r
3841             Called to initialize the file writer\r
3842             </summary>\r
3843             <remarks>\r
3844             <para>\r
3845             Will be called for each logged message until the file is\r
3846             successfully opened.\r
3847             </para>\r
3848             </remarks>\r
3849         </member>\r
3850         <member name="M:log4net.Appender.FileAppender.Append(log4net.Core.LoggingEvent)">\r
3851             <summary>\r
3852             This method is called by the <see cref="M:log4net.Appender.AppenderSkeleton.DoAppend(log4net.Core.LoggingEvent)"/>\r
3853             method. \r
3854             </summary>\r
3855             <param name="loggingEvent">The event to log.</param>\r
3856             <remarks>\r
3857             <para>\r
3858             Writes a log statement to the output stream if the output stream exists \r
3859             and is writable.  \r
3860             </para>\r
3861             <para>\r
3862             The format of the output will depend on the appender's layout.\r
3863             </para>\r
3864             </remarks>\r
3865         </member>\r
3866         <member name="M:log4net.Appender.FileAppender.Append(log4net.Core.LoggingEvent[])">\r
3867             <summary>\r
3868             This method is called by the <see cref="M:log4net.Appender.AppenderSkeleton.DoAppend(log4net.Core.LoggingEvent[])"/>\r
3869             method. \r
3870             </summary>\r
3871             <param name="loggingEvents">The array of events to log.</param>\r
3872             <remarks>\r
3873             <para>\r
3874             Acquires the output file locks once before writing all the events to\r
3875             the stream.\r
3876             </para>\r
3877             </remarks>\r
3878         </member>\r
3879         <member name="M:log4net.Appender.FileAppender.WriteFooter">\r
3880             <summary>\r
3881             Writes a footer as produced by the embedded layout's <see cref="P:log4net.Layout.ILayout.Footer"/> property.\r
3882             </summary>\r
3883             <remarks>\r
3884             <para>\r
3885             Writes a footer as produced by the embedded layout's <see cref="P:log4net.Layout.ILayout.Footer"/> property.\r
3886             </para>\r
3887             </remarks>\r
3888         </member>\r
3889         <member name="M:log4net.Appender.FileAppender.WriteHeader">\r
3890             <summary>\r
3891             Writes a header produced by the embedded layout's <see cref="P:log4net.Layout.ILayout.Header"/> property.\r
3892             </summary>\r
3893             <remarks>\r
3894             <para>\r
3895             Writes a header produced by the embedded layout's <see cref="P:log4net.Layout.ILayout.Header"/> property.\r
3896             </para>\r
3897             </remarks>\r
3898         </member>\r
3899         <member name="M:log4net.Appender.FileAppender.CloseWriter">\r
3900             <summary>\r
3901             Closes the underlying <see cref="T:System.IO.TextWriter"/>.\r
3902             </summary>\r
3903             <remarks>\r
3904             <para>\r
3905             Closes the underlying <see cref="T:System.IO.TextWriter"/>.\r
3906             </para>\r
3907             </remarks>\r
3908         </member>\r
3909         <member name="M:log4net.Appender.FileAppender.CloseFile">\r
3910             <summary>\r
3911             Closes the previously opened file.\r
3912             </summary>\r
3913             <remarks>\r
3914             <para>\r
3915             Writes the <see cref="P:log4net.Layout.ILayout.Footer"/> to the file and then\r
3916             closes the file.\r
3917             </para>\r
3918             </remarks>\r
3919         </member>\r
3920         <member name="M:log4net.Appender.FileAppender.SafeOpenFile(System.String,System.Boolean)">\r
3921             <summary>\r
3922             Sets and <i>opens</i> the file where the log output will go. The specified file must be writable.\r
3923             </summary>\r
3924             <param name="fileName">The path to the log file. Must be a fully qualified path.</param>\r
3925             <param name="append">If true will append to fileName. Otherwise will truncate fileName</param>\r
3926             <remarks>\r
3927             <para>\r
3928             Calls <see cref="M:log4net.Appender.FileAppender.OpenFile(System.String,System.Boolean)"/> but guarantees not to throw an exception.\r
3929             Errors are passed to the <see cref="P:log4net.Appender.TextWriterAppender.ErrorHandler"/>.\r
3930             </para>\r
3931             </remarks>\r
3932         </member>\r
3933         <member name="M:log4net.Appender.FileAppender.OpenFile(System.String,System.Boolean)">\r
3934             <summary>\r
3935             Sets and <i>opens</i> the file where the log output will go. The specified file must be writable.\r
3936             </summary>\r
3937             <param name="fileName">The path to the log file. Must be a fully qualified path.</param>\r
3938             <param name="append">If true will append to fileName. Otherwise will truncate fileName</param>\r
3939             <remarks>\r
3940             <para>\r
3941             If there was already an opened file, then the previous file\r
3942             is closed first.\r
3943             </para>\r
3944             <para>\r
3945             This method will ensure that the directory structure\r
3946             for the <paramref name="fileName"/> specified exists.\r
3947             </para>\r
3948             </remarks>\r
3949         </member>\r
3950         <member name="M:log4net.Appender.FileAppender.SetQWForFiles(System.IO.Stream)">\r
3951             <summary>\r
3952             Sets the quiet writer used for file output\r
3953             </summary>\r
3954             <param name="fileStream">the file stream that has been opened for writing</param>\r
3955             <remarks>\r
3956             <para>\r
3957             This implementation of <see cref="M:log4net.Appender.FileAppender.SetQWForFiles(System.IO.Stream)"/> creates a <see cref="T:System.IO.StreamWriter"/>\r
3958             over the <paramref name="fileStream"/> and passes it to the \r
3959             <see cref="M:log4net.Appender.FileAppender.SetQWForFiles(System.IO.TextWriter)"/> method.\r
3960             </para>\r
3961             <para>\r
3962             This method can be overridden by sub classes that want to wrap the\r
3963             <see cref="T:System.IO.Stream"/> in some way, for example to encrypt the output\r
3964             data using a <c>System.Security.Cryptography.CryptoStream</c>.\r
3965             </para>\r
3966             </remarks>\r
3967         </member>\r
3968         <member name="M:log4net.Appender.FileAppender.SetQWForFiles(System.IO.TextWriter)">\r
3969             <summary>\r
3970             Sets the quiet writer being used.\r
3971             </summary>\r
3972             <param name="writer">the writer over the file stream that has been opened for writing</param>\r
3973             <remarks>\r
3974             <para>\r
3975             This method can be overridden by sub classes that want to\r
3976             wrap the <see cref="T:System.IO.TextWriter"/> in some way.\r
3977             </para>\r
3978             </remarks>\r
3979         </member>\r
3980         <member name="M:log4net.Appender.FileAppender.ConvertToFullPath(System.String)">\r
3981             <summary>\r
3982             Convert a path into a fully qualified path.\r
3983             </summary>\r
3984             <param name="path">The path to convert.</param>\r
3985             <returns>The fully qualified path.</returns>\r
3986             <remarks>\r
3987             <para>\r
3988             Converts the path specified to a fully\r
3989             qualified path. If the path is relative it is\r
3990             taken as relative from the application base \r
3991             directory.\r
3992             </para>\r
3993             </remarks>\r
3994         </member>\r
3995         <member name="F:log4net.Appender.FileAppender.m_appendToFile">\r
3996             <summary>\r
3997             Flag to indicate if we should append to the file\r
3998             or overwrite the file. The default is to append.\r
3999             </summary>\r
4000         </member>\r
4001         <member name="F:log4net.Appender.FileAppender.m_fileName">\r
4002             <summary>\r
4003             The name of the log file.\r
4004             </summary>\r
4005         </member>\r
4006         <member name="F:log4net.Appender.FileAppender.m_encoding">\r
4007             <summary>\r
4008             The encoding to use for the file stream.\r
4009             </summary>\r
4010         </member>\r
4011         <member name="F:log4net.Appender.FileAppender.m_securityContext">\r
4012             <summary>\r
4013             The security context to use for privileged calls\r
4014             </summary>\r
4015         </member>\r
4016         <member name="F:log4net.Appender.FileAppender.m_stream">\r
4017             <summary>\r
4018             The stream to log to. Has added locking semantics\r
4019             </summary>\r
4020         </member>\r
4021         <member name="F:log4net.Appender.FileAppender.m_lockingModel">\r
4022             <summary>\r
4023             The locking model to use\r
4024             </summary>\r
4025         </member>\r
4026         <member name="P:log4net.Appender.FileAppender.File">\r
4027             <summary>\r
4028             Gets or sets the path to the file that logging will be written to.\r
4029             </summary>\r
4030             <value>\r
4031             The path to the file that logging will be written to.\r
4032             </value>\r
4033             <remarks>\r
4034             <para>\r
4035             If the path is relative it is taken as relative from \r
4036             the application base directory.\r
4037             </para>\r
4038             </remarks>\r
4039         </member>\r
4040         <member name="P:log4net.Appender.FileAppender.AppendToFile">\r
4041             <summary>\r
4042             Gets or sets a flag that indicates whether the file should be\r
4043             appended to or overwritten.\r
4044             </summary>\r
4045             <value>\r
4046             Indicates whether the file should be appended to or overwritten.\r
4047             </value>\r
4048             <remarks>\r
4049             <para>\r
4050             If the value is set to false then the file will be overwritten, if \r
4051             it is set to true then the file will be appended to.\r
4052             </para>\r
4053             The default value is true.\r
4054             </remarks>\r
4055         </member>\r
4056         <member name="P:log4net.Appender.FileAppender.Encoding">\r
4057             <summary>\r
4058             Gets or sets <see cref="P:log4net.Appender.FileAppender.Encoding"/> used to write to the file.\r
4059             </summary>\r
4060             <value>\r
4061             The <see cref="P:log4net.Appender.FileAppender.Encoding"/> used to write to the file.\r
4062             </value>\r
4063             <remarks>\r
4064             <para>\r
4065             The default encoding set is <see cref="P:System.Text.Encoding.Default"/>\r
4066             which is the encoding for the system's current ANSI code page.\r
4067             </para>\r
4068             </remarks>\r
4069         </member>\r
4070         <member name="P:log4net.Appender.FileAppender.SecurityContext">\r
4071             <summary>\r
4072             Gets or sets the <see cref="P:log4net.Appender.FileAppender.SecurityContext"/> used to write to the file.\r
4073             </summary>\r
4074             <value>\r
4075             The <see cref="P:log4net.Appender.FileAppender.SecurityContext"/> used to write to the file.\r
4076             </value>\r
4077             <remarks>\r
4078             <para>\r
4079             Unless a <see cref="P:log4net.Appender.FileAppender.SecurityContext"/> specified here for this appender\r
4080             the <see cref="P:log4net.Core.SecurityContextProvider.DefaultProvider"/> is queried for the\r
4081             security context to use. The default behavior is to use the security context\r
4082             of the current thread.\r
4083             </para>\r
4084             </remarks>\r
4085         </member>\r
4086         <member name="P:log4net.Appender.FileAppender.LockingModel">\r
4087             <summary>\r
4088             Gets or sets the <see cref="P:log4net.Appender.FileAppender.LockingModel"/> used to handle locking of the file.\r
4089             </summary>\r
4090             <value>\r
4091             The <see cref="P:log4net.Appender.FileAppender.LockingModel"/> used to lock the file.\r
4092             </value>\r
4093             <remarks>\r
4094             <para>\r
4095             Gets or sets the <see cref="P:log4net.Appender.FileAppender.LockingModel"/> used to handle locking of the file.\r
4096             </para>\r
4097             <para>\r
4098             There are two built in locking models, <see cref="T:log4net.Appender.FileAppender.ExclusiveLock"/> and <see cref="T:log4net.Appender.FileAppender.MinimalLock"/>.\r
4099             The former locks the file from the start of logging to the end and the \r
4100             later lock only for the minimal amount of time when logging each message.\r
4101             </para>\r
4102             <para>\r
4103             The default locking model is the <see cref="T:log4net.Appender.FileAppender.ExclusiveLock"/>.\r
4104             </para>\r
4105             </remarks>\r
4106         </member>\r
4107         <member name="T:log4net.Appender.FileAppender.LockingStream">\r
4108             <summary>\r
4109             Write only <see cref="T:System.IO.Stream"/> that uses the <see cref="T:log4net.Appender.FileAppender.LockingModelBase"/> \r
4110             to manage access to an underlying resource.\r
4111             </summary>\r
4112         </member>\r
4113         <member name="M:log4net.Appender.FileAppender.LockingStream.BeginWrite(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object)">\r
4114             <summary>\r
4115             True asynchronous writes are not supported, the implementation forces a synchronous write.\r
4116             </summary>\r
4117         </member>\r
4118         <member name="T:log4net.Core.LogException">\r
4119             <summary>\r
4120             Exception base type for log4net.\r
4121             </summary>\r
4122             <remarks>\r
4123             <para>\r
4124             This type extends <see cref="T:System.ApplicationException"/>. It\r
4125             does not add any new functionality but does differentiate the\r
4126             type of exception being thrown.\r
4127             </para>\r
4128             </remarks>\r
4129             <author>Nicko Cadell</author>\r
4130             <author>Gert Driesen</author>\r
4131         </member>\r
4132         <member name="M:log4net.Core.LogException.#ctor">\r
4133             <summary>\r
4134             Constructor\r
4135             </summary>\r
4136             <remarks>\r
4137             <para>\r
4138             Initializes a new instance of the <see cref="T:log4net.Core.LogException"/> class.\r
4139             </para>\r
4140             </remarks>\r
4141         </member>\r
4142         <member name="M:log4net.Core.LogException.#ctor(System.String)">\r
4143             <summary>\r
4144             Constructor\r
4145             </summary>\r
4146             <param name="message">A message to include with the exception.</param>\r
4147             <remarks>\r
4148             <para>\r
4149             Initializes a new instance of the <see cref="T:log4net.Core.LogException"/> class with\r
4150             the specified message.\r
4151             </para>\r
4152             </remarks>\r
4153         </member>\r
4154         <member name="M:log4net.Core.LogException.#ctor(System.String,System.Exception)">\r
4155             <summary>\r
4156             Constructor\r
4157             </summary>\r
4158             <param name="message">A message to include with the exception.</param>\r
4159             <param name="innerException">A nested exception to include.</param>\r
4160             <remarks>\r
4161             <para>\r
4162             Initializes a new instance of the <see cref="T:log4net.Core.LogException"/> class\r
4163             with the specified message and inner exception.\r
4164             </para>\r
4165             </remarks>\r
4166         </member>\r
4167         <member name="M:log4net.Core.LogException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">\r
4168             <summary>\r
4169             Serialization constructor\r
4170             </summary>\r
4171             <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the exception being thrown.</param>\r
4172             <param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the source or destination.</param>\r
4173             <remarks>\r
4174             <para>\r
4175             Initializes a new instance of the <see cref="T:log4net.Core.LogException"/> class \r
4176             with serialized data.\r
4177             </para>\r
4178             </remarks>\r
4179         </member>\r
4180         <member name="T:log4net.Appender.FileAppender.LockingModelBase">\r
4181             <summary>\r
4182             Locking model base class\r
4183             </summary>\r
4184             <remarks>\r
4185             <para>\r
4186             Base class for the locking models available to the <see cref="T:log4net.Appender.FileAppender"/> derived loggers.\r
4187             </para>\r
4188             </remarks>\r
4189         </member>\r
4190         <member name="M:log4net.Appender.FileAppender.LockingModelBase.OpenFile(System.String,System.Boolean,System.Text.Encoding)">\r
4191             <summary>\r
4192             Open the output file\r
4193             </summary>\r
4194             <param name="filename">The filename to use</param>\r
4195             <param name="append">Whether to append to the file, or overwrite</param>\r
4196             <param name="encoding">The encoding to use</param>\r
4197             <remarks>\r
4198             <para>\r
4199             Open the file specified and prepare for logging. \r
4200             No writes will be made until <see cref="M:log4net.Appender.FileAppender.LockingModelBase.AcquireLock"/> is called.\r
4201             Must be called before any calls to <see cref="M:log4net.Appender.FileAppender.LockingModelBase.AcquireLock"/>,\r
4202             <see cref="M:log4net.Appender.FileAppender.LockingModelBase.ReleaseLock"/> and <see cref="M:log4net.Appender.FileAppender.LockingModelBase.CloseFile"/>.\r
4203             </para>\r
4204             </remarks>\r
4205         </member>\r
4206         <member name="M:log4net.Appender.FileAppender.LockingModelBase.CloseFile">\r
4207             <summary>\r
4208             Close the file\r
4209             </summary>\r
4210             <remarks>\r
4211             <para>\r
4212             Close the file. No further writes will be made.\r
4213             </para>\r
4214             </remarks>\r
4215         </member>\r
4216         <member name="M:log4net.Appender.FileAppender.LockingModelBase.AcquireLock">\r
4217             <summary>\r
4218             Acquire the lock on the file\r
4219             </summary>\r
4220             <returns>A stream that is ready to be written to.</returns>\r
4221             <remarks>\r
4222             <para>\r
4223             Acquire the lock on the file in preparation for writing to it. \r
4224             Return a stream pointing to the file. <see cref="M:log4net.Appender.FileAppender.LockingModelBase.ReleaseLock"/>\r
4225             must be called to release the lock on the output file.\r
4226             </para>\r
4227             </remarks>\r
4228         </member>\r
4229         <member name="M:log4net.Appender.FileAppender.LockingModelBase.ReleaseLock">\r
4230             <summary>\r
4231             Release the lock on the file\r
4232             </summary>\r
4233             <remarks>\r
4234             <para>\r
4235             Release the lock on the file. No further writes will be made to the \r
4236             stream until <see cref="M:log4net.Appender.FileAppender.LockingModelBase.AcquireLock"/> is called again.\r
4237             </para>\r
4238             </remarks>\r
4239         </member>\r
4240         <member name="P:log4net.Appender.FileAppender.LockingModelBase.CurrentAppender">\r
4241             <summary>\r
4242             Gets or sets the <see cref="T:log4net.Appender.FileAppender"/> for this LockingModel\r
4243             </summary>\r
4244             <value>\r
4245             The <see cref="T:log4net.Appender.FileAppender"/> for this LockingModel\r
4246             </value>\r
4247             <remarks>\r
4248             <para>\r
4249             The file appender this locking model is attached to and working on\r
4250             behalf of.\r
4251             </para>\r
4252             <para>\r
4253             The file appender is used to locate the security context and the error handler to use.\r
4254             </para>\r
4255             <para>\r
4256             The value of this property will be set before <see cref="M:log4net.Appender.FileAppender.LockingModelBase.OpenFile(System.String,System.Boolean,System.Text.Encoding)"/> is\r
4257             called.\r
4258             </para>\r
4259             </remarks>\r
4260         </member>\r
4261         <member name="T:log4net.Appender.FileAppender.ExclusiveLock">\r
4262             <summary>\r
4263             Hold an exclusive lock on the output file\r
4264             </summary>\r
4265             <remarks>\r
4266             <para>\r
4267             Open the file once for writing and hold it open until <see cref="M:log4net.Appender.FileAppender.ExclusiveLock.CloseFile"/> is called. \r
4268             Maintains an exclusive lock on the file during this time.\r
4269             </para>\r
4270             </remarks>\r
4271         </member>\r
4272         <member name="M:log4net.Appender.FileAppender.ExclusiveLock.OpenFile(System.String,System.Boolean,System.Text.Encoding)">\r
4273             <summary>\r
4274             Open the file specified and prepare for logging.\r
4275             </summary>\r
4276             <param name="filename">The filename to use</param>\r
4277             <param name="append">Whether to append to the file, or overwrite</param>\r
4278             <param name="encoding">The encoding to use</param>\r
4279             <remarks>\r
4280             <para>\r
4281             Open the file specified and prepare for logging. \r
4282             No writes will be made until <see cref="M:log4net.Appender.FileAppender.ExclusiveLock.AcquireLock"/> is called.\r
4283             Must be called before any calls to <see cref="M:log4net.Appender.FileAppender.ExclusiveLock.AcquireLock"/>,\r
4284             <see cref="M:log4net.Appender.FileAppender.ExclusiveLock.ReleaseLock"/> and <see cref="M:log4net.Appender.FileAppender.ExclusiveLock.CloseFile"/>.\r
4285             </para>\r
4286             </remarks>\r
4287         </member>\r
4288         <member name="M:log4net.Appender.FileAppender.ExclusiveLock.CloseFile">\r
4289             <summary>\r
4290             Close the file\r
4291             </summary>\r
4292             <remarks>\r
4293             <para>\r
4294             Close the file. No further writes will be made.\r
4295             </para>\r
4296             </remarks>\r
4297         </member>\r
4298         <member name="M:log4net.Appender.FileAppender.ExclusiveLock.AcquireLock">\r
4299             <summary>\r
4300             Acquire the lock on the file\r
4301             </summary>\r
4302             <returns>A stream that is ready to be written to.</returns>\r
4303             <remarks>\r
4304             <para>\r
4305             Does nothing. The lock is already taken\r
4306             </para>\r
4307             </remarks>\r
4308         </member>\r
4309         <member name="M:log4net.Appender.FileAppender.ExclusiveLock.ReleaseLock">\r
4310             <summary>\r
4311             Release the lock on the file\r
4312             </summary>\r
4313             <remarks>\r
4314             <para>\r
4315             Does nothing. The lock will be released when the file is closed.\r
4316             </para>\r
4317             </remarks>\r
4318         </member>\r
4319         <member name="T:log4net.Appender.FileAppender.MinimalLock">\r
4320             <summary>\r
4321             Acquires the file lock for each write\r
4322             </summary>\r
4323             <remarks>\r
4324             <para>\r
4325             Opens the file once for each <see cref="M:log4net.Appender.FileAppender.MinimalLock.AcquireLock"/>/<see cref="M:log4net.Appender.FileAppender.MinimalLock.ReleaseLock"/> cycle, \r
4326             thus holding the lock for the minimal amount of time. This method of locking\r
4327             is considerably slower than <see cref="T:log4net.Appender.FileAppender.ExclusiveLock"/> but allows \r
4328             other processes to move/delete the log file whilst logging continues.\r
4329             </para>\r
4330             </remarks>\r
4331         </member>\r
4332         <member name="M:log4net.Appender.FileAppender.MinimalLock.OpenFile(System.String,System.Boolean,System.Text.Encoding)">\r
4333             <summary>\r
4334             Prepares to open the file when the first message is logged.\r
4335             </summary>\r
4336             <param name="filename">The filename to use</param>\r
4337             <param name="append">Whether to append to the file, or overwrite</param>\r
4338             <param name="encoding">The encoding to use</param>\r
4339             <remarks>\r
4340             <para>\r
4341             Open the file specified and prepare for logging. \r
4342             No writes will be made until <see cref="M:log4net.Appender.FileAppender.MinimalLock.AcquireLock"/> is called.\r
4343             Must be called before any calls to <see cref="M:log4net.Appender.FileAppender.MinimalLock.AcquireLock"/>,\r
4344             <see cref="M:log4net.Appender.FileAppender.MinimalLock.ReleaseLock"/> and <see cref="M:log4net.Appender.FileAppender.MinimalLock.CloseFile"/>.\r
4345             </para>\r
4346             </remarks>\r
4347         </member>\r
4348         <member name="M:log4net.Appender.FileAppender.MinimalLock.CloseFile">\r
4349             <summary>\r
4350             Close the file\r
4351             </summary>\r
4352             <remarks>\r
4353             <para>\r
4354             Close the file. No further writes will be made.\r
4355             </para>\r
4356             </remarks>\r
4357         </member>\r
4358         <member name="M:log4net.Appender.FileAppender.MinimalLock.AcquireLock">\r
4359             <summary>\r
4360             Acquire the lock on the file\r
4361             </summary>\r
4362             <returns>A stream that is ready to be written to.</returns>\r
4363             <remarks>\r
4364             <para>\r
4365             Acquire the lock on the file in preparation for writing to it. \r
4366             Return a stream pointing to the file. <see cref="M:log4net.Appender.FileAppender.MinimalLock.ReleaseLock"/>\r
4367             must be called to release the lock on the output file.\r
4368             </para>\r
4369             </remarks>\r
4370         </member>\r
4371         <member name="M:log4net.Appender.FileAppender.MinimalLock.ReleaseLock">\r
4372             <summary>\r
4373             Release the lock on the file\r
4374             </summary>\r
4375             <remarks>\r
4376             <para>\r
4377             Release the lock on the file. No further writes will be made to the \r
4378             stream until <see cref="M:log4net.Appender.FileAppender.MinimalLock.AcquireLock"/> is called again.\r
4379             </para>\r
4380             </remarks>\r
4381         </member>\r
4382         <member name="T:log4net.Appender.ForwardingAppender">\r
4383             <summary>\r
4384             This appender forwards logging events to attached appenders.\r
4385             </summary>\r
4386             <remarks>\r
4387             <para>\r
4388             The forwarding appender can be used to specify different thresholds\r
4389             and filters for the same appender at different locations within the hierarchy.\r
4390             </para>\r
4391             </remarks>\r
4392             <author>Nicko Cadell</author>\r
4393             <author>Gert Driesen</author>\r
4394         </member>\r
4395         <member name="M:log4net.Appender.ForwardingAppender.#ctor">\r
4396             <summary>\r
4397             Initializes a new instance of the <see cref="T:log4net.Appender.ForwardingAppender"/> class.\r
4398             </summary>\r
4399             <remarks>\r
4400             <para>\r
4401             Default constructor.\r
4402             </para>\r
4403             </remarks>\r
4404         </member>\r
4405         <member name="M:log4net.Appender.ForwardingAppender.OnClose">\r
4406             <summary>\r
4407             Closes the appender and releases resources.\r
4408             </summary>\r
4409             <remarks>\r
4410             <para>\r
4411             Releases any resources allocated within the appender such as file handles, \r
4412             network connections, etc.\r
4413             </para>\r
4414             <para>\r
4415             It is a programming error to append to a closed appender.\r
4416             </para>\r
4417             </remarks>\r
4418         </member>\r
4419         <member name="M:log4net.Appender.ForwardingAppender.Append(log4net.Core.LoggingEvent)">\r
4420             <summary>\r
4421             Forward the logging event to the attached appenders \r
4422             </summary>\r
4423             <param name="loggingEvent">The event to log.</param>\r
4424             <remarks>\r
4425             <para>\r
4426             Delivers the logging event to all the attached appenders.\r
4427             </para>\r
4428             </remarks>\r
4429         </member>\r
4430         <member name="M:log4net.Appender.ForwardingAppender.Append(log4net.Core.LoggingEvent[])">\r
4431             <summary>\r
4432             Forward the logging events to the attached appenders \r
4433             </summary>\r
4434             <param name="loggingEvents">The array of events to log.</param>\r
4435             <remarks>\r
4436             <para>\r
4437             Delivers the logging events to all the attached appenders.\r
4438             </para>\r
4439             </remarks>\r
4440         </member>\r
4441         <member name="M:log4net.Appender.ForwardingAppender.AddAppender(log4net.Appender.IAppender)">\r
4442             <summary>\r
4443             Adds an <see cref="T:log4net.Appender.IAppender"/> to the list of appenders of this\r
4444             instance.\r
4445             </summary>\r
4446             <param name="newAppender">The <see cref="T:log4net.Appender.IAppender"/> to add to this appender.</param>\r
4447             <remarks>\r
4448             <para>\r
4449             If the specified <see cref="T:log4net.Appender.IAppender"/> is already in the list of\r
4450             appenders, then it won't be added again.\r
4451             </para>\r
4452             </remarks>\r
4453         </member>\r
4454         <member name="M:log4net.Appender.ForwardingAppender.GetAppender(System.String)">\r
4455             <summary>\r
4456             Looks for the appender with the specified name.\r
4457             </summary>\r
4458             <param name="name">The name of the appender to lookup.</param>\r
4459             <returns>\r
4460             The appender with the specified name, or <c>null</c>.\r
4461             </returns>\r
4462             <remarks>\r
4463             <para>\r
4464             Get the named appender attached to this appender.\r
4465             </para>\r
4466             </remarks>\r
4467         </member>\r
4468         <member name="M:log4net.Appender.ForwardingAppender.RemoveAllAppenders">\r
4469             <summary>\r
4470             Removes all previously added appenders from this appender.\r
4471             </summary>\r
4472             <remarks>\r
4473             <para>\r
4474             This is useful when re-reading configuration information.\r
4475             </para>\r
4476             </remarks>\r
4477         </member>\r
4478         <member name="M:log4net.Appender.ForwardingAppender.RemoveAppender(log4net.Appender.IAppender)">\r
4479             <summary>\r
4480             Removes the specified appender from the list of appenders.\r
4481             </summary>\r
4482             <param name="appender">The appender to remove.</param>\r
4483             <returns>The appender removed from the list</returns>\r
4484             <remarks>\r
4485             The appender removed is not closed.\r
4486             If you are discarding the appender you must call\r
4487             <see cref="M:log4net.Appender.IAppender.Close"/> on the appender removed.\r
4488             </remarks>\r
4489         </member>\r
4490         <member name="M:log4net.Appender.ForwardingAppender.RemoveAppender(System.String)">\r
4491             <summary>\r
4492             Removes the appender with the specified name from the list of appenders.\r
4493             </summary>\r
4494             <param name="name">The name of the appender to remove.</param>\r
4495             <returns>The appender removed from the list</returns>\r
4496             <remarks>\r
4497             The appender removed is not closed.\r
4498             If you are discarding the appender you must call\r
4499             <see cref="M:log4net.Appender.IAppender.Close"/> on the appender removed.\r
4500             </remarks>\r
4501         </member>\r
4502         <member name="F:log4net.Appender.ForwardingAppender.m_appenderAttachedImpl">\r
4503             <summary>\r
4504             Implementation of the <see cref="T:log4net.Core.IAppenderAttachable"/> interface\r
4505             </summary>\r
4506         </member>\r
4507         <member name="P:log4net.Appender.ForwardingAppender.Appenders">\r
4508             <summary>\r
4509             Gets the appenders contained in this appender as an \r
4510             <see cref="T:System.Collections.ICollection"/>.\r
4511             </summary>\r
4512             <remarks>\r
4513             If no appenders can be found, then an <see cref="T:log4net.Util.EmptyCollection"/> \r
4514             is returned.\r
4515             </remarks>\r
4516             <returns>\r
4517             A collection of the appenders in this appender.\r
4518             </returns>\r
4519         </member>\r
4520         <member name="T:log4net.Appender.LocalSyslogAppender">\r
4521             <summary>\r
4522             Logs events to a local syslog service.\r
4523             </summary>\r
4524             <remarks>\r
4525             <note>\r
4526             This appender uses the POSIX libc library functions <c>openlog</c>, <c>syslog</c>, and <c>closelog</c>.\r
4527             If these functions are not available on the local system then this appender will not work!\r
4528             </note>\r
4529             <para>\r
4530             The functions <c>openlog</c>, <c>syslog</c>, and <c>closelog</c> are specified in SUSv2 and \r
4531             POSIX 1003.1-2001 standards. These are used to log messages to the local syslog service.\r
4532             </para>\r
4533             <para>\r
4534             This appender talks to a local syslog service. If you need to log to a remote syslog\r
4535             daemon and you cannot configure your local syslog service to do this you may be\r
4536             able to use the <see cref="T:log4net.Appender.RemoteSyslogAppender"/> to log via UDP.\r
4537             </para>\r
4538             <para>\r
4539             Syslog messages must have a facility and and a severity. The severity\r
4540             is derived from the Level of the logging event.\r
4541             The facility must be chosen from the set of defined syslog \r
4542             <see cref="T:log4net.Appender.LocalSyslogAppender.SyslogFacility"/> values. The facilities list is predefined\r
4543             and cannot be extended.\r
4544             </para>\r
4545             <para>\r
4546             An identifier is specified with each log message. This can be specified\r
4547             by setting the <see cref="P:log4net.Appender.LocalSyslogAppender.Identity"/> property. The identity (also know \r
4548             as the tag) must not contain white space. The default value for the\r
4549             identity is the application name (from <see cref="P:log4net.Util.SystemInfo.ApplicationFriendlyName"/>).\r
4550             </para>\r
4551             </remarks>\r
4552             <author>Rob Lyon</author>\r
4553             <author>Nicko Cadell</author>\r
4554         </member>\r
4555         <member name="M:log4net.Appender.LocalSyslogAppender.#ctor">\r
4556             <summary>\r
4557             Initializes a new instance of the <see cref="T:log4net.Appender.LocalSyslogAppender"/> class.\r
4558             </summary>\r
4559             <remarks>\r
4560             This instance of the <see cref="T:log4net.Appender.LocalSyslogAppender"/> class is set up to write \r
4561             to a local syslog service.\r
4562             </remarks>\r
4563         </member>\r
4564         <member name="M:log4net.Appender.LocalSyslogAppender.AddMapping(log4net.Appender.LocalSyslogAppender.LevelSeverity)">\r
4565             <summary>\r
4566             Add a mapping of level to severity\r
4567             </summary>\r
4568             <param name="mapping">The mapping to add</param>\r
4569             <remarks>\r
4570             <para>\r
4571             Adds a <see cref="T:log4net.Appender.LocalSyslogAppender.LevelSeverity"/> to this appender.\r
4572             </para>\r
4573             </remarks>\r
4574         </member>\r
4575         <member name="M:log4net.Appender.LocalSyslogAppender.ActivateOptions">\r
4576             <summary>\r
4577             Initialize the appender based on the options set.\r
4578             </summary>\r
4579             <remarks>\r
4580             <para>\r
4581             This is part of the <see cref="T:log4net.Core.IOptionHandler"/> delayed object\r
4582             activation scheme. The <see cref="M:log4net.Appender.LocalSyslogAppender.ActivateOptions"/> method must \r
4583             be called on this object after the configuration properties have\r
4584             been set. Until <see cref="M:log4net.Appender.LocalSyslogAppender.ActivateOptions"/> is called this\r
4585             object is in an undefined state and must not be used. \r
4586             </para>\r
4587             <para>\r
4588             If any of the configuration properties are modified then \r
4589             <see cref="M:log4net.Appender.LocalSyslogAppender.ActivateOptions"/> must be called again.\r
4590             </para>\r
4591             </remarks>\r
4592         </member>\r
4593         <member name="M:log4net.Appender.LocalSyslogAppender.Append(log4net.Core.LoggingEvent)">\r
4594             <summary>\r
4595             This method is called by the <see cref="M:log4net.Appender.AppenderSkeleton.DoAppend(log4net.Core.LoggingEvent)"/> method.\r
4596             </summary>\r
4597             <param name="loggingEvent">The event to log.</param>\r
4598             <remarks>\r
4599             <para>\r
4600             Writes the event to a remote syslog daemon.\r
4601             </para>\r
4602             <para>\r
4603             The format of the output will depend on the appender's layout.\r
4604             </para>\r
4605             </remarks>\r
4606         </member>\r
4607         <member name="M:log4net.Appender.LocalSyslogAppender.OnClose">\r
4608             <summary>\r
4609             Close the syslog when the appender is closed\r
4610             </summary>\r
4611             <remarks>\r
4612             <para>\r
4613             Close the syslog when the appender is closed\r
4614             </para>\r
4615             </remarks>\r
4616         </member>\r
4617         <member name="M:log4net.Appender.LocalSyslogAppender.GetSeverity(log4net.Core.Level)">\r
4618             <summary>\r
4619             Translates a log4net level to a syslog severity.\r
4620             </summary>\r
4621             <param name="level">A log4net level.</param>\r
4622             <returns>A syslog severity.</returns>\r
4623             <remarks>\r
4624             <para>\r
4625             Translates a log4net level to a syslog severity.\r
4626             </para>\r
4627             </remarks>\r
4628         </member>\r
4629         <member name="M:log4net.Appender.LocalSyslogAppender.GeneratePriority(log4net.Appender.LocalSyslogAppender.SyslogFacility,log4net.Appender.LocalSyslogAppender.SyslogSeverity)">\r
4630             <summary>\r
4631             Generate a syslog priority.\r
4632             </summary>\r
4633             <param name="facility">The syslog facility.</param>\r
4634             <param name="severity">The syslog severity.</param>\r
4635             <returns>A syslog priority.</returns>\r
4636         </member>\r
4637         <member name="F:log4net.Appender.LocalSyslogAppender.m_facility">\r
4638             <summary>\r
4639             The facility. The default facility is <see cref="F:log4net.Appender.LocalSyslogAppender.SyslogFacility.User"/>.\r
4640             </summary>\r
4641         </member>\r
4642         <member name="F:log4net.Appender.LocalSyslogAppender.m_identity">\r
4643             <summary>\r
4644             The message identity\r
4645             </summary>\r
4646         </member>\r
4647         <member name="F:log4net.Appender.LocalSyslogAppender.m_handleToIdentity">\r
4648             <summary>\r
4649             Marshaled handle to the identity string. We have to hold on to the\r
4650             string as the <c>openlog</c> and <c>syslog</c> APIs just hold the\r
4651             pointer to the ident and dereference it for each log message.\r
4652             </summary>\r
4653         </member>\r
4654         <member name="F:log4net.Appender.LocalSyslogAppender.m_levelMapping">\r
4655             <summary>\r
4656             Mapping from level object to syslog severity\r
4657             </summary>\r
4658         </member>\r
4659         <member name="M:log4net.Appender.LocalSyslogAppender.openlog(System.IntPtr,System.Int32,log4net.Appender.LocalSyslogAppender.SyslogFacility)">\r
4660             <summary>\r
4661             Open connection to system logger.\r
4662             </summary>\r
4663         </member>\r
4664         <member name="M:log4net.Appender.LocalSyslogAppender.syslog(System.Int32,System.String,System.String)">\r
4665             <summary>\r
4666             Generate a log message.\r
4667             </summary>\r
4668             <remarks>\r
4669             <para>\r
4670             The libc syslog method takes a format string and a variable argument list similar\r
4671             to the classic printf function. As this type of vararg list is not supported\r
4672             by C# we need to specify the arguments explicitly. Here we have specified the\r
4673             format string with a single message argument. The caller must set the format \r
4674             string to <c>"%s"</c>.\r
4675             </para>\r
4676             </remarks>\r
4677         </member>\r
4678         <member name="M:log4net.Appender.LocalSyslogAppender.closelog">\r
4679             <summary>\r
4680             Close descriptor used to write to system logger.\r
4681             </summary>\r
4682         </member>\r
4683         <member name="P:log4net.Appender.LocalSyslogAppender.Identity">\r
4684             <summary>\r
4685             Message identity\r
4686             </summary>\r
4687             <remarks>\r
4688             <para>\r
4689             An identifier is specified with each log message. This can be specified\r
4690             by setting the <see cref="P:log4net.Appender.LocalSyslogAppender.Identity"/> property. The identity (also know \r
4691             as the tag) must not contain white space. The default value for the\r
4692             identity is the application name (from <see cref="P:log4net.Util.SystemInfo.ApplicationFriendlyName"/>).\r
4693             </para>\r
4694             </remarks>\r
4695         </member>\r
4696         <member name="P:log4net.Appender.LocalSyslogAppender.Facility">\r
4697             <summary>\r
4698             Syslog facility\r
4699             </summary>\r
4700             <remarks>\r
4701             Set to one of the <see cref="T:log4net.Appender.LocalSyslogAppender.SyslogFacility"/> values. The list of\r
4702             facilities is predefined and cannot be extended. The default value\r
4703             is <see cref="F:log4net.Appender.LocalSyslogAppender.SyslogFacility.User"/>.\r
4704             </remarks>\r
4705         </member>\r
4706         <member name="P:log4net.Appender.LocalSyslogAppender.RequiresLayout">\r
4707             <summary>\r
4708             This appender requires a <see cref="P:log4net.Appender.AppenderSkeleton.Layout"/> to be set.\r
4709             </summary>\r
4710             <value><c>true</c></value>\r
4711             <remarks>\r
4712             <para>\r
4713             This appender requires a <see cref="P:log4net.Appender.AppenderSkeleton.Layout"/> to be set.\r
4714             </para>\r
4715             </remarks>\r
4716         </member>\r
4717         <member name="T:log4net.Appender.LocalSyslogAppender.SyslogSeverity">\r
4718             <summary>\r
4719             syslog severities\r
4720             </summary>\r
4721             <remarks>\r
4722             <para>\r
4723             The log4net Level maps to a syslog severity using the\r
4724             <see cref="M:log4net.Appender.LocalSyslogAppender.AddMapping(log4net.Appender.LocalSyslogAppender.LevelSeverity)"/> method and the <see cref="T:log4net.Appender.LocalSyslogAppender.LevelSeverity"/>\r
4725             class. The severity is set on <see cref="P:log4net.Appender.LocalSyslogAppender.LevelSeverity.Severity"/>.\r
4726             </para>\r
4727             </remarks>\r
4728         </member>\r
4729         <member name="F:log4net.Appender.LocalSyslogAppender.SyslogSeverity.Emergency">\r
4730             <summary>\r
4731             system is unusable\r
4732             </summary>\r
4733         </member>\r
4734         <member name="F:log4net.Appender.LocalSyslogAppender.SyslogSeverity.Alert">\r
4735             <summary>\r
4736             action must be taken immediately\r
4737             </summary>\r
4738         </member>\r
4739         <member name="F:log4net.Appender.LocalSyslogAppender.SyslogSeverity.Critical">\r
4740             <summary>\r
4741             critical conditions\r
4742             </summary>\r
4743         </member>\r
4744         <member name="F:log4net.Appender.LocalSyslogAppender.SyslogSeverity.Error">\r
4745             <summary>\r
4746             error conditions\r
4747             </summary>\r
4748         </member>\r
4749         <member name="F:log4net.Appender.LocalSyslogAppender.SyslogSeverity.Warning">\r
4750             <summary>\r
4751             warning conditions\r
4752             </summary>\r
4753         </member>\r
4754         <member name="F:log4net.Appender.LocalSyslogAppender.SyslogSeverity.Notice">\r
4755             <summary>\r
4756             normal but significant condition\r
4757             </summary>\r
4758         </member>\r
4759         <member name="F:log4net.Appender.LocalSyslogAppender.SyslogSeverity.Informational">\r
4760             <summary>\r
4761             informational\r
4762             </summary>\r
4763         </member>\r
4764         <member name="F:log4net.Appender.LocalSyslogAppender.SyslogSeverity.Debug">\r
4765             <summary>\r
4766             debug-level messages\r
4767             </summary>\r
4768         </member>\r
4769         <member name="T:log4net.Appender.LocalSyslogAppender.SyslogFacility">\r
4770             <summary>\r
4771             syslog facilities\r
4772             </summary>\r
4773             <remarks>\r
4774             <para>\r
4775             The syslog facility defines which subsystem the logging comes from.\r
4776             This is set on the <see cref="P:log4net.Appender.LocalSyslogAppender.Facility"/> property.\r
4777             </para>\r
4778             </remarks>\r
4779         </member>\r
4780         <member name="F:log4net.Appender.LocalSyslogAppender.SyslogFacility.Kernel">\r
4781             <summary>\r
4782             kernel messages\r
4783             </summary>\r
4784         </member>\r
4785         <member name="F:log4net.Appender.LocalSyslogAppender.SyslogFacility.User">\r
4786             <summary>\r
4787             random user-level messages\r
4788             </summary>\r
4789         </member>\r
4790         <member name="F:log4net.Appender.LocalSyslogAppender.SyslogFacility.Mail">\r
4791             <summary>\r
4792             mail system\r
4793             </summary>\r
4794         </member>\r
4795         <member name="F:log4net.Appender.LocalSyslogAppender.SyslogFacility.Daemons">\r
4796             <summary>\r
4797             system daemons\r
4798             </summary>\r
4799         </member>\r
4800         <member name="F:log4net.Appender.LocalSyslogAppender.SyslogFacility.Authorization">\r
4801             <summary>\r
4802             security/authorization messages\r
4803             </summary>\r
4804         </member>\r
4805         <member name="F:log4net.Appender.LocalSyslogAppender.SyslogFacility.Syslog">\r
4806             <summary>\r
4807             messages generated internally by syslogd\r
4808             </summary>\r
4809         </member>\r
4810         <member name="F:log4net.Appender.LocalSyslogAppender.SyslogFacility.Printer">\r
4811             <summary>\r
4812             line printer subsystem\r
4813             </summary>\r
4814         </member>\r
4815         <member name="F:log4net.Appender.LocalSyslogAppender.SyslogFacility.News">\r
4816             <summary>\r
4817             network news subsystem\r
4818             </summary>\r
4819         </member>\r
4820         <member name="F:log4net.Appender.LocalSyslogAppender.SyslogFacility.Uucp">\r
4821             <summary>\r
4822             UUCP subsystem\r
4823             </summary>\r
4824         </member>\r
4825         <member name="F:log4net.Appender.LocalSyslogAppender.SyslogFacility.Clock">\r
4826             <summary>\r
4827             clock (cron/at) daemon\r
4828             </summary>\r
4829         </member>\r
4830         <member name="F:log4net.Appender.LocalSyslogAppender.SyslogFacility.Authorization2">\r
4831             <summary>\r
4832             security/authorization  messages (private)\r
4833             </summary>\r
4834         </member>\r
4835         <member name="F:log4net.Appender.LocalSyslogAppender.SyslogFacility.Ftp">\r
4836             <summary>\r
4837             ftp daemon\r
4838             </summary>\r
4839         </member>\r
4840         <member name="F:log4net.Appender.LocalSyslogAppender.SyslogFacility.Ntp">\r
4841             <summary>\r
4842             NTP subsystem\r
4843             </summary>\r
4844         </member>\r
4845         <member name="F:log4net.Appender.LocalSyslogAppender.SyslogFacility.Audit">\r
4846             <summary>\r
4847             log audit\r
4848             </summary>\r
4849         </member>\r
4850         <member name="F:log4net.Appender.LocalSyslogAppender.SyslogFacility.Alert">\r
4851             <summary>\r
4852             log alert\r
4853             </summary>\r
4854         </member>\r
4855         <member name="F:log4net.Appender.LocalSyslogAppender.SyslogFacility.Clock2">\r
4856             <summary>\r
4857             clock daemon\r
4858             </summary>\r
4859         </member>\r
4860         <member name="F:log4net.Appender.LocalSyslogAppender.SyslogFacility.Local0">\r
4861             <summary>\r
4862             reserved for local use\r
4863             </summary>\r
4864         </member>\r
4865         <member name="F:log4net.Appender.LocalSyslogAppender.SyslogFacility.Local1">\r
4866             <summary>\r
4867             reserved for local use\r
4868             </summary>\r
4869         </member>\r
4870         <member name="F:log4net.Appender.LocalSyslogAppender.SyslogFacility.Local2">\r
4871             <summary>\r
4872             reserved for local use\r
4873             </summary>\r
4874         </member>\r
4875         <member name="F:log4net.Appender.LocalSyslogAppender.SyslogFacility.Local3">\r
4876             <summary>\r
4877             reserved for local use\r
4878             </summary>\r
4879         </member>\r
4880         <member name="F:log4net.Appender.LocalSyslogAppender.SyslogFacility.Local4">\r
4881             <summary>\r
4882             reserved for local use\r
4883             </summary>\r
4884         </member>\r
4885         <member name="F:log4net.Appender.LocalSyslogAppender.SyslogFacility.Local5">\r
4886             <summary>\r
4887             reserved for local use\r
4888             </summary>\r
4889         </member>\r
4890         <member name="F:log4net.Appender.LocalSyslogAppender.SyslogFacility.Local6">\r
4891             <summary>\r
4892             reserved for local use\r
4893             </summary>\r
4894         </member>\r
4895         <member name="F:log4net.Appender.LocalSyslogAppender.SyslogFacility.Local7">\r
4896             <summary>\r
4897             reserved for local use\r
4898             </summary>\r
4899         </member>\r
4900         <member name="T:log4net.Appender.LocalSyslogAppender.LevelSeverity">\r
4901             <summary>\r
4902             A class to act as a mapping between the level that a logging call is made at and\r
4903             the syslog severity that is should be logged at.\r
4904             </summary>\r
4905             <remarks>\r
4906             <para>\r
4907             A class to act as a mapping between the level that a logging call is made at and\r
4908             the syslog severity that is should be logged at.\r
4909             </para>\r
4910             </remarks>\r
4911         </member>\r
4912         <member name="P:log4net.Appender.LocalSyslogAppender.LevelSeverity.Severity">\r
4913             <summary>\r
4914             The mapped syslog severity for the specified level\r
4915             </summary>\r
4916             <remarks>\r
4917             <para>\r
4918             Required property.\r
4919             The mapped syslog severity for the specified level\r
4920             </para>\r
4921             </remarks>\r
4922         </member>\r
4923         <member name="T:log4net.Appender.MemoryAppender">\r
4924             <summary>\r
4925             Stores logging events in an array.\r
4926             </summary>\r
4927             <remarks>\r
4928             <para>\r
4929             The memory appender stores all the logging events\r
4930             that are appended in an in-memory array.\r
4931             </para>\r
4932             <para>\r
4933             Use the <see cref="M:log4net.Appender.MemoryAppender.GetEvents"/> method to get\r
4934             the current list of events that have been appended.\r
4935             </para>\r
4936             <para>\r
4937             Use the <see cref="M:log4net.Appender.MemoryAppender.Clear"/> method to clear the\r
4938             current list of events.\r
4939             </para>\r
4940             </remarks>\r
4941             <author>Julian Biddle</author>\r
4942             <author>Nicko Cadell</author>\r
4943             <author>Gert Driesen</author>\r
4944         </member>\r
4945         <member name="M:log4net.Appender.MemoryAppender.#ctor">\r
4946             <summary>\r
4947             Initializes a new instance of the <see cref="T:log4net.Appender.MemoryAppender"/> class.\r
4948             </summary>\r
4949             <remarks>\r
4950             <para>\r
4951             Default constructor.\r
4952             </para>\r
4953             </remarks>\r
4954         </member>\r
4955         <member name="M:log4net.Appender.MemoryAppender.GetEvents">\r
4956             <summary>\r
4957             Gets the events that have been logged.\r
4958             </summary>\r
4959             <returns>The events that have been logged</returns>\r
4960             <remarks>\r
4961             <para>\r
4962             Gets the events that have been logged.\r
4963             </para>\r
4964             </remarks>\r
4965         </member>\r
4966         <member name="M:log4net.Appender.MemoryAppender.Append(log4net.Core.LoggingEvent)">\r
4967             <summary>\r
4968             This method is called by the <see cref="M:log4net.Appender.AppenderSkeleton.DoAppend(log4net.Core.LoggingEvent)"/> method. \r
4969             </summary>\r
4970             <param name="loggingEvent">the event to log</param>\r
4971             <remarks>\r
4972             <para>Stores the <paramref name="loggingEvent"/> in the events list.</para>\r
4973             </remarks>\r
4974         </member>\r
4975         <member name="M:log4net.Appender.MemoryAppender.Clear">\r
4976             <summary>\r
4977             Clear the list of events\r
4978             </summary>\r
4979             <remarks>\r
4980             Clear the list of events\r
4981             </remarks>\r
4982         </member>\r
4983         <member name="F:log4net.Appender.MemoryAppender.m_eventsList">\r
4984             <summary>\r
4985             The list of events that have been appended.\r
4986             </summary>\r
4987         </member>\r
4988         <member name="F:log4net.Appender.MemoryAppender.m_fixFlags">\r
4989             <summary>\r
4990             Value indicating which fields in the event should be fixed\r
4991             </summary>\r
4992             <remarks>\r
4993             By default all fields are fixed\r
4994             </remarks>\r
4995         </member>\r
4996         <member name="P:log4net.Appender.MemoryAppender.OnlyFixPartialEventData">\r
4997             <summary>\r
4998             Gets or sets a value indicating whether only part of the logging event \r
4999             data should be fixed.\r
5000             </summary>\r
5001             <value>\r
5002             <c>true</c> if the appender should only fix part of the logging event \r
5003             data, otherwise <c>false</c>. The default is <c>false</c>.\r
5004             </value>\r
5005             <remarks>\r
5006             <para>\r
5007             Setting this property to <c>true</c> will cause only part of the event \r
5008             data to be fixed and stored in the appender, hereby improving performance. \r
5009             </para>\r
5010             <para>\r
5011             See <see cref="M:log4net.Core.LoggingEvent.FixVolatileData(System.Boolean)"/> for more information.\r
5012             </para>\r
5013             </remarks>\r
5014         </member>\r
5015         <member name="P:log4net.Appender.MemoryAppender.Fix">\r
5016             <summary>\r
5017             Gets or sets the fields that will be fixed in the event\r
5018             </summary>\r
5019             <remarks>\r
5020             <para>\r
5021             The logging event needs to have certain thread specific values \r
5022             captured before it can be buffered. See <see cref="P:log4net.Core.LoggingEvent.Fix"/>\r
5023             for details.\r
5024             </para>\r
5025             </remarks>\r
5026         </member>\r
5027         <member name="T:log4net.Appender.NetSendAppender">\r
5028             <summary>\r
5029             Logs entries by sending network messages using the \r
5030             <see cref="M:log4net.Appender.NetSendAppender.NetMessageBufferSend(System.String,System.String,System.String,System.String,System.Int32)"/> native function.\r
5031             </summary>\r
5032             <remarks>\r
5033             <para>\r
5034             You can send messages only to names that are active \r
5035             on the network. If you send the message to a user name, \r
5036             that user must be logged on and running the Messenger \r
5037             service to receive the message.\r
5038             </para>\r
5039             <para>\r
5040             The receiver will get a top most window displaying the \r
5041             messages one at a time, therefore this appender should \r
5042             not be used to deliver a high volume of messages.\r
5043             </para>\r
5044             <para>\r
5045             The following table lists some possible uses for this appender :\r
5046             </para>\r
5047             <para>\r
5048             <list type="table">\r
5049                 <listheader>\r
5050                     <term>Action</term>\r
5051                     <description>Property Value(s)</description>\r
5052                 </listheader>\r
5053                 <item>\r
5054                     <term>Send a message to a user account on the local machine</term>\r
5055                     <description>\r
5056                         <para>\r
5057                         <paramref name="Server"/> = &lt;name of the local machine&gt;\r
5058                         </para>\r
5059                         <para>\r
5060                         <paramref name="Recipient"/> = &lt;user name&gt;\r
5061                         </para>\r
5062                     </description>\r
5063                 </item>\r
5064                 <item>\r
5065                     <term>Send a message to a user account on a remote machine</term>\r
5066                     <description>\r
5067                         <para>\r
5068                         <paramref name="Server"/> = &lt;name of the remote machine&gt;\r
5069                         </para>\r
5070                         <para>\r
5071                         <paramref name="Recipient"/> = &lt;user name&gt;\r
5072                         </para>\r
5073                     </description>\r
5074                 </item>\r
5075                 <item>\r
5076                     <term>Send a message to a domain user account</term>\r
5077                     <description>\r
5078                         <para>\r
5079                         <paramref name="Server"/> = &lt;name of a domain controller | uninitialized&gt;\r
5080                         </para>\r
5081                         <para>\r
5082                         <paramref name="Recipient"/> = &lt;user name&gt;\r
5083                         </para>\r
5084                     </description>\r
5085                 </item>\r
5086                 <item>\r
5087                     <term>Send a message to all the names in a workgroup or domain</term>\r
5088                     <description>\r
5089                         <para>\r
5090                         <paramref name="Recipient"/> = &lt;workgroup name | domain name&gt;*\r
5091                         </para>\r
5092                     </description>\r
5093                 </item>\r
5094                 <item>\r
5095                     <term>Send a message from the local machine to a remote machine</term>\r
5096                     <description>\r
5097                         <para>\r
5098                         <paramref name="Server"/> = &lt;name of the local machine | uninitialized&gt;\r
5099                         </para>\r
5100                         <para>\r
5101                         <paramref name="Recipient"/> = &lt;name of the remote machine&gt;\r
5102                         </para>\r
5103                     </description>\r
5104                 </item>\r
5105             </list>\r
5106             </para>\r
5107             <para>\r
5108             <b>Note :</b> security restrictions apply for sending \r
5109             network messages, see <see cref="M:log4net.Appender.NetSendAppender.NetMessageBufferSend(System.String,System.String,System.String,System.String,System.Int32)"/> \r
5110             for more information.\r
5111             </para>\r
5112             </remarks>\r
5113             <example>\r
5114             <para>\r
5115             An example configuration section to log information \r
5116             using this appender from the local machine, named \r
5117             LOCAL_PC, to machine OPERATOR_PC :\r
5118             </para>\r
5119             <code lang="XML" escaped="true">\r
5120             <appender name="NetSendAppender_Operator" type="log4net.Appender.NetSendAppender">\r
5121                 <server value="LOCAL_PC"/>\r
5122                 <recipient value="OPERATOR_PC"/>\r
5123                 <layout type="log4net.Layout.PatternLayout" value="%-5p %c [%x] - %m%n"/>\r
5124             </appender>\r
5125             </code>\r
5126             </example>\r
5127             <author>Nicko Cadell</author>\r
5128             <author>Gert Driesen</author>\r
5129         </member>\r
5130         <member name="F:log4net.Appender.NetSendAppender.m_server">\r
5131             <summary>\r
5132             The DNS or NetBIOS name of the server on which the function is to execute.\r
5133             </summary>\r
5134         </member>\r
5135         <member name="F:log4net.Appender.NetSendAppender.m_sender">\r
5136             <summary>\r
5137             The sender of the network message.\r
5138             </summary>\r
5139         </member>\r
5140         <member name="F:log4net.Appender.NetSendAppender.m_recipient">\r
5141             <summary>\r
5142             The message alias to which the message should be sent.\r
5143             </summary>\r
5144         </member>\r
5145         <member name="F:log4net.Appender.NetSendAppender.m_securityContext">\r
5146             <summary>\r
5147             The security context to use for privileged calls\r
5148             </summary>\r
5149         </member>\r
5150         <member name="M:log4net.Appender.NetSendAppender.#ctor">\r
5151             <summary>\r
5152             Initializes the appender.\r
5153             </summary>\r
5154             <remarks>\r
5155             The default constructor initializes all fields to their default values.\r
5156             </remarks>\r
5157         </member>\r
5158         <member name="M:log4net.Appender.NetSendAppender.ActivateOptions">\r
5159             <summary>\r
5160             Initialize the appender based on the options set.\r
5161             </summary>\r
5162             <remarks>\r
5163             <para>\r
5164             This is part of the <see cref="T:log4net.Core.IOptionHandler"/> delayed object\r
5165             activation scheme. The <see cref="M:log4net.Appender.NetSendAppender.ActivateOptions"/> method must \r
5166             be called on this object after the configuration properties have\r
5167             been set. Until <see cref="M:log4net.Appender.NetSendAppender.ActivateOptions"/> is called this\r
5168             object is in an undefined state and must not be used. \r
5169             </para>\r
5170             <para>\r
5171             If any of the configuration properties are modified then \r
5172             <see cref="M:log4net.Appender.NetSendAppender.ActivateOptions"/> must be called again.\r
5173             </para>\r
5174             <para>\r
5175             The appender will be ignored if no <see cref="P:log4net.Appender.NetSendAppender.Recipient"/> was specified.\r
5176             </para>\r
5177             </remarks>\r
5178             <exception cref="T:System.ArgumentNullException">The required property <see cref="P:log4net.Appender.NetSendAppender.Recipient"/> was not specified.</exception>\r
5179         </member>\r
5180         <member name="M:log4net.Appender.NetSendAppender.Append(log4net.Core.LoggingEvent)">\r
5181             <summary>\r
5182             This method is called by the <see cref="M:log4net.Appender.AppenderSkeleton.DoAppend(log4net.Core.LoggingEvent)"/> method.\r
5183             </summary>\r
5184             <param name="loggingEvent">The event to log.</param>\r
5185             <remarks>\r
5186             <para>\r
5187             Sends the event using a network message.\r
5188             </para>\r
5189             </remarks>\r
5190         </member>\r
5191         <member name="M:log4net.Appender.NetSendAppender.NetMessageBufferSend(System.String,System.String,System.String,System.String,System.Int32)">\r
5192             <summary>\r
5193             Sends a buffer of information to a registered message alias.\r
5194             </summary>\r
5195             <param name="serverName">The DNS or NetBIOS name of the server on which the function is to execute.</param>\r
5196             <param name="msgName">The message alias to which the message buffer should be sent</param>\r
5197             <param name="fromName">The originator of the message.</param>\r
5198             <param name="buffer">The message text.</param>\r
5199             <param name="bufferSize">The length, in bytes, of the message text.</param>\r
5200             <remarks>\r
5201             <para>\r
5202             The following restrictions apply for sending network messages:\r
5203             </para>\r
5204             <para>\r
5205             <list type="table">\r
5206                 <listheader>\r
5207                     <term>Platform</term>\r
5208                     <description>Requirements</description>\r
5209                 </listheader>\r
5210                 <item>\r
5211                     <term>Windows NT</term>\r
5212                     <description>\r
5213                         <para>\r
5214                         No special group membership is required to send a network message.\r
5215                         </para>\r
5216                         <para>\r
5217                         Admin, Accounts, Print, or Server Operator group membership is required to \r
5218                         successfully send a network message on a remote server.\r
5219                         </para>\r
5220                     </description>\r
5221                 </item>\r
5222                 <item>\r
5223                     <term>Windows 2000 or later</term>\r
5224                     <description>\r
5225                         <para>\r
5226                         If you send a message on a domain controller that is running Active Directory, \r
5227                         access is allowed or denied based on the access control list (ACL) for the securable \r
5228                         object. The default ACL permits only Domain Admins and Account Operators to send a network message. \r
5229                         </para>\r
5230                         <para>\r
5231                         On a member server or workstation, only Administrators and Server Operators can send a network message. \r
5232                         </para>\r
5233                     </description>\r
5234                 </item>\r
5235             </list>\r
5236             </para>\r
5237             <para>\r
5238             For more information see <a href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/netmgmt/netmgmt/security_requirements_for_the_network_management_functions.asp">Security Requirements for the Network Management Functions</a>.\r
5239             </para>\r
5240             </remarks>\r
5241             <returns>\r
5242             <para>\r
5243             If the function succeeds, the return value is zero.\r
5244             </para>\r
5245             </returns>\r
5246         </member>\r
5247         <member name="P:log4net.Appender.NetSendAppender.Sender">\r
5248             <summary>\r
5249             Gets or sets the sender of the message.\r
5250             </summary>\r
5251             <value>\r
5252             The sender of the message.\r
5253             </value>\r
5254             <remarks>\r
5255             If this property is not specified, the message is sent from the local computer.\r
5256             </remarks>\r
5257         </member>\r
5258         <member name="P:log4net.Appender.NetSendAppender.Recipient">\r
5259             <summary>\r
5260             Gets or sets the message alias to which the message should be sent.\r
5261             </summary>\r
5262             <value>\r
5263             The recipient of the message.\r
5264             </value>\r
5265             <remarks>\r
5266             This property should always be specified in order to send a message.\r
5267             </remarks>\r
5268         </member>\r
5269         <member name="P:log4net.Appender.NetSendAppender.Server">\r
5270             <summary>\r
5271             Gets or sets the DNS or NetBIOS name of the remote server on which the function is to execute.\r
5272             </summary>\r
5273             <value>\r
5274             DNS or NetBIOS name of the remote server on which the function is to execute.\r
5275             </value>\r
5276             <remarks>\r
5277             <para>\r
5278             For Windows NT 4.0 and earlier, the string should begin with \\.\r
5279             </para>\r
5280             <para>\r
5281             If this property is not specified, the local computer is used. \r
5282             </para>\r
5283             </remarks>\r
5284         </member>\r
5285         <member name="P:log4net.Appender.NetSendAppender.SecurityContext">\r
5286             <summary>\r
5287             Gets or sets the <see cref="P:log4net.Appender.NetSendAppender.SecurityContext"/> used to call the NetSend method.\r
5288             </summary>\r
5289             <value>\r
5290             The <see cref="P:log4net.Appender.NetSendAppender.SecurityContext"/> used to call the NetSend method.\r
5291             </value>\r
5292             <remarks>\r
5293             <para>\r
5294             Unless a <see cref="P:log4net.Appender.NetSendAppender.SecurityContext"/> specified here for this appender\r
5295             the <see cref="P:log4net.Core.SecurityContextProvider.DefaultProvider"/> is queried for the\r
5296             security context to use. The default behavior is to use the security context\r
5297             of the current thread.\r
5298             </para>\r
5299             </remarks>\r
5300         </member>\r
5301         <member name="P:log4net.Appender.NetSendAppender.RequiresLayout">\r
5302             <summary>\r
5303             This appender requires a <see cref="N:log4net.Layout"/> to be set.\r
5304             </summary>\r
5305             <value><c>true</c></value>\r
5306             <remarks>\r
5307             <para>\r
5308             This appender requires a <see cref="N:log4net.Layout"/> to be set.\r
5309             </para>\r
5310             </remarks>\r
5311         </member>\r
5312         <member name="T:log4net.Appender.OutputDebugStringAppender">\r
5313             <summary>\r
5314             Appends log events to the OutputDebugString system.\r
5315             </summary>\r
5316             <remarks>\r
5317             <para>\r
5318             OutputDebugStringAppender appends log events to the\r
5319             OutputDebugString system.\r
5320             </para>\r
5321             <para>\r
5322             The string is passed to the native <c>OutputDebugString</c> \r
5323             function.\r
5324             </para>\r
5325             </remarks>\r
5326             <author>Nicko Cadell</author>\r
5327             <author>Gert Driesen</author>\r
5328         </member>\r
5329         <member name="M:log4net.Appender.OutputDebugStringAppender.#ctor">\r
5330             <summary>\r
5331             Initializes a new instance of the <see cref="T:log4net.Appender.OutputDebugStringAppender"/> class.\r
5332             </summary>\r
5333             <remarks>\r
5334             <para>\r
5335             Default constructor.\r
5336             </para>\r
5337             </remarks>\r
5338         </member>\r
5339         <member name="M:log4net.Appender.OutputDebugStringAppender.Append(log4net.Core.LoggingEvent)">\r
5340             <summary>\r
5341             Write the logging event to the output debug string API\r
5342             </summary>\r
5343             <param name="loggingEvent">the event to log</param>\r
5344             <remarks>\r
5345             <para>\r
5346             Write the logging event to the output debug string API\r
5347             </para>\r
5348             </remarks>\r
5349         </member>\r
5350         <member name="M:log4net.Appender.OutputDebugStringAppender.OutputDebugString(System.String)">\r
5351             <summary>\r
5352             Stub for OutputDebugString native method\r
5353             </summary>\r
5354             <param name="message">the string to output</param>\r
5355             <remarks>\r
5356             <para>\r
5357             Stub for OutputDebugString native method\r
5358             </para>\r
5359             </remarks>\r
5360         </member>\r
5361         <member name="P:log4net.Appender.OutputDebugStringAppender.RequiresLayout">\r
5362             <summary>\r
5363             This appender requires a <see cref="N:log4net.Layout"/> to be set.\r
5364             </summary>\r
5365             <value><c>true</c></value>\r
5366             <remarks>\r
5367             <para>\r
5368             This appender requires a <see cref="N:log4net.Layout"/> to be set.\r
5369             </para>\r
5370             </remarks>\r
5371         </member>\r
5372         <member name="T:log4net.Appender.RemoteSyslogAppender">\r
5373             <summary>\r
5374             Logs events to a remote syslog daemon.\r
5375             </summary>\r
5376             <remarks>\r
5377             <para>\r
5378             The BSD syslog protocol is used to remotely log to\r
5379             a syslog daemon. The syslogd listens for for messages\r
5380             on UDP port 514.\r
5381             </para>\r
5382             <para>\r
5383             The syslog UDP protocol is not authenticated. Most syslog daemons\r
5384             do not accept remote log messages because of the security implications.\r
5385             You may be able to use the LocalSyslogAppender to talk to a local\r
5386             syslog service.\r
5387             </para>\r
5388             <para>\r
5389             There is an RFC 3164 that claims to document the BSD Syslog Protocol.\r
5390             This RFC can be seen here: http://www.faqs.org/rfcs/rfc3164.html.\r
5391             This appender generates what the RFC calls an "Original Device Message",\r
5392             i.e. does not include the TIMESTAMP or HOSTNAME fields. By observation\r
5393             this format of message will be accepted by all current syslog daemon\r
5394             implementations. The daemon will attach the current time and the source\r
5395             hostname or IP address to any messages received.\r
5396             </para>\r
5397             <para>\r
5398             Syslog messages must have a facility and and a severity. The severity\r
5399             is derived from the Level of the logging event.\r
5400             The facility must be chosen from the set of defined syslog \r
5401             <see cref="T:log4net.Appender.RemoteSyslogAppender.SyslogFacility"/> values. The facilities list is predefined\r
5402             and cannot be extended.\r
5403             </para>\r
5404             <para>\r
5405             An identifier is specified with each log message. This can be specified\r
5406             by setting the <see cref="P:log4net.Appender.RemoteSyslogAppender.Identity"/> property. The identity (also know \r
5407             as the tag) must not contain white space. The default value for the\r
5408             identity is the application name (from <see cref="P:log4net.Core.LoggingEvent.Domain"/>).\r
5409             </para>\r
5410             </remarks>\r
5411             <author>Rob Lyon</author>\r
5412             <author>Nicko Cadell</author>\r
5413         </member>\r
5414         <member name="T:log4net.Appender.UdpAppender">\r
5415              <summary>\r
5416              Sends logging events as connectionless UDP datagrams to a remote host or a \r
5417              multicast group using an <see cref="T:System.Net.Sockets.UdpClient"/>.\r
5418              </summary>\r
5419              <remarks>\r
5420              <para>\r
5421              UDP guarantees neither that messages arrive, nor that they arrive in the correct order.\r
5422              </para>\r
5423              <para>\r
5424              To view the logging results, a custom application can be developed that listens for logging \r
5425              events.\r
5426              </para>\r
5427              <para>\r
5428              When decoding events send via this appender remember to use the same encoding\r
5429              to decode the events as was used to send the events. See the <see cref="P:log4net.Appender.UdpAppender.Encoding"/>\r
5430              property to specify the encoding to use.\r
5431              </para>\r
5432              </remarks>\r
5433              <example>\r
5434              This example shows how to log receive logging events that are sent \r
5435              on IP address 244.0.0.1 and port 8080 to the console. The event is \r
5436              encoded in the packet as a unicode string and it is decoded as such. \r
5437              <code lang="C#">\r
5438              IPEndPoint remoteEndPoint = new IPEndPoint(IPAddress.Any, 0);\r
5439              UdpClient udpClient;\r
5440              byte[] buffer;\r
5441              string loggingEvent;\r
5442              \r
5443              try \r
5444              {\r
5445                  udpClient = new UdpClient(8080);\r
5446                  \r
5447                  while(true) \r
5448                  {\r
5449                      buffer = udpClient.Receive(ref remoteEndPoint);\r
5450                      loggingEvent = System.Text.Encoding.Unicode.GetString(buffer);\r
5451                      Console.WriteLine(loggingEvent);\r
5452                  }\r
5453              } \r
5454              catch(Exception e) \r
5455              {\r
5456                  Console.WriteLine(e.ToString());\r
5457              }\r
5458              </code>\r
5459              <code lang="Visual Basic">\r
5460              Dim remoteEndPoint as IPEndPoint\r
5461              Dim udpClient as UdpClient\r
5462              Dim buffer as Byte()\r
5463              Dim loggingEvent as String\r
5464              \r
5465              Try \r
5466                  remoteEndPoint = new IPEndPoint(IPAddress.Any, 0)\r
5467                  udpClient = new UdpClient(8080)\r
5468             \r
5469                  While True\r
5470                      buffer = udpClient.Receive(ByRef remoteEndPoint)\r
5471                      loggingEvent = System.Text.Encoding.Unicode.GetString(buffer)\r
5472                      Console.WriteLine(loggingEvent)\r
5473                  Wend\r
5474              Catch e As Exception\r
5475                  Console.WriteLine(e.ToString())\r
5476              End Try\r
5477              </code>\r
5478              <para>\r
5479              An example configuration section to log information using this appender to the \r
5480              IP 224.0.0.1 on port 8080:\r
5481              </para>\r
5482              <code lang="XML" escaped="true">\r
5483              <appender name="UdpAppender" type="log4net.Appender.UdpAppender">\r
5484                  <remoteAddress value="224.0.0.1"/>\r
5485                  <remotePort value="8080"/>\r
5486                  <layout type="log4net.Layout.PatternLayout" value="%-5level %logger [%ndc] - %message%newline"/>\r
5487              </appender>\r
5488              </code>\r
5489              </example>\r
5490              <author>Gert Driesen</author>\r
5491              <author>Nicko Cadell</author>\r
5492         </member>\r
5493         <member name="M:log4net.Appender.UdpAppender.#ctor">\r
5494             <summary>\r
5495             Initializes a new instance of the <see cref="T:log4net.Appender.UdpAppender"/> class.\r
5496             </summary>\r
5497             <remarks>\r
5498             The default constructor initializes all fields to their default values.\r
5499             </remarks>\r
5500         </member>\r
5501         <member name="M:log4net.Appender.UdpAppender.ActivateOptions">\r
5502             <summary>\r
5503             Initialize the appender based on the options set.\r
5504             </summary>\r
5505             <remarks>\r
5506             <para>\r
5507             This is part of the <see cref="T:log4net.Core.IOptionHandler"/> delayed object\r
5508             activation scheme. The <see cref="M:log4net.Appender.UdpAppender.ActivateOptions"/> method must \r
5509             be called on this object after the configuration properties have\r
5510             been set. Until <see cref="M:log4net.Appender.UdpAppender.ActivateOptions"/> is called this\r
5511             object is in an undefined state and must not be used. \r
5512             </para>\r
5513             <para>\r
5514             If any of the configuration properties are modified then \r
5515             <see cref="M:log4net.Appender.UdpAppender.ActivateOptions"/> must be called again.\r
5516             </para>\r
5517             <para>\r
5518             The appender will be ignored if no <see cref="P:log4net.Appender.UdpAppender.RemoteAddress"/> was specified or \r
5519             an invalid remote or local TCP port number was specified.\r
5520             </para>\r
5521             </remarks>\r
5522             <exception cref="T:System.ArgumentNullException">The required property <see cref="P:log4net.Appender.UdpAppender.RemoteAddress"/> was not specified.</exception>\r
5523             <exception cref="T:System.ArgumentOutOfRangeException">The TCP port number assigned to <see cref="P:log4net.Appender.UdpAppender.LocalPort"/> or <see cref="P:log4net.Appender.UdpAppender.RemotePort"/> is less than <see cref="F:System.Net.IPEndPoint.MinPort"/> or greater than <see cref="F:System.Net.IPEndPoint.MaxPort"/>.</exception>\r
5524         </member>\r
5525         <member name="M:log4net.Appender.UdpAppender.Append(log4net.Core.LoggingEvent)">\r
5526             <summary>\r
5527             This method is called by the <see cref="M:log4net.Appender.AppenderSkeleton.DoAppend(log4net.Core.LoggingEvent)"/> method.\r
5528             </summary>\r
5529             <param name="loggingEvent">The event to log.</param>\r
5530             <remarks>\r
5531             <para>\r
5532             Sends the event using an UDP datagram.\r
5533             </para>\r
5534             <para>\r
5535             Exceptions are passed to the <see cref="P:log4net.Appender.AppenderSkeleton.ErrorHandler"/>.\r
5536             </para>\r
5537             </remarks>\r
5538         </member>\r
5539         <member name="M:log4net.Appender.UdpAppender.OnClose">\r
5540             <summary>\r
5541             Closes the UDP connection and releases all resources associated with \r
5542             this <see cref="T:log4net.Appender.UdpAppender"/> instance.\r
5543             </summary>\r
5544             <remarks>\r
5545             <para>\r
5546             Disables the underlying <see cref="T:System.Net.Sockets.UdpClient"/> and releases all managed \r
5547             and unmanaged resources associated with the <see cref="T:log4net.Appender.UdpAppender"/>.\r
5548             </para>\r
5549             </remarks>\r
5550         </member>\r
5551         <member name="M:log4net.Appender.UdpAppender.InitializeClientConnection">\r
5552             <summary>\r
5553             Initializes the underlying  <see cref="T:System.Net.Sockets.UdpClient"/> connection.\r
5554             </summary>\r
5555             <remarks>\r
5556             <para>\r
5557             The underlying <see cref="T:System.Net.Sockets.UdpClient"/> is initialized and binds to the \r
5558             port number from which you intend to communicate.\r
5559             </para>\r
5560             <para>\r
5561             Exceptions are passed to the <see cref="P:log4net.Appender.AppenderSkeleton.ErrorHandler"/>.\r
5562             </para>\r
5563             </remarks>\r
5564         </member>\r
5565         <member name="F:log4net.Appender.UdpAppender.m_remoteAddress">\r
5566             <summary>\r
5567             The IP address of the remote host or multicast group to which \r
5568             the logging event will be sent.\r
5569             </summary>\r
5570         </member>\r
5571         <member name="F:log4net.Appender.UdpAppender.m_remotePort">\r
5572             <summary>\r
5573             The TCP port number of the remote host or multicast group to \r
5574             which the logging event will be sent.\r
5575             </summary>\r
5576         </member>\r
5577         <member name="F:log4net.Appender.UdpAppender.m_remoteEndPoint">\r
5578             <summary>\r
5579             The cached remote endpoint to which the logging events will be sent.\r
5580             </summary>\r
5581         </member>\r
5582         <member name="F:log4net.Appender.UdpAppender.m_localPort">\r
5583             <summary>\r
5584             The TCP port number from which the <see cref="T:System.Net.Sockets.UdpClient"/> will communicate.\r
5585             </summary>\r
5586         </member>\r
5587         <member name="F:log4net.Appender.UdpAppender.m_client">\r
5588             <summary>\r
5589             The <see cref="T:System.Net.Sockets.UdpClient"/> instance that will be used for sending the \r
5590             logging events.\r
5591             </summary>\r
5592         </member>\r
5593         <member name="F:log4net.Appender.UdpAppender.m_encoding">\r
5594             <summary>\r
5595             The encoding to use for the packet.\r
5596             </summary>\r
5597         </member>\r
5598         <member name="P:log4net.Appender.UdpAppender.RemoteAddress">\r
5599             <summary>\r
5600             Gets or sets the IP address of the remote host or multicast group to which\r
5601             the underlying <see cref="T:System.Net.Sockets.UdpClient"/> should sent the logging event.\r
5602             </summary>\r
5603             <value>\r
5604             The IP address of the remote host or multicast group to which the logging event \r
5605             will be sent.\r
5606             </value>\r
5607             <remarks>\r
5608             <para>\r
5609             Multicast addresses are identified by IP class <b>D</b> addresses (in the range 224.0.0.0 to\r
5610             239.255.255.255).  Multicast packets can pass across different networks through routers, so\r
5611             it is possible to use multicasts in an Internet scenario as long as your network provider \r
5612             supports multicasting.\r
5613             </para>\r
5614             <para>\r
5615             Hosts that want to receive particular multicast messages must register their interest by joining\r
5616             the multicast group.  Multicast messages are not sent to networks where no host has joined\r
5617             the multicast group.  Class <b>D</b> IP addresses are used for multicast groups, to differentiate\r
5618             them from normal host addresses, allowing nodes to easily detect if a message is of interest.\r
5619             </para>\r
5620             <para>\r
5621             Static multicast addresses that are needed globally are assigned by IANA.  A few examples are listed in the table below:\r
5622             </para>\r
5623             <para>\r
5624             <list type="table">\r
5625                 <listheader>\r
5626                     <term>IP Address</term>\r
5627                     <description>Description</description>\r
5628                 </listheader>\r
5629                 <item>\r
5630                     <term>224.0.0.1</term>\r
5631                     <description>\r
5632                         <para>\r
5633                         Sends a message to all system on the subnet.\r
5634                         </para>\r
5635                     </description>\r
5636                 </item>\r
5637                 <item>\r
5638                     <term>224.0.0.2</term>\r
5639                     <description>\r
5640                         <para>\r
5641                         Sends a message to all routers on the subnet.\r
5642                         </para>\r
5643                     </description>\r
5644                 </item>\r
5645                 <item>\r
5646                     <term>224.0.0.12</term>\r
5647                     <description>\r
5648                         <para>\r
5649                         The DHCP server answers messages on the IP address 224.0.0.12, but only on a subnet.\r
5650                         </para>\r
5651                     </description>\r
5652                 </item>\r
5653             </list>\r
5654             </para>\r
5655             <para>\r
5656             A complete list of actually reserved multicast addresses and their owners in the ranges\r
5657             defined by RFC 3171 can be found at the <A href="http://www.iana.org/assignments/multicast-addresses">IANA web site</A>. \r
5658             </para>\r
5659             <para>\r
5660             The address range 239.0.0.0 to 239.255.255.255 is reserved for administrative scope-relative \r
5661             addresses.  These addresses can be reused with other local groups.  Routers are typically \r
5662             configured with filters to prevent multicast traffic in this range from flowing outside\r
5663             of the local network.\r
5664             </para>\r
5665             </remarks>\r
5666         </member>\r
5667         <member name="P:log4net.Appender.UdpAppender.RemotePort">\r
5668             <summary>\r
5669             Gets or sets the TCP port number of the remote host or multicast group to which \r
5670             the underlying <see cref="T:System.Net.Sockets.UdpClient"/> should sent the logging event.\r
5671             </summary>\r
5672             <value>\r
5673             An integer value in the range <see cref="F:System.Net.IPEndPoint.MinPort"/> to <see cref="F:System.Net.IPEndPoint.MaxPort"/> \r
5674             indicating the TCP port number of the remote host or multicast group to which the logging event \r
5675             will be sent.\r
5676             </value>\r
5677             <remarks>\r
5678             The underlying <see cref="T:System.Net.Sockets.UdpClient"/> will send messages to this TCP port number\r
5679             on the remote host or multicast group.\r
5680             </remarks>\r
5681             <exception cref="T:System.ArgumentOutOfRangeException">The value specified is less than <see cref="F:System.Net.IPEndPoint.MinPort"/> or greater than <see cref="F:System.Net.IPEndPoint.MaxPort"/>.</exception>\r
5682         </member>\r
5683         <member name="P:log4net.Appender.UdpAppender.LocalPort">\r
5684             <summary>\r
5685             Gets or sets the TCP port number from which the underlying <see cref="T:System.Net.Sockets.UdpClient"/> will communicate.\r
5686             </summary>\r
5687             <value>\r
5688             An integer value in the range <see cref="F:System.Net.IPEndPoint.MinPort"/> to <see cref="F:System.Net.IPEndPoint.MaxPort"/> \r
5689             indicating the TCP port number from which the underlying <see cref="T:System.Net.Sockets.UdpClient"/> will communicate.\r
5690             </value>\r
5691             <remarks>\r
5692             <para>\r
5693             The underlying <see cref="T:System.Net.Sockets.UdpClient"/> will bind to this port for sending messages.\r
5694             </para>\r
5695             <para>\r
5696             Setting the value to 0 (the default) will cause the udp client not to bind to\r
5697             a local port.\r
5698             </para>\r
5699             </remarks>\r
5700             <exception cref="T:System.ArgumentOutOfRangeException">The value specified is less than <see cref="F:System.Net.IPEndPoint.MinPort"/> or greater than <see cref="F:System.Net.IPEndPoint.MaxPort"/>.</exception>\r
5701         </member>\r
5702         <member name="P:log4net.Appender.UdpAppender.Encoding">\r
5703             <summary>\r
5704             Gets or sets <see cref="P:log4net.Appender.UdpAppender.Encoding"/> used to write the packets.\r
5705             </summary>\r
5706             <value>\r
5707             The <see cref="P:log4net.Appender.UdpAppender.Encoding"/> used to write the packets.\r
5708             </value>\r
5709             <remarks>\r
5710             <para>\r
5711             The <see cref="P:log4net.Appender.UdpAppender.Encoding"/> used to write the packets.\r
5712             </para>\r
5713             </remarks>\r
5714         </member>\r
5715         <member name="P:log4net.Appender.UdpAppender.Client">\r
5716             <summary>\r
5717             Gets or sets the underlying <see cref="T:System.Net.Sockets.UdpClient"/>.\r
5718             </summary>\r
5719             <value>\r
5720             The underlying <see cref="T:System.Net.Sockets.UdpClient"/>.\r
5721             </value>\r
5722             <remarks>\r
5723             <see cref="T:log4net.Appender.UdpAppender"/> creates a <see cref="T:System.Net.Sockets.UdpClient"/> to send logging events \r
5724             over a network.  Classes deriving from <see cref="T:log4net.Appender.UdpAppender"/> can use this\r
5725             property to get or set this <see cref="T:System.Net.Sockets.UdpClient"/>.  Use the underlying <see cref="T:System.Net.Sockets.UdpClient"/>\r
5726             returned from <see cref="P:log4net.Appender.UdpAppender.Client"/> if you require access beyond that which \r
5727             <see cref="T:log4net.Appender.UdpAppender"/> provides.\r
5728             </remarks>\r
5729         </member>\r
5730         <member name="P:log4net.Appender.UdpAppender.RemoteEndPoint">\r
5731             <summary>\r
5732             Gets or sets the cached remote endpoint to which the logging events should be sent.\r
5733             </summary>\r
5734             <value>\r
5735             The cached remote endpoint to which the logging events will be sent.\r
5736             </value>\r
5737             <remarks>\r
5738             The <see cref="M:log4net.Appender.UdpAppender.ActivateOptions"/> method will initialize the remote endpoint \r
5739             with the values of the <see cref="P:log4net.Appender.UdpAppender.RemoteAddress"/> and <see cref="P:log4net.Appender.UdpAppender.RemotePort"/>\r
5740             properties.\r
5741             </remarks>\r
5742         </member>\r
5743         <member name="P:log4net.Appender.UdpAppender.RequiresLayout">\r
5744             <summary>\r
5745             This appender requires a <see cref="N:log4net.Layout"/> to be set.\r
5746             </summary>\r
5747             <value><c>true</c></value>\r
5748             <remarks>\r
5749             <para>\r
5750             This appender requires a <see cref="N:log4net.Layout"/> to be set.\r
5751             </para>\r
5752             </remarks>\r
5753         </member>\r
5754         <member name="F:log4net.Appender.RemoteSyslogAppender.DefaultSyslogPort">\r
5755             <summary>\r
5756             Syslog port 514\r
5757             </summary>\r
5758         </member>\r
5759         <member name="M:log4net.Appender.RemoteSyslogAppender.#ctor">\r
5760             <summary>\r
5761             Initializes a new instance of the <see cref="T:log4net.Appender.RemoteSyslogAppender"/> class.\r
5762             </summary>\r
5763             <remarks>\r
5764             This instance of the <see cref="T:log4net.Appender.RemoteSyslogAppender"/> class is set up to write \r
5765             to a remote syslog daemon.\r
5766             </remarks>\r
5767         </member>\r
5768         <member name="M:log4net.Appender.RemoteSyslogAppender.AddMapping(log4net.Appender.RemoteSyslogAppender.LevelSeverity)">\r
5769             <summary>\r
5770             Add a mapping of level to severity\r
5771             </summary>\r
5772             <param name="mapping">The mapping to add</param>\r
5773             <remarks>\r
5774             <para>\r
5775             Add a <see cref="T:log4net.Appender.RemoteSyslogAppender.LevelSeverity"/> mapping to this appender.\r
5776             </para>\r
5777             </remarks>\r
5778         </member>\r
5779         <member name="M:log4net.Appender.RemoteSyslogAppender.Append(log4net.Core.LoggingEvent)">\r
5780             <summary>\r
5781             This method is called by the <see cref="M:log4net.Appender.AppenderSkeleton.DoAppend(log4net.Core.LoggingEvent)"/> method.\r
5782             </summary>\r
5783             <param name="loggingEvent">The event to log.</param>\r
5784             <remarks>\r
5785             <para>\r
5786             Writes the event to a remote syslog daemon.\r
5787             </para>\r
5788             <para>\r
5789             The format of the output will depend on the appender's layout.\r
5790             </para>\r
5791             </remarks>\r
5792         </member>\r
5793         <member name="M:log4net.Appender.RemoteSyslogAppender.ActivateOptions">\r
5794             <summary>\r
5795             Initialize the options for this appender\r
5796             </summary>\r
5797             <remarks>\r
5798             <para>\r
5799             Initialize the level to syslog severity mappings set on this appender.\r
5800             </para>\r
5801             </remarks>\r
5802         </member>\r
5803         <member name="M:log4net.Appender.RemoteSyslogAppender.GetSeverity(log4net.Core.Level)">\r
5804             <summary>\r
5805             Translates a log4net level to a syslog severity.\r
5806             </summary>\r
5807             <param name="level">A log4net level.</param>\r
5808             <returns>A syslog severity.</returns>\r
5809             <remarks>\r
5810             <para>\r
5811             Translates a log4net level to a syslog severity.\r
5812             </para>\r
5813             </remarks>\r
5814         </member>\r
5815         <member name="M:log4net.Appender.RemoteSyslogAppender.GeneratePriority(log4net.Appender.RemoteSyslogAppender.SyslogFacility,log4net.Appender.RemoteSyslogAppender.SyslogSeverity)">\r
5816             <summary>\r
5817             Generate a syslog priority.\r
5818             </summary>\r
5819             <param name="facility">The syslog facility.</param>\r
5820             <param name="severity">The syslog severity.</param>\r
5821             <returns>A syslog priority.</returns>\r
5822             <remarks>\r
5823             <para>\r
5824             Generate a syslog priority.\r
5825             </para>\r
5826             </remarks>\r
5827         </member>\r
5828         <member name="F:log4net.Appender.RemoteSyslogAppender.m_facility">\r
5829             <summary>\r
5830             The facility. The default facility is <see cref="F:log4net.Appender.RemoteSyslogAppender.SyslogFacility.User"/>.\r
5831             </summary>\r
5832         </member>\r
5833         <member name="F:log4net.Appender.RemoteSyslogAppender.m_identity">\r
5834             <summary>\r
5835             The message identity\r
5836             </summary>\r
5837         </member>\r
5838         <member name="F:log4net.Appender.RemoteSyslogAppender.m_levelMapping">\r
5839             <summary>\r
5840             Mapping from level object to syslog severity\r
5841             </summary>\r
5842         </member>\r
5843         <member name="P:log4net.Appender.RemoteSyslogAppender.Identity">\r
5844             <summary>\r
5845             Message identity\r
5846             </summary>\r
5847             <remarks>\r
5848             <para>\r
5849             An identifier is specified with each log message. This can be specified\r
5850             by setting the <see cref="P:log4net.Appender.RemoteSyslogAppender.Identity"/> property. The identity (also know \r
5851             as the tag) must not contain white space. The default value for the\r
5852             identity is the application name (from <see cref="P:log4net.Core.LoggingEvent.Domain"/>).\r
5853             </para>\r
5854             </remarks>\r
5855         </member>\r
5856         <member name="P:log4net.Appender.RemoteSyslogAppender.Facility">\r
5857             <summary>\r
5858             Syslog facility\r
5859             </summary>\r
5860             <remarks>\r
5861             Set to one of the <see cref="T:log4net.Appender.RemoteSyslogAppender.SyslogFacility"/> values. The list of\r
5862             facilities is predefined and cannot be extended. The default value\r
5863             is <see cref="F:log4net.Appender.RemoteSyslogAppender.SyslogFacility.User"/>.\r
5864             </remarks>\r
5865         </member>\r
5866         <member name="T:log4net.Appender.RemoteSyslogAppender.SyslogSeverity">\r
5867             <summary>\r
5868             syslog severities\r
5869             </summary>\r
5870             <remarks>\r
5871             <para>\r
5872             The syslog severities.\r
5873             </para>\r
5874             </remarks>\r
5875         </member>\r
5876         <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogSeverity.Emergency">\r
5877             <summary>\r
5878             system is unusable\r
5879             </summary>\r
5880         </member>\r
5881         <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogSeverity.Alert">\r
5882             <summary>\r
5883             action must be taken immediately\r
5884             </summary>\r
5885         </member>\r
5886         <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogSeverity.Critical">\r
5887             <summary>\r
5888             critical conditions\r
5889             </summary>\r
5890         </member>\r
5891         <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogSeverity.Error">\r
5892             <summary>\r
5893             error conditions\r
5894             </summary>\r
5895         </member>\r
5896         <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogSeverity.Warning">\r
5897             <summary>\r
5898             warning conditions\r
5899             </summary>\r
5900         </member>\r
5901         <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogSeverity.Notice">\r
5902             <summary>\r
5903             normal but significant condition\r
5904             </summary>\r
5905         </member>\r
5906         <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogSeverity.Informational">\r
5907             <summary>\r
5908             informational\r
5909             </summary>\r
5910         </member>\r
5911         <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogSeverity.Debug">\r
5912             <summary>\r
5913             debug-level messages\r
5914             </summary>\r
5915         </member>\r
5916         <member name="T:log4net.Appender.RemoteSyslogAppender.SyslogFacility">\r
5917             <summary>\r
5918             syslog facilities\r
5919             </summary>\r
5920             <remarks>\r
5921             <para>\r
5922             The syslog facilities\r
5923             </para>\r
5924             </remarks>\r
5925         </member>\r
5926         <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogFacility.Kernel">\r
5927             <summary>\r
5928             kernel messages\r
5929             </summary>\r
5930         </member>\r
5931         <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogFacility.User">\r
5932             <summary>\r
5933             random user-level messages\r
5934             </summary>\r
5935         </member>\r
5936         <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogFacility.Mail">\r
5937             <summary>\r
5938             mail system\r
5939             </summary>\r
5940         </member>\r
5941         <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogFacility.Daemons">\r
5942             <summary>\r
5943             system daemons\r
5944             </summary>\r
5945         </member>\r
5946         <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogFacility.Authorization">\r
5947             <summary>\r
5948             security/authorization messages\r
5949             </summary>\r
5950         </member>\r
5951         <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogFacility.Syslog">\r
5952             <summary>\r
5953             messages generated internally by syslogd\r
5954             </summary>\r
5955         </member>\r
5956         <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogFacility.Printer">\r
5957             <summary>\r
5958             line printer subsystem\r
5959             </summary>\r
5960         </member>\r
5961         <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogFacility.News">\r
5962             <summary>\r
5963             network news subsystem\r
5964             </summary>\r
5965         </member>\r
5966         <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogFacility.Uucp">\r
5967             <summary>\r
5968             UUCP subsystem\r
5969             </summary>\r
5970         </member>\r
5971         <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogFacility.Clock">\r
5972             <summary>\r
5973             clock (cron/at) daemon\r
5974             </summary>\r
5975         </member>\r
5976         <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogFacility.Authorization2">\r
5977             <summary>\r
5978             security/authorization  messages (private)\r
5979             </summary>\r
5980         </member>\r
5981         <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogFacility.Ftp">\r
5982             <summary>\r
5983             ftp daemon\r
5984             </summary>\r
5985         </member>\r
5986         <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogFacility.Ntp">\r
5987             <summary>\r
5988             NTP subsystem\r
5989             </summary>\r
5990         </member>\r
5991         <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogFacility.Audit">\r
5992             <summary>\r
5993             log audit\r
5994             </summary>\r
5995         </member>\r
5996         <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogFacility.Alert">\r
5997             <summary>\r
5998             log alert\r
5999             </summary>\r
6000         </member>\r
6001         <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogFacility.Clock2">\r
6002             <summary>\r
6003             clock daemon\r
6004             </summary>\r
6005         </member>\r
6006         <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogFacility.Local0">\r
6007             <summary>\r
6008             reserved for local use\r
6009             </summary>\r
6010         </member>\r
6011         <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogFacility.Local1">\r
6012             <summary>\r
6013             reserved for local use\r
6014             </summary>\r
6015         </member>\r
6016         <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogFacility.Local2">\r
6017             <summary>\r
6018             reserved for local use\r
6019             </summary>\r
6020         </member>\r
6021         <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogFacility.Local3">\r
6022             <summary>\r
6023             reserved for local use\r
6024             </summary>\r
6025         </member>\r
6026         <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogFacility.Local4">\r
6027             <summary>\r
6028             reserved for local use\r
6029             </summary>\r
6030         </member>\r
6031         <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogFacility.Local5">\r
6032             <summary>\r
6033             reserved for local use\r
6034             </summary>\r
6035         </member>\r
6036         <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogFacility.Local6">\r
6037             <summary>\r
6038             reserved for local use\r
6039             </summary>\r
6040         </member>\r
6041         <member name="F:log4net.Appender.RemoteSyslogAppender.SyslogFacility.Local7">\r
6042             <summary>\r
6043             reserved for local use\r
6044             </summary>\r
6045         </member>\r
6046         <member name="T:log4net.Appender.RemoteSyslogAppender.LevelSeverity">\r
6047             <summary>\r
6048             A class to act as a mapping between the level that a logging call is made at and\r
6049             the syslog severity that is should be logged at.\r
6050             </summary>\r
6051             <remarks>\r
6052             <para>\r
6053             A class to act as a mapping between the level that a logging call is made at and\r
6054             the syslog severity that is should be logged at.\r
6055             </para>\r
6056             </remarks>\r
6057         </member>\r
6058         <member name="P:log4net.Appender.RemoteSyslogAppender.LevelSeverity.Severity">\r
6059             <summary>\r
6060             The mapped syslog severity for the specified level\r
6061             </summary>\r
6062             <remarks>\r
6063             <para>\r
6064             Required property.\r
6065             The mapped syslog severity for the specified level\r
6066             </para>\r
6067             </remarks>\r
6068         </member>\r
6069         <member name="T:log4net.Appender.RemotingAppender">\r
6070             <summary>\r
6071             Delivers logging events to a remote logging sink. \r
6072             </summary>\r
6073             <remarks>\r
6074             <para>\r
6075             This Appender is designed to deliver events to a remote sink. \r
6076             That is any object that implements the <see cref="T:log4net.Appender.RemotingAppender.IRemoteLoggingSink"/>\r
6077             interface. It delivers the events using .NET remoting. The\r
6078             object to deliver events to is specified by setting the\r
6079             appenders <see cref="P:log4net.Appender.RemotingAppender.Sink"/> property.</para>\r
6080             <para>\r
6081             The RemotingAppender buffers events before sending them. This allows it to \r
6082             make more efficient use of the remoting infrastructure.</para>\r
6083             <para>\r
6084             Once the buffer is full the events are still not sent immediately. \r
6085             They are scheduled to be sent using a pool thread. The effect is that \r
6086             the send occurs asynchronously. This is very important for a \r
6087             number of non obvious reasons. The remoting infrastructure will \r
6088             flow thread local variables (stored in the <see cref="T:System.Runtime.Remoting.Messaging.CallContext"/>),\r
6089             if they are marked as <see cref="T:System.Runtime.Remoting.Messaging.ILogicalThreadAffinative"/>, across the \r
6090             remoting boundary. If the server is not contactable then\r
6091             the remoting infrastructure will clear the <see cref="T:System.Runtime.Remoting.Messaging.ILogicalThreadAffinative"/>\r
6092             objects from the <see cref="T:System.Runtime.Remoting.Messaging.CallContext"/>. To prevent a logging failure from\r
6093             having side effects on the calling application the remoting call must be made\r
6094             from a separate thread to the one used by the application. A <see cref="T:System.Threading.ThreadPool"/>\r
6095             thread is used for this. If no <see cref="T:System.Threading.ThreadPool"/> thread is available then\r
6096             the events will block in the thread pool manager until a thread is available.</para>\r
6097             <para>\r
6098             Because the events are sent asynchronously using pool threads it is possible to close \r
6099             this appender before all the queued events have been sent.\r
6100             When closing the appender attempts to wait until all the queued events have been sent, but \r
6101             this will timeout after 30 seconds regardless.</para>\r
6102             <para>\r
6103             If this appender is being closed because the <see cref="E:System.AppDomain.ProcessExit"/>\r
6104             event has fired it may not be possible to send all the queued events. During process\r
6105             exit the runtime limits the time that a <see cref="E:System.AppDomain.ProcessExit"/>\r
6106             event handler is allowed to run for. If the runtime terminates the threads before\r
6107             the queued events have been sent then they will be lost. To ensure that all events\r
6108             are sent the appender must be closed before the application exits. See \r
6109             <see cref="M:log4net.Core.LoggerManager.Shutdown"/> for details on how to shutdown\r
6110             log4net programmatically.</para>\r
6111             </remarks>\r
6112             <seealso cref="T:log4net.Appender.RemotingAppender.IRemoteLoggingSink"/>\r
6113             <author>Nicko Cadell</author>\r
6114             <author>Gert Driesen</author>\r
6115             <author>Daniel Cazzulino</author>\r
6116         </member>\r
6117         <member name="M:log4net.Appender.RemotingAppender.#ctor">\r
6118             <summary>\r
6119             Initializes a new instance of the <see cref="T:log4net.Appender.RemotingAppender"/> class.\r
6120             </summary>\r
6121             <remarks>\r
6122             <para>\r
6123             Default constructor.\r
6124             </para>\r
6125             </remarks>\r
6126         </member>\r
6127         <member name="M:log4net.Appender.RemotingAppender.ActivateOptions">\r
6128             <summary>\r
6129             Initialize the appender based on the options set\r
6130             </summary>\r
6131             <remarks>\r
6132             <para>\r
6133             This is part of the <see cref="T:log4net.Core.IOptionHandler"/> delayed object\r
6134             activation scheme. The <see cref="M:log4net.Appender.RemotingAppender.ActivateOptions"/> method must \r
6135             be called on this object after the configuration properties have\r
6136             been set. Until <see cref="M:log4net.Appender.RemotingAppender.ActivateOptions"/> is called this\r
6137             object is in an undefined state and must not be used. \r
6138             </para>\r
6139             <para>\r
6140             If any of the configuration properties are modified then \r
6141             <see cref="M:log4net.Appender.RemotingAppender.ActivateOptions"/> must be called again.\r
6142             </para>\r
6143             </remarks>\r
6144         </member>\r
6145         <member name="M:log4net.Appender.RemotingAppender.SendBuffer(log4net.Core.LoggingEvent[])">\r
6146             <summary>\r
6147             Send the contents of the buffer to the remote sink.\r
6148             </summary>\r
6149             <remarks>\r
6150             The events are not sent immediately. They are scheduled to be sent\r
6151             using a pool thread. The effect is that the send occurs asynchronously.\r
6152             This is very important for a number of non obvious reasons. The remoting\r
6153             infrastructure will flow thread local variables (stored in the <see cref="T:System.Runtime.Remoting.Messaging.CallContext"/>),\r
6154             if they are marked as <see cref="T:System.Runtime.Remoting.Messaging.ILogicalThreadAffinative"/>, across the \r
6155             remoting boundary. If the server is not contactable then\r
6156             the remoting infrastructure will clear the <see cref="T:System.Runtime.Remoting.Messaging.ILogicalThreadAffinative"/>\r
6157             objects from the <see cref="T:System.Runtime.Remoting.Messaging.CallContext"/>. To prevent a logging failure from\r
6158             having side effects on the calling application the remoting call must be made\r
6159             from a separate thread to the one used by the application. A <see cref="T:System.Threading.ThreadPool"/>\r
6160             thread is used for this. If no <see cref="T:System.Threading.ThreadPool"/> thread is available then\r
6161             the events will block in the thread pool manager until a thread is available.\r
6162             </remarks>\r
6163             <param name="events">The events to send.</param>\r
6164         </member>\r
6165         <member name="M:log4net.Appender.RemotingAppender.OnClose">\r
6166             <summary>\r
6167             Override base class close.\r
6168             </summary>\r
6169             <remarks>\r
6170             <para>\r
6171             This method waits while there are queued work items. The events are\r
6172             sent asynchronously using <see cref="T:System.Threading.ThreadPool"/> work items. These items\r
6173             will be sent once a thread pool thread is available to send them, therefore\r
6174             it is possible to close the appender before all the queued events have been\r
6175             sent.</para>\r
6176             <para>\r
6177             This method attempts to wait until all the queued events have been sent, but this \r
6178             method will timeout after 30 seconds regardless.</para>\r
6179             <para>\r
6180             If the appender is being closed because the <see cref="E:System.AppDomain.ProcessExit"/>\r
6181             event has fired it may not be possible to send all the queued events. During process\r
6182             exit the runtime limits the time that a <see cref="E:System.AppDomain.ProcessExit"/>\r
6183             event handler is allowed to run for.</para>\r
6184             </remarks>\r
6185         </member>\r
6186         <member name="M:log4net.Appender.RemotingAppender.BeginAsyncSend">\r
6187             <summary>\r
6188             A work item is being queued into the thread pool\r
6189             </summary>\r
6190         </member>\r
6191         <member name="M:log4net.Appender.RemotingAppender.EndAsyncSend">\r
6192             <summary>\r
6193             A work item from the thread pool has completed\r
6194             </summary>\r
6195         </member>\r
6196         <member name="M:log4net.Appender.RemotingAppender.SendBufferCallback(System.Object)">\r
6197             <summary>\r
6198             Send the contents of the buffer to the remote sink.\r
6199             </summary>\r
6200             <remarks>\r
6201             This method is designed to be used with the <see cref="T:System.Threading.ThreadPool"/>.\r
6202             This method expects to be passed an array of <see cref="T:log4net.Core.LoggingEvent"/>\r
6203             objects in the state param.\r
6204             </remarks>\r
6205             <param name="state">the logging events to send</param>\r
6206         </member>\r
6207         <member name="F:log4net.Appender.RemotingAppender.m_sinkUrl">\r
6208             <summary>\r
6209             The URL of the remote sink.\r
6210             </summary>\r
6211         </member>\r
6212         <member name="F:log4net.Appender.RemotingAppender.m_sinkObj">\r
6213             <summary>\r
6214             The local proxy (.NET remoting) for the remote logging sink.\r
6215             </summary>\r
6216         </member>\r
6217         <member name="F:log4net.Appender.RemotingAppender.m_queuedCallbackCount">\r
6218             <summary>\r
6219             The number of queued callbacks currently waiting or executing\r
6220             </summary>\r
6221         </member>\r
6222         <member name="F:log4net.Appender.RemotingAppender.m_workQueueEmptyEvent">\r
6223             <summary>\r
6224             Event used to signal when there are no queued work items\r
6225             </summary>\r
6226             <remarks>\r
6227             This event is set when there are no queued work items. In this\r
6228             state it is safe to close the appender.\r
6229             </remarks>\r
6230         </member>\r
6231         <member name="P:log4net.Appender.RemotingAppender.Sink">\r
6232             <summary>\r
6233             Gets or sets the URL of the well-known object that will accept \r
6234             the logging events.\r
6235             </summary>\r
6236             <value>\r
6237             The well-known URL of the remote sink.\r
6238             </value>\r
6239             <remarks>\r
6240             <para>\r
6241             The URL of the remoting sink that will accept logging events.\r
6242             The sink must implement the <see cref="T:log4net.Appender.RemotingAppender.IRemoteLoggingSink"/>\r
6243             interface.\r
6244             </para>\r
6245             </remarks>\r
6246         </member>\r
6247         <member name="T:log4net.Appender.RemotingAppender.IRemoteLoggingSink">\r
6248             <summary>\r
6249             Interface used to deliver <see cref="T:log4net.Core.LoggingEvent"/> objects to a remote sink.\r
6250             </summary>\r
6251             <remarks>\r
6252             This interface must be implemented by a remoting sink\r
6253             if the <see cref="T:log4net.Appender.RemotingAppender"/> is to be used\r
6254             to deliver logging events to the sink.\r
6255             </remarks>\r
6256         </member>\r
6257         <member name="M:log4net.Appender.RemotingAppender.IRemoteLoggingSink.LogEvents(log4net.Core.LoggingEvent[])">\r
6258             <summary>\r
6259             Delivers logging events to the remote sink\r
6260             </summary>\r
6261             <param name="events">Array of events to log.</param>\r
6262             <remarks>\r
6263             <para>\r
6264             Delivers logging events to the remote sink\r
6265             </para>\r
6266             </remarks>\r
6267         </member>\r
6268         <member name="T:log4net.Appender.RollingFileAppender">\r
6269             <summary>\r
6270             Appender that rolls log files based on size or date or both.\r
6271             </summary>\r
6272             <remarks>\r
6273             <para>\r
6274             RollingFileAppender can roll log files based on size or date or both\r
6275             depending on the setting of the <see cref="P:log4net.Appender.RollingFileAppender.RollingStyle"/> property.\r
6276             When set to <see cref="F:log4net.Appender.RollingFileAppender.RollingMode.Size"/> the log file will be rolled\r
6277             once its size exceeds the <see cref="P:log4net.Appender.RollingFileAppender.MaximumFileSize"/>.\r
6278             When set to <see cref="F:log4net.Appender.RollingFileAppender.RollingMode.Date"/> the log file will be rolled\r
6279             once the date boundary specified in the <see cref="P:log4net.Appender.RollingFileAppender.DatePattern"/> property\r
6280             is crossed.\r
6281             When set to <see cref="F:log4net.Appender.RollingFileAppender.RollingMode.Composite"/> the log file will be\r
6282             rolled once the date boundary specified in the <see cref="P:log4net.Appender.RollingFileAppender.DatePattern"/> property\r
6283             is crossed, but within a date boundary the file will also be rolled\r
6284             once its size exceeds the <see cref="P:log4net.Appender.RollingFileAppender.MaximumFileSize"/>.\r
6285             When set to <see cref="F:log4net.Appender.RollingFileAppender.RollingMode.Once"/> the log file will be rolled when\r
6286             the appender is configured. This effectively means that the log file can be\r
6287             rolled once per program execution.\r
6288             </para>\r
6289             <para>\r
6290             A of few additional optional features have been added:\r
6291             <list type="bullet">\r
6292             <item>Attach date pattern for current log file <see cref="P:log4net.Appender.RollingFileAppender.StaticLogFileName"/></item>\r
6293             <item>Backup number increments for newer files <see cref="P:log4net.Appender.RollingFileAppender.CountDirection"/></item>\r
6294             <item>Infinite number of backups by file size <see cref="P:log4net.Appender.RollingFileAppender.MaxSizeRollBackups"/></item>\r
6295             </list>\r
6296             </para>\r
6297             \r
6298             <note>\r
6299             <para>\r
6300             For large or infinite numbers of backup files a <see cref="P:log4net.Appender.RollingFileAppender.CountDirection"/> \r
6301             greater than zero is highly recommended, otherwise all the backup files need\r
6302             to be renamed each time a new backup is created.\r
6303             </para>\r
6304             <para>\r
6305             When Date/Time based rolling is used setting <see cref="P:log4net.Appender.RollingFileAppender.StaticLogFileName"/> \r
6306             to <see langword="true"/> will reduce the number of file renamings to few or none.\r
6307             </para>\r
6308             </note>\r
6309             \r
6310             <note type="caution">\r
6311             <para>\r
6312             Changing <see cref="P:log4net.Appender.RollingFileAppender.StaticLogFileName"/> or <see cref="P:log4net.Appender.RollingFileAppender.CountDirection"/> without clearing\r
6313             the log file directory of backup files will cause unexpected and unwanted side effects.  \r
6314             </para>\r
6315             </note>\r
6316             \r
6317             <para>\r
6318             If Date/Time based rolling is enabled this appender will attempt to roll existing files\r
6319             in the directory without a Date/Time tag based on the last write date of the base log file.\r
6320             The appender only rolls the log file when a message is logged. If Date/Time based rolling \r
6321             is enabled then the appender will not roll the log file at the Date/Time boundary but\r
6322             at the point when the next message is logged after the boundary has been crossed.\r
6323             </para>\r
6324             \r
6325             <para>\r
6326             The <see cref="T:log4net.Appender.RollingFileAppender"/> extends the <see cref="T:log4net.Appender.FileAppender"/> and\r
6327             has the same behavior when opening the log file.\r
6328             The appender will first try to open the file for writing when <see cref="M:log4net.Appender.RollingFileAppender.ActivateOptions"/>\r
6329             is called. This will typically be during configuration.\r
6330             If the file cannot be opened for writing the appender will attempt\r
6331             to open the file again each time a message is logged to the appender.\r
6332             If the file cannot be opened for writing when a message is logged then\r
6333             the message will be discarded by this appender.\r
6334             </para>\r
6335             <para>\r
6336             When rolling a backup file necessitates deleting an older backup file the\r
6337             file to be deleted is moved to a temporary name before being deleted.\r
6338             </para>\r
6339             \r
6340             <note type="caution">\r
6341             <para>\r
6342             A maximum number of backup files when rolling on date/time boundaries is not supported.\r
6343             </para>\r
6344             </note>\r
6345             </remarks>\r
6346             <author>Nicko Cadell</author>\r
6347             <author>Gert Driesen</author>\r
6348             <author>Aspi Havewala</author>\r
6349             <author>Douglas de la Torre</author>\r
6350             <author>Edward Smit</author>\r
6351         </member>\r
6352         <member name="M:log4net.Appender.RollingFileAppender.#ctor">\r
6353             <summary>\r
6354             Initializes a new instance of the <see cref="T:log4net.Appender.RollingFileAppender"/> class.\r
6355             </summary>\r
6356             <remarks>\r
6357             <para>\r
6358             Default constructor.\r
6359             </para>\r
6360             </remarks>\r
6361         </member>\r
6362         <member name="M:log4net.Appender.RollingFileAppender.SetQWForFiles(System.IO.TextWriter)">\r
6363             <summary>\r
6364             Sets the quiet writer being used.\r
6365             </summary>\r
6366             <remarks>\r
6367             This method can be overridden by sub classes.\r
6368             </remarks>\r
6369             <param name="writer">the writer to set</param>\r
6370         </member>\r
6371         <member name="M:log4net.Appender.RollingFileAppender.Append(log4net.Core.LoggingEvent)">\r
6372             <summary>\r
6373             Write out a logging event.\r
6374             </summary>\r
6375             <param name="loggingEvent">the event to write to file.</param>\r
6376             <remarks>\r
6377             <para>\r
6378             Handles append time behavior for RollingFileAppender.  This checks\r
6379             if a roll over either by date (checked first) or time (checked second)\r
6380             is need and then appends to the file last.\r
6381             </para>\r
6382             </remarks>\r
6383         </member>\r
6384         <member name="M:log4net.Appender.RollingFileAppender.Append(log4net.Core.LoggingEvent[])">\r
6385             <summary>\r
6386             Write out an array of logging events.\r
6387             </summary>\r
6388             <param name="loggingEvents">the events to write to file.</param>\r
6389             <remarks>\r
6390             <para>\r
6391             Handles append time behavior for RollingFileAppender.  This checks\r
6392             if a roll over either by date (checked first) or time (checked second)\r
6393             is need and then appends to the file last.\r
6394             </para>\r
6395             </remarks>\r
6396         </member>\r
6397         <member name="M:log4net.Appender.RollingFileAppender.AdjustFileBeforeAppend">\r
6398             <summary>\r
6399             Performs any required rolling before outputting the next event\r
6400             </summary>\r
6401             <remarks>\r
6402             <para>\r
6403             Handles append time behavior for RollingFileAppender.  This checks\r
6404             if a roll over either by date (checked first) or time (checked second)\r
6405             is need and then appends to the file last.\r
6406             </para>\r
6407             </remarks>\r
6408         </member>\r
6409         <member name="M:log4net.Appender.RollingFileAppender.OpenFile(System.String,System.Boolean)">\r
6410             <summary>\r
6411             Creates and opens the file for logging.  If <see cref="P:log4net.Appender.RollingFileAppender.StaticLogFileName"/>\r
6412             is false then the fully qualified name is determined and used.\r
6413             </summary>\r
6414             <param name="fileName">the name of the file to open</param>\r
6415             <param name="append">true to append to existing file</param>\r
6416             <remarks>\r
6417             <para>This method will ensure that the directory structure\r
6418             for the <paramref name="fileName"/> specified exists.</para>\r
6419             </remarks>\r
6420         </member>\r
6421         <member name="M:log4net.Appender.RollingFileAppender.GetNextOutputFileName(System.String)">\r
6422             <summary>\r
6423             Get the current output file name\r
6424             </summary>\r
6425             <param name="fileName">the base file name</param>\r
6426             <returns>the output file name</returns>\r
6427             <remarks>\r
6428             The output file name is based on the base fileName specified.\r
6429             If <see cref="P:log4net.Appender.RollingFileAppender.StaticLogFileName"/> is set then the output \r
6430             file name is the same as the base file passed in. Otherwise\r
6431             the output file depends on the date pattern, on the count\r
6432             direction or both.\r
6433             </remarks>\r
6434         </member>\r
6435         <member name="M:log4net.Appender.RollingFileAppender.DetermineCurSizeRollBackups">\r
6436             <summary>\r
6437             Determines curSizeRollBackups (only within the current roll point)\r
6438             </summary>\r
6439         </member>\r
6440         <member name="M:log4net.Appender.RollingFileAppender.GetWildcardPatternForFile(System.String)">\r
6441             <summary>\r
6442             Generates a wildcard pattern that can be used to find all files\r
6443             that are similar to the base file name.\r
6444             </summary>\r
6445             <param name="baseFileName"></param>\r
6446             <returns></returns>\r
6447         </member>\r
6448         <member name="M:log4net.Appender.RollingFileAppender.GetExistingFiles(System.String)">\r
6449             <summary>\r
6450             Builds a list of filenames for all files matching the base filename plus a file\r
6451             pattern.\r
6452             </summary>\r
6453             <param name="baseFilePath"></param>\r
6454             <returns></returns>\r
6455         </member>\r
6456         <member name="M:log4net.Appender.RollingFileAppender.RollOverIfDateBoundaryCrossing">\r
6457             <summary>\r
6458             Initiates a roll over if needed for crossing a date boundary since the last run.\r
6459             </summary>\r
6460         </member>\r
6461         <member name="M:log4net.Appender.RollingFileAppender.ExistingInit">\r
6462             <summary>\r
6463             Initializes based on existing conditions at time of <see cref="M:log4net.Appender.RollingFileAppender.ActivateOptions"/>.\r
6464             </summary>\r
6465             <remarks>\r
6466             <para>\r
6467             Initializes based on existing conditions at time of <see cref="M:log4net.Appender.RollingFileAppender.ActivateOptions"/>.\r
6468             The following is done\r
6469             <list type="bullet">\r
6470             <item>determine curSizeRollBackups (only within the current roll point)</item>\r
6471             <item>initiates a roll over if needed for crossing a date boundary since the last run.</item>\r
6472             </list>\r
6473             </para>\r
6474             </remarks>\r
6475         </member>\r
6476         <member name="M:log4net.Appender.RollingFileAppender.InitializeFromOneFile(System.String,System.String)">\r
6477             <summary>\r
6478             Does the work of bumping the 'current' file counter higher\r
6479             to the highest count when an incremental file name is seen.\r
6480             The highest count is either the first file (when count direction\r
6481             is greater than 0) or the last file (when count direction less than 0).\r
6482             In either case, we want to know the highest count that is present.\r
6483             </summary>\r
6484             <param name="baseFile"></param>\r
6485             <param name="curFileName"></param>\r
6486         </member>\r
6487         <member name="M:log4net.Appender.RollingFileAppender.InitializeRollBackups(System.String,System.Collections.ArrayList)">\r
6488             <summary>\r
6489             Takes a list of files and a base file name, and looks for \r
6490             'incremented' versions of the base file.  Bumps the max\r
6491             count up to the highest count seen.\r
6492             </summary>\r
6493             <param name="baseFile"></param>\r
6494             <param name="arrayFiles"></param>\r
6495         </member>\r
6496         <member name="M:log4net.Appender.RollingFileAppender.ComputeCheckPeriod(System.String)">\r
6497             <summary>\r
6498             Calculates the RollPoint for the datePattern supplied.\r
6499             </summary>\r
6500             <param name="datePattern">the date pattern to calculate the check period for</param>\r
6501             <returns>The RollPoint that is most accurate for the date pattern supplied</returns>\r
6502             <remarks>\r
6503             Essentially the date pattern is examined to determine what the\r
6504             most suitable roll point is. The roll point chosen is the roll point\r
6505             with the smallest period that can be detected using the date pattern\r
6506             supplied. i.e. if the date pattern only outputs the year, month, day \r
6507             and hour then the smallest roll point that can be detected would be\r
6508             and hourly roll point as minutes could not be detected.\r
6509             </remarks>\r
6510         </member>\r
6511         <member name="M:log4net.Appender.RollingFileAppender.ActivateOptions">\r
6512             <summary>\r
6513             Initialize the appender based on the options set\r
6514             </summary>\r
6515             <remarks>\r
6516             <para>\r
6517             This is part of the <see cref="T:log4net.Core.IOptionHandler"/> delayed object\r
6518             activation scheme. The <see cref="M:log4net.Appender.RollingFileAppender.ActivateOptions"/> method must \r
6519             be called on this object after the configuration properties have\r
6520             been set. Until <see cref="M:log4net.Appender.RollingFileAppender.ActivateOptions"/> is called this\r
6521             object is in an undefined state and must not be used. \r
6522             </para>\r
6523             <para>\r
6524             If any of the configuration properties are modified then \r
6525             <see cref="M:log4net.Appender.RollingFileAppender.ActivateOptions"/> must be called again.\r
6526             </para>\r
6527             <para>\r
6528             Sets initial conditions including date/time roll over information, first check,\r
6529             scheduledFilename, and calls <see cref="M:log4net.Appender.RollingFileAppender.ExistingInit"/> to initialize\r
6530             the current number of backups.\r
6531             </para>\r
6532             </remarks>\r
6533         </member>\r
6534         <member name="M:log4net.Appender.RollingFileAppender.RollOverTime(System.Boolean)">\r
6535             <summary>\r
6536             Rollover the file(s) to date/time tagged file(s).\r
6537             </summary>\r
6538             <param name="fileIsOpen">set to true if the file to be rolled is currently open</param>\r
6539             <remarks>\r
6540             <para>\r
6541             Rollover the file(s) to date/time tagged file(s).\r
6542             Resets curSizeRollBackups. \r
6543             If fileIsOpen is set then the new file is opened (through SafeOpenFile).\r
6544             </para>\r
6545             </remarks>\r
6546         </member>\r
6547         <member name="M:log4net.Appender.RollingFileAppender.RollFile(System.String,System.String)">\r
6548             <summary>\r
6549             Renames file <paramref name="fromFile"/> to file <paramref name="toFile"/>.\r
6550             </summary>\r
6551             <param name="fromFile">Name of existing file to roll.</param>\r
6552             <param name="toFile">New name for file.</param>\r
6553             <remarks>\r
6554             <para>\r
6555             Renames file <paramref name="fromFile"/> to file <paramref name="toFile"/>. It\r
6556             also checks for existence of target file and deletes if it does.\r
6557             </para>\r
6558             </remarks>\r
6559         </member>\r
6560         <member name="M:log4net.Appender.RollingFileAppender.FileExists(System.String)">\r
6561             <summary>\r
6562             Test if a file exists at a specified path\r
6563             </summary>\r
6564             <param name="path">the path to the file</param>\r
6565             <returns>true if the file exists</returns>\r
6566             <remarks>\r
6567             <para>\r
6568             Test if a file exists at a specified path\r
6569             </para>\r
6570             </remarks>\r
6571         </member>\r
6572         <member name="M:log4net.Appender.RollingFileAppender.DeleteFile(System.String)">\r
6573             <summary>\r
6574             Deletes the specified file if it exists.\r
6575             </summary>\r
6576             <param name="fileName">The file to delete.</param>\r
6577             <remarks>\r
6578             <para>\r
6579             Delete a file if is exists.\r
6580             The file is first moved to a new filename then deleted.\r
6581             This allows the file to be removed even when it cannot\r
6582             be deleted, but it still can be moved.\r
6583             </para>\r
6584             </remarks>\r
6585         </member>\r
6586         <member name="M:log4net.Appender.RollingFileAppender.RollOverSize">\r
6587             <summary>\r
6588             Implements file roll base on file size.\r
6589             </summary>\r
6590             <remarks>\r
6591             <para>\r
6592             If the maximum number of size based backups is reached\r
6593             (<c>curSizeRollBackups == maxSizeRollBackups</c>) then the oldest\r
6594             file is deleted -- its index determined by the sign of countDirection.\r
6595             If <c>countDirection</c> &lt; 0, then files\r
6596             {<c>File.1</c>, ..., <c>File.curSizeRollBackups -1</c>}\r
6597             are renamed to {<c>File.2</c>, ...,\r
6598             <c>File.curSizeRollBackups</c>}. Moreover, <c>File</c> is\r
6599             renamed <c>File.1</c> and closed.\r
6600             </para>\r
6601             <para>\r
6602             A new file is created to receive further log output.\r
6603             </para>\r
6604             <para>\r
6605             If <c>maxSizeRollBackups</c> is equal to zero, then the\r
6606             <c>File</c> is truncated with no backup files created.\r
6607             </para>\r
6608             <para>\r
6609             If <c>maxSizeRollBackups</c> &lt; 0, then <c>File</c> is\r
6610             renamed if needed and no files are deleted.\r
6611             </para>\r
6612             </remarks>\r
6613         </member>\r
6614         <member name="M:log4net.Appender.RollingFileAppender.RollOverRenameFiles(System.String)">\r
6615             <summary>\r
6616             Implements file roll.\r
6617             </summary>\r
6618             <param name="baseFileName">the base name to rename</param>\r
6619             <remarks>\r
6620             <para>\r
6621             If the maximum number of size based backups is reached\r
6622             (<c>curSizeRollBackups == maxSizeRollBackups</c>) then the oldest\r
6623             file is deleted -- its index determined by the sign of countDirection.\r
6624             If <c>countDirection</c> &lt; 0, then files\r
6625             {<c>File.1</c>, ..., <c>File.curSizeRollBackups -1</c>}\r
6626             are renamed to {<c>File.2</c>, ...,\r
6627             <c>File.curSizeRollBackups</c>}. \r
6628             </para>\r
6629             <para>\r
6630             If <c>maxSizeRollBackups</c> is equal to zero, then the\r
6631             <c>File</c> is truncated with no backup files created.\r
6632             </para>\r
6633             <para>\r
6634             If <c>maxSizeRollBackups</c> &lt; 0, then <c>File</c> is\r
6635             renamed if needed and no files are deleted.\r
6636             </para>\r
6637             <para>\r
6638             This is called by <see cref="M:log4net.Appender.RollingFileAppender.RollOverSize"/> to rename the files.\r
6639             </para>\r
6640             </remarks>\r
6641         </member>\r
6642         <member name="M:log4net.Appender.RollingFileAppender.NextCheckDate(System.DateTime,log4net.Appender.RollingFileAppender.RollPoint)">\r
6643             <summary>\r
6644             Get the start time of the next window for the current rollpoint\r
6645             </summary>\r
6646             <param name="currentDateTime">the current date</param>\r
6647             <param name="rollPoint">the type of roll point we are working with</param>\r
6648             <returns>the start time for the next roll point an interval after the currentDateTime date</returns>\r
6649             <remarks>\r
6650             <para>\r
6651             Returns the date of the next roll point after the currentDateTime date passed to the method.\r
6652             </para>\r
6653             <para>\r
6654             The basic strategy is to subtract the time parts that are less significant\r
6655             than the rollpoint from the current time. This should roll the time back to\r
6656             the start of the time window for the current rollpoint. Then we add 1 window\r
6657             worth of time and get the start time of the next window for the rollpoint.\r
6658             </para>\r
6659             </remarks>\r
6660         </member>\r
6661         <member name="F:log4net.Appender.RollingFileAppender.m_dateTime">\r
6662             <summary>\r
6663             This object supplies the current date/time.  Allows test code to plug in\r
6664             a method to control this class when testing date/time based rolling.\r
6665             </summary>\r
6666         </member>\r
6667         <member name="F:log4net.Appender.RollingFileAppender.m_datePattern">\r
6668             <summary>\r
6669             The date pattern. By default, the pattern is set to <c>".yyyy-MM-dd"</c> \r
6670             meaning daily rollover.\r
6671             </summary>\r
6672         </member>\r
6673         <member name="F:log4net.Appender.RollingFileAppender.m_scheduledFilename">\r
6674             <summary>\r
6675             The actual formatted filename that is currently being written to\r
6676             or will be the file transferred to on roll over\r
6677             (based on staticLogFileName).\r
6678             </summary>\r
6679         </member>\r
6680         <member name="F:log4net.Appender.RollingFileAppender.m_nextCheck">\r
6681             <summary>\r
6682             The timestamp when we shall next recompute the filename.\r
6683             </summary>\r
6684         </member>\r
6685         <member name="F:log4net.Appender.RollingFileAppender.m_now">\r
6686             <summary>\r
6687             Holds date of last roll over\r
6688             </summary>\r
6689         </member>\r
6690         <member name="F:log4net.Appender.RollingFileAppender.m_rollPoint">\r
6691             <summary>\r
6692             The type of rolling done\r
6693             </summary>\r
6694         </member>\r
6695         <member name="F:log4net.Appender.RollingFileAppender.m_maxFileSize">\r
6696             <summary>\r
6697             The default maximum file size is 10MB\r
6698             </summary>\r
6699         </member>\r
6700         <member name="F:log4net.Appender.RollingFileAppender.m_maxSizeRollBackups">\r
6701             <summary>\r
6702             There is zero backup files by default\r
6703             </summary>\r
6704         </member>\r
6705         <member name="F:log4net.Appender.RollingFileAppender.m_curSizeRollBackups">\r
6706             <summary>\r
6707             How many sized based backups have been made so far\r
6708             </summary>\r
6709         </member>\r
6710         <member name="F:log4net.Appender.RollingFileAppender.m_countDirection">\r
6711             <summary>\r
6712             The rolling file count direction. \r
6713             </summary>\r
6714         </member>\r
6715         <member name="F:log4net.Appender.RollingFileAppender.m_rollingStyle">\r
6716             <summary>\r
6717             The rolling mode used in this appender.\r
6718             </summary>\r
6719         </member>\r
6720         <member name="F:log4net.Appender.RollingFileAppender.m_rollDate">\r
6721             <summary>\r
6722             Cache flag set if we are rolling by date.\r
6723             </summary>\r
6724         </member>\r
6725         <member name="F:log4net.Appender.RollingFileAppender.m_rollSize">\r
6726             <summary>\r
6727             Cache flag set if we are rolling by size.\r
6728             </summary>\r
6729         </member>\r
6730         <member name="F:log4net.Appender.RollingFileAppender.m_staticLogFileName">\r
6731             <summary>\r
6732             Value indicating whether to always log to the same file.\r
6733             </summary>\r
6734         </member>\r
6735         <member name="F:log4net.Appender.RollingFileAppender.m_baseFileName">\r
6736             <summary>\r
6737             FileName provided in configuration.  Used for rolling properly\r
6738             </summary>\r
6739         </member>\r
6740         <member name="F:log4net.Appender.RollingFileAppender.s_date1970">\r
6741             <summary>\r
6742             The 1st of January 1970 in UTC\r
6743             </summary>\r
6744         </member>\r
6745         <member name="P:log4net.Appender.RollingFileAppender.DatePattern">\r
6746             <summary>\r
6747             Gets or sets the date pattern to be used for generating file names\r
6748             when rolling over on date.\r
6749             </summary>\r
6750             <value>\r
6751             The date pattern to be used for generating file names when rolling \r
6752             over on date.\r
6753             </value>\r
6754             <remarks>\r
6755             <para>\r
6756             Takes a string in the same format as expected by \r
6757             <see cref="T:log4net.DateFormatter.SimpleDateFormatter"/>.\r
6758             </para>\r
6759             <para>\r
6760             This property determines the rollover schedule when rolling over\r
6761             on date.\r
6762             </para>\r
6763             </remarks>\r
6764         </member>\r
6765         <member name="P:log4net.Appender.RollingFileAppender.MaxSizeRollBackups">\r
6766             <summary>\r
6767             Gets or sets the maximum number of backup files that are kept before\r
6768             the oldest is erased.\r
6769             </summary>\r
6770             <value>\r
6771             The maximum number of backup files that are kept before the oldest is\r
6772             erased.\r
6773             </value>\r
6774             <remarks>\r
6775             <para>\r
6776             If set to zero, then there will be no backup files and the log file \r
6777             will be truncated when it reaches <see cref="P:log4net.Appender.RollingFileAppender.MaxFileSize"/>.  \r
6778             </para>\r
6779             <para>\r
6780             If a negative number is supplied then no deletions will be made.  Note \r
6781             that this could result in very slow performance as a large number of \r
6782             files are rolled over unless <see cref="P:log4net.Appender.RollingFileAppender.CountDirection"/> is used.\r
6783             </para>\r
6784             <para>\r
6785             The maximum applies to <b>each</b> time based group of files and \r
6786             <b>not</b> the total.\r
6787             </para>\r
6788             </remarks>\r
6789         </member>\r
6790         <member name="P:log4net.Appender.RollingFileAppender.MaxFileSize">\r
6791             <summary>\r
6792             Gets or sets the maximum size that the output file is allowed to reach\r
6793             before being rolled over to backup files.\r
6794             </summary>\r
6795             <value>\r
6796             The maximum size in bytes that the output file is allowed to reach before being \r
6797             rolled over to backup files.\r
6798             </value>\r
6799             <remarks>\r
6800             <para>\r
6801             This property is equivalent to <see cref="P:log4net.Appender.RollingFileAppender.MaximumFileSize"/> except\r
6802             that it is required for differentiating the setter taking a\r
6803             <see cref="T:System.Int64"/> argument from the setter taking a <see cref="T:System.String"/> \r
6804             argument.\r
6805             </para>\r
6806             <para>\r
6807             The default maximum file size is 10MB (10*1024*1024).\r
6808             </para>\r
6809             </remarks>\r
6810         </member>\r
6811         <member name="P:log4net.Appender.RollingFileAppender.MaximumFileSize">\r
6812             <summary>\r
6813             Gets or sets the maximum size that the output file is allowed to reach\r
6814             before being rolled over to backup files.\r
6815             </summary>\r
6816             <value>\r
6817             The maximum size that the output file is allowed to reach before being \r
6818             rolled over to backup files.\r
6819             </value>\r
6820             <remarks>\r
6821             <para>\r
6822             This property allows you to specify the maximum size with the\r
6823             suffixes "KB", "MB" or "GB" so that the size is interpreted being \r
6824             expressed respectively in kilobytes, megabytes or gigabytes. \r
6825             </para>\r
6826             <para>\r
6827             For example, the value "10KB" will be interpreted as 10240 bytes.\r
6828             </para>\r
6829             <para>\r
6830             The default maximum file size is 10MB.\r
6831             </para>\r
6832             <para>\r
6833             If you have the option to set the maximum file size programmatically\r
6834             consider using the <see cref="P:log4net.Appender.RollingFileAppender.MaxFileSize"/> property instead as this\r
6835             allows you to set the size in bytes as a <see cref="T:System.Int64"/>.\r
6836             </para>\r
6837             </remarks>\r
6838         </member>\r
6839         <member name="P:log4net.Appender.RollingFileAppender.CountDirection">\r
6840             <summary>\r
6841             Gets or sets the rolling file count direction. \r
6842             </summary>\r
6843             <value>\r
6844             The rolling file count direction.\r
6845             </value>\r
6846             <remarks>\r
6847             <para>\r
6848             Indicates if the current file is the lowest numbered file or the\r
6849             highest numbered file.\r
6850             </para>\r
6851             <para>\r
6852             By default newer files have lower numbers (<see cref="P:log4net.Appender.RollingFileAppender.CountDirection"/> &lt; 0),\r
6853             i.e. log.1 is most recent, log.5 is the 5th backup, etc...\r
6854             </para>\r
6855             <para>\r
6856             <see cref="P:log4net.Appender.RollingFileAppender.CountDirection"/> &gt;= 0 does the opposite i.e.\r
6857             log.1 is the first backup made, log.5 is the 5th backup made, etc.\r
6858             For infinite backups use <see cref="P:log4net.Appender.RollingFileAppender.CountDirection"/> &gt;= 0 to reduce \r
6859             rollover costs.\r
6860             </para>\r
6861             <para>The default file count direction is -1.</para>\r
6862             </remarks>\r
6863         </member>\r
6864         <member name="P:log4net.Appender.RollingFileAppender.RollingStyle">\r
6865             <summary>\r
6866             Gets or sets the rolling style.\r
6867             </summary>\r
6868             <value>The rolling style.</value>\r
6869             <remarks>\r
6870             <para>\r
6871             The default rolling style is <see cref="F:log4net.Appender.RollingFileAppender.RollingMode.Composite"/>.\r
6872             </para>\r
6873             <para>\r
6874             When set to <see cref="F:log4net.Appender.RollingFileAppender.RollingMode.Once"/> this appender's\r
6875             <see cref="P:log4net.Appender.FileAppender.AppendToFile"/> property is set to <c>false</c>, otherwise\r
6876             the appender would append to a single file rather than rolling\r
6877             the file each time it is opened.\r
6878             </para>\r
6879             </remarks>\r
6880         </member>\r
6881         <member name="P:log4net.Appender.RollingFileAppender.StaticLogFileName">\r
6882             <summary>\r
6883             Gets or sets a value indicating whether to always log to\r
6884             the same file.\r
6885             </summary>\r
6886             <value>\r
6887             <c>true</c> if always should be logged to the same file, otherwise <c>false</c>.\r
6888             </value>\r
6889             <remarks>\r
6890             <para>\r
6891             By default file.log is always the current file.  Optionally\r
6892             file.log.yyyy-mm-dd for current formatted datePattern can by the currently\r
6893             logging file (or file.log.curSizeRollBackup or even\r
6894             file.log.yyyy-mm-dd.curSizeRollBackup).\r
6895             </para>\r
6896             <para>\r
6897             This will make time based rollovers with a large number of backups \r
6898             much faster as the appender it won't have to rename all the backups!\r
6899             </para>\r
6900             </remarks>\r
6901         </member>\r
6902         <member name="T:log4net.Appender.RollingFileAppender.RollingMode">\r
6903             <summary>\r
6904             Style of rolling to use\r
6905             </summary>\r
6906             <remarks>\r
6907             <para>\r
6908             Style of rolling to use\r
6909             </para>\r
6910             </remarks>\r
6911         </member>\r
6912         <member name="F:log4net.Appender.RollingFileAppender.RollingMode.Once">\r
6913             <summary>\r
6914             Roll files once per program execution\r
6915             </summary>\r
6916             <remarks>\r
6917             <para>\r
6918             Roll files once per program execution.\r
6919             Well really once each time this appender is\r
6920             configured.\r
6921             </para>\r
6922             <para>\r
6923             Setting this option also sets <c>AppendToFile</c> to\r
6924             <c>false</c> on the <c>RollingFileAppender</c>, otherwise\r
6925             this appender would just be a normal file appender.\r
6926             </para>\r
6927             </remarks>\r
6928         </member>\r
6929         <member name="F:log4net.Appender.RollingFileAppender.RollingMode.Size">\r
6930             <summary>\r
6931             Roll files based only on the size of the file\r
6932             </summary>\r
6933         </member>\r
6934         <member name="F:log4net.Appender.RollingFileAppender.RollingMode.Date">\r
6935             <summary>\r
6936             Roll files based only on the date\r
6937             </summary>\r
6938         </member>\r
6939         <member name="F:log4net.Appender.RollingFileAppender.RollingMode.Composite">\r
6940             <summary>\r
6941             Roll files based on both the size and date of the file\r
6942             </summary>\r
6943         </member>\r
6944         <member name="T:log4net.Appender.RollingFileAppender.RollPoint">\r
6945             <summary>\r
6946             The code assumes that the following 'time' constants are in a increasing sequence.\r
6947             </summary>\r
6948             <remarks>\r
6949             <para>\r
6950             The code assumes that the following 'time' constants are in a increasing sequence.\r
6951             </para>\r
6952             </remarks>\r
6953         </member>\r
6954         <member name="F:log4net.Appender.RollingFileAppender.RollPoint.InvalidRollPoint">\r
6955             <summary>\r
6956             Roll the log not based on the date\r
6957             </summary>\r
6958         </member>\r
6959         <member name="F:log4net.Appender.RollingFileAppender.RollPoint.TopOfMinute">\r
6960             <summary>\r
6961             Roll the log for each minute\r
6962             </summary>\r
6963         </member>\r
6964         <member name="F:log4net.Appender.RollingFileAppender.RollPoint.TopOfHour">\r
6965             <summary>\r
6966             Roll the log for each hour\r
6967             </summary>\r
6968         </member>\r
6969         <member name="F:log4net.Appender.RollingFileAppender.RollPoint.HalfDay">\r
6970             <summary>\r
6971             Roll the log twice a day (midday and midnight)\r
6972             </summary>\r
6973         </member>\r
6974         <member name="F:log4net.Appender.RollingFileAppender.RollPoint.TopOfDay">\r
6975             <summary>\r
6976             Roll the log each day (midnight)\r
6977             </summary>\r
6978         </member>\r
6979         <member name="F:log4net.Appender.RollingFileAppender.RollPoint.TopOfWeek">\r
6980             <summary>\r
6981             Roll the log each week\r
6982             </summary>\r
6983         </member>\r
6984         <member name="F:log4net.Appender.RollingFileAppender.RollPoint.TopOfMonth">\r
6985             <summary>\r
6986             Roll the log each month\r
6987             </summary>\r
6988         </member>\r
6989         <member name="T:log4net.Appender.RollingFileAppender.IDateTime">\r
6990             <summary>\r
6991             This interface is used to supply Date/Time information to the <see cref="T:log4net.Appender.RollingFileAppender"/>.\r
6992             </summary>\r
6993             <remarks>\r
6994             This interface is used to supply Date/Time information to the <see cref="T:log4net.Appender.RollingFileAppender"/>.\r
6995             Used primarily to allow test classes to plug themselves in so they can\r
6996             supply test date/times.\r
6997             </remarks>\r
6998         </member>\r
6999         <member name="P:log4net.Appender.RollingFileAppender.IDateTime.Now">\r
7000             <summary>\r
7001             Gets the <i>current</i> time.\r
7002             </summary>\r
7003             <value>The <i>current</i> time.</value>\r
7004             <remarks>\r
7005             <para>\r
7006             Gets the <i>current</i> time.\r
7007             </para>\r
7008             </remarks>\r
7009         </member>\r
7010         <member name="T:log4net.Appender.RollingFileAppender.DefaultDateTime">\r
7011             <summary>\r
7012             Default implementation of <see cref="T:log4net.Appender.RollingFileAppender.IDateTime"/> that returns the current time.\r
7013             </summary>\r
7014         </member>\r
7015         <member name="P:log4net.Appender.RollingFileAppender.DefaultDateTime.Now">\r
7016             <summary>\r
7017             Gets the <b>current</b> time.\r
7018             </summary>\r
7019             <value>The <b>current</b> time.</value>\r
7020             <remarks>\r
7021             <para>\r
7022             Gets the <b>current</b> time.\r
7023             </para>\r
7024             </remarks>\r
7025         </member>\r
7026         <member name="T:log4net.Appender.SmtpAppender">\r
7027             <summary>\r
7028             Send an e-mail when a specific logging event occurs, typically on errors \r
7029             or fatal errors.\r
7030             </summary>\r
7031             <remarks>\r
7032             <para>\r
7033             The number of logging events delivered in this e-mail depend on\r
7034             the value of <see cref="P:log4net.Appender.BufferingAppenderSkeleton.BufferSize"/> option. The\r
7035             <see cref="T:log4net.Appender.SmtpAppender"/> keeps only the last\r
7036             <see cref="P:log4net.Appender.BufferingAppenderSkeleton.BufferSize"/> logging events in its \r
7037             cyclic buffer. This keeps memory requirements at a reasonable level while \r
7038             still delivering useful application context.\r
7039             </para>\r
7040             <note type="caution">\r
7041             Authentication and setting the server Port are only available on the MS .NET 1.1 runtime.\r
7042             For these features to be enabled you need to ensure that you are using a version of\r
7043             the log4net assembly that is built against the MS .NET 1.1 framework and that you are\r
7044             running the your application on the MS .NET 1.1 runtime. On all other platforms only sending\r
7045             unauthenticated messages to a server listening on port 25 (the default) is supported.\r
7046             </note>\r
7047             <para>\r
7048             Authentication is supported by setting the <see cref="P:log4net.Appender.SmtpAppender.Authentication"/> property to\r
7049             either <see cref="F:log4net.Appender.SmtpAppender.SmtpAuthentication.Basic"/> or <see cref="F:log4net.Appender.SmtpAppender.SmtpAuthentication.Ntlm"/>.\r
7050             If using <see cref="F:log4net.Appender.SmtpAppender.SmtpAuthentication.Basic"/> authentication then the <see cref="P:log4net.Appender.SmtpAppender.Username"/>\r
7051             and <see cref="P:log4net.Appender.SmtpAppender.Password"/> properties must also be set.\r
7052             </para>\r
7053             <para>\r
7054             To set the SMTP server port use the <see cref="P:log4net.Appender.SmtpAppender.Port"/> property. The default port is 25.\r
7055             </para>\r
7056             </remarks>\r
7057             <author>Nicko Cadell</author>\r
7058             <author>Gert Driesen</author>\r
7059         </member>\r
7060         <member name="M:log4net.Appender.SmtpAppender.#ctor">\r
7061             <summary>\r
7062             Default constructor\r
7063             </summary>\r
7064             <remarks>\r
7065             <para>\r
7066             Default constructor\r
7067             </para>\r
7068             </remarks>\r
7069         </member>\r
7070         <member name="M:log4net.Appender.SmtpAppender.SendBuffer(log4net.Core.LoggingEvent[])">\r
7071             <summary>\r
7072             Sends the contents of the cyclic buffer as an e-mail message.\r
7073             </summary>\r
7074             <param name="events">The logging events to send.</param>\r
7075         </member>\r
7076         <member name="M:log4net.Appender.SmtpAppender.SendEmail(System.String)">\r
7077             <summary>\r
7078             Send the email message\r
7079             </summary>\r
7080             <param name="messageBody">the body text to include in the mail</param>\r
7081         </member>\r
7082         <member name="P:log4net.Appender.SmtpAppender.To">\r
7083             <summary>\r
7084             Gets or sets a semicolon-delimited list of recipient e-mail addresses.\r
7085             </summary>\r
7086             <value>\r
7087             A semicolon-delimited list of e-mail addresses.\r
7088             </value>\r
7089             <remarks>\r
7090             <para>\r
7091             A semicolon-delimited list of recipient e-mail addresses.\r
7092             </para>\r
7093             </remarks>\r
7094         </member>\r
7095         <member name="P:log4net.Appender.SmtpAppender.From">\r
7096             <summary>\r
7097             Gets or sets the e-mail address of the sender.\r
7098             </summary>\r
7099             <value>\r
7100             The e-mail address of the sender.\r
7101             </value>\r
7102             <remarks>\r
7103             <para>\r
7104             The e-mail address of the sender.\r
7105             </para>\r
7106             </remarks>\r
7107         </member>\r
7108         <member name="P:log4net.Appender.SmtpAppender.Subject">\r
7109             <summary>\r
7110             Gets or sets the subject line of the e-mail message.\r
7111             </summary>\r
7112             <value>\r
7113             The subject line of the e-mail message.\r
7114             </value>\r
7115             <remarks>\r
7116             <para>\r
7117             The subject line of the e-mail message.\r
7118             </para>\r
7119             </remarks>\r
7120         </member>\r
7121         <member name="P:log4net.Appender.SmtpAppender.SmtpHost">\r
7122             <summary>\r
7123             Gets or sets the name of the SMTP relay mail server to use to send \r
7124             the e-mail messages.\r
7125             </summary>\r
7126             <value>\r
7127             The name of the e-mail relay server. If SmtpServer is not set, the \r
7128             name of the local SMTP server is used.\r
7129             </value>\r
7130             <remarks>\r
7131             <para>\r
7132             The name of the e-mail relay server. If SmtpServer is not set, the \r
7133             name of the local SMTP server is used.\r
7134             </para>\r
7135             </remarks>\r
7136         </member>\r
7137         <member name="P:log4net.Appender.SmtpAppender.LocationInfo">\r
7138             <summary>\r
7139             Obsolete\r
7140             </summary>\r
7141             <remarks>\r
7142             Use the BufferingAppenderSkeleton Fix methods instead \r
7143             </remarks>\r
7144             <remarks>\r
7145             <para>\r
7146             Obsolete property.\r
7147             </para>\r
7148             </remarks>\r
7149         </member>\r
7150         <member name="P:log4net.Appender.SmtpAppender.Authentication">\r
7151             <summary>\r
7152             The mode to use to authentication with the SMTP server\r
7153             </summary>\r
7154             <remarks>\r
7155             <note type="caution">Authentication is only available on the MS .NET 1.1 runtime.</note>\r
7156             <para>\r
7157             Valid Authentication mode values are: <see cref="F:log4net.Appender.SmtpAppender.SmtpAuthentication.None"/>, \r
7158             <see cref="F:log4net.Appender.SmtpAppender.SmtpAuthentication.Basic"/>, and <see cref="F:log4net.Appender.SmtpAppender.SmtpAuthentication.Ntlm"/>. \r
7159             The default value is <see cref="F:log4net.Appender.SmtpAppender.SmtpAuthentication.None"/>. When using \r
7160             <see cref="F:log4net.Appender.SmtpAppender.SmtpAuthentication.Basic"/> you must specify the <see cref="P:log4net.Appender.SmtpAppender.Username"/> \r
7161             and <see cref="P:log4net.Appender.SmtpAppender.Password"/> to use to authenticate.\r
7162             When using <see cref="F:log4net.Appender.SmtpAppender.SmtpAuthentication.Ntlm"/> the Windows credentials for the current\r
7163             thread, if impersonating, or the process will be used to authenticate. \r
7164             </para>\r
7165             </remarks>\r
7166         </member>\r
7167         <member name="P:log4net.Appender.SmtpAppender.Username">\r
7168             <summary>\r
7169             The username to use to authenticate with the SMTP server\r
7170             </summary>\r
7171             <remarks>\r
7172             <note type="caution">Authentication is only available on the MS .NET 1.1 runtime.</note>\r
7173             <para>\r
7174             A <see cref="P:log4net.Appender.SmtpAppender.Username"/> and <see cref="P:log4net.Appender.SmtpAppender.Password"/> must be specified when \r
7175             <see cref="P:log4net.Appender.SmtpAppender.Authentication"/> is set to <see cref="F:log4net.Appender.SmtpAppender.SmtpAuthentication.Basic"/>, \r
7176             otherwise the username will be ignored. \r
7177             </para>\r
7178             </remarks>\r
7179         </member>\r
7180         <member name="P:log4net.Appender.SmtpAppender.Password">\r
7181             <summary>\r
7182             The password to use to authenticate with the SMTP server\r
7183             </summary>\r
7184             <remarks>\r
7185             <note type="caution">Authentication is only available on the MS .NET 1.1 runtime.</note>\r
7186             <para>\r
7187             A <see cref="P:log4net.Appender.SmtpAppender.Username"/> and <see cref="P:log4net.Appender.SmtpAppender.Password"/> must be specified when \r
7188             <see cref="P:log4net.Appender.SmtpAppender.Authentication"/> is set to <see cref="F:log4net.Appender.SmtpAppender.SmtpAuthentication.Basic"/>, \r
7189             otherwise the password will be ignored. \r
7190             </para>\r
7191             </remarks>\r
7192         </member>\r
7193         <member name="P:log4net.Appender.SmtpAppender.Port">\r
7194             <summary>\r
7195             The port on which the SMTP server is listening\r
7196             </summary>\r
7197             <remarks>\r
7198             <note type="caution">Server Port is only available on the MS .NET 1.1 runtime.</note>\r
7199             <para>\r
7200             The port on which the SMTP server is listening. The default\r
7201             port is <c>25</c>. The Port can only be changed when running on\r
7202             the MS .NET 1.1 runtime.\r
7203             </para>\r
7204             </remarks>\r
7205         </member>\r
7206         <member name="P:log4net.Appender.SmtpAppender.Priority">\r
7207             <summary>\r
7208             Gets or sets the priority of the e-mail message\r
7209             </summary>\r
7210             <value>\r
7211             One of the <see cref="T:System.Net.Mail.MailPriority"/> values.\r
7212             </value>\r
7213             <remarks>\r
7214             <para>\r
7215             Sets the priority of the e-mails generated by this\r
7216             appender. The default priority is <see cref="F:System.Net.Mail.MailPriority.Normal"/>.\r
7217             </para>\r
7218             <para>\r
7219             If you are using this appender to report errors then\r
7220             you may want to set the priority to <see cref="F:System.Net.Mail.MailPriority.High"/>.\r
7221             </para>\r
7222             </remarks>\r
7223         </member>\r
7224         <member name="P:log4net.Appender.SmtpAppender.RequiresLayout">\r
7225             <summary>\r
7226             This appender requires a <see cref="N:log4net.Layout"/> to be set.\r
7227             </summary>\r
7228             <value><c>true</c></value>\r
7229             <remarks>\r
7230             <para>\r
7231             This appender requires a <see cref="N:log4net.Layout"/> to be set.\r
7232             </para>\r
7233             </remarks>\r
7234         </member>\r
7235         <member name="T:log4net.Appender.SmtpAppender.SmtpAuthentication">\r
7236             <summary>\r
7237             Values for the <see cref="P:log4net.Appender.SmtpAppender.Authentication"/> property.\r
7238             </summary>\r
7239             <remarks>\r
7240             <para>\r
7241             SMTP authentication modes.\r
7242             </para>\r
7243             </remarks>\r
7244         </member>\r
7245         <member name="F:log4net.Appender.SmtpAppender.SmtpAuthentication.None">\r
7246             <summary>\r
7247             No authentication\r
7248             </summary>\r
7249         </member>\r
7250         <member name="F:log4net.Appender.SmtpAppender.SmtpAuthentication.Basic">\r
7251             <summary>\r
7252             Basic authentication.\r
7253             </summary>\r
7254             <remarks>\r
7255             Requires a username and password to be supplied\r
7256             </remarks>\r
7257         </member>\r
7258         <member name="F:log4net.Appender.SmtpAppender.SmtpAuthentication.Ntlm">\r
7259             <summary>\r
7260             Integrated authentication\r
7261             </summary>\r
7262             <remarks>\r
7263             Uses the Windows credentials from the current thread or process to authenticate.\r
7264             </remarks>\r
7265         </member>\r
7266         <member name="T:log4net.Appender.SmtpPickupDirAppender">\r
7267             <summary>\r
7268             Send an email when a specific logging event occurs, typically on errors \r
7269             or fatal errors. Rather than sending via smtp it writes a file into the\r
7270             directory specified by <see cref="P:log4net.Appender.SmtpPickupDirAppender.PickupDir"/>. This allows services such\r
7271             as the IIS SMTP agent to manage sending the messages.\r
7272             </summary>\r
7273             <remarks>\r
7274             <para>\r
7275             The configuration for this appender is identical to that of the <c>SMTPAppender</c>,\r
7276             except that instead of specifying the <c>SMTPAppender.SMTPHost</c> you specify\r
7277             <see cref="P:log4net.Appender.SmtpPickupDirAppender.PickupDir"/>.\r
7278             </para>\r
7279             <para>\r
7280             The number of logging events delivered in this e-mail depend on\r
7281             the value of <see cref="P:log4net.Appender.BufferingAppenderSkeleton.BufferSize"/> option. The\r
7282             <see cref="T:log4net.Appender.SmtpPickupDirAppender"/> keeps only the last\r
7283             <see cref="P:log4net.Appender.BufferingAppenderSkeleton.BufferSize"/> logging events in its \r
7284             cyclic buffer. This keeps memory requirements at a reasonable level while \r
7285             still delivering useful application context.\r
7286             </para>\r
7287             </remarks>\r
7288             <author>Niall Daley</author>\r
7289             <author>Nicko Cadell</author>\r
7290         </member>\r
7291         <member name="M:log4net.Appender.SmtpPickupDirAppender.#ctor">\r
7292             <summary>\r
7293             Default constructor\r
7294             </summary>\r
7295             <remarks>\r
7296             <para>\r
7297             Default constructor\r
7298             </para>\r
7299             </remarks>\r
7300         </member>\r
7301         <member name="M:log4net.Appender.SmtpPickupDirAppender.SendBuffer(log4net.Core.LoggingEvent[])">\r
7302             <summary>\r
7303             Sends the contents of the cyclic buffer as an e-mail message.\r
7304             </summary>\r
7305             <param name="events">The logging events to send.</param>\r
7306             <remarks>\r
7307             <para>\r
7308             Sends the contents of the cyclic buffer as an e-mail message.\r
7309             </para>\r
7310             </remarks>\r
7311         </member>\r
7312         <member name="M:log4net.Appender.SmtpPickupDirAppender.ActivateOptions">\r
7313             <summary>\r
7314             Activate the options on this appender. \r
7315             </summary>\r
7316             <remarks>\r
7317             <para>\r
7318             This is part of the <see cref="T:log4net.Core.IOptionHandler"/> delayed object\r
7319             activation scheme. The <see cref="M:log4net.Appender.SmtpPickupDirAppender.ActivateOptions"/> method must \r
7320             be called on this object after the configuration properties have\r
7321             been set. Until <see cref="M:log4net.Appender.SmtpPickupDirAppender.ActivateOptions"/> is called this\r
7322             object is in an undefined state and must not be used. \r
7323             </para>\r
7324             <para>\r
7325             If any of the configuration properties are modified then \r
7326             <see cref="M:log4net.Appender.SmtpPickupDirAppender.ActivateOptions"/> must be called again.\r
7327             </para>\r
7328             </remarks>\r
7329         </member>\r
7330         <member name="M:log4net.Appender.SmtpPickupDirAppender.ConvertToFullPath(System.String)">\r
7331             <summary>\r
7332             Convert a path into a fully qualified path.\r
7333             </summary>\r
7334             <param name="path">The path to convert.</param>\r
7335             <returns>The fully qualified path.</returns>\r
7336             <remarks>\r
7337             <para>\r
7338             Converts the path specified to a fully\r
7339             qualified path. If the path is relative it is\r
7340             taken as relative from the application base \r
7341             directory.\r
7342             </para>\r
7343             </remarks>\r
7344         </member>\r
7345         <member name="F:log4net.Appender.SmtpPickupDirAppender.m_securityContext">\r
7346             <summary>\r
7347             The security context to use for privileged calls\r
7348             </summary>\r
7349         </member>\r
7350         <member name="P:log4net.Appender.SmtpPickupDirAppender.To">\r
7351             <summary>\r
7352             Gets or sets a semicolon-delimited list of recipient e-mail addresses.\r
7353             </summary>\r
7354             <value>\r
7355             A semicolon-delimited list of e-mail addresses.\r
7356             </value>\r
7357             <remarks>\r
7358             <para>\r
7359             A semicolon-delimited list of e-mail addresses.\r
7360             </para>\r
7361             </remarks>\r
7362         </member>\r
7363         <member name="P:log4net.Appender.SmtpPickupDirAppender.From">\r
7364             <summary>\r
7365             Gets or sets the e-mail address of the sender.\r
7366             </summary>\r
7367             <value>\r
7368             The e-mail address of the sender.\r
7369             </value>\r
7370             <remarks>\r
7371             <para>\r
7372             The e-mail address of the sender.\r
7373             </para>\r
7374             </remarks>\r
7375         </member>\r
7376         <member name="P:log4net.Appender.SmtpPickupDirAppender.Subject">\r
7377             <summary>\r
7378             Gets or sets the subject line of the e-mail message.\r
7379             </summary>\r
7380             <value>\r
7381             The subject line of the e-mail message.\r
7382             </value>\r
7383             <remarks>\r
7384             <para>\r
7385             The subject line of the e-mail message.\r
7386             </para>\r
7387             </remarks>\r
7388         </member>\r
7389         <member name="P:log4net.Appender.SmtpPickupDirAppender.PickupDir">\r
7390             <summary>\r
7391             Gets or sets the path to write the messages to.\r
7392             </summary>\r
7393             <remarks>\r
7394             <para>\r
7395             Gets or sets the path to write the messages to. This should be the same\r
7396             as that used by the agent sending the messages.\r
7397             </para>\r
7398             </remarks>\r
7399         </member>\r
7400         <member name="P:log4net.Appender.SmtpPickupDirAppender.SecurityContext">\r
7401             <summary>\r
7402             Gets or sets the <see cref="P:log4net.Appender.SmtpPickupDirAppender.SecurityContext"/> used to write to the pickup directory.\r
7403             </summary>\r
7404             <value>\r
7405             The <see cref="P:log4net.Appender.SmtpPickupDirAppender.SecurityContext"/> used to write to the pickup directory.\r
7406             </value>\r
7407             <remarks>\r
7408             <para>\r
7409             Unless a <see cref="P:log4net.Appender.SmtpPickupDirAppender.SecurityContext"/> specified here for this appender\r
7410             the <see cref="P:log4net.Core.SecurityContextProvider.DefaultProvider"/> is queried for the\r
7411             security context to use. The default behavior is to use the security context\r
7412             of the current thread.\r
7413             </para>\r
7414             </remarks>\r
7415         </member>\r
7416         <member name="P:log4net.Appender.SmtpPickupDirAppender.RequiresLayout">\r
7417             <summary>\r
7418             This appender requires a <see cref="N:log4net.Layout"/> to be set.\r
7419             </summary>\r
7420             <value><c>true</c></value>\r
7421             <remarks>\r
7422             <para>\r
7423             This appender requires a <see cref="N:log4net.Layout"/> to be set.\r
7424             </para>\r
7425             </remarks>\r
7426         </member>\r
7427         <member name="T:log4net.Appender.TelnetAppender">\r
7428             <summary>\r
7429             Appender that allows clients to connect via Telnet to receive log messages\r
7430             </summary>\r
7431             <remarks>   \r
7432             <para>\r
7433             The TelnetAppender accepts socket connections and streams logging messages\r
7434             back to the client.  \r
7435             The output is provided in a telnet-friendly way so that a log can be monitored \r
7436             over a TCP/IP socket.\r
7437             This allows simple remote monitoring of application logging.\r
7438             </para>\r
7439             <para>\r
7440             The default <see cref="P:log4net.Appender.TelnetAppender.Port"/> is 23 (the telnet port).\r
7441             </para>\r
7442             </remarks>\r
7443             <author>Keith Long</author>\r
7444             <author>Nicko Cadell</author>\r
7445         </member>\r
7446         <member name="M:log4net.Appender.TelnetAppender.#ctor">\r
7447             <summary>\r
7448             Default constructor\r
7449             </summary>\r
7450             <remarks>\r
7451             <para>\r
7452             Default constructor\r
7453             </para>\r
7454             </remarks>\r
7455         </member>\r
7456         <member name="M:log4net.Appender.TelnetAppender.OnClose">\r
7457             <summary>\r
7458             Overrides the parent method to close the socket handler\r
7459             </summary>\r
7460             <remarks>\r
7461             <para>\r
7462             Closes all the outstanding connections.\r
7463             </para>\r
7464             </remarks>\r
7465         </member>\r
7466         <member name="M:log4net.Appender.TelnetAppender.ActivateOptions">\r
7467             <summary>\r
7468             Initialize the appender based on the options set.\r
7469             </summary>\r
7470             <remarks>\r
7471             <para>\r
7472             This is part of the <see cref="T:log4net.Core.IOptionHandler"/> delayed object\r
7473             activation scheme. The <see cref="M:log4net.Appender.TelnetAppender.ActivateOptions"/> method must \r
7474             be called on this object after the configuration properties have\r
7475             been set. Until <see cref="M:log4net.Appender.TelnetAppender.ActivateOptions"/> is called this\r
7476             object is in an undefined state and must not be used. \r
7477             </para>\r
7478             <para>\r
7479             If any of the configuration properties are modified then \r
7480             <see cref="M:log4net.Appender.TelnetAppender.ActivateOptions"/> must be called again.\r
7481             </para>\r
7482             <para>\r
7483             Create the socket handler and wait for connections\r
7484             </para>\r
7485             </remarks>\r
7486         </member>\r
7487         <member name="M:log4net.Appender.TelnetAppender.Append(log4net.Core.LoggingEvent)">\r
7488             <summary>\r
7489             Writes the logging event to each connected client.\r
7490             </summary>\r
7491             <param name="loggingEvent">The event to log.</param>\r
7492             <remarks>\r
7493             <para>\r
7494             Writes the logging event to each connected client.\r
7495             </para>\r
7496             </remarks>\r
7497         </member>\r
7498         <member name="P:log4net.Appender.TelnetAppender.Port">\r
7499             <summary>\r
7500             Gets or sets the TCP port number on which this <see cref="T:log4net.Appender.TelnetAppender"/> will listen for connections.\r
7501             </summary>\r
7502             <value>\r
7503             An integer value in the range <see cref="F:System.Net.IPEndPoint.MinPort"/> to <see cref="F:System.Net.IPEndPoint.MaxPort"/> \r
7504             indicating the TCP port number on which this <see cref="T:log4net.Appender.TelnetAppender"/> will listen for connections.\r
7505             </value>\r
7506             <remarks>\r
7507             <para>\r
7508             The default value is 23 (the telnet port).\r
7509             </para>\r
7510             </remarks>\r
7511             <exception cref="T:System.ArgumentOutOfRangeException">The value specified is less than <see cref="F:System.Net.IPEndPoint.MinPort"/> \r
7512             or greater than <see cref="F:System.Net.IPEndPoint.MaxPort"/>.</exception>\r
7513         </member>\r
7514         <member name="P:log4net.Appender.TelnetAppender.RequiresLayout">\r
7515             <summary>\r
7516             This appender requires a <see cref="N:log4net.Layout"/> to be set.\r
7517             </summary>\r
7518             <value><c>true</c></value>\r
7519             <remarks>\r
7520             <para>\r
7521             This appender requires a <see cref="N:log4net.Layout"/> to be set.\r
7522             </para>\r
7523             </remarks>\r
7524         </member>\r
7525         <member name="T:log4net.Appender.TelnetAppender.SocketHandler">\r
7526             <summary>\r
7527             Helper class to manage connected clients\r
7528             </summary>\r
7529             <remarks>\r
7530             <para>\r
7531             The SocketHandler class is used to accept connections from\r
7532             clients.  It is threaded so that clients can connect/disconnect\r
7533             asynchronously.\r
7534             </para>\r
7535             </remarks>\r
7536         </member>\r
7537         <member name="M:log4net.Appender.TelnetAppender.SocketHandler.#ctor(System.Int32)">\r
7538             <summary>\r
7539             Opens a new server port on <paramref ref="port"/>\r
7540             </summary>\r
7541             <param name="port">the local port to listen on for connections</param>\r
7542             <remarks>\r
7543             <para>\r
7544             Creates a socket handler on the specified local server port.\r
7545             </para>\r
7546             </remarks>\r
7547         </member>\r
7548         <member name="M:log4net.Appender.TelnetAppender.SocketHandler.Send(System.String)">\r
7549             <summary>\r
7550             Sends a string message to each of the connected clients\r
7551             </summary>\r
7552             <param name="message">the text to send</param>\r
7553             <remarks>\r
7554             <para>\r
7555             Sends a string message to each of the connected clients\r
7556             </para>\r
7557             </remarks>\r
7558         </member>\r
7559         <member name="M:log4net.Appender.TelnetAppender.SocketHandler.AddClient(log4net.Appender.TelnetAppender.SocketHandler.SocketClient)">\r
7560             <summary>\r
7561             Add a client to the internal clients list\r
7562             </summary>\r
7563             <param name="client">client to add</param>\r
7564         </member>\r
7565         <member name="M:log4net.Appender.TelnetAppender.SocketHandler.RemoveClient(log4net.Appender.TelnetAppender.SocketHandler.SocketClient)">\r
7566             <summary>\r
7567             Remove a client from the internal clients list\r
7568             </summary>\r
7569             <param name="client">client to remove</param>\r
7570         </member>\r
7571         <member name="M:log4net.Appender.TelnetAppender.SocketHandler.OnConnect(System.IAsyncResult)">\r
7572             <summary>\r
7573             Callback used to accept a connection on the server socket\r
7574             </summary>\r
7575             <param name="asyncResult">The result of the asynchronous operation</param>\r
7576             <remarks>\r
7577             <para>\r
7578             On connection adds to the list of connections \r
7579             if there are two many open connections you will be disconnected\r
7580             </para>\r
7581             </remarks>\r
7582         </member>\r
7583         <member name="M:log4net.Appender.TelnetAppender.SocketHandler.Dispose">\r
7584             <summary>\r
7585             Close all network connections\r
7586             </summary>\r
7587             <remarks>\r
7588             <para>\r
7589             Make sure we close all network connections\r
7590             </para>\r
7591             </remarks>\r
7592         </member>\r
7593         <member name="P:log4net.Appender.TelnetAppender.SocketHandler.HasConnections">\r
7594             <summary>\r
7595             Test if this handler has active connections\r
7596             </summary>\r
7597             <value>\r
7598             <c>true</c> if this handler has active connections\r
7599             </value>\r
7600             <remarks>\r
7601             <para>\r
7602             This property will be <c>true</c> while this handler has\r
7603             active connections, that is at least one connection that \r
7604             the handler will attempt to send a message to.\r
7605             </para>\r
7606             </remarks>\r
7607         </member>\r
7608         <member name="T:log4net.Appender.TelnetAppender.SocketHandler.SocketClient">\r
7609             <summary>\r
7610             Class that represents a client connected to this handler\r
7611             </summary>\r
7612             <remarks>\r
7613             <para>\r
7614             Class that represents a client connected to this handler\r
7615             </para>\r
7616             </remarks>\r
7617         </member>\r
7618         <member name="M:log4net.Appender.TelnetAppender.SocketHandler.SocketClient.#ctor(System.Net.Sockets.Socket)">\r
7619             <summary>\r
7620             Create this <see cref="T:log4net.Appender.TelnetAppender.SocketHandler.SocketClient"/> for the specified <see cref="T:System.Net.Sockets.Socket"/>\r
7621             </summary>\r
7622             <param name="socket">the client's socket</param>\r
7623             <remarks>\r
7624             <para>\r
7625             Opens a stream writer on the socket.\r
7626             </para>\r
7627             </remarks>\r
7628         </member>\r
7629         <member name="M:log4net.Appender.TelnetAppender.SocketHandler.SocketClient.Send(System.String)">\r
7630             <summary>\r
7631             Write a string to the client\r
7632             </summary>\r
7633             <param name="message">string to send</param>\r
7634             <remarks>\r
7635             <para>\r
7636             Write a string to the client\r
7637             </para>\r
7638             </remarks>\r
7639         </member>\r
7640         <member name="M:log4net.Appender.TelnetAppender.SocketHandler.SocketClient.Dispose">\r
7641             <summary>\r
7642             Cleanup the clients connection\r
7643             </summary>\r
7644             <remarks>\r
7645             <para>\r
7646             Close the socket connection.\r
7647             </para>\r
7648             </remarks>\r
7649         </member>\r
7650         <member name="T:log4net.Appender.TraceAppender">\r
7651             <summary>\r
7652             Appends log events to the <see cref="T:System.Diagnostics.Trace"/> system.\r
7653             </summary>\r
7654             <remarks>\r
7655             <para>\r
7656             The application configuration file can be used to control what listeners \r
7657             are actually used. See the MSDN documentation for the \r
7658             <see cref="T:System.Diagnostics.Trace"/> class for details on configuring the\r
7659             trace system.\r
7660             </para>\r
7661             <para>\r
7662             Events are written using the <c>System.Diagnostics.Trace.Write(string,string)</c>\r
7663             method. The event's logger name is passed as the value for the category name to the Write method.\r
7664             </para>\r
7665             <para>\r
7666             <b>Compact Framework</b><br/>\r
7667             The Compact Framework does not support the <see cref="T:System.Diagnostics.Trace"/>\r
7668             class for any operation except <c>Assert</c>. When using the Compact Framework this\r
7669             appender will write to the <see cref="T:System.Diagnostics.Debug"/> system rather than\r
7670             the Trace system. This appender will therefore behave like the <see cref="T:log4net.Appender.DebugAppender"/>.\r
7671             </para>\r
7672             </remarks>\r
7673             <author>Douglas de la Torre</author>\r
7674             <author>Nicko Cadell</author>\r
7675             <author>Gert Driesen</author>\r
7676         </member>\r
7677         <member name="M:log4net.Appender.TraceAppender.#ctor">\r
7678             <summary>\r
7679             Initializes a new instance of the <see cref="T:log4net.Appender.TraceAppender"/>.\r
7680             </summary>\r
7681             <remarks>\r
7682             <para>\r
7683             Default constructor.\r
7684             </para>\r
7685             </remarks>\r
7686         </member>\r
7687         <member name="M:log4net.Appender.TraceAppender.#ctor(log4net.Layout.ILayout)">\r
7688             <summary>\r
7689             Initializes a new instance of the <see cref="T:log4net.Appender.TraceAppender"/> \r
7690             with a specified layout.\r
7691             </summary>\r
7692             <param name="layout">The layout to use with this appender.</param>\r
7693             <remarks>\r
7694             <para>\r
7695             Obsolete constructor.\r
7696             </para>\r
7697             </remarks>\r
7698         </member>\r
7699         <member name="M:log4net.Appender.TraceAppender.Append(log4net.Core.LoggingEvent)">\r
7700             <summary>\r
7701             Writes the logging event to the <see cref="T:System.Diagnostics.Trace"/> system.\r
7702             </summary>\r
7703             <param name="loggingEvent">The event to log.</param>\r
7704             <remarks>\r
7705             <para>\r
7706             Writes the logging event to the <see cref="T:System.Diagnostics.Trace"/> system.\r
7707             </para>\r
7708             </remarks>\r
7709         </member>\r
7710         <member name="F:log4net.Appender.TraceAppender.m_immediateFlush">\r
7711             <summary>\r
7712             Immediate flush means that the underlying writer or output stream\r
7713             will be flushed at the end of each append operation.\r
7714             </summary>\r
7715             <remarks>\r
7716             <para>\r
7717             Immediate flush is slower but ensures that each append request is \r
7718             actually written. If <see cref="P:log4net.Appender.TraceAppender.ImmediateFlush"/> is set to\r
7719             <c>false</c>, then there is a good chance that the last few\r
7720             logs events are not actually written to persistent media if and\r
7721             when the application crashes.\r
7722             </para>\r
7723             <para>\r
7724             The default value is <c>true</c>.</para>\r
7725             </remarks>\r
7726         </member>\r
7727         <member name="P:log4net.Appender.TraceAppender.ImmediateFlush">\r
7728             <summary>\r
7729             Gets or sets a value that indicates whether the appender will \r
7730             flush at the end of each write.\r
7731             </summary>\r
7732             <remarks>\r
7733             <para>The default behavior is to flush at the end of each \r
7734             write. If the option is set to<c>false</c>, then the underlying \r
7735             stream can defer writing to physical medium to a later time. \r
7736             </para>\r
7737             <para>\r
7738             Avoiding the flush operation at the end of each append results \r
7739             in a performance gain of 10 to 20 percent. However, there is safety\r
7740             trade-off involved in skipping flushing. Indeed, when flushing is\r
7741             skipped, then it is likely that the last few log events will not\r
7742             be recorded on disk when the application exits. This is a high\r
7743             price to pay even for a 20% performance gain.\r
7744             </para>\r
7745             </remarks>\r
7746         </member>\r
7747         <member name="P:log4net.Appender.TraceAppender.RequiresLayout">\r
7748             <summary>\r
7749             This appender requires a <see cref="N:log4net.Layout"/> to be set.\r
7750             </summary>\r
7751             <value><c>true</c></value>\r
7752             <remarks>\r
7753             <para>\r
7754             This appender requires a <see cref="N:log4net.Layout"/> to be set.\r
7755             </para>\r
7756             </remarks>\r
7757         </member>\r
7758         <member name="T:log4net.Config.AliasDomainAttribute">\r
7759             <summary>\r
7760             Assembly level attribute that specifies a domain to alias to this assembly's repository.\r
7761             </summary>\r
7762             <remarks>\r
7763             <para>\r
7764             <b>AliasDomainAttribute is obsolete. Use AliasRepositoryAttribute instead of AliasDomainAttribute.</b>\r
7765             </para>\r
7766             <para>\r
7767             An assembly's logger repository is defined by its <see cref="T:log4net.Config.DomainAttribute"/>,\r
7768             however this can be overridden by an assembly loaded before the target assembly.\r
7769             </para>\r
7770             <para>\r
7771             An assembly can alias another assembly's domain to its repository by\r
7772             specifying this attribute with the name of the target domain.\r
7773             </para>\r
7774             <para>\r
7775             This attribute can only be specified on the assembly and may be used\r
7776             as many times as necessary to alias all the required domains.\r
7777             </para>\r
7778             </remarks>\r
7779             <author>Nicko Cadell</author>\r
7780             <author>Gert Driesen</author>\r
7781         </member>\r
7782         <member name="T:log4net.Config.AliasRepositoryAttribute">\r
7783             <summary>\r
7784             Assembly level attribute that specifies a repository to alias to this assembly's repository.\r
7785             </summary>\r
7786             <remarks>\r
7787             <para>\r
7788             An assembly's logger repository is defined by its <see cref="T:log4net.Config.RepositoryAttribute"/>,\r
7789             however this can be overridden by an assembly loaded before the target assembly.\r
7790             </para>\r
7791             <para>\r
7792             An assembly can alias another assembly's repository to its repository by\r
7793             specifying this attribute with the name of the target repository.\r
7794             </para>\r
7795             <para>\r
7796             This attribute can only be specified on the assembly and may be used\r
7797             as many times as necessary to alias all the required repositories.\r
7798             </para>\r
7799             </remarks>\r
7800             <author>Nicko Cadell</author>\r
7801             <author>Gert Driesen</author>\r
7802         </member>\r
7803         <member name="M:log4net.Config.AliasRepositoryAttribute.#ctor(System.String)">\r
7804             <summary>\r
7805             Initializes a new instance of the <see cref="T:log4net.Config.AliasRepositoryAttribute"/> class with \r
7806             the specified repository to alias to this assembly's repository.\r
7807             </summary>\r
7808             <param name="name">The repository to alias to this assemby's repository.</param>\r
7809             <remarks>\r
7810             <para>\r
7811             Initializes a new instance of the <see cref="T:log4net.Config.AliasRepositoryAttribute"/> class with \r
7812             the specified repository to alias to this assembly's repository.\r
7813             </para>\r
7814             </remarks>\r
7815         </member>\r
7816         <member name="P:log4net.Config.AliasRepositoryAttribute.Name">\r
7817             <summary>\r
7818             Gets or sets the repository to alias to this assemby's repository.\r
7819             </summary>\r
7820             <value>\r
7821             The repository to alias to this assemby's repository.\r
7822             </value>\r
7823             <remarks>\r
7824             <para>\r
7825             The name of the repository to alias to this assemby's repository.\r
7826             </para>\r
7827             </remarks>\r
7828         </member>\r
7829         <member name="M:log4net.Config.AliasDomainAttribute.#ctor(System.String)">\r
7830             <summary>\r
7831             Initializes a new instance of the <see cref="T:log4net.Config.AliasDomainAttribute"/> class with \r
7832             the specified domain to alias to this assembly's repository.\r
7833             </summary>\r
7834             <param name="name">The domain to alias to this assemby's repository.</param>\r
7835             <remarks>\r
7836             <para>\r
7837             Obsolete. Use <see cref="T:log4net.Config.AliasRepositoryAttribute"/> instead of <see cref="T:log4net.Config.AliasDomainAttribute"/>.\r
7838             </para>\r
7839             </remarks>\r
7840         </member>\r
7841         <member name="T:log4net.Config.BasicConfigurator">\r
7842             <summary>\r
7843             Use this class to quickly configure a <see cref="T:log4net.Repository.Hierarchy.Hierarchy"/>.\r
7844             </summary>\r
7845             <remarks>\r
7846             <para>\r
7847             Allows very simple programmatic configuration of log4net.\r
7848             </para>\r
7849             <para>\r
7850             Only one appender can be configured using this configurator.\r
7851             The appender is set at the root of the hierarchy and all logging\r
7852             events will be delivered to that appender.\r
7853             </para>\r
7854             <para>\r
7855             Appenders can also implement the <see cref="T:log4net.Core.IOptionHandler"/> interface. Therefore\r
7856             they would require that the <see cref="M:log4net.Core.IOptionHandler.ActivateOptions"/> method\r
7857             be called after the appenders properties have been configured.\r
7858             </para>\r
7859             </remarks>\r
7860             <author>Nicko Cadell</author>\r
7861             <author>Gert Driesen</author>\r
7862         </member>\r
7863         <member name="M:log4net.Config.BasicConfigurator.#ctor">\r
7864             <summary>\r
7865             Initializes a new instance of the <see cref="T:log4net.Config.BasicConfigurator"/> class. \r
7866             </summary>\r
7867             <remarks>\r
7868             <para>\r
7869             Uses a private access modifier to prevent instantiation of this class.\r
7870             </para>\r
7871             </remarks>\r
7872         </member>\r
7873         <member name="M:log4net.Config.BasicConfigurator.Configure">\r
7874             <summary>\r
7875             Initializes the log4net system with a default configuration.\r
7876             </summary>\r
7877             <remarks>\r
7878             <para>\r
7879             Initializes the log4net logging system using a <see cref="T:log4net.Appender.ConsoleAppender"/>\r
7880             that will write to <c>Console.Out</c>. The log messages are\r
7881             formatted using the <see cref="T:log4net.Layout.PatternLayout"/> layout object\r
7882             with the <see cref="F:log4net.Layout.PatternLayout.DetailConversionPattern"/>\r
7883             layout style.\r
7884             </para>\r
7885             </remarks>\r
7886         </member>\r
7887         <member name="M:log4net.Config.BasicConfigurator.Configure(log4net.Appender.IAppender)">\r
7888             <summary>\r
7889             Initializes the log4net system using the specified appender.\r
7890             </summary>\r
7891             <param name="appender">The appender to use to log all logging events.</param>\r
7892             <remarks>\r
7893             <para>\r
7894             Initializes the log4net system using the specified appender.\r
7895             </para>\r
7896             </remarks>\r
7897         </member>\r
7898         <member name="M:log4net.Config.BasicConfigurator.Configure(log4net.Repository.ILoggerRepository)">\r
7899             <summary>\r
7900             Initializes the <see cref="T:log4net.Repository.ILoggerRepository"/> with a default configuration.\r
7901             </summary>\r
7902             <param name="repository">The repository to configure.</param>\r
7903             <remarks>\r
7904             <para>\r
7905             Initializes the specified repository using a <see cref="T:log4net.Appender.ConsoleAppender"/>\r
7906             that will write to <c>Console.Out</c>. The log messages are\r
7907             formatted using the <see cref="T:log4net.Layout.PatternLayout"/> layout object\r
7908             with the <see cref="F:log4net.Layout.PatternLayout.DetailConversionPattern"/>\r
7909             layout style.\r
7910             </para>\r
7911             </remarks>\r
7912         </member>\r
7913         <member name="M:log4net.Config.BasicConfigurator.Configure(log4net.Repository.ILoggerRepository,log4net.Appender.IAppender)">\r
7914             <summary>\r
7915             Initializes the <see cref="T:log4net.Repository.ILoggerRepository"/> using the specified appender.\r
7916             </summary>\r
7917             <param name="repository">The repository to configure.</param>\r
7918             <param name="appender">The appender to use to log all logging events.</param>\r
7919             <remarks>\r
7920             <para>\r
7921             Initializes the <see cref="T:log4net.Repository.ILoggerRepository"/> using the specified appender.\r
7922             </para>\r
7923             </remarks>\r
7924         </member>\r
7925         <member name="T:log4net.Config.ConfiguratorAttribute">\r
7926             <summary>\r
7927             Base class for all log4net configuration attributes.\r
7928             </summary>\r
7929             <remarks>\r
7930             This is an abstract class that must be extended by \r
7931             specific configurators. This attribute allows the\r
7932             configurator to be parameterized by an assembly level\r
7933             attribute.\r
7934             </remarks>\r
7935             <author>Nicko Cadell</author>\r
7936             <author>Gert Driesen</author>\r
7937         </member>\r
7938         <member name="M:log4net.Config.ConfiguratorAttribute.#ctor(System.Int32)">\r
7939             <summary>\r
7940             Constructor used by subclasses.\r
7941             </summary>\r
7942             <param name="priority">the ordering priority for this configurator</param>\r
7943             <remarks>\r
7944             <para>\r
7945             The <paramref name="priority"/> is used to order the configurator\r
7946             attributes before they are invoked. Higher priority configurators are executed\r
7947             before lower priority ones.\r
7948             </para>\r
7949             </remarks>\r
7950         </member>\r
7951         <member name="M:log4net.Config.ConfiguratorAttribute.Configure(System.Reflection.Assembly,log4net.Repository.ILoggerRepository)">\r
7952             <summary>\r
7953             Configures the <see cref="T:log4net.Repository.ILoggerRepository"/> for the specified assembly.\r
7954             </summary>\r
7955             <param name="sourceAssembly">The assembly that this attribute was defined on.</param>\r
7956             <param name="targetRepository">The repository to configure.</param>\r
7957             <remarks>\r
7958             <para>\r
7959             Abstract method implemented by a subclass. When this method is called\r
7960             the subclass should configure the <paramref name="targetRepository"/>.\r
7961             </para>\r
7962             </remarks>\r
7963         </member>\r
7964         <member name="M:log4net.Config.ConfiguratorAttribute.CompareTo(System.Object)">\r
7965             <summary>\r
7966             Compare this instance to another ConfiguratorAttribute\r
7967             </summary>\r
7968             <param name="obj">the object to compare to</param>\r
7969             <returns>see <see cref="M:System.IComparable.CompareTo(System.Object)"/></returns>\r
7970             <remarks>\r
7971             <para>\r
7972             Compares the priorities of the two <see cref="T:log4net.Config.ConfiguratorAttribute"/> instances.\r
7973             Sorts by priority in descending order. Objects with the same priority are\r
7974             randomly ordered.\r
7975             </para>\r
7976             </remarks>\r
7977         </member>\r
7978         <member name="T:log4net.Config.DomainAttribute">\r
7979             <summary>\r
7980             Assembly level attribute that specifies the logging domain for the assembly.\r
7981             </summary>\r
7982             <remarks>\r
7983             <para>\r
7984             <b>DomainAttribute is obsolete. Use RepositoryAttribute instead of DomainAttribute.</b>\r
7985             </para>\r
7986             <para>\r
7987             Assemblies are mapped to logging domains. Each domain has its own\r
7988             logging repository. This attribute specified on the assembly controls\r
7989             the configuration of the domain. The <see cref="P:log4net.Config.RepositoryAttribute.Name"/> property specifies the name\r
7990             of the domain that this assembly is a part of. The <see cref="P:log4net.Config.RepositoryAttribute.RepositoryType"/>\r
7991             specifies the type of the repository objects to create for the domain. If \r
7992             this attribute is not specified and a <see cref="P:log4net.Config.RepositoryAttribute.Name"/> is not specified\r
7993             then the assembly will be part of the default shared logging domain.\r
7994             </para>\r
7995             <para>\r
7996             This attribute can only be specified on the assembly and may only be used\r
7997             once per assembly.\r
7998             </para>\r
7999             </remarks>\r
8000             <author>Nicko Cadell</author>\r
8001             <author>Gert Driesen</author>\r
8002         </member>\r
8003         <member name="T:log4net.Config.RepositoryAttribute">\r
8004             <summary>\r
8005             Assembly level attribute that specifies the logging repository for the assembly.\r
8006             </summary>\r
8007             <remarks>\r
8008             <para>\r
8009             Assemblies are mapped to logging repository. This attribute specified \r
8010             on the assembly controls\r
8011             the configuration of the repository. The <see cref="P:log4net.Config.RepositoryAttribute.Name"/> property specifies the name\r
8012             of the repository that this assembly is a part of. The <see cref="P:log4net.Config.RepositoryAttribute.RepositoryType"/>\r
8013             specifies the type of the <see cref="T:log4net.Repository.ILoggerRepository"/> object \r
8014             to create for the assembly. If this attribute is not specified or a <see cref="P:log4net.Config.RepositoryAttribute.Name"/> \r
8015             is not specified then the assembly will be part of the default shared logging repository.\r
8016             </para>\r
8017             <para>\r
8018             This attribute can only be specified on the assembly and may only be used\r
8019             once per assembly.\r
8020             </para>\r
8021             </remarks>\r
8022             <author>Nicko Cadell</author>\r
8023             <author>Gert Driesen</author>\r
8024         </member>\r
8025         <member name="M:log4net.Config.RepositoryAttribute.#ctor">\r
8026             <summary>\r
8027             Initializes a new instance of the <see cref="T:log4net.Config.RepositoryAttribute"/> class.\r
8028             </summary>\r
8029             <remarks>\r
8030             <para>\r
8031             Default constructor.\r
8032             </para>\r
8033             </remarks>\r
8034         </member>\r
8035         <member name="M:log4net.Config.RepositoryAttribute.#ctor(System.String)">\r
8036             <summary>\r
8037             Initialize a new instance of the <see cref="T:log4net.Config.RepositoryAttribute"/> class \r
8038             with the name of the repository.\r
8039             </summary>\r
8040             <param name="name">The name of the repository.</param>\r
8041             <remarks>\r
8042             <para>\r
8043             Initialize the attribute with the name for the assembly's repository.\r
8044             </para>\r
8045             </remarks>\r
8046         </member>\r
8047         <member name="P:log4net.Config.RepositoryAttribute.Name">\r
8048             <summary>\r
8049             Gets or sets the name of the logging repository.\r
8050             </summary>\r
8051             <value>\r
8052             The string name to use as the name of the repository associated with this\r
8053             assembly.\r
8054             </value>\r
8055             <remarks>\r
8056             <para>\r
8057             This value does not have to be unique. Several assemblies can share the\r
8058             same repository. They will share the logging configuration of the repository.\r
8059             </para>\r
8060             </remarks>\r
8061         </member>\r
8062         <member name="P:log4net.Config.RepositoryAttribute.RepositoryType">\r
8063             <summary>\r
8064             Gets or sets the type of repository to create for this assembly.\r
8065             </summary>\r
8066             <value>\r
8067             The type of repository to create for this assembly.\r
8068             </value>\r
8069             <remarks>\r
8070             <para>\r
8071             The type of the repository to create for the assembly.\r
8072             The type must implement the <see cref="T:log4net.Repository.ILoggerRepository"/>\r
8073             interface.\r
8074             </para>\r
8075             <para>\r
8076             This will be the type of repository created when \r
8077             the repository is created. If multiple assemblies reference the\r
8078             same repository then the repository is only created once using the\r
8079             <see cref="P:log4net.Config.RepositoryAttribute.RepositoryType"/> of the first assembly to call into the \r
8080             repository.\r
8081             </para>\r
8082             </remarks>\r
8083         </member>\r
8084         <member name="M:log4net.Config.DomainAttribute.#ctor">\r
8085             <summary>\r
8086             Initializes a new instance of the <see cref="T:log4net.Config.DomainAttribute"/> class.\r
8087             </summary>\r
8088             <remarks>\r
8089             <para>\r
8090             Obsolete. Use RepositoryAttribute instead of DomainAttribute.\r
8091             </para>\r
8092             </remarks>\r
8093         </member>\r
8094         <member name="M:log4net.Config.DomainAttribute.#ctor(System.String)">\r
8095             <summary>\r
8096             Initialize a new instance of the <see cref="T:log4net.Config.DomainAttribute"/> class \r
8097             with the name of the domain.\r
8098             </summary>\r
8099             <param name="name">The name of the domain.</param>\r
8100             <remarks>\r
8101             <para>\r
8102             Obsolete. Use RepositoryAttribute instead of DomainAttribute.\r
8103             </para>\r
8104             </remarks>\r
8105         </member>\r
8106         <member name="T:log4net.Config.DOMConfigurator">\r
8107             <summary>\r
8108             Use this class to initialize the log4net environment using an Xml tree.\r
8109             </summary>\r
8110             <remarks>\r
8111             <para>\r
8112             <b>DOMConfigurator is obsolete. Use XmlConfigurator instead of DOMConfigurator.</b>\r
8113             </para>\r
8114             <para>\r
8115             Configures a <see cref="T:log4net.Repository.ILoggerRepository"/> using an Xml tree.\r
8116             </para>\r
8117             </remarks>\r
8118             <author>Nicko Cadell</author>\r
8119             <author>Gert Driesen</author>\r
8120         </member>\r
8121         <member name="M:log4net.Config.DOMConfigurator.#ctor">\r
8122             <summary>\r
8123             Private constructor\r
8124             </summary>\r
8125         </member>\r
8126         <member name="M:log4net.Config.DOMConfigurator.Configure">\r
8127             <summary>\r
8128             Automatically configures the log4net system based on the \r
8129             application's configuration settings.\r
8130             </summary>\r
8131             <remarks>\r
8132             <para>\r
8133             <b>DOMConfigurator is obsolete. Use XmlConfigurator instead of DOMConfigurator.</b>\r
8134             </para>\r
8135             Each application has a configuration file. This has the\r
8136             same name as the application with '.config' appended.\r
8137             This file is XML and calling this function prompts the\r
8138             configurator to look in that file for a section called\r
8139             <c>log4net</c> that contains the configuration data.\r
8140             </remarks>\r
8141         </member>\r
8142         <member name="M:log4net.Config.DOMConfigurator.Configure(log4net.Repository.ILoggerRepository)">\r
8143             <summary>\r
8144             Automatically configures the <see cref="T:log4net.Repository.ILoggerRepository"/> using settings\r
8145             stored in the application's configuration file.\r
8146             </summary>\r
8147             <remarks>\r
8148             <para>\r
8149             <b>DOMConfigurator is obsolete. Use XmlConfigurator instead of DOMConfigurator.</b>\r
8150             </para>\r
8151             Each application has a configuration file. This has the\r
8152             same name as the application with '.config' appended.\r
8153             This file is XML and calling this function prompts the\r
8154             configurator to look in that file for a section called\r
8155             <c>log4net</c> that contains the configuration data.\r
8156             </remarks>\r
8157             <param name="repository">The repository to configure.</param>\r
8158         </member>\r
8159         <member name="M:log4net.Config.DOMConfigurator.Configure(System.Xml.XmlElement)">\r
8160             <summary>\r
8161             Configures log4net using a <c>log4net</c> element\r
8162             </summary>\r
8163             <remarks>\r
8164             <para>\r
8165             <b>DOMConfigurator is obsolete. Use XmlConfigurator instead of DOMConfigurator.</b>\r
8166             </para>\r
8167             Loads the log4net configuration from the XML element\r
8168             supplied as <paramref name="element"/>.\r
8169             </remarks>\r
8170             <param name="element">The element to parse.</param>\r
8171         </member>\r
8172         <member name="M:log4net.Config.DOMConfigurator.Configure(log4net.Repository.ILoggerRepository,System.Xml.XmlElement)">\r
8173             <summary>\r
8174             Configures the <see cref="T:log4net.Repository.ILoggerRepository"/> using the specified XML \r
8175             element.\r
8176             </summary>\r
8177             <remarks>\r
8178             <para>\r
8179             <b>DOMConfigurator is obsolete. Use XmlConfigurator instead of DOMConfigurator.</b>\r
8180             </para>\r
8181             Loads the log4net configuration from the XML element\r
8182             supplied as <paramref name="element"/>.\r
8183             </remarks>\r
8184             <param name="repository">The repository to configure.</param>\r
8185             <param name="element">The element to parse.</param>\r
8186         </member>\r
8187         <member name="M:log4net.Config.DOMConfigurator.Configure(System.IO.FileInfo)">\r
8188             <summary>\r
8189             Configures log4net using the specified configuration file.\r
8190             </summary>\r
8191             <param name="configFile">The XML file to load the configuration from.</param>\r
8192             <remarks>\r
8193             <para>\r
8194             <b>DOMConfigurator is obsolete. Use XmlConfigurator instead of DOMConfigurator.</b>\r
8195             </para>\r
8196             <para>\r
8197             The configuration file must be valid XML. It must contain\r
8198             at least one element called <c>log4net</c> that holds\r
8199             the log4net configuration data.\r
8200             </para>\r
8201             <para>\r
8202             The log4net configuration file can possible be specified in the application's\r
8203             configuration file (either <c>MyAppName.exe.config</c> for a\r
8204             normal application on <c>Web.config</c> for an ASP.NET application).\r
8205             </para>\r
8206             <example>\r
8207             The following example configures log4net using a configuration file, of which the \r
8208             location is stored in the application's configuration file :\r
8209             </example>\r
8210             <code lang="C#">\r
8211             using log4net.Config;\r
8212             using System.IO;\r
8213             using System.Configuration;\r
8214             \r
8215             ...\r
8216             \r
8217             DOMConfigurator.Configure(new FileInfo(ConfigurationSettings.AppSettings["log4net-config-file"]));\r
8218             </code>\r
8219             <para>\r
8220             In the <c>.config</c> file, the path to the log4net can be specified like this :\r
8221             </para>\r
8222             <code lang="XML" escaped="true">\r
8223             <configuration>\r
8224                 <appSettings>\r
8225                         <add key="log4net-config-file" value="log.config"/>\r
8226                 </appSettings>\r
8227             </configuration>\r
8228             </code>\r
8229             </remarks>\r
8230         </member>\r
8231         <member name="M:log4net.Config.DOMConfigurator.Configure(System.IO.Stream)">\r
8232             <summary>\r
8233             Configures log4net using the specified configuration file.\r
8234             </summary>\r
8235             <param name="configStream">A stream to load the XML configuration from.</param>\r
8236             <remarks>\r
8237             <para>\r
8238             <b>DOMConfigurator is obsolete. Use XmlConfigurator instead of DOMConfigurator.</b>\r
8239             </para>\r
8240             <para>\r
8241             The configuration data must be valid XML. It must contain\r
8242             at least one element called <c>log4net</c> that holds\r
8243             the log4net configuration data.\r
8244             </para>\r
8245             <para>\r
8246             Note that this method will NOT close the stream parameter.\r
8247             </para>\r
8248             </remarks>\r
8249         </member>\r
8250         <member name="M:log4net.Config.DOMConfigurator.Configure(log4net.Repository.ILoggerRepository,System.IO.FileInfo)">\r
8251             <summary>\r
8252             Configures the <see cref="T:log4net.Repository.ILoggerRepository"/> using the specified configuration \r
8253             file.\r
8254             </summary>\r
8255             <param name="repository">The repository to configure.</param>\r
8256             <param name="configFile">The XML file to load the configuration from.</param>\r
8257             <remarks>\r
8258             <para>\r
8259             <b>DOMConfigurator is obsolete. Use XmlConfigurator instead of DOMConfigurator.</b>\r
8260             </para>\r
8261             <para>\r
8262             The configuration file must be valid XML. It must contain\r
8263             at least one element called <c>log4net</c> that holds\r
8264             the configuration data.\r
8265             </para>\r
8266             <para>\r
8267             The log4net configuration file can possible be specified in the application's\r
8268             configuration file (either <c>MyAppName.exe.config</c> for a\r
8269             normal application on <c>Web.config</c> for an ASP.NET application).\r
8270             </para>\r
8271             <example>\r
8272             The following example configures log4net using a configuration file, of which the \r
8273             location is stored in the application's configuration file :\r
8274             </example>\r
8275             <code lang="C#">\r
8276             using log4net.Config;\r
8277             using System.IO;\r
8278             using System.Configuration;\r
8279             \r
8280             ...\r
8281             \r
8282             DOMConfigurator.Configure(new FileInfo(ConfigurationSettings.AppSettings["log4net-config-file"]));\r
8283             </code>\r
8284             <para>\r
8285             In the <c>.config</c> file, the path to the log4net can be specified like this :\r
8286             </para>\r
8287             <code lang="XML" escaped="true">\r
8288             <configuration>\r
8289                 <appSettings>\r
8290                         <add key="log4net-config-file" value="log.config"/>\r
8291                 </appSettings>\r
8292             </configuration>\r
8293             </code>\r
8294             </remarks>\r
8295         </member>\r
8296         <member name="M:log4net.Config.DOMConfigurator.Configure(log4net.Repository.ILoggerRepository,System.IO.Stream)">\r
8297             <summary>\r
8298             Configures the <see cref="T:log4net.Repository.ILoggerRepository"/> using the specified configuration \r
8299             file.\r
8300             </summary>\r
8301             <param name="repository">The repository to configure.</param>\r
8302             <param name="configStream">The stream to load the XML configuration from.</param>\r
8303             <remarks>\r
8304             <para>\r
8305             <b>DOMConfigurator is obsolete. Use XmlConfigurator instead of DOMConfigurator.</b>\r
8306             </para>\r
8307             <para>\r
8308             The configuration data must be valid XML. It must contain\r
8309             at least one element called <c>log4net</c> that holds\r
8310             the configuration data.\r
8311             </para>\r
8312             <para>\r
8313             Note that this method will NOT close the stream parameter.\r
8314             </para>\r
8315             </remarks>\r
8316         </member>\r
8317         <member name="M:log4net.Config.DOMConfigurator.ConfigureAndWatch(System.IO.FileInfo)">\r
8318             <summary>\r
8319             Configures log4net using the file specified, monitors the file for changes \r
8320             and reloads the configuration if a change is detected.\r
8321             </summary>\r
8322             <param name="configFile">The XML file to load the configuration from.</param>\r
8323             <remarks>\r
8324             <para>\r
8325             <b>DOMConfigurator is obsolete. Use XmlConfigurator instead of DOMConfigurator.</b>\r
8326             </para>\r
8327             <para>\r
8328             The configuration file must be valid XML. It must contain\r
8329             at least one element called <c>log4net</c> that holds\r
8330             the configuration data.\r
8331             </para>\r
8332             <para>\r
8333             The configuration file will be monitored using a <see cref="T:System.IO.FileSystemWatcher"/>\r
8334             and depends on the behavior of that class.\r
8335             </para>\r
8336             <para>\r
8337             For more information on how to configure log4net using\r
8338             a separate configuration file, see <see cref="M:log4net.Config.DOMConfigurator.Configure(System.IO.FileInfo)"/>.\r
8339             </para>\r
8340             </remarks>\r
8341             <seealso cref="M:log4net.Config.DOMConfigurator.Configure(System.IO.FileInfo)"/>\r
8342         </member>\r
8343         <member name="M:log4net.Config.DOMConfigurator.ConfigureAndWatch(log4net.Repository.ILoggerRepository,System.IO.FileInfo)">\r
8344             <summary>\r
8345             Configures the <see cref="T:log4net.Repository.ILoggerRepository"/> using the file specified, \r
8346             monitors the file for changes and reloads the configuration if a change \r
8347             is detected.\r
8348             </summary>\r
8349             <param name="repository">The repository to configure.</param>\r
8350             <param name="configFile">The XML file to load the configuration from.</param>\r
8351             <remarks>\r
8352             <para>\r
8353             <b>DOMConfigurator is obsolete. Use XmlConfigurator instead of DOMConfigurator.</b>\r
8354             </para>\r
8355             <para>\r
8356             The configuration file must be valid XML. It must contain\r
8357             at least one element called <c>log4net</c> that holds\r
8358             the configuration data.\r
8359             </para>\r
8360             <para>\r
8361             The configuration file will be monitored using a <see cref="T:System.IO.FileSystemWatcher"/>\r
8362             and depends on the behavior of that class.\r
8363             </para>\r
8364             <para>\r
8365             For more information on how to configure log4net using\r
8366             a separate configuration file, see <see cref="M:log4net.Config.DOMConfigurator.Configure(System.IO.FileInfo)"/>.\r
8367             </para>\r
8368             </remarks>\r
8369             <seealso cref="M:log4net.Config.DOMConfigurator.Configure(System.IO.FileInfo)"/>\r
8370         </member>\r
8371         <member name="T:log4net.Config.DOMConfiguratorAttribute">\r
8372             <summary>\r
8373             Assembly level attribute to configure the <see cref="T:log4net.Config.XmlConfigurator"/>.\r
8374             </summary>\r
8375             <remarks>\r
8376             <para>\r
8377             <b>AliasDomainAttribute is obsolete. Use AliasRepositoryAttribute instead of AliasDomainAttribute.</b>\r
8378             </para>\r
8379             <para>\r
8380             This attribute may only be used at the assembly scope and can only\r
8381             be used once per assembly.\r
8382             </para>\r
8383             <para>\r
8384             Use this attribute to configure the <see cref="T:log4net.Config.XmlConfigurator"/>\r
8385             without calling one of the <see cref="M:log4net.Config.XmlConfigurator.Configure"/>\r
8386             methods.\r
8387             </para>\r
8388             </remarks>\r
8389             <author>Nicko Cadell</author>\r
8390             <author>Gert Driesen</author>\r
8391         </member>\r
8392         <member name="T:log4net.Config.XmlConfiguratorAttribute">\r
8393             <summary>\r
8394             Assembly level attribute to configure the <see cref="T:log4net.Config.XmlConfigurator"/>.\r
8395             </summary>\r
8396             <remarks>\r
8397             <para>\r
8398             This attribute may only be used at the assembly scope and can only\r
8399             be used once per assembly.\r
8400             </para>\r
8401             <para>\r
8402             Use this attribute to configure the <see cref="T:log4net.Config.XmlConfigurator"/>\r
8403             without calling one of the <see cref="M:log4net.Config.XmlConfigurator.Configure"/>\r
8404             methods.\r
8405             </para>\r
8406             <para>\r
8407             If neither of the <see cref="P:log4net.Config.XmlConfiguratorAttribute.ConfigFile"/> or <see cref="P:log4net.Config.XmlConfiguratorAttribute.ConfigFileExtension"/>\r
8408             properties are set the configuration is loaded from the application's .config file.\r
8409             If set the <see cref="P:log4net.Config.XmlConfiguratorAttribute.ConfigFile"/> property takes priority over the\r
8410             <see cref="P:log4net.Config.XmlConfiguratorAttribute.ConfigFileExtension"/> property. The <see cref="P:log4net.Config.XmlConfiguratorAttribute.ConfigFile"/> property\r
8411             specifies a path to a file to load the config from. The path is relative to the\r
8412             application's base directory; <see cref="P:System.AppDomain.BaseDirectory"/>.\r
8413             The <see cref="P:log4net.Config.XmlConfiguratorAttribute.ConfigFileExtension"/> property is used as a postfix to the assembly file name.\r
8414             The config file must be located in the  application's base directory; <see cref="P:System.AppDomain.BaseDirectory"/>.\r
8415             For example in a console application setting the <see cref="P:log4net.Config.XmlConfiguratorAttribute.ConfigFileExtension"/> to\r
8416             <c>config</c> has the same effect as not specifying the <see cref="P:log4net.Config.XmlConfiguratorAttribute.ConfigFile"/> or \r
8417             <see cref="P:log4net.Config.XmlConfiguratorAttribute.ConfigFileExtension"/> properties.\r
8418             </para>\r
8419             <para>\r
8420             The <see cref="P:log4net.Config.XmlConfiguratorAttribute.Watch"/> property can be set to cause the <see cref="T:log4net.Config.XmlConfigurator"/>\r
8421             to watch the configuration file for changes.\r
8422             </para>\r
8423             <note>\r
8424             <para>\r
8425             Log4net will only look for assembly level configuration attributes once.\r
8426             When using the log4net assembly level attributes to control the configuration \r
8427             of log4net you must ensure that the first call to any of the \r
8428             <see cref="T:log4net.Core.LoggerManager"/> methods is made from the assembly with the configuration\r
8429             attributes. \r
8430             </para>\r
8431             <para>\r
8432             If you cannot guarantee the order in which log4net calls will be made from \r
8433             different assemblies you must use programmatic configuration instead, i.e.\r
8434             call the <see cref="M:log4net.Config.XmlConfigurator.Configure"/> method directly.\r
8435             </para>\r
8436             </note>\r
8437             </remarks>\r
8438             <author>Nicko Cadell</author>\r
8439             <author>Gert Driesen</author>\r
8440         </member>\r
8441         <member name="M:log4net.Config.XmlConfiguratorAttribute.#ctor">\r
8442             <summary>\r
8443             Default constructor\r
8444             </summary>\r
8445             <remarks>\r
8446             <para>\r
8447             Default constructor\r
8448             </para>\r
8449             </remarks>\r
8450         </member>\r
8451         <member name="M:log4net.Config.XmlConfiguratorAttribute.Configure(System.Reflection.Assembly,log4net.Repository.ILoggerRepository)">\r
8452             <summary>\r
8453             Configures the <see cref="T:log4net.Repository.ILoggerRepository"/> for the specified assembly.\r
8454             </summary>\r
8455             <param name="sourceAssembly">The assembly that this attribute was defined on.</param>\r
8456             <param name="targetRepository">The repository to configure.</param>\r
8457             <remarks>\r
8458             <para>\r
8459             Configure the repository using the <see cref="T:log4net.Config.XmlConfigurator"/>.\r
8460             The <paramref name="targetRepository"/> specified must extend the <see cref="T:log4net.Repository.Hierarchy.Hierarchy"/>\r
8461             class otherwise the <see cref="T:log4net.Config.XmlConfigurator"/> will not be able to\r
8462             configure it.\r
8463             </para>\r
8464             </remarks>\r
8465             <exception cref="T:System.ArgumentOutOfRangeException">The <paramref name="repository"/> does not extend <see cref="T:log4net.Repository.Hierarchy.Hierarchy"/>.</exception>\r
8466         </member>\r
8467         <member name="M:log4net.Config.XmlConfiguratorAttribute.ConfigureFromFile(System.Reflection.Assembly,log4net.Repository.ILoggerRepository)">\r
8468             <summary>\r
8469             Attempt to load configuration from the local file system\r
8470             </summary>\r
8471             <param name="sourceAssembly">The assembly that this attribute was defined on.</param>\r
8472             <param name="targetRepository">The repository to configure.</param>\r
8473         </member>\r
8474         <member name="M:log4net.Config.XmlConfiguratorAttribute.ConfigureFromFile(log4net.Repository.ILoggerRepository,System.IO.FileInfo)">\r
8475             <summary>\r
8476             Configure the specified repository using a <see cref="T:System.IO.FileInfo"/>\r
8477             </summary>\r
8478             <param name="targetRepository">The repository to configure.</param>\r
8479             <param name="configFile">the FileInfo pointing to the config file</param>\r
8480         </member>\r
8481         <member name="M:log4net.Config.XmlConfiguratorAttribute.ConfigureFromUri(System.Reflection.Assembly,log4net.Repository.ILoggerRepository)">\r
8482             <summary>\r
8483             Attempt to load configuration from a URI\r
8484             </summary>\r
8485             <param name="sourceAssembly">The assembly that this attribute was defined on.</param>\r
8486             <param name="targetRepository">The repository to configure.</param>\r
8487         </member>\r
8488         <member name="P:log4net.Config.XmlConfiguratorAttribute.ConfigFile">\r
8489             <summary>\r
8490             Gets or sets the filename of the configuration file.\r
8491             </summary>\r
8492             <value>\r
8493             The filename of the configuration file.\r
8494             </value>\r
8495             <remarks>\r
8496             <para>\r
8497             If specified, this is the name of the configuration file to use with\r
8498             the <see cref="T:log4net.Config.XmlConfigurator"/>. This file path is relative to the\r
8499             <b>application base</b> directory (<see cref="P:System.AppDomain.BaseDirectory"/>).\r
8500             </para>\r
8501             <para>\r
8502             The <see cref="P:log4net.Config.XmlConfiguratorAttribute.ConfigFile"/> takes priority over the <see cref="P:log4net.Config.XmlConfiguratorAttribute.ConfigFileExtension"/>.\r
8503             </para>\r
8504             </remarks>\r
8505         </member>\r
8506         <member name="P:log4net.Config.XmlConfiguratorAttribute.ConfigFileExtension">\r
8507             <summary>\r
8508             Gets or sets the extension of the configuration file.\r
8509             </summary>\r
8510             <value>\r
8511             The extension of the configuration file.\r
8512             </value>\r
8513             <remarks>\r
8514             <para>\r
8515             If specified this is the extension for the configuration file.\r
8516             The path to the config file is built by using the <b>application \r
8517             base</b> directory (<see cref="P:System.AppDomain.BaseDirectory"/>),\r
8518             the <b>assembly file name</b> and the config file extension.\r
8519             </para>\r
8520             <para>\r
8521             If the <see cref="P:log4net.Config.XmlConfiguratorAttribute.ConfigFileExtension"/> is set to <c>MyExt</c> then\r
8522             possible config file names would be: <c>MyConsoleApp.exe.MyExt</c> or\r
8523             <c>MyClassLibrary.dll.MyExt</c>.\r
8524             </para>\r
8525             <para>\r
8526             The <see cref="P:log4net.Config.XmlConfiguratorAttribute.ConfigFile"/> takes priority over the <see cref="P:log4net.Config.XmlConfiguratorAttribute.ConfigFileExtension"/>.\r
8527             </para>\r
8528             </remarks>\r
8529         </member>\r
8530         <member name="P:log4net.Config.XmlConfiguratorAttribute.Watch">\r
8531             <summary>\r
8532             Gets or sets a value indicating whether to watch the configuration file.\r
8533             </summary>\r
8534             <value>\r
8535             <c>true</c> if the configuration should be watched, <c>false</c> otherwise.\r
8536             </value>\r
8537             <remarks>\r
8538             <para>\r
8539             If this flag is specified and set to <c>true</c> then the framework\r
8540             will watch the configuration file and will reload the config each time \r
8541             the file is modified.\r
8542             </para>\r
8543             <para>\r
8544             The config file can only be watched if it is loaded from local disk.\r
8545             In a No-Touch (Smart Client) deployment where the application is downloaded\r
8546             from a web server the config file may not reside on the local disk\r
8547             and therefore it may not be able to watch it.\r
8548             </para>\r
8549             <note>\r
8550             Watching configuration is not supported on the SSCLI.\r
8551             </note>\r
8552             </remarks>\r
8553         </member>\r
8554         <member name="T:log4net.Config.Log4NetConfigurationSectionHandler">\r
8555             <summary>\r
8556             Class to register for the log4net section of the configuration file\r
8557             </summary>\r
8558             <remarks>\r
8559             The log4net section of the configuration file needs to have a section\r
8560             handler registered. This is the section handler used. It simply returns\r
8561             the XML element that is the root of the section.\r
8562             </remarks>\r
8563             <example>\r
8564             Example of registering the log4net section handler :\r
8565             <code lang="XML" escaped="true">\r
8566             <configuration>\r
8567                 <configSections>\r
8568                         <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />\r
8569                 </configSections>\r
8570                 <log4net>\r
8571                         log4net configuration XML goes here\r
8572                 </log4net>\r
8573             </configuration>\r
8574             </code>\r
8575             </example>\r
8576             <author>Nicko Cadell</author>\r
8577             <author>Gert Driesen</author>\r
8578         </member>\r
8579         <member name="M:log4net.Config.Log4NetConfigurationSectionHandler.#ctor">\r
8580             <summary>\r
8581             Initializes a new instance of the <see cref="T:log4net.Config.Log4NetConfigurationSectionHandler"/> class.\r
8582             </summary>\r
8583             <remarks>\r
8584             <para>\r
8585             Default constructor.\r
8586             </para>\r
8587             </remarks>\r
8588         </member>\r
8589         <member name="M:log4net.Config.Log4NetConfigurationSectionHandler.Create(System.Object,System.Object,System.Xml.XmlNode)">\r
8590             <summary>\r
8591             Parses the configuration section.\r
8592             </summary>\r
8593             <param name="parent">The configuration settings in a corresponding parent configuration section.</param>\r
8594             <param name="configContext">The configuration context when called from the ASP.NET configuration system. Otherwise, this parameter is reserved and is a null reference.</param>\r
8595             <param name="section">The <see cref="T:System.Xml.XmlNode"/> for the log4net section.</param>\r
8596             <returns>The <see cref="T:System.Xml.XmlNode"/> for the log4net section.</returns>\r
8597             <remarks>\r
8598             <para>\r
8599             Returns the <see cref="T:System.Xml.XmlNode"/> containing the configuration data,\r
8600             </para>\r
8601             </remarks>\r
8602         </member>\r
8603         <member name="T:log4net.Config.PluginAttribute">\r
8604             <summary>\r
8605             Assembly level attribute that specifies a plugin to attach to \r
8606             the repository.\r
8607             </summary>\r
8608             <remarks>\r
8609             <para>\r
8610             Specifies the type of a plugin to create and attach to the\r
8611             assembly's repository. The plugin type must implement the\r
8612             <see cref="T:log4net.Plugin.IPlugin"/> interface.\r
8613             </para>\r
8614             </remarks>\r
8615             <author>Nicko Cadell</author>\r
8616             <author>Gert Driesen</author>\r
8617         </member>\r
8618         <member name="T:log4net.Plugin.IPluginFactory">\r
8619             <summary>\r
8620             Interface used to create plugins.\r
8621             </summary>\r
8622             <remarks>\r
8623             <para>\r
8624             Interface used to create  a plugin.\r
8625             </para>\r
8626             </remarks>\r
8627             <author>Nicko Cadell</author>\r
8628             <author>Gert Driesen</author>\r
8629         </member>\r
8630         <member name="M:log4net.Plugin.IPluginFactory.CreatePlugin">\r
8631             <summary>\r
8632             Creates the plugin object.\r
8633             </summary>\r
8634             <returns>the new plugin instance</returns>\r
8635             <remarks>\r
8636             <para>\r
8637             Create and return a new plugin instance.\r
8638             </para>\r
8639             </remarks>\r
8640         </member>\r
8641         <member name="M:log4net.Config.PluginAttribute.#ctor(System.String)">\r
8642             <summary>\r
8643             Initializes a new instance of the <see cref="T:log4net.Config.PluginAttribute"/> class\r
8644             with the specified type.\r
8645             </summary>\r
8646             <param name="typeName">The type name of plugin to create.</param>\r
8647             <remarks>\r
8648             <para>\r
8649             Create the attribute with the plugin type specified.\r
8650             </para>\r
8651             <para>\r
8652             Where possible use the constructor that takes a <see cref="T:System.Type"/>.\r
8653             </para>\r
8654             </remarks>\r
8655         </member>\r
8656         <member name="M:log4net.Config.PluginAttribute.#ctor(System.Type)">\r
8657             <summary>\r
8658             Initializes a new instance of the <see cref="T:log4net.Config.PluginAttribute"/> class\r
8659             with the specified type.\r
8660             </summary>\r
8661             <param name="type">The type of plugin to create.</param>\r
8662             <remarks>\r
8663             <para>\r
8664             Create the attribute with the plugin type specified.\r
8665             </para>\r
8666             </remarks>\r
8667         </member>\r
8668         <member name="M:log4net.Config.PluginAttribute.CreatePlugin">\r
8669             <summary>\r
8670             Creates the plugin object defined by this attribute.\r
8671             </summary>\r
8672             <remarks>\r
8673             <para>\r
8674             Creates the instance of the <see cref="T:log4net.Plugin.IPlugin"/> object as \r
8675             specified by this attribute.\r
8676             </para>\r
8677             </remarks>\r
8678             <returns>The plugin object.</returns>\r
8679         </member>\r
8680         <member name="M:log4net.Config.PluginAttribute.ToString">\r
8681             <summary>\r
8682             Returns a representation of the properties of this object.\r
8683             </summary>\r
8684             <remarks>\r
8685             <para>\r
8686             Overrides base class <see cref="M:System.Object.ToString"/> method to \r
8687             return a representation of the properties of this object.\r
8688             </para>\r
8689             </remarks>\r
8690             <returns>A representation of the properties of this object</returns>\r
8691         </member>\r
8692         <member name="P:log4net.Config.PluginAttribute.Type">\r
8693             <summary>\r
8694             Gets or sets the type for the plugin.\r
8695             </summary>\r
8696             <value>\r
8697             The type for the plugin.\r
8698             </value>\r
8699             <remarks>\r
8700             <para>\r
8701             The type for the plugin.\r
8702             </para>\r
8703             </remarks>\r
8704         </member>\r
8705         <member name="P:log4net.Config.PluginAttribute.TypeName">\r
8706             <summary>\r
8707             Gets or sets the type name for the plugin.\r
8708             </summary>\r
8709             <value>\r
8710             The type name for the plugin.\r
8711             </value>\r
8712             <remarks>\r
8713             <para>\r
8714             The type name for the plugin.\r
8715             </para>\r
8716             <para>\r
8717             Where possible use the <see cref="P:log4net.Config.PluginAttribute.Type"/> property instead.\r
8718             </para>\r
8719             </remarks>\r
8720         </member>\r
8721         <member name="T:log4net.Config.SecurityContextProviderAttribute">\r
8722             <summary>\r
8723             Assembly level attribute to configure the <see cref="T:log4net.Core.SecurityContextProvider"/>.\r
8724             </summary>\r
8725             <remarks>\r
8726             <para>\r
8727             This attribute may only be used at the assembly scope and can only\r
8728             be used once per assembly.\r
8729             </para>\r
8730             <para>\r
8731             Use this attribute to configure the <see cref="T:log4net.Config.XmlConfigurator"/>\r
8732             without calling one of the <see cref="M:log4net.Config.XmlConfigurator.Configure"/>\r
8733             methods.\r
8734             </para>\r
8735             </remarks>\r
8736             <author>Nicko Cadell</author>\r
8737         </member>\r
8738         <member name="M:log4net.Config.SecurityContextProviderAttribute.#ctor(System.Type)">\r
8739             <summary>\r
8740             Construct provider attribute with type specified\r
8741             </summary>\r
8742             <param name="providerType">the type of the provider to use</param>\r
8743             <remarks>\r
8744             <para>\r
8745             The provider specified must subclass the <see cref="T:log4net.Core.SecurityContextProvider"/>\r
8746             class.\r
8747             </para>\r
8748             </remarks>\r
8749         </member>\r
8750         <member name="M:log4net.Config.SecurityContextProviderAttribute.Configure(System.Reflection.Assembly,log4net.Repository.ILoggerRepository)">\r
8751             <summary>\r
8752             Configures the SecurityContextProvider\r
8753             </summary>\r
8754             <param name="sourceAssembly">The assembly that this attribute was defined on.</param>\r
8755             <param name="targetRepository">The repository to configure.</param>\r
8756             <remarks>\r
8757             <para>\r
8758             Creates a provider instance from the <see cref="P:log4net.Config.SecurityContextProviderAttribute.ProviderType"/> specified.\r
8759             Sets this as the default security context provider <see cref="P:log4net.Core.SecurityContextProvider.DefaultProvider"/>.\r
8760             </para>\r
8761             </remarks>\r
8762         </member>\r
8763         <member name="P:log4net.Config.SecurityContextProviderAttribute.ProviderType">\r
8764             <summary>\r
8765             Gets or sets the type of the provider to use.\r
8766             </summary>\r
8767             <value>\r
8768             the type of the provider to use.\r
8769             </value>\r
8770             <remarks>\r
8771             <para>\r
8772             The provider specified must subclass the <see cref="T:log4net.Core.SecurityContextProvider"/>\r
8773             class.\r
8774             </para>\r
8775             </remarks>\r
8776         </member>\r
8777         <member name="T:log4net.Config.XmlConfigurator">\r
8778             <summary>\r
8779             Use this class to initialize the log4net environment using an Xml tree.\r
8780             </summary>\r
8781             <remarks>\r
8782             <para>\r
8783             Configures a <see cref="T:log4net.Repository.ILoggerRepository"/> using an Xml tree.\r
8784             </para>\r
8785             </remarks>\r
8786             <author>Nicko Cadell</author>\r
8787             <author>Gert Driesen</author>\r
8788         </member>\r
8789         <member name="M:log4net.Config.XmlConfigurator.#ctor">\r
8790             <summary>\r
8791             Private constructor\r
8792             </summary>\r
8793         </member>\r
8794         <member name="M:log4net.Config.XmlConfigurator.Configure">\r
8795             <summary>\r
8796             Automatically configures the log4net system based on the \r
8797             application's configuration settings.\r
8798             </summary>\r
8799             <remarks>\r
8800             <para>\r
8801             Each application has a configuration file. This has the\r
8802             same name as the application with '.config' appended.\r
8803             This file is XML and calling this function prompts the\r
8804             configurator to look in that file for a section called\r
8805             <c>log4net</c> that contains the configuration data.\r
8806             </para>\r
8807             <para>\r
8808             To use this method to configure log4net you must specify \r
8809             the <see cref="T:log4net.Config.Log4NetConfigurationSectionHandler"/> section\r
8810             handler for the <c>log4net</c> configuration section. See the\r
8811             <see cref="T:log4net.Config.Log4NetConfigurationSectionHandler"/> for an example.\r
8812             </para>\r
8813             </remarks>\r
8814             <seealso cref="T:log4net.Config.Log4NetConfigurationSectionHandler"/>\r
8815         </member>\r
8816         <member name="M:log4net.Config.XmlConfigurator.Configure(log4net.Repository.ILoggerRepository)">\r
8817             <summary>\r
8818             Automatically configures the <see cref="T:log4net.Repository.ILoggerRepository"/> using settings\r
8819             stored in the application's configuration file.\r
8820             </summary>\r
8821             <remarks>\r
8822             <para>\r
8823             Each application has a configuration file. This has the\r
8824             same name as the application with '.config' appended.\r
8825             This file is XML and calling this function prompts the\r
8826             configurator to look in that file for a section called\r
8827             <c>log4net</c> that contains the configuration data.\r
8828             </para>\r
8829             <para>\r
8830             To use this method to configure log4net you must specify \r
8831             the <see cref="T:log4net.Config.Log4NetConfigurationSectionHandler"/> section\r
8832             handler for the <c>log4net</c> configuration section. See the\r
8833             <see cref="T:log4net.Config.Log4NetConfigurationSectionHandler"/> for an example.\r
8834             </para>\r
8835             </remarks>\r
8836             <param name="repository">The repository to configure.</param>\r
8837         </member>\r
8838         <member name="M:log4net.Config.XmlConfigurator.Configure(System.Xml.XmlElement)">\r
8839             <summary>\r
8840             Configures log4net using a <c>log4net</c> element\r
8841             </summary>\r
8842             <remarks>\r
8843             <para>\r
8844             Loads the log4net configuration from the XML element\r
8845             supplied as <paramref name="element"/>.\r
8846             </para>\r
8847             </remarks>\r
8848             <param name="element">The element to parse.</param>\r
8849         </member>\r
8850         <member name="M:log4net.Config.XmlConfigurator.Configure(log4net.Repository.ILoggerRepository,System.Xml.XmlElement)">\r
8851             <summary>\r
8852             Configures the <see cref="T:log4net.Repository.ILoggerRepository"/> using the specified XML \r
8853             element.\r
8854             </summary>\r
8855             <remarks>\r
8856             Loads the log4net configuration from the XML element\r
8857             supplied as <paramref name="element"/>.\r
8858             </remarks>\r
8859             <param name="repository">The repository to configure.</param>\r
8860             <param name="element">The element to parse.</param>\r
8861         </member>\r
8862         <member name="M:log4net.Config.XmlConfigurator.Configure(System.IO.FileInfo)">\r
8863             <summary>\r
8864             Configures log4net using the specified configuration file.\r
8865             </summary>\r
8866             <param name="configFile">The XML file to load the configuration from.</param>\r
8867             <remarks>\r
8868             <para>\r
8869             The configuration file must be valid XML. It must contain\r
8870             at least one element called <c>log4net</c> that holds\r
8871             the log4net configuration data.\r
8872             </para>\r
8873             <para>\r
8874             The log4net configuration file can possible be specified in the application's\r
8875             configuration file (either <c>MyAppName.exe.config</c> for a\r
8876             normal application on <c>Web.config</c> for an ASP.NET application).\r
8877             </para>\r
8878             <para>\r
8879             The first element matching <c>&lt;configuration&gt;</c> will be read as the \r
8880             configuration. If this file is also a .NET .config file then you must specify \r
8881             a configuration section for the <c>log4net</c> element otherwise .NET will \r
8882             complain. Set the type for the section handler to <see cref="T:System.Configuration.IgnoreSectionHandler"/>, for example:\r
8883             <code lang="XML" escaped="true">\r
8884             <configSections>\r
8885                 <section name="log4net" type="System.Configuration.IgnoreSectionHandler"/>\r
8886             </configSections>\r
8887             </code>\r
8888             </para>\r
8889             <example>\r
8890             The following example configures log4net using a configuration file, of which the \r
8891             location is stored in the application's configuration file :\r
8892             </example>\r
8893             <code lang="C#">\r
8894             using log4net.Config;\r
8895             using System.IO;\r
8896             using System.Configuration;\r
8897             \r
8898             ...\r
8899             \r
8900             XmlConfigurator.Configure(new FileInfo(ConfigurationSettings.AppSettings["log4net-config-file"]));\r
8901             </code>\r
8902             <para>\r
8903             In the <c>.config</c> file, the path to the log4net can be specified like this :\r
8904             </para>\r
8905             <code lang="XML" escaped="true">\r
8906             <configuration>\r
8907                 <appSettings>\r
8908                         <add key="log4net-config-file" value="log.config"/>\r
8909                 </appSettings>\r
8910             </configuration>\r
8911             </code>\r
8912             </remarks>\r
8913         </member>\r
8914         <member name="M:log4net.Config.XmlConfigurator.Configure(System.Uri)">\r
8915             <summary>\r
8916             Configures log4net using the specified configuration URI.\r
8917             </summary>\r
8918             <param name="configUri">A URI to load the XML configuration from.</param>\r
8919             <remarks>\r
8920             <para>\r
8921             The configuration data must be valid XML. It must contain\r
8922             at least one element called <c>log4net</c> that holds\r
8923             the log4net configuration data.\r
8924             </para>\r
8925             <para>\r
8926             The <see cref="T:System.Net.WebRequest"/> must support the URI scheme specified.\r
8927             </para>\r
8928             </remarks>\r
8929         </member>\r
8930         <member name="M:log4net.Config.XmlConfigurator.Configure(System.IO.Stream)">\r
8931             <summary>\r
8932             Configures log4net using the specified configuration data stream.\r
8933             </summary>\r
8934             <param name="configStream">A stream to load the XML configuration from.</param>\r
8935             <remarks>\r
8936             <para>\r
8937             The configuration data must be valid XML. It must contain\r
8938             at least one element called <c>log4net</c> that holds\r
8939             the log4net configuration data.\r
8940             </para>\r
8941             <para>\r
8942             Note that this method will NOT close the stream parameter.\r
8943             </para>\r
8944             </remarks>\r
8945         </member>\r
8946         <member name="M:log4net.Config.XmlConfigurator.Configure(log4net.Repository.ILoggerRepository,System.IO.FileInfo)">\r
8947             <summary>\r
8948             Configures the <see cref="T:log4net.Repository.ILoggerRepository"/> using the specified configuration \r
8949             file.\r
8950             </summary>\r
8951             <param name="repository">The repository to configure.</param>\r
8952             <param name="configFile">The XML file to load the configuration from.</param>\r
8953             <remarks>\r
8954             <para>\r
8955             The configuration file must be valid XML. It must contain\r
8956             at least one element called <c>log4net</c> that holds\r
8957             the configuration data.\r
8958             </para>\r
8959             <para>\r
8960             The log4net configuration file can possible be specified in the application's\r
8961             configuration file (either <c>MyAppName.exe.config</c> for a\r
8962             normal application on <c>Web.config</c> for an ASP.NET application).\r
8963             </para>\r
8964             <para>\r
8965             The first element matching <c>&lt;configuration&gt;</c> will be read as the \r
8966             configuration. If this file is also a .NET .config file then you must specify \r
8967             a configuration section for the <c>log4net</c> element otherwise .NET will \r
8968             complain. Set the type for the section handler to <see cref="T:System.Configuration.IgnoreSectionHandler"/>, for example:\r
8969             <code lang="XML" escaped="true">\r
8970             <configSections>\r
8971                 <section name="log4net" type="System.Configuration.IgnoreSectionHandler"/>\r
8972             </configSections>\r
8973             </code>\r
8974             </para>\r
8975             <example>\r
8976             The following example configures log4net using a configuration file, of which the \r
8977             location is stored in the application's configuration file :\r
8978             </example>\r
8979             <code lang="C#">\r
8980             using log4net.Config;\r
8981             using System.IO;\r
8982             using System.Configuration;\r
8983             \r
8984             ...\r
8985             \r
8986             XmlConfigurator.Configure(new FileInfo(ConfigurationSettings.AppSettings["log4net-config-file"]));\r
8987             </code>\r
8988             <para>\r
8989             In the <c>.config</c> file, the path to the log4net can be specified like this :\r
8990             </para>\r
8991             <code lang="XML" escaped="true">\r
8992             <configuration>\r
8993                 <appSettings>\r
8994                         <add key="log4net-config-file" value="log.config"/>\r
8995                 </appSettings>\r
8996             </configuration>\r
8997             </code>\r
8998             </remarks>\r
8999         </member>\r
9000         <member name="M:log4net.Config.XmlConfigurator.Configure(log4net.Repository.ILoggerRepository,System.Uri)">\r
9001             <summary>\r
9002             Configures the <see cref="T:log4net.Repository.ILoggerRepository"/> using the specified configuration \r
9003             URI.\r
9004             </summary>\r
9005             <param name="repository">The repository to configure.</param>\r
9006             <param name="configUri">A URI to load the XML configuration from.</param>\r
9007             <remarks>\r
9008             <para>\r
9009             The configuration data must be valid XML. It must contain\r
9010             at least one element called <c>log4net</c> that holds\r
9011             the configuration data.\r
9012             </para>\r
9013             <para>\r
9014             The <see cref="T:System.Net.WebRequest"/> must support the URI scheme specified.\r
9015             </para>\r
9016             </remarks>\r
9017         </member>\r
9018         <member name="M:log4net.Config.XmlConfigurator.Configure(log4net.Repository.ILoggerRepository,System.IO.Stream)">\r
9019             <summary>\r
9020             Configures the <see cref="T:log4net.Repository.ILoggerRepository"/> using the specified configuration \r
9021             file.\r
9022             </summary>\r
9023             <param name="repository">The repository to configure.</param>\r
9024             <param name="configStream">The stream to load the XML configuration from.</param>\r
9025             <remarks>\r
9026             <para>\r
9027             The configuration data must be valid XML. It must contain\r
9028             at least one element called <c>log4net</c> that holds\r
9029             the configuration data.\r
9030             </para>\r
9031             <para>\r
9032             Note that this method will NOT close the stream parameter.\r
9033             </para>\r
9034             </remarks>\r
9035         </member>\r
9036         <member name="M:log4net.Config.XmlConfigurator.ConfigureAndWatch(System.IO.FileInfo)">\r
9037             <summary>\r
9038             Configures log4net using the file specified, monitors the file for changes \r
9039             and reloads the configuration if a change is detected.\r
9040             </summary>\r
9041             <param name="configFile">The XML file to load the configuration from.</param>\r
9042             <remarks>\r
9043             <para>\r
9044             The configuration file must be valid XML. It must contain\r
9045             at least one element called <c>log4net</c> that holds\r
9046             the configuration data.\r
9047             </para>\r
9048             <para>\r
9049             The configuration file will be monitored using a <see cref="T:System.IO.FileSystemWatcher"/>\r
9050             and depends on the behavior of that class.\r
9051             </para>\r
9052             <para>\r
9053             For more information on how to configure log4net using\r
9054             a separate configuration file, see <see cref="M:log4net.Config.XmlConfigurator.Configure(System.IO.FileInfo)"/>.\r
9055             </para>\r
9056             </remarks>\r
9057             <seealso cref="M:log4net.Config.XmlConfigurator.Configure(System.IO.FileInfo)"/>\r
9058         </member>\r
9059         <member name="M:log4net.Config.XmlConfigurator.ConfigureAndWatch(log4net.Repository.ILoggerRepository,System.IO.FileInfo)">\r
9060             <summary>\r
9061             Configures the <see cref="T:log4net.Repository.ILoggerRepository"/> using the file specified, \r
9062             monitors the file for changes and reloads the configuration if a change \r
9063             is detected.\r
9064             </summary>\r
9065             <param name="repository">The repository to configure.</param>\r
9066             <param name="configFile">The XML file to load the configuration from.</param>\r
9067             <remarks>\r
9068             <para>\r
9069             The configuration file must be valid XML. It must contain\r
9070             at least one element called <c>log4net</c> that holds\r
9071             the configuration data.\r
9072             </para>\r
9073             <para>\r
9074             The configuration file will be monitored using a <see cref="T:System.IO.FileSystemWatcher"/>\r
9075             and depends on the behavior of that class.\r
9076             </para>\r
9077             <para>\r
9078             For more information on how to configure log4net using\r
9079             a separate configuration file, see <see cref="M:log4net.Config.XmlConfigurator.Configure(System.IO.FileInfo)"/>.\r
9080             </para>\r
9081             </remarks>\r
9082             <seealso cref="M:log4net.Config.XmlConfigurator.Configure(System.IO.FileInfo)"/>\r
9083         </member>\r
9084         <member name="M:log4net.Config.XmlConfigurator.ConfigureFromXml(log4net.Repository.ILoggerRepository,System.Xml.XmlElement)">\r
9085             <summary>\r
9086             Configures the specified repository using a <c>log4net</c> element.\r
9087             </summary>\r
9088             <param name="repository">The hierarchy to configure.</param>\r
9089             <param name="element">The element to parse.</param>\r
9090             <remarks>\r
9091             <para>\r
9092             Loads the log4net configuration from the XML element\r
9093             supplied as <paramref name="element"/>.\r
9094             </para>\r
9095             <para>\r
9096             This method is ultimately called by one of the Configure methods \r
9097             to load the configuration from an <see cref="T:System.Xml.XmlElement"/>.\r
9098             </para>\r
9099             </remarks>\r
9100         </member>\r
9101         <member name="T:log4net.Config.XmlConfigurator.ConfigureAndWatchHandler">\r
9102             <summary>\r
9103             Class used to watch config files.\r
9104             </summary>\r
9105             <remarks>\r
9106             <para>\r
9107             Uses the <see cref="T:System.IO.FileSystemWatcher"/> to monitor\r
9108             changes to a specified file. Because multiple change notifications\r
9109             may be raised when the file is modified, a timer is used to\r
9110             compress the notifications into a single event. The timer\r
9111             waits for <see cref="F:log4net.Config.XmlConfigurator.ConfigureAndWatchHandler.TimeoutMillis"/> time before delivering\r
9112             the event notification. If any further <see cref="T:System.IO.FileSystemWatcher"/>\r
9113             change notifications arrive while the timer is waiting it\r
9114             is reset and waits again for <see cref="F:log4net.Config.XmlConfigurator.ConfigureAndWatchHandler.TimeoutMillis"/> to\r
9115             elapse.\r
9116             </para>\r
9117             </remarks>\r
9118         </member>\r
9119         <member name="F:log4net.Config.XmlConfigurator.ConfigureAndWatchHandler.TimeoutMillis">\r
9120             <summary>\r
9121             The default amount of time to wait after receiving notification\r
9122             before reloading the config file.\r
9123             </summary>\r
9124         </member>\r
9125         <member name="M:log4net.Config.XmlConfigurator.ConfigureAndWatchHandler.StartWatching(log4net.Repository.ILoggerRepository,System.IO.FileInfo)">\r
9126             <summary>\r
9127             Watch a specified config file used to configure a repository\r
9128             </summary>\r
9129             <param name="repository">The repository to configure.</param>\r
9130             <param name="configFile">The configuration file to watch.</param>\r
9131             <remarks>\r
9132             <para>\r
9133             Watch a specified config file used to configure a repository\r
9134             </para>\r
9135             </remarks>\r
9136         </member>\r
9137         <member name="F:log4net.Config.XmlConfigurator.ConfigureAndWatchHandler.m_configFile">\r
9138             <summary>\r
9139             Holds the FileInfo used to configure the XmlConfigurator\r
9140             </summary>\r
9141         </member>\r
9142         <member name="F:log4net.Config.XmlConfigurator.ConfigureAndWatchHandler.m_repository">\r
9143             <summary>\r
9144             Holds the repository being configured.\r
9145             </summary>\r
9146         </member>\r
9147         <member name="F:log4net.Config.XmlConfigurator.ConfigureAndWatchHandler.m_timer">\r
9148             <summary>\r
9149             The timer used to compress the notification events.\r
9150             </summary>\r
9151         </member>\r
9152         <member name="M:log4net.Config.XmlConfigurator.ConfigureAndWatchHandler.#ctor(log4net.Repository.ILoggerRepository,System.IO.FileInfo)">\r
9153             <summary>\r
9154             Initializes a new instance of the <see cref="T:log4net.Config.XmlConfigurator.ConfigureAndWatchHandler"/> class.\r
9155             </summary>\r
9156             <param name="repository">The repository to configure.</param>\r
9157             <param name="configFile">The configuration file to watch.</param>\r
9158             <remarks>\r
9159             <para>\r
9160             Initializes a new instance of the <see cref="T:log4net.Config.XmlConfigurator.ConfigureAndWatchHandler"/> class.\r
9161             </para>\r
9162             </remarks>\r
9163         </member>\r
9164         <member name="M:log4net.Config.XmlConfigurator.ConfigureAndWatchHandler.ConfigureAndWatchHandler_OnChanged(System.Object,System.IO.FileSystemEventArgs)">\r
9165             <summary>\r
9166             Event handler used by <see cref="T:log4net.Config.XmlConfigurator.ConfigureAndWatchHandler"/>.\r
9167             </summary>\r
9168             <param name="source">The <see cref="T:System.IO.FileSystemWatcher"/> firing the event.</param>\r
9169             <param name="e">The argument indicates the file that caused the event to be fired.</param>\r
9170             <remarks>\r
9171             <para>\r
9172             This handler reloads the configuration from the file when the event is fired.\r
9173             </para>\r
9174             </remarks>\r
9175         </member>\r
9176         <member name="M:log4net.Config.XmlConfigurator.ConfigureAndWatchHandler.ConfigureAndWatchHandler_OnRenamed(System.Object,System.IO.RenamedEventArgs)">\r
9177             <summary>\r
9178             Event handler used by <see cref="T:log4net.Config.XmlConfigurator.ConfigureAndWatchHandler"/>.\r
9179             </summary>\r
9180             <param name="source">The <see cref="T:System.IO.FileSystemWatcher"/> firing the event.</param>\r
9181             <param name="e">The argument indicates the file that caused the event to be fired.</param>\r
9182             <remarks>\r
9183             <para>\r
9184             This handler reloads the configuration from the file when the event is fired.\r
9185             </para>\r
9186             </remarks>\r
9187         </member>\r
9188         <member name="M:log4net.Config.XmlConfigurator.ConfigureAndWatchHandler.OnWatchedFileChange(System.Object)">\r
9189             <summary>\r
9190             Called by the timer when the configuration has been updated.\r
9191             </summary>\r
9192             <param name="state">null</param>\r
9193         </member>\r
9194         <member name="T:log4net.Core.CompactRepositorySelector">\r
9195             <summary>\r
9196             The implementation of the <see cref="T:log4net.Core.IRepositorySelector"/> interface suitable\r
9197             for use with the compact framework\r
9198             </summary>\r
9199             <remarks>\r
9200             <para>\r
9201             This <see cref="T:log4net.Core.IRepositorySelector"/> implementation is a simple\r
9202             mapping between repository name and <see cref="T:log4net.Repository.ILoggerRepository"/>\r
9203             object.\r
9204             </para>\r
9205             <para>\r
9206             The .NET Compact Framework 1.0 does not support retrieving assembly\r
9207             level attributes therefore unlike the <c>DefaultRepositorySelector</c>\r
9208             this selector does not examine the calling assembly for attributes.\r
9209             </para>\r
9210             </remarks>\r
9211             <author>Nicko Cadell</author>\r
9212         </member>\r
9213         <member name="T:log4net.Core.IRepositorySelector">\r
9214             <summary>\r
9215             Interface used by the <see cref="T:log4net.LogManager"/> to select the <see cref="T:log4net.Repository.ILoggerRepository"/>.\r
9216             </summary>\r
9217             <remarks>\r
9218             <para>\r
9219             The <see cref="T:log4net.LogManager"/> uses a <see cref="T:log4net.Core.IRepositorySelector"/> \r
9220             to specify the policy for selecting the correct <see cref="T:log4net.Repository.ILoggerRepository"/> \r
9221             to return to the caller.\r
9222             </para>\r
9223             </remarks>\r
9224             <author>Nicko Cadell</author>\r
9225             <author>Gert Driesen</author>\r
9226         </member>\r
9227         <member name="M:log4net.Core.IRepositorySelector.GetRepository(System.Reflection.Assembly)">\r
9228             <summary>\r
9229             Gets the <see cref="T:log4net.Repository.ILoggerRepository"/> for the specified assembly.\r
9230             </summary>\r
9231             <param name="assembly">The assembly to use to lookup to the <see cref="T:log4net.Repository.ILoggerRepository"/></param>\r
9232             <returns>The <see cref="T:log4net.Repository.ILoggerRepository"/> for the assembly.</returns>\r
9233             <remarks>\r
9234             <para>\r
9235             Gets the <see cref="T:log4net.Repository.ILoggerRepository"/> for the specified assembly.\r
9236             </para>\r
9237             <para>\r
9238             How the association between <see cref="T:System.Reflection.Assembly"/> and <see cref="T:log4net.Repository.ILoggerRepository"/>\r
9239             is made is not defined. The implementation may choose any method for\r
9240             this association. The results of this method must be repeatable, i.e.\r
9241             when called again with the same arguments the result must be the\r
9242             save value.\r
9243             </para>\r
9244             </remarks>\r
9245         </member>\r
9246         <member name="M:log4net.Core.IRepositorySelector.GetRepository(System.String)">\r
9247             <summary>\r
9248             Gets the named <see cref="T:log4net.Repository.ILoggerRepository"/>.\r
9249             </summary>\r
9250             <param name="repositoryName">The name to use to lookup to the <see cref="T:log4net.Repository.ILoggerRepository"/>.</param>\r
9251             <returns>The named <see cref="T:log4net.Repository.ILoggerRepository"/></returns>\r
9252             <remarks>\r
9253             Lookup a named <see cref="T:log4net.Repository.ILoggerRepository"/>. This is the repository created by\r
9254             calling <see cref="M:log4net.Core.IRepositorySelector.CreateRepository(System.String,System.Type)"/>.\r
9255             </remarks>\r
9256         </member>\r
9257         <member name="M:log4net.Core.IRepositorySelector.CreateRepository(System.Reflection.Assembly,System.Type)">\r
9258             <summary>\r
9259             Creates a new repository for the assembly specified.\r
9260             </summary>\r
9261             <param name="assembly">The assembly to use to create the domain to associate with the <see cref="T:log4net.Repository.ILoggerRepository"/>.</param>\r
9262             <param name="repositoryType">The type of repository to create, must implement <see cref="T:log4net.Repository.ILoggerRepository"/>.</param>\r
9263             <returns>The repository created.</returns>\r
9264             <remarks>\r
9265             <para>\r
9266             The <see cref="T:log4net.Repository.ILoggerRepository"/> created will be associated with the domain\r
9267             specified such that a call to <see cref="M:log4net.Core.IRepositorySelector.GetRepository(System.Reflection.Assembly)"/> with the\r
9268             same assembly specified will return the same repository instance.\r
9269             </para>\r
9270             <para>\r
9271             How the association between <see cref="T:System.Reflection.Assembly"/> and <see cref="T:log4net.Repository.ILoggerRepository"/>\r
9272             is made is not defined. The implementation may choose any method for\r
9273             this association.\r
9274             </para>\r
9275             </remarks>\r
9276         </member>\r
9277         <member name="M:log4net.Core.IRepositorySelector.CreateRepository(System.String,System.Type)">\r
9278             <summary>\r
9279             Creates a new repository with the name specified.\r
9280             </summary>\r
9281             <param name="repositoryName">The name to associate with the <see cref="T:log4net.Repository.ILoggerRepository"/>.</param>\r
9282             <param name="repositoryType">The type of repository to create, must implement <see cref="T:log4net.Repository.ILoggerRepository"/>.</param>\r
9283             <returns>The repository created.</returns>\r
9284             <remarks>\r
9285             <para>\r
9286             The <see cref="T:log4net.Repository.ILoggerRepository"/> created will be associated with the name\r
9287             specified such that a call to <see cref="M:log4net.Core.IRepositorySelector.GetRepository(System.String)"/> with the\r
9288             same name will return the same repository instance.\r
9289             </para>\r
9290             </remarks>\r
9291         </member>\r
9292         <member name="M:log4net.Core.IRepositorySelector.ExistsRepository(System.String)">\r
9293             <summary>\r
9294             Test if a named repository exists\r
9295             </summary>\r
9296             <param name="repositoryName">the named repository to check</param>\r
9297             <returns><c>true</c> if the repository exists</returns>\r
9298             <remarks>\r
9299             <para>\r
9300             Test if a named repository exists. Use <see cref="M:log4net.Core.IRepositorySelector.CreateRepository(System.Reflection.Assembly,System.Type)"/>\r
9301             to create a new repository and <see cref="M:log4net.Core.IRepositorySelector.GetRepository(System.Reflection.Assembly)"/> to retrieve \r
9302             a repository.\r
9303             </para>\r
9304             </remarks>\r
9305         </member>\r
9306         <member name="M:log4net.Core.IRepositorySelector.GetAllRepositories">\r
9307             <summary>\r
9308             Gets an array of all currently defined repositories.\r
9309             </summary>\r
9310             <returns>\r
9311             An array of the <see cref="T:log4net.Repository.ILoggerRepository"/> instances created by \r
9312             this <see cref="T:log4net.Core.IRepositorySelector"/>.</returns>\r
9313             <remarks>\r
9314             <para>\r
9315             Gets an array of all of the repositories created by this selector.\r
9316             </para>\r
9317             </remarks>\r
9318         </member>\r
9319         <member name="E:log4net.Core.IRepositorySelector.LoggerRepositoryCreatedEvent">\r
9320             <summary>\r
9321             Event to notify that a logger repository has been created.\r
9322             </summary>\r
9323             <value>\r
9324             Event to notify that a logger repository has been created.\r
9325             </value>\r
9326             <remarks>\r
9327             <para>\r
9328             Event raised when a new repository is created.\r
9329             The event source will be this selector. The event args will\r
9330             be a <see cref="T:log4net.Core.LoggerRepositoryCreationEventArgs"/> which\r
9331             holds the newly created <see cref="T:log4net.Repository.ILoggerRepository"/>.\r
9332             </para>\r
9333             </remarks>\r
9334         </member>\r
9335         <member name="M:log4net.Core.CompactRepositorySelector.#ctor(System.Type)">\r
9336             <summary>\r
9337             Create a new repository selector\r
9338             </summary>\r
9339             <param name="defaultRepositoryType">the type of the repositories to create, must implement <see cref="T:log4net.Repository.ILoggerRepository"/></param>\r
9340             <remarks>\r
9341             <para>\r
9342             Create an new compact repository selector.\r
9343             The default type for repositories must be specified,\r
9344             an appropriate value would be <see cref="T:log4net.Repository.Hierarchy.Hierarchy"/>.\r
9345             </para>\r
9346             </remarks>\r
9347             <exception cref="T:System.ArgumentNullException">throw if <paramref name="defaultRepositoryType"/> is null</exception>\r
9348             <exception cref="T:System.ArgumentOutOfRangeException">throw if <paramref name="defaultRepositoryType"/> does not implement <see cref="T:log4net.Repository.ILoggerRepository"/></exception>\r
9349         </member>\r
9350         <member name="M:log4net.Core.CompactRepositorySelector.GetRepository(System.Reflection.Assembly)">\r
9351             <summary>\r
9352             Get the <see cref="T:log4net.Repository.ILoggerRepository"/> for the specified assembly\r
9353             </summary>\r
9354             <param name="assembly">not used</param>\r
9355             <returns>The default <see cref="T:log4net.Repository.ILoggerRepository"/></returns>\r
9356             <remarks>\r
9357             <para>\r
9358             The <paramref name="assembly"/> argument is not used. This selector does not create a\r
9359             separate repository for each assembly. \r
9360             </para>\r
9361             <para>\r
9362             As a named repository is not specified the default repository is \r
9363             returned. The default repository is named <c>log4net-default-repository</c>.\r
9364             </para>\r
9365             </remarks>\r
9366         </member>\r
9367         <member name="M:log4net.Core.CompactRepositorySelector.GetRepository(System.String)">\r
9368             <summary>\r
9369             Get the named <see cref="T:log4net.Repository.ILoggerRepository"/>\r
9370             </summary>\r
9371             <param name="repositoryName">the name of the repository to lookup</param>\r
9372             <returns>The named <see cref="T:log4net.Repository.ILoggerRepository"/></returns>\r
9373             <remarks>\r
9374             <para>\r
9375             Get the named <see cref="T:log4net.Repository.ILoggerRepository"/>. The default \r
9376             repository is <c>log4net-default-repository</c>. Other repositories \r
9377             must be created using the <see cref="M:log4net.Core.CompactRepositorySelector.CreateRepository(System.String,System.Type)"/>.\r
9378             If the named repository does not exist an exception is thrown.\r
9379             </para>\r
9380             </remarks>\r
9381             <exception cref="T:System.ArgumentNullException">throw if <paramref name="repositoryName"/> is null</exception>\r
9382             <exception cref="T:log4net.Core.LogException">throw if the <paramref name="repositoryName"/> does not exist</exception>\r
9383         </member>\r
9384         <member name="M:log4net.Core.CompactRepositorySelector.CreateRepository(System.Reflection.Assembly,System.Type)">\r
9385             <summary>\r
9386             Create a new repository for the assembly specified \r
9387             </summary>\r
9388             <param name="assembly">not used</param>\r
9389             <param name="repositoryType">the type of repository to create, must implement <see cref="T:log4net.Repository.ILoggerRepository"/></param>\r
9390             <returns>the repository created</returns>\r
9391             <remarks>\r
9392             <para>\r
9393             The <paramref name="assembly"/> argument is not used. This selector does not create a\r
9394             separate repository for each assembly. \r
9395             </para>\r
9396             <para>\r
9397             If the <paramref name="repositoryType"/> is <c>null</c> then the\r
9398             default repository type specified to the constructor is used.\r
9399             </para>\r
9400             <para>\r
9401             As a named repository is not specified the default repository is \r
9402             returned. The default repository is named <c>log4net-default-repository</c>.\r
9403             </para>\r
9404             </remarks>\r
9405         </member>\r
9406         <member name="M:log4net.Core.CompactRepositorySelector.CreateRepository(System.String,System.Type)">\r
9407             <summary>\r
9408             Create a new repository for the repository specified\r
9409             </summary>\r
9410             <param name="repositoryName">the repository to associate with the <see cref="T:log4net.Repository.ILoggerRepository"/></param>\r
9411             <param name="repositoryType">the type of repository to create, must implement <see cref="T:log4net.Repository.ILoggerRepository"/>.\r
9412             If this param is null then the default repository type is used.</param>\r
9413             <returns>the repository created</returns>\r
9414             <remarks>\r
9415             <para>\r
9416             The <see cref="T:log4net.Repository.ILoggerRepository"/> created will be associated with the repository\r
9417             specified such that a call to <see cref="M:log4net.Core.CompactRepositorySelector.GetRepository(System.String)"/> with the\r
9418             same repository specified will return the same repository instance.\r
9419             </para>\r
9420             <para>\r
9421             If the named repository already exists an exception will be thrown.\r
9422             </para>\r
9423             <para>\r
9424             If <paramref name="repositoryType"/> is <c>null</c> then the default \r
9425             repository type specified to the constructor is used.\r
9426             </para>\r
9427             </remarks>\r
9428             <exception cref="T:System.ArgumentNullException">throw if <paramref name="repositoryName"/> is null</exception>\r
9429             <exception cref="T:log4net.Core.LogException">throw if the <paramref name="repositoryName"/> already exists</exception>\r
9430         </member>\r
9431         <member name="M:log4net.Core.CompactRepositorySelector.ExistsRepository(System.String)">\r
9432             <summary>\r
9433             Test if a named repository exists\r
9434             </summary>\r
9435             <param name="repositoryName">the named repository to check</param>\r
9436             <returns><c>true</c> if the repository exists</returns>\r
9437             <remarks>\r
9438             <para>\r
9439             Test if a named repository exists. Use <see cref="M:log4net.Core.CompactRepositorySelector.CreateRepository(System.String,System.Type)"/>\r
9440             to create a new repository and <see cref="M:log4net.Core.CompactRepositorySelector.GetRepository(System.String)"/> to retrieve \r
9441             a repository.\r
9442             </para>\r
9443             </remarks>\r
9444         </member>\r
9445         <member name="M:log4net.Core.CompactRepositorySelector.GetAllRepositories">\r
9446             <summary>\r
9447             Gets a list of <see cref="T:log4net.Repository.ILoggerRepository"/> objects\r
9448             </summary>\r
9449             <returns>an array of all known <see cref="T:log4net.Repository.ILoggerRepository"/> objects</returns>\r
9450             <remarks>\r
9451             <para>\r
9452             Gets an array of all of the repositories created by this selector.\r
9453             </para>\r
9454             </remarks>\r
9455         </member>\r
9456         <member name="M:log4net.Core.CompactRepositorySelector.OnLoggerRepositoryCreatedEvent(log4net.Repository.ILoggerRepository)">\r
9457             <summary>\r
9458             Notify the registered listeners that the repository has been created\r
9459             </summary>\r
9460             <param name="repository">The repository that has been created</param>\r
9461             <remarks>\r
9462             <para>\r
9463             Raises the <event cref="E:log4net.Core.CompactRepositorySelector.LoggerRepositoryCreatedEvent">LoggerRepositoryCreatedEvent</event>\r
9464             event.\r
9465             </para>\r
9466             </remarks>\r
9467         </member>\r
9468         <member name="E:log4net.Core.CompactRepositorySelector.LoggerRepositoryCreatedEvent">\r
9469             <summary>\r
9470             Event to notify that a logger repository has been created.\r
9471             </summary>\r
9472             <value>\r
9473             Event to notify that a logger repository has been created.\r
9474             </value>\r
9475             <remarks>\r
9476             <para>\r
9477             Event raised when a new repository is created.\r
9478             The event source will be this selector. The event args will\r
9479             be a <see cref="T:log4net.Core.LoggerRepositoryCreationEventArgs"/> which\r
9480             holds the newly created <see cref="T:log4net.Repository.ILoggerRepository"/>.\r
9481             </para>\r
9482             </remarks>\r
9483         </member>\r
9484         <member name="T:log4net.Core.DefaultRepositorySelector">\r
9485             <summary>\r
9486             The default implementation of the <see cref="T:log4net.Core.IRepositorySelector"/> interface.\r
9487             </summary>\r
9488             <remarks>\r
9489             <para>\r
9490             Uses attributes defined on the calling assembly to determine how to\r
9491             configure the hierarchy for the repository.\r
9492             </para>\r
9493             </remarks>\r
9494             <author>Nicko Cadell</author>\r
9495             <author>Gert Driesen</author>\r
9496         </member>\r
9497         <member name="M:log4net.Core.DefaultRepositorySelector.#ctor(System.Type)">\r
9498             <summary>\r
9499             Creates a new repository selector.\r
9500             </summary>\r
9501             <param name="defaultRepositoryType">The type of the repositories to create, must implement <see cref="T:log4net.Repository.ILoggerRepository"/></param>\r
9502             <remarks>\r
9503             <para>\r
9504             Create an new repository selector.\r
9505             The default type for repositories must be specified,\r
9506             an appropriate value would be <see cref="T:log4net.Repository.Hierarchy.Hierarchy"/>.\r
9507             </para>\r
9508             </remarks>\r
9509             <exception cref="T:System.ArgumentNullException"><paramref name="defaultRepositoryType"/> is <see langword="null"/>.</exception>\r
9510             <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="defaultRepositoryType"/> does not implement <see cref="T:log4net.Repository.ILoggerRepository"/>.</exception>\r
9511         </member>\r
9512         <member name="M:log4net.Core.DefaultRepositorySelector.GetRepository(System.Reflection.Assembly)">\r
9513             <summary>\r
9514             Gets the <see cref="T:log4net.Repository.ILoggerRepository"/> for the specified assembly.\r
9515             </summary>\r
9516             <param name="repositoryAssembly">The assembly use to lookup the <see cref="T:log4net.Repository.ILoggerRepository"/>.</param>\r
9517             <remarks>\r
9518             <para>\r
9519             The type of the <see cref="T:log4net.Repository.ILoggerRepository"/> created and the repository \r
9520             to create can be overridden by specifying the <see cref="T:log4net.Config.RepositoryAttribute"/> \r
9521             attribute on the <paramref name="repositoryAssembly"/>.\r
9522             </para>\r
9523             <para>\r
9524             The default values are to use the <see cref="T:log4net.Repository.Hierarchy.Hierarchy"/> \r
9525             implementation of the <see cref="T:log4net.Repository.ILoggerRepository"/> interface and to use the\r
9526             <see cref="P:System.Reflection.AssemblyName.Name"/> as the name of the repository.\r
9527             </para>\r
9528             <para>\r
9529             The <see cref="T:log4net.Repository.ILoggerRepository"/> created will be automatically configured using \r
9530             any <see cref="T:log4net.Config.ConfiguratorAttribute"/> attributes defined on\r
9531             the <paramref name="repositoryAssembly"/>.\r
9532             </para>\r
9533             </remarks>\r
9534             <returns>The <see cref="T:log4net.Repository.ILoggerRepository"/> for the assembly</returns>\r
9535             <exception cref="T:System.ArgumentNullException"><paramref name="repositoryAssembly"/> is <see langword="null"/>.</exception>\r
9536         </member>\r
9537         <member name="M:log4net.Core.DefaultRepositorySelector.GetRepository(System.String)">\r
9538             <summary>\r
9539             Gets the <see cref="T:log4net.Repository.ILoggerRepository"/> for the specified repository.\r
9540             </summary>\r
9541             <param name="repositoryName">The repository to use to lookup the <see cref="T:log4net.Repository.ILoggerRepository"/>.</param>\r
9542             <returns>The <see cref="T:log4net.Repository.ILoggerRepository"/> for the specified repository.</returns>\r
9543             <remarks>\r
9544             <para>\r
9545             Returns the named repository. If <paramref name="repositoryName"/> is <c>null</c>\r
9546             a <see cref="T:System.ArgumentNullException"/> is thrown. If the repository \r
9547             does not exist a <see cref="T:log4net.Core.LogException"/> is thrown.\r
9548             </para>\r
9549             <para>\r
9550             Use <see cref="M:log4net.Core.DefaultRepositorySelector.CreateRepository(System.String,System.Type)"/> to create a repository.\r
9551             </para>\r
9552             </remarks>\r
9553             <exception cref="T:System.ArgumentNullException"><paramref name="repositoryName"/> is <see langword="null"/>.</exception>\r
9554             <exception cref="T:log4net.Core.LogException"><paramref name="repositoryName"/> does not exist.</exception>\r
9555         </member>\r
9556         <member name="M:log4net.Core.DefaultRepositorySelector.CreateRepository(System.Reflection.Assembly,System.Type)">\r
9557             <summary>\r
9558             Create a new repository for the assembly specified \r
9559             </summary>\r
9560             <param name="repositoryAssembly">the assembly to use to create the repository to associate with the <see cref="T:log4net.Repository.ILoggerRepository"/>.</param>\r
9561             <param name="repositoryType">The type of repository to create, must implement <see cref="T:log4net.Repository.ILoggerRepository"/>.</param>\r
9562             <returns>The repository created.</returns>\r
9563             <remarks>\r
9564             <para>\r
9565             The <see cref="T:log4net.Repository.ILoggerRepository"/> created will be associated with the repository\r
9566             specified such that a call to <see cref="M:log4net.Core.DefaultRepositorySelector.GetRepository(System.Reflection.Assembly)"/> with the\r
9567             same assembly specified will return the same repository instance.\r
9568             </para>\r
9569             <para>\r
9570             The type of the <see cref="T:log4net.Repository.ILoggerRepository"/> created and\r
9571             the repository to create can be overridden by specifying the\r
9572             <see cref="T:log4net.Config.RepositoryAttribute"/> attribute on the \r
9573             <paramref name="repositoryAssembly"/>.  The default values are to use the \r
9574             <paramref name="repositoryType"/> implementation of the \r
9575             <see cref="T:log4net.Repository.ILoggerRepository"/> interface and to use the\r
9576             <see cref="P:System.Reflection.AssemblyName.Name"/> as the name of the repository.\r
9577             </para>\r
9578             <para>\r
9579             The <see cref="T:log4net.Repository.ILoggerRepository"/> created will be automatically\r
9580             configured using any <see cref="T:log4net.Config.ConfiguratorAttribute"/> \r
9581             attributes defined on the <paramref name="repositoryAssembly"/>.\r
9582             </para>\r
9583             <para>\r
9584             If a repository for the <paramref name="repositoryAssembly"/> already exists\r
9585             that repository will be returned. An error will not be raised and that \r
9586             repository may be of a different type to that specified in <paramref name="repositoryType"/>.\r
9587             Also the <see cref="T:log4net.Config.RepositoryAttribute"/> attribute on the\r
9588             assembly may be used to override the repository type specified in \r
9589             <paramref name="repositoryType"/>.\r
9590             </para>\r
9591             </remarks>\r
9592             <exception cref="T:System.ArgumentNullException"><paramref name="repositoryAssembly"/> is <see langword="null"/>.</exception>\r
9593         </member>\r
9594         <member name="M:log4net.Core.DefaultRepositorySelector.CreateRepository(System.Reflection.Assembly,System.Type,System.String,System.Boolean)">\r
9595             <summary>\r
9596             Creates a new repository for the assembly specified.\r
9597             </summary>\r
9598             <param name="repositoryAssembly">the assembly to use to create the repository to associate with the <see cref="T:log4net.Repository.ILoggerRepository"/>.</param>\r
9599             <param name="repositoryType">The type of repository to create, must implement <see cref="T:log4net.Repository.ILoggerRepository"/>.</param>\r
9600             <param name="repositoryName">The name to assign to the created repository</param>\r
9601             <param name="readAssemblyAttributes">Set to <c>true</c> to read and apply the assembly attributes</param>\r
9602             <returns>The repository created.</returns>\r
9603             <remarks>\r
9604             <para>\r
9605             The <see cref="T:log4net.Repository.ILoggerRepository"/> created will be associated with the repository\r
9606             specified such that a call to <see cref="M:log4net.Core.DefaultRepositorySelector.GetRepository(System.Reflection.Assembly)"/> with the\r
9607             same assembly specified will return the same repository instance.\r
9608             </para>\r
9609             <para>\r
9610             The type of the <see cref="T:log4net.Repository.ILoggerRepository"/> created and\r
9611             the repository to create can be overridden by specifying the\r
9612             <see cref="T:log4net.Config.RepositoryAttribute"/> attribute on the \r
9613             <paramref name="repositoryAssembly"/>.  The default values are to use the \r
9614             <paramref name="repositoryType"/> implementation of the \r
9615             <see cref="T:log4net.Repository.ILoggerRepository"/> interface and to use the\r
9616             <see cref="P:System.Reflection.AssemblyName.Name"/> as the name of the repository.\r
9617             </para>\r
9618             <para>\r
9619             The <see cref="T:log4net.Repository.ILoggerRepository"/> created will be automatically\r
9620             configured using any <see cref="T:log4net.Config.ConfiguratorAttribute"/> \r
9621             attributes defined on the <paramref name="repositoryAssembly"/>.\r
9622             </para>\r
9623             <para>\r
9624             If a repository for the <paramref name="repositoryAssembly"/> already exists\r
9625             that repository will be returned. An error will not be raised and that \r
9626             repository may be of a different type to that specified in <paramref name="repositoryType"/>.\r
9627             Also the <see cref="T:log4net.Config.RepositoryAttribute"/> attribute on the\r
9628             assembly may be used to override the repository type specified in \r
9629             <paramref name="repositoryType"/>.\r
9630             </para>\r
9631             </remarks>\r
9632             <exception cref="T:System.ArgumentNullException"><paramref name="repositoryAssembly"/> is <see langword="null"/>.</exception>\r
9633         </member>\r
9634         <member name="M:log4net.Core.DefaultRepositorySelector.CreateRepository(System.String,System.Type)">\r
9635             <summary>\r
9636             Creates a new repository for the specified repository.\r
9637             </summary>\r
9638             <param name="repositoryName">The repository to associate with the <see cref="T:log4net.Repository.ILoggerRepository"/>.</param>\r
9639             <param name="repositoryType">The type of repository to create, must implement <see cref="T:log4net.Repository.ILoggerRepository"/>.\r
9640             If this param is <see langword="null"/> then the default repository type is used.</param>\r
9641             <returns>The new repository.</returns>\r
9642             <remarks>\r
9643             <para>\r
9644             The <see cref="T:log4net.Repository.ILoggerRepository"/> created will be associated with the repository\r
9645             specified such that a call to <see cref="M:log4net.Core.DefaultRepositorySelector.GetRepository(System.String)"/> with the\r
9646             same repository specified will return the same repository instance.\r
9647             </para>\r
9648             </remarks>\r
9649             <exception cref="T:System.ArgumentNullException"><paramref name="repositoryName"/> is <see langword="null"/>.</exception>\r
9650             <exception cref="T:log4net.Core.LogException"><paramref name="repositoryName"/> already exists.</exception>\r
9651         </member>\r
9652         <member name="M:log4net.Core.DefaultRepositorySelector.ExistsRepository(System.String)">\r
9653             <summary>\r
9654             Test if a named repository exists\r
9655             </summary>\r
9656             <param name="repositoryName">the named repository to check</param>\r
9657             <returns><c>true</c> if the repository exists</returns>\r
9658             <remarks>\r
9659             <para>\r
9660             Test if a named repository exists. Use <see cref="M:log4net.Core.DefaultRepositorySelector.CreateRepository(System.String,System.Type)"/>\r
9661             to create a new repository and <see cref="M:log4net.Core.DefaultRepositorySelector.GetRepository(System.String)"/> to retrieve \r
9662             a repository.\r
9663             </para>\r
9664             </remarks>\r
9665         </member>\r
9666         <member name="M:log4net.Core.DefaultRepositorySelector.GetAllRepositories">\r
9667             <summary>\r
9668             Gets a list of <see cref="T:log4net.Repository.ILoggerRepository"/> objects\r
9669             </summary>\r
9670             <returns>an array of all known <see cref="T:log4net.Repository.ILoggerRepository"/> objects</returns>\r
9671             <remarks>\r
9672             <para>\r
9673             Gets an array of all of the repositories created by this selector.\r
9674             </para>\r
9675             </remarks>\r
9676         </member>\r
9677         <member name="M:log4net.Core.DefaultRepositorySelector.AliasRepository(System.String,log4net.Repository.ILoggerRepository)">\r
9678             <summary>\r
9679             Aliases a repository to an existing repository.\r
9680             </summary>\r
9681             <param name="repositoryAlias">The repository to alias.</param>\r
9682             <param name="repositoryTarget">The repository that the repository is aliased to.</param>\r
9683             <remarks>\r
9684             <para>\r
9685             The repository specified will be aliased to the repository when created. \r
9686             The repository must not already exist.\r
9687             </para>\r
9688             <para>\r
9689             When the repository is created it must utilize the same repository type as \r
9690             the repository it is aliased to, otherwise the aliasing will fail.\r
9691             </para>\r
9692             </remarks>\r
9693             <exception cref="T:System.ArgumentNullException">\r
9694             <para><paramref name="repositoryAlias"/> is <see langword="null"/>.</para>\r
9695             <para>-or-</para>\r
9696             <para><paramref name="repositoryTarget"/> is <see langword="null"/>.</para>\r
9697             </exception>\r
9698         </member>\r
9699         <member name="M:log4net.Core.DefaultRepositorySelector.OnLoggerRepositoryCreatedEvent(log4net.Repository.ILoggerRepository)">\r
9700             <summary>\r
9701             Notifies the registered listeners that the repository has been created.\r
9702             </summary>\r
9703             <param name="repository">The repository that has been created.</param>\r
9704             <remarks>\r
9705             <para>\r
9706             Raises the <see cref="E:log4net.Core.DefaultRepositorySelector.LoggerRepositoryCreatedEvent"/> event.\r
9707             </para>\r
9708             </remarks>\r
9709         </member>\r
9710         <member name="M:log4net.Core.DefaultRepositorySelector.GetInfoForAssembly(System.Reflection.Assembly,System.String@,System.Type@)">\r
9711             <summary>\r
9712             Gets the repository name and repository type for the specified assembly.\r
9713             </summary>\r
9714             <param name="assembly">The assembly that has a <see cref="T:log4net.Config.RepositoryAttribute"/>.</param>\r
9715             <param name="repositoryName">in/out param to hold the repository name to use for the assembly, caller should set this to the default value before calling.</param>\r
9716             <param name="repositoryType">in/out param to hold the type of the repository to create for the assembly, caller should set this to the default value before calling.</param>\r
9717             <exception cref="T:System.ArgumentNullException"><paramref name="assembly"/> is <see langword="null"/>.</exception>\r
9718         </member>\r
9719         <member name="M:log4net.Core.DefaultRepositorySelector.ConfigureRepository(System.Reflection.Assembly,log4net.Repository.ILoggerRepository)">\r
9720             <summary>\r
9721             Configures the repository using information from the assembly.\r
9722             </summary>\r
9723             <param name="assembly">The assembly containing <see cref="T:log4net.Config.ConfiguratorAttribute"/>\r
9724             attributes which define the configuration for the repository.</param>\r
9725             <param name="repository">The repository to configure.</param>\r
9726             <exception cref="T:System.ArgumentNullException">\r
9727             <para><paramref name="assembly"/> is <see langword="null"/>.</para>\r
9728             <para>-or-</para>\r
9729             <para><paramref name="repository"/> is <see langword="null"/>.</para>\r
9730             </exception>\r
9731         </member>\r
9732         <member name="M:log4net.Core.DefaultRepositorySelector.LoadPlugins(System.Reflection.Assembly,log4net.Repository.ILoggerRepository)">\r
9733             <summary>\r
9734             Loads the attribute defined plugins on the assembly.\r
9735             </summary>\r
9736             <param name="assembly">The assembly that contains the attributes.</param>\r
9737             <param name="repository">The repository to add the plugins to.</param>\r
9738             <exception cref="T:System.ArgumentNullException">\r
9739             <para><paramref name="assembly"/> is <see langword="null"/>.</para>\r
9740             <para>-or-</para>\r
9741             <para><paramref name="repository"/> is <see langword="null"/>.</para>\r
9742             </exception>\r
9743         </member>\r
9744         <member name="M:log4net.Core.DefaultRepositorySelector.LoadAliases(System.Reflection.Assembly,log4net.Repository.ILoggerRepository)">\r
9745             <summary>\r
9746             Loads the attribute defined aliases on the assembly.\r
9747             </summary>\r
9748             <param name="assembly">The assembly that contains the attributes.</param>\r
9749             <param name="repository">The repository to alias to.</param>\r
9750             <exception cref="T:System.ArgumentNullException">\r
9751             <para><paramref name="assembly"/> is <see langword="null"/>.</para>\r
9752             <para>-or-</para>\r
9753             <para><paramref name="repository"/> is <see langword="null"/>.</para>\r
9754             </exception>\r
9755         </member>\r
9756         <member name="E:log4net.Core.DefaultRepositorySelector.LoggerRepositoryCreatedEvent">\r
9757             <summary>\r
9758             Event to notify that a logger repository has been created.\r
9759             </summary>\r
9760             <value>\r
9761             Event to notify that a logger repository has been created.\r
9762             </value>\r
9763             <remarks>\r
9764             <para>\r
9765             Event raised when a new repository is created.\r
9766             The event source will be this selector. The event args will\r
9767             be a <see cref="T:log4net.Core.LoggerRepositoryCreationEventArgs"/> which\r
9768             holds the newly created <see cref="T:log4net.Repository.ILoggerRepository"/>.\r
9769             </para>\r
9770             </remarks>\r
9771         </member>\r
9772         <member name="T:log4net.Core.ErrorCode">\r
9773             <summary>\r
9774             Defined error codes that can be passed to the <see cref="M:log4net.Core.IErrorHandler.Error(System.String,System.Exception,log4net.Core.ErrorCode)"/> method.\r
9775             </summary>\r
9776             <remarks>\r
9777             <para>\r
9778             Values passed to the <see cref="M:log4net.Core.IErrorHandler.Error(System.String,System.Exception,log4net.Core.ErrorCode)"/> method.\r
9779             </para>\r
9780             </remarks>\r
9781             <author>Nicko Cadell</author>\r
9782         </member>\r
9783         <member name="F:log4net.Core.ErrorCode.GenericFailure">\r
9784             <summary>\r
9785             A general error\r
9786             </summary>\r
9787         </member>\r
9788         <member name="F:log4net.Core.ErrorCode.WriteFailure">\r
9789             <summary>\r
9790             Error while writing output\r
9791             </summary>\r
9792         </member>\r
9793         <member name="F:log4net.Core.ErrorCode.FlushFailure">\r
9794             <summary>\r
9795             Failed to flush file\r
9796             </summary>\r
9797         </member>\r
9798         <member name="F:log4net.Core.ErrorCode.CloseFailure">\r
9799             <summary>\r
9800             Failed to close file\r
9801             </summary>\r
9802         </member>\r
9803         <member name="F:log4net.Core.ErrorCode.FileOpenFailure">\r
9804             <summary>\r
9805             Unable to open output file\r
9806             </summary>\r
9807         </member>\r
9808         <member name="F:log4net.Core.ErrorCode.MissingLayout">\r
9809             <summary>\r
9810             No layout specified\r
9811             </summary>\r
9812         </member>\r
9813         <member name="F:log4net.Core.ErrorCode.AddressParseFailure">\r
9814             <summary>\r
9815             Failed to parse address\r
9816             </summary>\r
9817         </member>\r
9818         <member name="T:log4net.Core.IErrorHandler">\r
9819             <summary>\r
9820             Appenders may delegate their error handling to an <see cref="T:log4net.Core.IErrorHandler"/>.\r
9821             </summary>\r
9822             <remarks>\r
9823             <para>\r
9824             Error handling is a particularly tedious to get right because by\r
9825             definition errors are hard to predict and to reproduce. \r
9826             </para>\r
9827             </remarks>\r
9828             <author>Nicko Cadell</author>\r
9829             <author>Gert Driesen</author>\r
9830         </member>\r
9831         <member name="M:log4net.Core.IErrorHandler.Error(System.String,System.Exception,log4net.Core.ErrorCode)">\r
9832             <summary>\r
9833             Handles the error and information about the error condition is passed as \r
9834             a parameter.\r
9835             </summary>\r
9836             <param name="message">The message associated with the error.</param>\r
9837             <param name="e">The <see cref="T:System.Exception"/> that was thrown when the error occurred.</param>\r
9838             <param name="errorCode">The error code associated with the error.</param>\r
9839             <remarks>\r
9840             <para>\r
9841             Handles the error and information about the error condition is passed as \r
9842             a parameter.\r
9843             </para>\r
9844             </remarks>\r
9845         </member>\r
9846         <member name="M:log4net.Core.IErrorHandler.Error(System.String,System.Exception)">\r
9847             <summary>\r
9848             Prints the error message passed as a parameter.\r
9849             </summary>\r
9850             <param name="message">The message associated with the error.</param>\r
9851             <param name="e">The <see cref="T:System.Exception"/> that was thrown when the error occurred.</param>\r
9852             <remarks>\r
9853             <para>\r
9854             See <see cref="M:log4net.Core.IErrorHandler.Error(System.String,System.Exception,log4net.Core.ErrorCode)"/>.\r
9855             </para>\r
9856             </remarks>\r
9857         </member>\r
9858         <member name="M:log4net.Core.IErrorHandler.Error(System.String)">\r
9859             <summary>\r
9860             Prints the error message passed as a parameter.\r
9861             </summary>\r
9862             <param name="message">The message associated with the error.</param>\r
9863             <remarks>\r
9864             <para>\r
9865             See <see cref="M:log4net.Core.IErrorHandler.Error(System.String,System.Exception,log4net.Core.ErrorCode)"/>.\r
9866             </para>\r
9867             </remarks>\r
9868         </member>\r
9869         <member name="T:log4net.Core.IFixingRequired">\r
9870             <summary>\r
9871             Interface for objects that require fixing.\r
9872             </summary>\r
9873             <remarks>\r
9874             <para>\r
9875             Interface that indicates that the object requires fixing before it\r
9876             can be taken outside the context of the appender's \r
9877             <see cref="M:log4net.Appender.IAppender.DoAppend(log4net.Core.LoggingEvent)"/> method.\r
9878             </para>\r
9879             <para>\r
9880             When objects that implement this interface are stored \r
9881             in the context properties maps <see cref="T:log4net.GlobalContext"/>\r
9882             <see cref="P:log4net.GlobalContext.Properties"/> and <see cref="T:log4net.ThreadContext"/>\r
9883             <see cref="P:log4net.ThreadContext.Properties"/> are fixed \r
9884             (see <see cref="P:log4net.Core.LoggingEvent.Fix"/>) the <see cref="M:log4net.Core.IFixingRequired.GetFixedObject"/>\r
9885             method will be called.\r
9886             </para>\r
9887             </remarks>\r
9888             <author>Nicko Cadell</author>\r
9889         </member>\r
9890         <member name="M:log4net.Core.IFixingRequired.GetFixedObject">\r
9891             <summary>\r
9892             Get a portable version of this object\r
9893             </summary>\r
9894             <returns>the portable instance of this object</returns>\r
9895             <remarks>\r
9896             <para>\r
9897             Get a portable instance object that represents the current\r
9898             state of this object. The portable object can be stored\r
9899             and logged from any thread with identical results.\r
9900             </para>\r
9901             </remarks>\r
9902         </member>\r
9903         <member name="T:log4net.Core.ILogger">\r
9904             <summary>\r
9905             Interface that all loggers implement\r
9906             </summary>\r
9907             <remarks>\r
9908             <para>\r
9909             This interface supports logging events and testing if a level\r
9910             is enabled for logging.\r
9911             </para>\r
9912             <para>\r
9913             These methods will not throw exceptions. Note to implementor, ensure\r
9914             that the implementation of these methods cannot allow an exception\r
9915             to be thrown to the caller.\r
9916             </para>\r
9917             </remarks>\r
9918             <author>Nicko Cadell</author>\r
9919             <author>Gert Driesen</author>\r
9920         </member>\r
9921         <member name="M:log4net.Core.ILogger.Log(System.Type,log4net.Core.Level,System.Object,System.Exception)">\r
9922             <summary>\r
9923             This generic form is intended to be used by wrappers.\r
9924             </summary>\r
9925             <param name="callerStackBoundaryDeclaringType">The declaring type of the method that is\r
9926             the stack boundary into the logging system for this call.</param>\r
9927             <param name="level">The level of the message to be logged.</param>\r
9928             <param name="message">The message object to log.</param>\r
9929             <param name="exception">the exception to log, including its stack trace. Pass <c>null</c> to not log an exception.</param>\r
9930             <remarks>\r
9931             <para>\r
9932             Generates a logging event for the specified <paramref name="level"/> using\r
9933             the <paramref name="message"/> and <paramref name="exception"/>.\r
9934             </para>\r
9935             </remarks>\r
9936         </member>\r
9937         <member name="M:log4net.Core.ILogger.Log(log4net.Core.LoggingEvent)">\r
9938             <summary>\r
9939             This is the most generic printing method that is intended to be used \r
9940             by wrappers.\r
9941             </summary>\r
9942             <param name="logEvent">The event being logged.</param>\r
9943             <remarks>\r
9944             <para>\r
9945             Logs the specified logging event through this logger.\r
9946             </para>\r
9947             </remarks>\r
9948         </member>\r
9949         <member name="M:log4net.Core.ILogger.IsEnabledFor(log4net.Core.Level)">\r
9950             <summary>\r
9951             Checks if this logger is enabled for a given <see cref="T:log4net.Core.Level"/> passed as parameter.\r
9952             </summary>\r
9953             <param name="level">The level to check.</param>\r
9954             <returns>\r
9955             <c>true</c> if this logger is enabled for <c>level</c>, otherwise <c>false</c>.\r
9956             </returns>\r
9957             <remarks>\r
9958             <para>\r
9959             Test if this logger is going to log events of the specified <paramref name="level"/>.\r
9960             </para>\r
9961             </remarks>\r
9962         </member>\r
9963         <member name="P:log4net.Core.ILogger.Name">\r
9964             <summary>\r
9965             Gets the name of the logger.\r
9966             </summary>\r
9967             <value>\r
9968             The name of the logger.\r
9969             </value>\r
9970             <remarks>\r
9971             <para>\r
9972             The name of this logger\r
9973             </para>\r
9974             </remarks>\r
9975         </member>\r
9976         <member name="P:log4net.Core.ILogger.Repository">\r
9977             <summary>\r
9978             Gets the <see cref="T:log4net.Repository.ILoggerRepository"/> where this \r
9979             <c>Logger</c> instance is attached to.\r
9980             </summary>\r
9981             <value>\r
9982             The <see cref="T:log4net.Repository.ILoggerRepository"/> that this logger belongs to.\r
9983             </value>\r
9984             <remarks>\r
9985             <para>\r
9986             Gets the <see cref="T:log4net.Repository.ILoggerRepository"/> where this \r
9987             <c>Logger</c> instance is attached to.\r
9988             </para>\r
9989             </remarks>\r
9990         </member>\r
9991         <member name="T:log4net.Core.ILoggerWrapper">\r
9992             <summary>\r
9993             Base interface for all wrappers\r
9994             </summary>\r
9995             <remarks>\r
9996             <para>\r
9997             Base interface for all wrappers.\r
9998             </para>\r
9999             <para>\r
10000             All wrappers must implement this interface.\r
10001             </para>\r
10002             </remarks>\r
10003             <author>Nicko Cadell</author>\r
10004         </member>\r
10005         <member name="P:log4net.Core.ILoggerWrapper.Logger">\r
10006             <summary>\r
10007             Get the implementation behind this wrapper object.\r
10008             </summary>\r
10009             <value>\r
10010             The <see cref="T:log4net.Core.ILogger"/> object that in implementing this object.\r
10011             </value>\r
10012             <remarks>\r
10013             <para>\r
10014             The <see cref="T:log4net.Core.ILogger"/> object that in implementing this\r
10015             object. The <c>Logger</c> object may not \r
10016             be the same object as this object because of logger decorators.\r
10017             This gets the actual underlying objects that is used to process\r
10018             the log events.\r
10019             </para>\r
10020             </remarks>\r
10021         </member>\r
10022         <member name="T:log4net.Core.LoggerRepositoryCreationEventHandler">\r
10023             <summary>\r
10024             Delegate used to handle logger repository creation event notifications\r
10025             </summary>\r
10026             <param name="sender">The <see cref="T:log4net.Core.IRepositorySelector"/> which created the repository.</param>\r
10027             <param name="e">The <see cref="T:log4net.Core.LoggerRepositoryCreationEventArgs"/> event args\r
10028             that holds the <see cref="T:log4net.Repository.ILoggerRepository"/> instance that has been created.</param>\r
10029             <remarks>\r
10030             <para>\r
10031             Delegate used to handle logger repository creation event notifications.\r
10032             </para>\r
10033             </remarks>\r
10034         </member>\r
10035         <member name="T:log4net.Core.LoggerRepositoryCreationEventArgs">\r
10036             <summary>\r
10037             Provides data for the <see cref="E:log4net.Core.IRepositorySelector.LoggerRepositoryCreatedEvent"/> event.\r
10038             </summary>\r
10039             <remarks>\r
10040             <para>\r
10041             A <see cref="E:log4net.Core.IRepositorySelector.LoggerRepositoryCreatedEvent"/> \r
10042             event is raised every time a <see cref="T:log4net.Repository.ILoggerRepository"/> is created.\r
10043             </para>\r
10044             </remarks>\r
10045         </member>\r
10046         <member name="F:log4net.Core.LoggerRepositoryCreationEventArgs.m_repository">\r
10047             <summary>\r
10048             The <see cref="T:log4net.Repository.ILoggerRepository"/> created\r
10049             </summary>\r
10050         </member>\r
10051         <member name="M:log4net.Core.LoggerRepositoryCreationEventArgs.#ctor(log4net.Repository.ILoggerRepository)">\r
10052             <summary>\r
10053             Construct instance using <see cref="T:log4net.Repository.ILoggerRepository"/> specified\r
10054             </summary>\r
10055             <param name="repository">the <see cref="T:log4net.Repository.ILoggerRepository"/> that has been created</param>\r
10056             <remarks>\r
10057             <para>\r
10058             Construct instance using <see cref="T:log4net.Repository.ILoggerRepository"/> specified\r
10059             </para>\r
10060             </remarks>\r
10061         </member>\r
10062         <member name="P:log4net.Core.LoggerRepositoryCreationEventArgs.LoggerRepository">\r
10063             <summary>\r
10064             The <see cref="T:log4net.Repository.ILoggerRepository"/> that has been created\r
10065             </summary>\r
10066             <value>\r
10067             The <see cref="T:log4net.Repository.ILoggerRepository"/> that has been created\r
10068             </value>\r
10069             <remarks>\r
10070             <para>\r
10071             The <see cref="T:log4net.Repository.ILoggerRepository"/> that has been created\r
10072             </para>\r
10073             </remarks>\r
10074         </member>\r
10075         <member name="T:log4net.Core.ITriggeringEventEvaluator">\r
10076             <summary>\r
10077             Test if an <see cref="T:log4net.Core.LoggingEvent"/> triggers an action\r
10078             </summary>\r
10079             <remarks>\r
10080             <para>\r
10081             Implementations of this interface allow certain appenders to decide\r
10082             when to perform an appender specific action.\r
10083             </para>\r
10084             <para>\r
10085             The action or behavior triggered is defined by the implementation.\r
10086             </para>\r
10087             </remarks>\r
10088             <author>Nicko Cadell</author>\r
10089         </member>\r
10090         <member name="M:log4net.Core.ITriggeringEventEvaluator.IsTriggeringEvent(log4net.Core.LoggingEvent)">\r
10091             <summary>\r
10092             Test if this event triggers the action\r
10093             </summary>\r
10094             <param name="loggingEvent">The event to check</param>\r
10095             <returns><c>true</c> if this event triggers the action, otherwise <c>false</c></returns>\r
10096             <remarks>\r
10097             <para>\r
10098             Return <c>true</c> if this event triggers the action\r
10099             </para>\r
10100             </remarks>\r
10101         </member>\r
10102         <member name="T:log4net.Core.Level">\r
10103             <summary>\r
10104             Defines the default set of levels recognized by the system.\r
10105             </summary>\r
10106             <remarks>\r
10107             <para>\r
10108             Each <see cref="T:log4net.Core.LoggingEvent"/> has an associated <see cref="T:log4net.Core.Level"/>.\r
10109             </para>\r
10110             <para>\r
10111             Levels have a numeric <see cref="P:log4net.Core.Level.Value"/> that defines the relative \r
10112             ordering between levels. Two Levels with the same <see cref="P:log4net.Core.Level.Value"/> \r
10113             are deemed to be equivalent.\r
10114             </para>\r
10115             <para>\r
10116             The levels that are recognized by log4net are set for each <see cref="T:log4net.Repository.ILoggerRepository"/>\r
10117             and each repository can have different levels defined. The levels are stored\r
10118             in the <see cref="P:log4net.Repository.ILoggerRepository.LevelMap"/> on the repository. Levels are\r
10119             looked up by name from the <see cref="P:log4net.Repository.ILoggerRepository.LevelMap"/>.\r
10120             </para>\r
10121             <para>\r
10122             When logging at level INFO the actual level used is not <see cref="F:log4net.Core.Level.Info"/> but\r
10123             the value of <c>LoggerRepository.LevelMap["INFO"]</c>. The default value for this is\r
10124             <see cref="F:log4net.Core.Level.Info"/>, but this can be changed by reconfiguring the level map.\r
10125             </para>\r
10126             <para>\r
10127             Each level has a <see cref="P:log4net.Core.Level.DisplayName"/> in addition to its <see cref="P:log4net.Core.Level.Name"/>. The \r
10128             <see cref="P:log4net.Core.Level.DisplayName"/> is the string that is written into the output log. By default\r
10129             the display name is the same as the level name, but this can be used to alias levels\r
10130             or to localize the log output.\r
10131             </para>\r
10132             <para>\r
10133             Some of the predefined levels recognized by the system are:\r
10134             </para>\r
10135             <list type="bullet">\r
10136                 <item>\r
10137                         <description><see cref="F:log4net.Core.Level.Off"/>.</description>\r
10138                 </item>\r
10139                 <item>\r
10140                         <description><see cref="F:log4net.Core.Level.Fatal"/>.</description>\r
10141                 </item>\r
10142                 <item>\r
10143                         <description><see cref="F:log4net.Core.Level.Error"/>.</description>\r
10144                 </item>\r
10145                 <item>\r
10146                         <description><see cref="F:log4net.Core.Level.Warn"/>.</description>\r
10147                 </item>\r
10148                 <item>\r
10149                         <description><see cref="F:log4net.Core.Level.Info"/>.</description>\r
10150                 </item>\r
10151                 <item>\r
10152                         <description><see cref="F:log4net.Core.Level.Debug"/>.</description>\r
10153                 </item>\r
10154                 <item>\r
10155                         <description><see cref="F:log4net.Core.Level.All"/>.</description>\r
10156                 </item>\r
10157             </list>\r
10158             </remarks>\r
10159             <author>Nicko Cadell</author>\r
10160             <author>Gert Driesen</author>\r
10161         </member>\r
10162         <member name="M:log4net.Core.Level.#ctor(System.Int32,System.String,System.String)">\r
10163             <summary>\r
10164             Constructor\r
10165             </summary>\r
10166             <param name="level">Integer value for this level, higher values represent more severe levels.</param>\r
10167             <param name="levelName">The string name of this level.</param>\r
10168             <param name="displayName">The display name for this level. This may be localized or otherwise different from the name</param>\r
10169             <remarks>\r
10170             <para>\r
10171             Initializes a new instance of the <see cref="T:log4net.Core.Level"/> class with\r
10172             the specified level name and value.\r
10173             </para>\r
10174             </remarks>\r
10175         </member>\r
10176         <member name="M:log4net.Core.Level.#ctor(System.Int32,System.String)">\r
10177             <summary>\r
10178             Constructor\r
10179             </summary>\r
10180             <param name="level">Integer value for this level, higher values represent more severe levels.</param>\r
10181             <param name="levelName">The string name of this level.</param>\r
10182             <remarks>\r
10183             <para>\r
10184             Initializes a new instance of the <see cref="T:log4net.Core.Level"/> class with\r
10185             the specified level name and value.\r
10186             </para>\r
10187             </remarks>\r
10188         </member>\r
10189         <member name="M:log4net.Core.Level.ToString">\r
10190             <summary>\r
10191             Returns the <see cref="T:System.String"/> representation of the current \r
10192             <see cref="T:log4net.Core.Level"/>.\r
10193             </summary>\r
10194             <returns>\r
10195             A <see cref="T:System.String"/> representation of the current <see cref="T:log4net.Core.Level"/>.\r
10196             </returns>\r
10197             <remarks>\r
10198             <para>\r
10199             Returns the level <see cref="P:log4net.Core.Level.Name"/>.\r
10200             </para>\r
10201             </remarks>\r
10202         </member>\r
10203         <member name="M:log4net.Core.Level.Equals(System.Object)">\r
10204             <summary>\r
10205             Compares levels.\r
10206             </summary>\r
10207             <param name="o">The object to compare against.</param>\r
10208             <returns><c>true</c> if the objects are equal.</returns>\r
10209             <remarks>\r
10210             <para>\r
10211             Compares the levels of <see cref="T:log4net.Core.Level"/> instances, and \r
10212             defers to base class if the target object is not a <see cref="T:log4net.Core.Level"/>\r
10213             instance.\r
10214             </para>\r
10215             </remarks>\r
10216         </member>\r
10217         <member name="M:log4net.Core.Level.GetHashCode">\r
10218             <summary>\r
10219             Returns a hash code\r
10220             </summary>\r
10221             <returns>A hash code for the current <see cref="T:log4net.Core.Level"/>.</returns>\r
10222             <remarks>\r
10223             <para>\r
10224             Returns a hash code suitable for use in hashing algorithms and data \r
10225             structures like a hash table.\r
10226             </para>\r
10227             <para>\r
10228             Returns the hash code of the level <see cref="P:log4net.Core.Level.Value"/>.\r
10229             </para>\r
10230             </remarks>\r
10231         </member>\r
10232         <member name="M:log4net.Core.Level.CompareTo(System.Object)">\r
10233             <summary>\r
10234             Compares this instance to a specified object and returns an \r
10235             indication of their relative values.\r
10236             </summary>\r
10237             <param name="r">A <see cref="T:log4net.Core.Level"/> instance or <see langword="null"/> to compare with this instance.</param>\r
10238             <returns>\r
10239             A 32-bit signed integer that indicates the relative order of the \r
10240             values compared. The return value has these meanings:\r
10241             <list type="table">\r
10242                 <listheader>\r
10243                         <term>Value</term>\r
10244                         <description>Meaning</description>\r
10245                 </listheader>\r
10246                 <item>\r
10247                         <term>Less than zero</term>\r
10248                         <description>This instance is less than <paramref name="r"/>.</description>\r
10249                 </item>\r
10250                 <item>\r
10251                         <term>Zero</term>\r
10252                         <description>This instance is equal to <paramref name="r"/>.</description>\r
10253                 </item>\r
10254                 <item>\r
10255                         <term>Greater than zero</term>\r
10256                         <description>\r
10257                                 <para>This instance is greater than <paramref name="r"/>.</para>\r
10258                                 <para>-or-</para>\r
10259                                 <para><paramref name="r"/> is <see langword="null"/>.</para>\r
10260                                 </description>\r
10261                 </item>\r
10262             </list>\r
10263             </returns>\r
10264             <remarks>\r
10265             <para>\r
10266             <paramref name="r"/> must be an instance of <see cref="T:log4net.Core.Level"/> \r
10267             or <see langword="null"/>; otherwise, an exception is thrown.\r
10268             </para>\r
10269             </remarks>\r
10270             <exception cref="T:System.ArgumentException"><paramref name="r"/> is not a <see cref="T:log4net.Core.Level"/>.</exception>\r
10271         </member>\r
10272         <member name="M:log4net.Core.Level.op_GreaterThan(log4net.Core.Level,log4net.Core.Level)">\r
10273             <summary>\r
10274             Returns a value indicating whether a specified <see cref="T:log4net.Core.Level"/> \r
10275             is greater than another specified <see cref="T:log4net.Core.Level"/>.\r
10276             </summary>\r
10277             <param name="l">A <see cref="T:log4net.Core.Level"/></param>\r
10278             <param name="r">A <see cref="T:log4net.Core.Level"/></param>\r
10279             <returns>\r
10280             <c>true</c> if <paramref name="l"/> is greater than \r
10281             <paramref name="r"/>; otherwise, <c>false</c>.\r
10282             </returns>\r
10283             <remarks>\r
10284             <para>\r
10285             Compares two levels.\r
10286             </para>\r
10287             </remarks>\r
10288         </member>\r
10289         <member name="M:log4net.Core.Level.op_LessThan(log4net.Core.Level,log4net.Core.Level)">\r
10290             <summary>\r
10291             Returns a value indicating whether a specified <see cref="T:log4net.Core.Level"/> \r
10292             is less than another specified <see cref="T:log4net.Core.Level"/>.\r
10293             </summary>\r
10294             <param name="l">A <see cref="T:log4net.Core.Level"/></param>\r
10295             <param name="r">A <see cref="T:log4net.Core.Level"/></param>\r
10296             <returns>\r
10297             <c>true</c> if <paramref name="l"/> is less than \r
10298             <paramref name="r"/>; otherwise, <c>false</c>.\r
10299             </returns>\r
10300             <remarks>\r
10301             <para>\r
10302             Compares two levels.\r
10303             </para>\r
10304             </remarks>\r
10305         </member>\r
10306         <member name="M:log4net.Core.Level.op_GreaterThanOrEqual(log4net.Core.Level,log4net.Core.Level)">\r
10307             <summary>\r
10308             Returns a value indicating whether a specified <see cref="T:log4net.Core.Level"/> \r
10309             is greater than or equal to another specified <see cref="T:log4net.Core.Level"/>.\r
10310             </summary>\r
10311             <param name="l">A <see cref="T:log4net.Core.Level"/></param>\r
10312             <param name="r">A <see cref="T:log4net.Core.Level"/></param>\r
10313             <returns>\r
10314             <c>true</c> if <paramref name="l"/> is greater than or equal to \r
10315             <paramref name="r"/>; otherwise, <c>false</c>.\r
10316             </returns>\r
10317             <remarks>\r
10318             <para>\r
10319             Compares two levels.\r
10320             </para>\r
10321             </remarks>\r
10322         </member>\r
10323         <member name="M:log4net.Core.Level.op_LessThanOrEqual(log4net.Core.Level,log4net.Core.Level)">\r
10324             <summary>\r
10325             Returns a value indicating whether a specified <see cref="T:log4net.Core.Level"/> \r
10326             is less than or equal to another specified <see cref="T:log4net.Core.Level"/>.\r
10327             </summary>\r
10328             <param name="l">A <see cref="T:log4net.Core.Level"/></param>\r
10329             <param name="r">A <see cref="T:log4net.Core.Level"/></param>\r
10330             <returns>\r
10331             <c>true</c> if <paramref name="l"/> is less than or equal to \r
10332             <paramref name="r"/>; otherwise, <c>false</c>.\r
10333             </returns>\r
10334             <remarks>\r
10335             <para>\r
10336             Compares two levels.\r
10337             </para>\r
10338             </remarks>\r
10339         </member>\r
10340         <member name="M:log4net.Core.Level.op_Equality(log4net.Core.Level,log4net.Core.Level)">\r
10341             <summary>\r
10342             Returns a value indicating whether two specified <see cref="T:log4net.Core.Level"/> \r
10343             objects have the same value.\r
10344             </summary>\r
10345             <param name="l">A <see cref="T:log4net.Core.Level"/> or <see langword="null"/>.</param>\r
10346             <param name="r">A <see cref="T:log4net.Core.Level"/> or <see langword="null"/>.</param>\r
10347             <returns>\r
10348             <c>true</c> if the value of <paramref name="l"/> is the same as the \r
10349             value of <paramref name="r"/>; otherwise, <c>false</c>.\r
10350             </returns>\r
10351             <remarks>\r
10352             <para>\r
10353             Compares two levels.\r
10354             </para>\r
10355             </remarks>\r
10356         </member>\r
10357         <member name="M:log4net.Core.Level.op_Inequality(log4net.Core.Level,log4net.Core.Level)">\r
10358             <summary>\r
10359             Returns a value indicating whether two specified <see cref="T:log4net.Core.Level"/> \r
10360             objects have different values.\r
10361             </summary>\r
10362             <param name="l">A <see cref="T:log4net.Core.Level"/> or <see langword="null"/>.</param>\r
10363             <param name="r">A <see cref="T:log4net.Core.Level"/> or <see langword="null"/>.</param>\r
10364             <returns>\r
10365             <c>true</c> if the value of <paramref name="l"/> is different from\r
10366             the value of <paramref name="r"/>; otherwise, <c>false</c>.\r
10367             </returns>\r
10368             <remarks>\r
10369             <para>\r
10370             Compares two levels.\r
10371             </para>\r
10372             </remarks>\r
10373         </member>\r
10374         <member name="M:log4net.Core.Level.Compare(log4net.Core.Level,log4net.Core.Level)">\r
10375             <summary>\r
10376             Compares two specified <see cref="T:log4net.Core.Level"/> instances.\r
10377             </summary>\r
10378             <param name="l">The first <see cref="T:log4net.Core.Level"/> to compare.</param>\r
10379             <param name="r">The second <see cref="T:log4net.Core.Level"/> to compare.</param>\r
10380             <returns>\r
10381             A 32-bit signed integer that indicates the relative order of the \r
10382             two values compared. The return value has these meanings:\r
10383             <list type="table">\r
10384                 <listheader>\r
10385                         <term>Value</term>\r
10386                         <description>Meaning</description>\r
10387                 </listheader>\r
10388                 <item>\r
10389                         <term>Less than zero</term>\r
10390                         <description><paramref name="l"/> is less than <paramref name="r"/>.</description>\r
10391                 </item>\r
10392                 <item>\r
10393                         <term>Zero</term>\r
10394                         <description><paramref name="l"/> is equal to <paramref name="r"/>.</description>\r
10395                 </item>\r
10396                 <item>\r
10397                         <term>Greater than zero</term>\r
10398                         <description><paramref name="l"/> is greater than <paramref name="r"/>.</description>\r
10399                 </item>\r
10400             </list>\r
10401             </returns>\r
10402             <remarks>\r
10403             <para>\r
10404             Compares two levels.\r
10405             </para>\r
10406             </remarks>\r
10407         </member>\r
10408         <member name="F:log4net.Core.Level.Off">\r
10409             <summary>\r
10410             The <see cref="F:log4net.Core.Level.Off"/> level designates a higher level than all the rest.\r
10411             </summary>\r
10412         </member>\r
10413         <member name="F:log4net.Core.Level.Emergency">\r
10414             <summary>\r
10415             The <see cref="F:log4net.Core.Level.Emergency"/> level designates very severe error events. \r
10416             System unusable, emergencies.\r
10417             </summary>\r
10418         </member>\r
10419         <member name="F:log4net.Core.Level.Fatal">\r
10420             <summary>\r
10421             The <see cref="F:log4net.Core.Level.Fatal"/> level designates very severe error events \r
10422             that will presumably lead the application to abort.\r
10423             </summary>\r
10424         </member>\r
10425         <member name="F:log4net.Core.Level.Alert">\r
10426             <summary>\r
10427             The <see cref="F:log4net.Core.Level.Alert"/> level designates very severe error events. \r
10428             Take immediate action, alerts.\r
10429             </summary>\r
10430         </member>\r
10431         <member name="F:log4net.Core.Level.Critical">\r
10432             <summary>\r
10433             The <see cref="F:log4net.Core.Level.Critical"/> level designates very severe error events. \r
10434             Critical condition, critical.\r
10435             </summary>\r
10436         </member>\r
10437         <member name="F:log4net.Core.Level.Severe">\r
10438             <summary>\r
10439             The <see cref="F:log4net.Core.Level.Severe"/> level designates very severe error events.\r
10440             </summary>\r
10441         </member>\r
10442         <member name="F:log4net.Core.Level.Error">\r
10443             <summary>\r
10444             The <see cref="F:log4net.Core.Level.Error"/> level designates error events that might \r
10445             still allow the application to continue running.\r
10446             </summary>\r
10447         </member>\r
10448         <member name="F:log4net.Core.Level.Warn">\r
10449             <summary>\r
10450             The <see cref="F:log4net.Core.Level.Warn"/> level designates potentially harmful \r
10451             situations.\r
10452             </summary>\r
10453         </member>\r
10454         <member name="F:log4net.Core.Level.Notice">\r
10455             <summary>\r
10456             The <see cref="F:log4net.Core.Level.Notice"/> level designates informational messages \r
10457             that highlight the progress of the application at the highest level.\r
10458             </summary>\r
10459         </member>\r
10460         <member name="F:log4net.Core.Level.Info">\r
10461             <summary>\r
10462             The <see cref="F:log4net.Core.Level.Info"/> level designates informational messages that \r
10463             highlight the progress of the application at coarse-grained level.\r
10464             </summary>\r
10465         </member>\r
10466         <member name="F:log4net.Core.Level.Debug">\r
10467             <summary>\r
10468             The <see cref="F:log4net.Core.Level.Debug"/> level designates fine-grained informational \r
10469             events that are most useful to debug an application.\r
10470             </summary>\r
10471         </member>\r
10472         <member name="F:log4net.Core.Level.Fine">\r
10473             <summary>\r
10474             The <see cref="F:log4net.Core.Level.Fine"/> level designates fine-grained informational \r
10475             events that are most useful to debug an application.\r
10476             </summary>\r
10477         </member>\r
10478         <member name="F:log4net.Core.Level.Trace">\r
10479             <summary>\r
10480             The <see cref="F:log4net.Core.Level.Trace"/> level designates fine-grained informational \r
10481             events that are most useful to debug an application.\r
10482             </summary>\r
10483         </member>\r
10484         <member name="F:log4net.Core.Level.Finer">\r
10485             <summary>\r
10486             The <see cref="F:log4net.Core.Level.Finer"/> level designates fine-grained informational \r
10487             events that are most useful to debug an application.\r
10488             </summary>\r
10489         </member>\r
10490         <member name="F:log4net.Core.Level.Verbose">\r
10491             <summary>\r
10492             The <see cref="F:log4net.Core.Level.Verbose"/> level designates fine-grained informational \r
10493             events that are most useful to debug an application.\r
10494             </summary>\r
10495         </member>\r
10496         <member name="F:log4net.Core.Level.Finest">\r
10497             <summary>\r
10498             The <see cref="F:log4net.Core.Level.Finest"/> level designates fine-grained informational \r
10499             events that are most useful to debug an application.\r
10500             </summary>\r
10501         </member>\r
10502         <member name="F:log4net.Core.Level.All">\r
10503             <summary>\r
10504             The <see cref="F:log4net.Core.Level.All"/> level designates the lowest level possible.\r
10505             </summary>\r
10506         </member>\r
10507         <member name="P:log4net.Core.Level.Name">\r
10508             <summary>\r
10509             Gets the name of this level.\r
10510             </summary>\r
10511             <value>\r
10512             The name of this level.\r
10513             </value>\r
10514             <remarks>\r
10515             <para>\r
10516             Gets the name of this level.\r
10517             </para>\r
10518             </remarks>\r
10519         </member>\r
10520         <member name="P:log4net.Core.Level.Value">\r
10521             <summary>\r
10522             Gets the value of this level.\r
10523             </summary>\r
10524             <value>\r
10525             The value of this level.\r
10526             </value>\r
10527             <remarks>\r
10528             <para>\r
10529             Gets the value of this level.\r
10530             </para>\r
10531             </remarks>\r
10532         </member>\r
10533         <member name="P:log4net.Core.Level.DisplayName">\r
10534             <summary>\r
10535             Gets the display name of this level.\r
10536             </summary>\r
10537             <value>\r
10538             The display name of this level.\r
10539             </value>\r
10540             <remarks>\r
10541             <para>\r
10542             Gets the display name of this level.\r
10543             </para>\r
10544             </remarks>\r
10545         </member>\r
10546         <member name="T:log4net.Core.LevelCollection">\r
10547             <summary>\r
10548             A strongly-typed collection of <see cref="T:log4net.Core.Level"/> objects.\r
10549             </summary>\r
10550             <author>Nicko Cadell</author>\r
10551         </member>\r
10552         <member name="M:log4net.Core.LevelCollection.ReadOnly(log4net.Core.LevelCollection)">\r
10553             <summary>\r
10554             Creates a read-only wrapper for a <c>LevelCollection</c> instance.\r
10555             </summary>\r
10556             <param name="list">list to create a readonly wrapper arround</param>\r
10557             <returns>\r
10558             A <c>LevelCollection</c> wrapper that is read-only.\r
10559             </returns>\r
10560         </member>\r
10561         <member name="M:log4net.Core.LevelCollection.#ctor">\r
10562             <summary>\r
10563             Initializes a new instance of the <c>LevelCollection</c> class\r
10564             that is empty and has the default initial capacity.\r
10565             </summary>\r
10566         </member>\r
10567         <member name="M:log4net.Core.LevelCollection.#ctor(System.Int32)">\r
10568             <summary>\r
10569             Initializes a new instance of the <c>LevelCollection</c> class\r
10570             that has the specified initial capacity.\r
10571             </summary>\r
10572             <param name="capacity">\r
10573             The number of elements that the new <c>LevelCollection</c> is initially capable of storing.\r
10574             </param>\r
10575         </member>\r
10576         <member name="M:log4net.Core.LevelCollection.#ctor(log4net.Core.LevelCollection)">\r
10577             <summary>\r
10578             Initializes a new instance of the <c>LevelCollection</c> class\r
10579             that contains elements copied from the specified <c>LevelCollection</c>.\r
10580             </summary>\r
10581             <param name="c">The <c>LevelCollection</c> whose elements are copied to the new collection.</param>\r
10582         </member>\r
10583         <member name="M:log4net.Core.LevelCollection.#ctor(log4net.Core.Level[])">\r
10584             <summary>\r
10585             Initializes a new instance of the <c>LevelCollection</c> class\r
10586             that contains elements copied from the specified <see cref="T:log4net.Core.Level"/> array.\r
10587             </summary>\r
10588             <param name="a">The <see cref="T:log4net.Core.Level"/> array whose elements are copied to the new list.</param>\r
10589         </member>\r
10590         <member name="M:log4net.Core.LevelCollection.#ctor(System.Collections.ICollection)">\r
10591             <summary>\r
10592             Initializes a new instance of the <c>LevelCollection</c> class\r
10593             that contains elements copied from the specified <see cref="T:log4net.Core.Level"/> collection.\r
10594             </summary>\r
10595             <param name="col">The <see cref="T:log4net.Core.Level"/> collection whose elements are copied to the new list.</param>\r
10596         </member>\r
10597         <member name="M:log4net.Core.LevelCollection.#ctor(log4net.Core.LevelCollection.Tag)">\r
10598             <summary>\r
10599             Allow subclasses to avoid our default constructors\r
10600             </summary>\r
10601             <param name="tag"></param>\r
10602         </member>\r
10603         <member name="M:log4net.Core.LevelCollection.CopyTo(log4net.Core.Level[])">\r
10604             <summary>\r
10605             Copies the entire <c>LevelCollection</c> to a one-dimensional\r
10606             <see cref="T:log4net.Core.Level"/> array.\r
10607             </summary>\r
10608             <param name="array">The one-dimensional <see cref="T:log4net.Core.Level"/> array to copy to.</param>\r
10609         </member>\r
10610         <member name="M:log4net.Core.LevelCollection.CopyTo(log4net.Core.Level[],System.Int32)">\r
10611             <summary>\r
10612             Copies the entire <c>LevelCollection</c> to a one-dimensional\r
10613             <see cref="T:log4net.Core.Level"/> array, starting at the specified index of the target array.\r
10614             </summary>\r
10615             <param name="array">The one-dimensional <see cref="T:log4net.Core.Level"/> array to copy to.</param>\r
10616             <param name="start">The zero-based index in <paramref name="array"/> at which copying begins.</param>\r
10617         </member>\r
10618         <member name="M:log4net.Core.LevelCollection.Add(log4net.Core.Level)">\r
10619             <summary>\r
10620             Adds a <see cref="T:log4net.Core.Level"/> to the end of the <c>LevelCollection</c>.\r
10621             </summary>\r
10622             <param name="item">The <see cref="T:log4net.Core.Level"/> to be added to the end of the <c>LevelCollection</c>.</param>\r
10623             <returns>The index at which the value has been added.</returns>\r
10624         </member>\r
10625         <member name="M:log4net.Core.LevelCollection.Clear">\r
10626             <summary>\r
10627             Removes all elements from the <c>LevelCollection</c>.\r
10628             </summary>\r
10629         </member>\r
10630         <member name="M:log4net.Core.LevelCollection.Clone">\r
10631             <summary>\r
10632             Creates a shallow copy of the <see cref="T:log4net.Core.LevelCollection"/>.\r
10633             </summary>\r
10634             <returns>A new <see cref="T:log4net.Core.LevelCollection"/> with a shallow copy of the collection data.</returns>\r
10635         </member>\r
10636         <member name="M:log4net.Core.LevelCollection.Contains(log4net.Core.Level)">\r
10637             <summary>\r
10638             Determines whether a given <see cref="T:log4net.Core.Level"/> is in the <c>LevelCollection</c>.\r
10639             </summary>\r
10640             <param name="item">The <see cref="T:log4net.Core.Level"/> to check for.</param>\r
10641             <returns><c>true</c> if <paramref name="item"/> is found in the <c>LevelCollection</c>; otherwise, <c>false</c>.</returns>\r
10642         </member>\r
10643         <member name="M:log4net.Core.LevelCollection.IndexOf(log4net.Core.Level)">\r
10644             <summary>\r
10645             Returns the zero-based index of the first occurrence of a <see cref="T:log4net.Core.Level"/>\r
10646             in the <c>LevelCollection</c>.\r
10647             </summary>\r
10648             <param name="item">The <see cref="T:log4net.Core.Level"/> to locate in the <c>LevelCollection</c>.</param>\r
10649             <returns>\r
10650             The zero-based index of the first occurrence of <paramref name="item"/> \r
10651             in the entire <c>LevelCollection</c>, if found; otherwise, -1.\r
10652             </returns>\r
10653         </member>\r
10654         <member name="M:log4net.Core.LevelCollection.Insert(System.Int32,log4net.Core.Level)">\r
10655             <summary>\r
10656             Inserts an element into the <c>LevelCollection</c> at the specified index.\r
10657             </summary>\r
10658             <param name="index">The zero-based index at which <paramref name="item"/> should be inserted.</param>\r
10659             <param name="item">The <see cref="T:log4net.Core.Level"/> to insert.</param>\r
10660             <exception cref="T:System.ArgumentOutOfRangeException">\r
10661             <para><paramref name="index"/> is less than zero</para>\r
10662             <para>-or-</para>\r
10663             <para><paramref name="index"/> is equal to or greater than <see cref="P:log4net.Core.LevelCollection.Count"/>.</para>\r
10664             </exception>\r
10665         </member>\r
10666         <member name="M:log4net.Core.LevelCollection.Remove(log4net.Core.Level)">\r
10667             <summary>\r
10668             Removes the first occurrence of a specific <see cref="T:log4net.Core.Level"/> from the <c>LevelCollection</c>.\r
10669             </summary>\r
10670             <param name="item">The <see cref="T:log4net.Core.Level"/> to remove from the <c>LevelCollection</c>.</param>\r
10671             <exception cref="T:System.ArgumentException">\r
10672             The specified <see cref="T:log4net.Core.Level"/> was not found in the <c>LevelCollection</c>.\r
10673             </exception>\r
10674         </member>\r
10675         <member name="M:log4net.Core.LevelCollection.RemoveAt(System.Int32)">\r
10676             <summary>\r
10677             Removes the element at the specified index of the <c>LevelCollection</c>.\r
10678             </summary>\r
10679             <param name="index">The zero-based index of the element to remove.</param>\r
10680             <exception cref="T:System.ArgumentOutOfRangeException">\r
10681             <para><paramref name="index"/> is less than zero</para>\r
10682             <para>-or-</para>\r
10683             <para><paramref name="index"/> is equal to or greater than <see cref="P:log4net.Core.LevelCollection.Count"/>.</para>\r
10684             </exception>\r
10685         </member>\r
10686         <member name="M:log4net.Core.LevelCollection.GetEnumerator">\r
10687             <summary>\r
10688             Returns an enumerator that can iterate through the <c>LevelCollection</c>.\r
10689             </summary>\r
10690             <returns>An <see cref="T:log4net.Core.LevelCollection.Enumerator"/> for the entire <c>LevelCollection</c>.</returns>\r
10691         </member>\r
10692         <member name="M:log4net.Core.LevelCollection.AddRange(log4net.Core.LevelCollection)">\r
10693             <summary>\r
10694             Adds the elements of another <c>LevelCollection</c> to the current <c>LevelCollection</c>.\r
10695             </summary>\r
10696             <param name="x">The <c>LevelCollection</c> whose elements should be added to the end of the current <c>LevelCollection</c>.</param>\r
10697             <returns>The new <see cref="P:log4net.Core.LevelCollection.Count"/> of the <c>LevelCollection</c>.</returns>\r
10698         </member>\r
10699         <member name="M:log4net.Core.LevelCollection.AddRange(log4net.Core.Level[])">\r
10700             <summary>\r
10701             Adds the elements of a <see cref="T:log4net.Core.Level"/> array to the current <c>LevelCollection</c>.\r
10702             </summary>\r
10703             <param name="x">The <see cref="T:log4net.Core.Level"/> array whose elements should be added to the end of the <c>LevelCollection</c>.</param>\r
10704             <returns>The new <see cref="P:log4net.Core.LevelCollection.Count"/> of the <c>LevelCollection</c>.</returns>\r
10705         </member>\r
10706         <member name="M:log4net.Core.LevelCollection.AddRange(System.Collections.ICollection)">\r
10707             <summary>\r
10708             Adds the elements of a <see cref="T:log4net.Core.Level"/> collection to the current <c>LevelCollection</c>.\r
10709             </summary>\r
10710             <param name="col">The <see cref="T:log4net.Core.Level"/> collection whose elements should be added to the end of the <c>LevelCollection</c>.</param>\r
10711             <returns>The new <see cref="P:log4net.Core.LevelCollection.Count"/> of the <c>LevelCollection</c>.</returns>\r
10712         </member>\r
10713         <member name="M:log4net.Core.LevelCollection.TrimToSize">\r
10714             <summary>\r
10715             Sets the capacity to the actual number of elements.\r
10716             </summary>\r
10717         </member>\r
10718         <member name="M:log4net.Core.LevelCollection.ValidateIndex(System.Int32)">\r
10719             <exception cref="T:System.ArgumentOutOfRangeException">\r
10720             <para><paramref name="index"/> is less than zero</para>\r
10721             <para>-or-</para>\r
10722             <para><paramref name="index"/> is equal to or greater than <see cref="P:log4net.Core.LevelCollection.Count"/>.</para>\r
10723             </exception>\r
10724         </member>\r
10725         <member name="M:log4net.Core.LevelCollection.ValidateIndex(System.Int32,System.Boolean)">\r
10726             <exception cref="T:System.ArgumentOutOfRangeException">\r
10727             <para><paramref name="index"/> is less than zero</para>\r
10728             <para>-or-</para>\r
10729             <para><paramref name="index"/> is equal to or greater than <see cref="P:log4net.Core.LevelCollection.Count"/>.</para>\r
10730             </exception>\r
10731         </member>\r
10732         <member name="P:log4net.Core.LevelCollection.Count">\r
10733             <summary>\r
10734             Gets the number of elements actually contained in the <c>LevelCollection</c>.\r
10735             </summary>\r
10736         </member>\r
10737         <member name="P:log4net.Core.LevelCollection.IsSynchronized">\r
10738             <summary>\r
10739             Gets a value indicating whether access to the collection is synchronized (thread-safe).\r
10740             </summary>\r
10741             <value>true if access to the ICollection is synchronized (thread-safe); otherwise, false.</value>\r
10742         </member>\r
10743         <member name="P:log4net.Core.LevelCollection.SyncRoot">\r
10744             <summary>\r
10745             Gets an object that can be used to synchronize access to the collection.\r
10746             </summary>\r
10747         </member>\r
10748         <member name="P:log4net.Core.LevelCollection.Item(System.Int32)">\r
10749             <summary>\r
10750             Gets or sets the <see cref="T:log4net.Core.Level"/> at the specified index.\r
10751             </summary>\r
10752             <param name="index">The zero-based index of the element to get or set.</param>\r
10753             <exception cref="T:System.ArgumentOutOfRangeException">\r
10754             <para><paramref name="index"/> is less than zero</para>\r
10755             <para>-or-</para>\r
10756             <para><paramref name="index"/> is equal to or greater than <see cref="P:log4net.Core.LevelCollection.Count"/>.</para>\r
10757             </exception>\r
10758         </member>\r
10759         <member name="P:log4net.Core.LevelCollection.IsFixedSize">\r
10760             <summary>\r
10761             Gets a value indicating whether the collection has a fixed size.\r
10762             </summary>\r
10763             <value>true if the collection has a fixed size; otherwise, false. The default is false</value>\r
10764         </member>\r
10765         <member name="P:log4net.Core.LevelCollection.IsReadOnly">\r
10766             <summary>\r
10767             Gets a value indicating whether the IList is read-only.\r
10768             </summary>\r
10769             <value>true if the collection is read-only; otherwise, false. The default is false</value>\r
10770         </member>\r
10771         <member name="P:log4net.Core.LevelCollection.Capacity">\r
10772             <summary>\r
10773             Gets or sets the number of elements the <c>LevelCollection</c> can contain.\r
10774             </summary>\r
10775         </member>\r
10776         <member name="T:log4net.Core.LevelCollection.ILevelCollectionEnumerator">\r
10777             <summary>\r
10778             Supports type-safe iteration over a <see cref="T:log4net.Core.LevelCollection"/>.\r
10779             </summary>\r
10780         </member>\r
10781         <member name="M:log4net.Core.LevelCollection.ILevelCollectionEnumerator.MoveNext">\r
10782             <summary>\r
10783             Advances the enumerator to the next element in the collection.\r
10784             </summary>\r
10785             <returns>\r
10786             <c>true</c> if the enumerator was successfully advanced to the next element; \r
10787             <c>false</c> if the enumerator has passed the end of the collection.\r
10788             </returns>\r
10789             <exception cref="T:System.InvalidOperationException">\r
10790             The collection was modified after the enumerator was created.\r
10791             </exception>\r
10792         </member>\r
10793         <member name="M:log4net.Core.LevelCollection.ILevelCollectionEnumerator.Reset">\r
10794             <summary>\r
10795             Sets the enumerator to its initial position, before the first element in the collection.\r
10796             </summary>\r
10797         </member>\r
10798         <member name="P:log4net.Core.LevelCollection.ILevelCollectionEnumerator.Current">\r
10799             <summary>\r
10800             Gets the current element in the collection.\r
10801             </summary>\r
10802         </member>\r
10803         <member name="T:log4net.Core.LevelCollection.Tag">\r
10804             <summary>\r
10805             Type visible only to our subclasses\r
10806             Used to access protected constructor\r
10807             </summary>\r
10808         </member>\r
10809         <member name="F:log4net.Core.LevelCollection.Tag.Default">\r
10810             <summary>\r
10811             A value\r
10812             </summary>\r
10813         </member>\r
10814         <member name="T:log4net.Core.LevelCollection.Enumerator">\r
10815             <summary>\r
10816             Supports simple iteration over a <see cref="T:log4net.Core.LevelCollection"/>.\r
10817             </summary>\r
10818         </member>\r
10819         <member name="M:log4net.Core.LevelCollection.Enumerator.#ctor(log4net.Core.LevelCollection)">\r
10820             <summary>\r
10821             Initializes a new instance of the <c>Enumerator</c> class.\r
10822             </summary>\r
10823             <param name="tc"></param>\r
10824         </member>\r
10825         <member name="M:log4net.Core.LevelCollection.Enumerator.MoveNext">\r
10826             <summary>\r
10827             Advances the enumerator to the next element in the collection.\r
10828             </summary>\r
10829             <returns>\r
10830             <c>true</c> if the enumerator was successfully advanced to the next element; \r
10831             <c>false</c> if the enumerator has passed the end of the collection.\r
10832             </returns>\r
10833             <exception cref="T:System.InvalidOperationException">\r
10834             The collection was modified after the enumerator was created.\r
10835             </exception>\r
10836         </member>\r
10837         <member name="M:log4net.Core.LevelCollection.Enumerator.Reset">\r
10838             <summary>\r
10839             Sets the enumerator to its initial position, before the first element in the collection.\r
10840             </summary>\r
10841         </member>\r
10842         <member name="P:log4net.Core.LevelCollection.Enumerator.Current">\r
10843             <summary>\r
10844             Gets the current element in the collection.\r
10845             </summary>\r
10846         </member>\r
10847         <member name="T:log4net.Core.LevelEvaluator">\r
10848             <summary>\r
10849             An evaluator that triggers at a threshold level\r
10850             </summary>\r
10851             <remarks>\r
10852             <para>\r
10853             This evaluator will trigger if the level of the event\r
10854             passed to <see cref="M:log4net.Core.LevelEvaluator.IsTriggeringEvent(log4net.Core.LoggingEvent)"/>\r
10855             is equal to or greater than the <see cref="P:log4net.Core.LevelEvaluator.Threshold"/>\r
10856             level.\r
10857             </para>\r
10858             </remarks>\r
10859             <author>Nicko Cadell</author>\r
10860         </member>\r
10861         <member name="F:log4net.Core.LevelEvaluator.m_threshold">\r
10862             <summary>\r
10863             The threshold for triggering\r
10864             </summary>\r
10865         </member>\r
10866         <member name="M:log4net.Core.LevelEvaluator.#ctor">\r
10867             <summary>\r
10868             Create a new evaluator using the <see cref="F:log4net.Core.Level.Off"/> threshold.\r
10869             </summary>\r
10870             <remarks>\r
10871             <para>\r
10872             Create a new evaluator using the <see cref="F:log4net.Core.Level.Off"/> threshold.\r
10873             </para>\r
10874             <para>\r
10875             This evaluator will trigger if the level of the event\r
10876             passed to <see cref="M:log4net.Core.LevelEvaluator.IsTriggeringEvent(log4net.Core.LoggingEvent)"/>\r
10877             is equal to or greater than the <see cref="P:log4net.Core.LevelEvaluator.Threshold"/>\r
10878             level.\r
10879             </para>\r
10880             </remarks>\r
10881         </member>\r
10882         <member name="M:log4net.Core.LevelEvaluator.#ctor(log4net.Core.Level)">\r
10883             <summary>\r
10884             Create a new evaluator using the specified <see cref="T:log4net.Core.Level"/> threshold.\r
10885             </summary>\r
10886             <param name="threshold">the threshold to trigger at</param>\r
10887             <remarks>\r
10888             <para>\r
10889             Create a new evaluator using the specified <see cref="T:log4net.Core.Level"/> threshold.\r
10890             </para>\r
10891             <para>\r
10892             This evaluator will trigger if the level of the event\r
10893             passed to <see cref="M:log4net.Core.LevelEvaluator.IsTriggeringEvent(log4net.Core.LoggingEvent)"/>\r
10894             is equal to or greater than the <see cref="P:log4net.Core.LevelEvaluator.Threshold"/>\r
10895             level.\r
10896             </para>\r
10897             </remarks>\r
10898         </member>\r
10899         <member name="M:log4net.Core.LevelEvaluator.IsTriggeringEvent(log4net.Core.LoggingEvent)">\r
10900             <summary>\r
10901             Is this <paramref name="loggingEvent"/> the triggering event?\r
10902             </summary>\r
10903             <param name="loggingEvent">The event to check</param>\r
10904             <returns>This method returns <c>true</c>, if the event level\r
10905             is equal or higher than the <see cref="P:log4net.Core.LevelEvaluator.Threshold"/>. \r
10906             Otherwise it returns <c>false</c></returns>\r
10907             <remarks>\r
10908             <para>\r
10909             This evaluator will trigger if the level of the event\r
10910             passed to <see cref="M:log4net.Core.LevelEvaluator.IsTriggeringEvent(log4net.Core.LoggingEvent)"/>\r
10911             is equal to or greater than the <see cref="P:log4net.Core.LevelEvaluator.Threshold"/>\r
10912             level.\r
10913             </para>\r
10914             </remarks>\r
10915         </member>\r
10916         <member name="P:log4net.Core.LevelEvaluator.Threshold">\r
10917             <summary>\r
10918             the threshold to trigger at\r
10919             </summary>\r
10920             <value>\r
10921             The <see cref="T:log4net.Core.Level"/> that will cause this evaluator to trigger\r
10922             </value>\r
10923             <remarks>\r
10924             <para>\r
10925             This evaluator will trigger if the level of the event\r
10926             passed to <see cref="M:log4net.Core.LevelEvaluator.IsTriggeringEvent(log4net.Core.LoggingEvent)"/>\r
10927             is equal to or greater than the <see cref="P:log4net.Core.LevelEvaluator.Threshold"/>\r
10928             level.\r
10929             </para>\r
10930             </remarks>\r
10931         </member>\r
10932         <member name="T:log4net.Core.LevelMap">\r
10933             <summary>\r
10934             Mapping between string name and Level object\r
10935             </summary>\r
10936             <remarks>\r
10937             <para>\r
10938             Mapping between string name and <see cref="T:log4net.Core.Level"/> object.\r
10939             This mapping is held separately for each <see cref="T:log4net.Repository.ILoggerRepository"/>.\r
10940             The level name is case insensitive.\r
10941             </para>\r
10942             </remarks>\r
10943             <author>Nicko Cadell</author>\r
10944         </member>\r
10945         <member name="F:log4net.Core.LevelMap.m_mapName2Level">\r
10946             <summary>\r
10947             Mapping from level name to Level object. The\r
10948             level name is case insensitive\r
10949             </summary>\r
10950         </member>\r
10951         <member name="M:log4net.Core.LevelMap.#ctor">\r
10952             <summary>\r
10953             Construct the level map\r
10954             </summary>\r
10955             <remarks>\r
10956             <para>\r
10957             Construct the level map.\r
10958             </para>\r
10959             </remarks>\r
10960         </member>\r
10961         <member name="M:log4net.Core.LevelMap.Clear">\r
10962             <summary>\r
10963             Clear the internal maps of all levels\r
10964             </summary>\r
10965             <remarks>\r
10966             <para>\r
10967             Clear the internal maps of all levels\r
10968             </para>\r
10969             </remarks>\r
10970         </member>\r
10971         <member name="M:log4net.Core.LevelMap.Add(System.String,System.Int32)">\r
10972             <summary>\r
10973             Create a new Level and add it to the map\r
10974             </summary>\r
10975             <param name="name">the string to display for the Level</param>\r
10976             <param name="value">the level value to give to the Level</param>\r
10977             <remarks>\r
10978             <para>\r
10979             Create a new Level and add it to the map\r
10980             </para>\r
10981             </remarks>\r
10982             <seealso cref="M:log4net.Core.LevelMap.Add(System.String,System.Int32,System.String)"/>\r
10983         </member>\r
10984         <member name="M:log4net.Core.LevelMap.Add(System.String,System.Int32,System.String)">\r
10985             <summary>\r
10986             Create a new Level and add it to the map\r
10987             </summary>\r
10988             <param name="name">the string to display for the Level</param>\r
10989             <param name="value">the level value to give to the Level</param>\r
10990             <param name="displayName">the display name to give to the Level</param>\r
10991             <remarks>\r
10992             <para>\r
10993             Create a new Level and add it to the map\r
10994             </para>\r
10995             </remarks>\r
10996         </member>\r
10997         <member name="M:log4net.Core.LevelMap.Add(log4net.Core.Level)">\r
10998             <summary>\r
10999             Add a Level to the map\r
11000             </summary>\r
11001             <param name="level">the Level to add</param>\r
11002             <remarks>\r
11003             <para>\r
11004             Add a Level to the map\r
11005             </para>\r
11006             </remarks>\r
11007         </member>\r
11008         <member name="M:log4net.Core.LevelMap.LookupWithDefault(log4net.Core.Level)">\r
11009             <summary>\r
11010             Lookup a named level from the map\r
11011             </summary>\r
11012             <param name="defaultLevel">the name of the level to lookup is taken from this level. \r
11013             If the level is not set on the map then this level is added</param>\r
11014             <returns>the level in the map with the name specified</returns>\r
11015             <remarks>\r
11016             <para>\r
11017             Lookup a named level from the map. The name of the level to lookup is taken\r
11018             from the <see cref="P:log4net.Core.Level.Name"/> property of the <paramref name="defaultLevel"/>\r
11019             argument.\r
11020             </para>\r
11021             <para>\r
11022             If no level with the specified name is found then the \r
11023             <paramref name="defaultLevel"/> argument is added to the level map\r
11024             and returned.\r
11025             </para>\r
11026             </remarks>\r
11027         </member>\r
11028         <member name="P:log4net.Core.LevelMap.Item(System.String)">\r
11029             <summary>\r
11030             Lookup a <see cref="T:log4net.Core.Level"/> by name\r
11031             </summary>\r
11032             <param name="name">The name of the Level to lookup</param>\r
11033             <returns>a Level from the map with the name specified</returns>\r
11034             <remarks>\r
11035             <para>\r
11036             Returns the <see cref="T:log4net.Core.Level"/> from the\r
11037             map with the name specified. If the no level is\r
11038             found then <c>null</c> is returned.\r
11039             </para>\r
11040             </remarks>\r
11041         </member>\r
11042         <member name="P:log4net.Core.LevelMap.AllLevels">\r
11043             <summary>\r
11044             Return all possible levels as a list of Level objects.\r
11045             </summary>\r
11046             <returns>all possible levels as a list of Level objects</returns>\r
11047             <remarks>\r
11048             <para>\r
11049             Return all possible levels as a list of Level objects.\r
11050             </para>\r
11051             </remarks>\r
11052         </member>\r
11053         <member name="T:log4net.Core.LocationInfo">\r
11054             <summary>\r
11055             The internal representation of caller location information.\r
11056             </summary>\r
11057             <remarks>\r
11058             <para>\r
11059             This class uses the <c>System.Diagnostics.StackTrace</c> class to generate\r
11060             a call stack. The caller's information is then extracted from this stack.\r
11061             </para>\r
11062             <para>\r
11063             The <c>System.Diagnostics.StackTrace</c> class is not supported on the \r
11064             .NET Compact Framework 1.0 therefore caller location information is not\r
11065             available on that framework.\r
11066             </para>\r
11067             <para>\r
11068             The <c>System.Diagnostics.StackTrace</c> class has this to say about Release builds:\r
11069             </para>\r
11070             <para>\r
11071             "StackTrace information will be most informative with Debug build configurations. \r
11072             By default, Debug builds include debug symbols, while Release builds do not. The \r
11073             debug symbols contain most of the file, method name, line number, and column \r
11074             information used in constructing StackFrame and StackTrace objects. StackTrace \r
11075             might not report as many method calls as expected, due to code transformations \r
11076             that occur during optimization."\r
11077             </para>\r
11078             <para>\r
11079             This means that in a Release build the caller information may be incomplete or may \r
11080             not exist at all! Therefore caller location information cannot be relied upon in a Release build.\r
11081             </para>\r
11082             </remarks>\r
11083             <author>Nicko Cadell</author>\r
11084             <author>Gert Driesen</author>\r
11085         </member>\r
11086         <member name="F:log4net.Core.LocationInfo.NA">\r
11087             <summary>\r
11088             When location information is not available the constant\r
11089             <c>NA</c> is returned. Current value of this string\r
11090             constant is <b>?</b>.\r
11091             </summary>\r
11092         </member>\r
11093         <member name="M:log4net.Core.LocationInfo.#ctor(System.Type)">\r
11094             <summary>\r
11095             Constructor\r
11096             </summary>\r
11097             <param name="callerStackBoundaryDeclaringType">The declaring type of the method that is\r
11098             the stack boundary into the logging system for this call.</param>\r
11099             <remarks>\r
11100             <para>\r
11101             Initializes a new instance of the <see cref="T:log4net.Core.LocationInfo"/>\r
11102             class based on the current thread.\r
11103             </para>\r
11104             </remarks>\r
11105         </member>\r
11106         <member name="M:log4net.Core.LocationInfo.#ctor(System.String,System.String,System.String,System.String)">\r
11107             <summary>\r
11108             Constructor\r
11109             </summary>\r
11110             <param name="className">The fully qualified class name.</param>\r
11111             <param name="methodName">The method name.</param>\r
11112             <param name="fileName">The file name.</param>\r
11113             <param name="lineNumber">The line number of the method within the file.</param>\r
11114             <remarks>\r
11115             <para>\r
11116             Initializes a new instance of the <see cref="T:log4net.Core.LocationInfo"/>\r
11117             class with the specified data.\r
11118             </para>\r
11119             </remarks>\r
11120         </member>\r
11121         <member name="P:log4net.Core.LocationInfo.ClassName">\r
11122             <summary>\r
11123             Gets the fully qualified class name of the caller making the logging \r
11124             request.\r
11125             </summary>\r
11126             <value>\r
11127             The fully qualified class name of the caller making the logging \r
11128             request.\r
11129             </value>\r
11130             <remarks>\r
11131             <para>\r
11132             Gets the fully qualified class name of the caller making the logging \r
11133             request.\r
11134             </para>\r
11135             </remarks>\r
11136         </member>\r
11137         <member name="P:log4net.Core.LocationInfo.FileName">\r
11138             <summary>\r
11139             Gets the file name of the caller.\r
11140             </summary>\r
11141             <value>\r
11142             The file name of the caller.\r
11143             </value>\r
11144             <remarks>\r
11145             <para>\r
11146             Gets the file name of the caller.\r
11147             </para>\r
11148             </remarks>\r
11149         </member>\r
11150         <member name="P:log4net.Core.LocationInfo.LineNumber">\r
11151             <summary>\r
11152             Gets the line number of the caller.\r
11153             </summary>\r
11154             <value>\r
11155             The line number of the caller.\r
11156             </value>\r
11157             <remarks>\r
11158             <para>\r
11159             Gets the line number of the caller.\r
11160             </para>\r
11161             </remarks>\r
11162         </member>\r
11163         <member name="P:log4net.Core.LocationInfo.MethodName">\r
11164             <summary>\r
11165             Gets the method name of the caller.\r
11166             </summary>\r
11167             <value>\r
11168             The method name of the caller.\r
11169             </value>\r
11170             <remarks>\r
11171             <para>\r
11172             Gets the method name of the caller.\r
11173             </para>\r
11174             </remarks>\r
11175         </member>\r
11176         <member name="P:log4net.Core.LocationInfo.FullInfo">\r
11177             <summary>\r
11178             Gets all available caller information\r
11179             </summary>\r
11180             <value>\r
11181             All available caller information, in the format\r
11182             <c>fully.qualified.classname.of.caller.methodName(Filename:line)</c>\r
11183             </value>\r
11184             <remarks>\r
11185             <para>\r
11186             Gets all available caller information, in the format\r
11187             <c>fully.qualified.classname.of.caller.methodName(Filename:line)</c>\r
11188             </para>\r
11189             </remarks>\r
11190         </member>\r
11191         <member name="T:log4net.Core.LoggerManager">\r
11192             <summary>\r
11193             Static manager that controls the creation of repositories\r
11194             </summary>\r
11195             <remarks>\r
11196             <para>\r
11197             Static manager that controls the creation of repositories\r
11198             </para>\r
11199             <para>\r
11200             This class is used by the wrapper managers (e.g. <see cref="T:log4net.LogManager"/>)\r
11201             to provide access to the <see cref="T:log4net.Core.ILogger"/> objects.\r
11202             </para>\r
11203             <para>\r
11204             This manager also holds the <see cref="T:log4net.Core.IRepositorySelector"/> that is used to\r
11205             lookup and create repositories. The selector can be set either programmatically using\r
11206             the <see cref="P:log4net.Core.LoggerManager.RepositorySelector"/> property, or by setting the <c>log4net.RepositorySelector</c>\r
11207             AppSetting in the applications config file to the fully qualified type name of the\r
11208             selector to use. \r
11209             </para>\r
11210             </remarks>\r
11211             <author>Nicko Cadell</author>\r
11212             <author>Gert Driesen</author>\r
11213         </member>\r
11214         <member name="M:log4net.Core.LoggerManager.#ctor">\r
11215             <summary>\r
11216             Private constructor to prevent instances. Only static methods should be used.\r
11217             </summary>\r
11218             <remarks>\r
11219             <para>\r
11220             Private constructor to prevent instances. Only static methods should be used.\r
11221             </para>\r
11222             </remarks>\r
11223         </member>\r
11224         <member name="M:log4net.Core.LoggerManager.#cctor">\r
11225             <summary>\r
11226             Hook the shutdown event\r
11227             </summary>\r
11228             <remarks>\r
11229             <para>\r
11230             On the full .NET runtime, the static constructor hooks up the \r
11231             <c>AppDomain.ProcessExit</c> and <c>AppDomain.DomainUnload</c>> events. \r
11232             These are used to shutdown the log4net system as the application exits.\r
11233             </para>\r
11234             </remarks>\r
11235         </member>\r
11236         <member name="M:log4net.Core.LoggerManager.RegisterAppDomainEvents">\r
11237             <summary>\r
11238             Register for ProcessExit and DomainUnload events on the AppDomain\r
11239             </summary>\r
11240             <remarks>\r
11241             <para>\r
11242             This needs to be in a separate method because the events make\r
11243             a LinkDemand for the ControlAppDomain SecurityPermission. Because\r
11244             this is a LinkDemand it is demanded at JIT time. Therefore we cannot\r
11245             catch the exception in the method itself, we have to catch it in the\r
11246             caller.\r
11247             </para>\r
11248             </remarks>\r
11249         </member>\r
11250         <member name="M:log4net.Core.LoggerManager.GetLoggerRepository(System.String)">\r
11251             <summary>\r
11252             Return the default <see cref="T:log4net.Repository.ILoggerRepository"/> instance.\r
11253             </summary>\r
11254             <param name="repository">the repository to lookup in</param>\r
11255             <returns>Return the default <see cref="T:log4net.Repository.ILoggerRepository"/> instance</returns>\r
11256             <remarks>\r
11257             <para>\r
11258             Gets the <see cref="T:log4net.Repository.ILoggerRepository"/> for the repository specified\r
11259             by the <paramref name="repository"/> argument.\r
11260             </para>\r
11261             </remarks>\r
11262         </member>\r
11263         <member name="M:log4net.Core.LoggerManager.GetLoggerRepository(System.Reflection.Assembly)">\r
11264             <summary>\r
11265             Returns the default <see cref="T:log4net.Repository.ILoggerRepository"/> instance.\r
11266             </summary>\r
11267             <param name="repositoryAssembly">The assembly to use to lookup the repository.</param>\r
11268             <returns>The default <see cref="T:log4net.Repository.ILoggerRepository"/> instance.</returns>\r
11269         </member>\r
11270         <member name="M:log4net.Core.LoggerManager.GetRepository(System.String)">\r
11271             <summary>\r
11272             Return the default <see cref="T:log4net.Repository.ILoggerRepository"/> instance.\r
11273             </summary>\r
11274             <param name="repository">the repository to lookup in</param>\r
11275             <returns>Return the default <see cref="T:log4net.Repository.ILoggerRepository"/> instance</returns>\r
11276             <remarks>\r
11277             <para>\r
11278             Gets the <see cref="T:log4net.Repository.ILoggerRepository"/> for the repository specified\r
11279             by the <paramref name="repository"/> argument.\r
11280             </para>\r
11281             </remarks>\r
11282         </member>\r
11283         <member name="M:log4net.Core.LoggerManager.GetRepository(System.Reflection.Assembly)">\r
11284             <summary>\r
11285             Returns the default <see cref="T:log4net.Repository.ILoggerRepository"/> instance.\r
11286             </summary>\r
11287             <param name="repositoryAssembly">The assembly to use to lookup the repository.</param>\r
11288             <returns>The default <see cref="T:log4net.Repository.ILoggerRepository"/> instance.</returns>\r
11289             <remarks>\r
11290             <para>\r
11291             Returns the default <see cref="T:log4net.Repository.ILoggerRepository"/> instance.\r
11292             </para>\r
11293             </remarks>\r
11294         </member>\r
11295         <member name="M:log4net.Core.LoggerManager.Exists(System.String,System.String)">\r
11296             <summary>\r
11297             Returns the named logger if it exists.\r
11298             </summary>\r
11299             <param name="repository">The repository to lookup in.</param>\r
11300             <param name="name">The fully qualified logger name to look for.</param>\r
11301             <returns>\r
11302             The logger found, or <c>null</c> if the named logger does not exist in the\r
11303             specified repository.\r
11304             </returns>\r
11305             <remarks>\r
11306             <para>\r
11307             If the named logger exists (in the specified repository) then it\r
11308             returns a reference to the logger, otherwise it returns\r
11309             <c>null</c>.\r
11310             </para>\r
11311             </remarks>\r
11312         </member>\r
11313         <member name="M:log4net.Core.LoggerManager.Exists(System.Reflection.Assembly,System.String)">\r
11314             <summary>\r
11315             Returns the named logger if it exists.\r
11316             </summary>\r
11317             <param name="repositoryAssembly">The assembly to use to lookup the repository.</param>\r
11318             <param name="name">The fully qualified logger name to look for.</param>\r
11319             <returns>\r
11320             The logger found, or <c>null</c> if the named logger does not exist in the\r
11321             specified assembly's repository.\r
11322             </returns>\r
11323             <remarks>\r
11324             <para>\r
11325             If the named logger exists (in the specified assembly's repository) then it\r
11326             returns a reference to the logger, otherwise it returns\r
11327             <c>null</c>.\r
11328             </para>\r
11329             </remarks>\r
11330         </member>\r
11331         <member name="M:log4net.Core.LoggerManager.GetCurrentLoggers(System.String)">\r
11332             <summary>\r
11333             Returns all the currently defined loggers in the specified repository.\r
11334             </summary>\r
11335             <param name="repository">The repository to lookup in.</param>\r
11336             <returns>All the defined loggers.</returns>\r
11337             <remarks>\r
11338             <para>\r
11339             The root logger is <b>not</b> included in the returned array.\r
11340             </para>\r
11341             </remarks>\r
11342         </member>\r
11343         <member name="M:log4net.Core.LoggerManager.GetCurrentLoggers(System.Reflection.Assembly)">\r
11344             <summary>\r
11345             Returns all the currently defined loggers in the specified assembly's repository.\r
11346             </summary>\r
11347             <param name="repositoryAssembly">The assembly to use to lookup the repository.</param>\r
11348             <returns>All the defined loggers.</returns>\r
11349             <remarks>\r
11350             <para>\r
11351             The root logger is <b>not</b> included in the returned array.\r
11352             </para>\r
11353             </remarks>\r
11354         </member>\r
11355         <member name="M:log4net.Core.LoggerManager.GetLogger(System.String,System.String)">\r
11356             <summary>\r
11357             Retrieves or creates a named logger.\r
11358             </summary>\r
11359             <param name="repository">The repository to lookup in.</param>\r
11360             <param name="name">The name of the logger to retrieve.</param>\r
11361             <returns>The logger with the name specified.</returns>\r
11362             <remarks>\r
11363             <para>\r
11364             Retrieves a logger named as the <paramref name="name"/>\r
11365             parameter. If the named logger already exists, then the\r
11366             existing instance will be returned. Otherwise, a new instance is\r
11367             created.\r
11368             </para>\r
11369             <para>\r
11370             By default, loggers do not have a set level but inherit\r
11371             it from the hierarchy. This is one of the central features of\r
11372             log4net.\r
11373             </para>\r
11374             </remarks>\r
11375         </member>\r
11376         <member name="M:log4net.Core.LoggerManager.GetLogger(System.Reflection.Assembly,System.String)">\r
11377             <summary>\r
11378             Retrieves or creates a named logger.\r
11379             </summary>\r
11380             <param name="repositoryAssembly">The assembly to use to lookup the repository.</param>\r
11381             <param name="name">The name of the logger to retrieve.</param>\r
11382             <returns>The logger with the name specified.</returns>\r
11383             <remarks>\r
11384             <para>\r
11385             Retrieves a logger named as the <paramref name="name"/>\r
11386             parameter. If the named logger already exists, then the\r
11387             existing instance will be returned. Otherwise, a new instance is\r
11388             created.\r
11389             </para>\r
11390             <para>\r
11391             By default, loggers do not have a set level but inherit\r
11392             it from the hierarchy. This is one of the central features of\r
11393             log4net.\r
11394             </para>\r
11395             </remarks>\r
11396         </member>\r
11397         <member name="M:log4net.Core.LoggerManager.GetLogger(System.String,System.Type)">\r
11398             <summary>\r
11399             Shorthand for <see cref="M:log4net.LogManager.GetLogger(System.String)"/>.\r
11400             </summary>\r
11401             <param name="repository">The repository to lookup in.</param>\r
11402             <param name="type">The <paramref name="type"/> of which the fullname will be used as the name of the logger to retrieve.</param>\r
11403             <returns>The logger with the name specified.</returns>\r
11404             <remarks>\r
11405             <para>\r
11406             Gets the logger for the fully qualified name of the type specified.\r
11407             </para>\r
11408             </remarks>\r
11409         </member>\r
11410         <member name="M:log4net.Core.LoggerManager.GetLogger(System.Reflection.Assembly,System.Type)">\r
11411             <summary>\r
11412             Shorthand for <see cref="M:log4net.LogManager.GetLogger(System.String)"/>.\r
11413             </summary>\r
11414             <param name="repositoryAssembly">the assembly to use to lookup the repository</param>\r
11415             <param name="type">The <paramref name="type"/> of which the fullname will be used as the name of the logger to retrieve.</param>\r
11416             <returns>The logger with the name specified.</returns>\r
11417             <remarks>\r
11418             <para>\r
11419             Gets the logger for the fully qualified name of the type specified.\r
11420             </para>\r
11421             </remarks>\r
11422         </member>\r
11423         <member name="M:log4net.Core.LoggerManager.Shutdown">\r
11424             <summary>\r
11425             Shuts down the log4net system.\r
11426             </summary>\r
11427             <remarks>\r
11428             <para>\r
11429             Calling this method will <b>safely</b> close and remove all\r
11430             appenders in all the loggers including root contained in all the\r
11431             default repositories.\r
11432             </para>\r
11433             <para>\r
11434             Some appenders need to be closed before the application exists. \r
11435             Otherwise, pending logging events might be lost.\r
11436             </para>\r
11437             <para>\r
11438             The <c>shutdown</c> method is careful to close nested\r
11439             appenders before closing regular appenders. This is allows\r
11440             configurations where a regular appender is attached to a logger\r
11441             and again to a nested appender.\r
11442             </para>\r
11443             </remarks>\r
11444         </member>\r
11445         <member name="M:log4net.Core.LoggerManager.ShutdownRepository(System.String)">\r
11446             <summary>\r
11447             Shuts down the repository for the repository specified.\r
11448             </summary>\r
11449             <param name="repository">The repository to shutdown.</param>\r
11450             <remarks>\r
11451             <para>\r
11452             Calling this method will <b>safely</b> close and remove all\r
11453             appenders in all the loggers including root contained in the\r
11454             repository for the <paramref name="repository"/> specified.\r
11455             </para>\r
11456             <para>\r
11457             Some appenders need to be closed before the application exists. \r
11458             Otherwise, pending logging events might be lost.\r
11459             </para>\r
11460             <para>\r
11461             The <c>shutdown</c> method is careful to close nested\r
11462             appenders before closing regular appenders. This is allows\r
11463             configurations where a regular appender is attached to a logger\r
11464             and again to a nested appender.\r
11465             </para>\r
11466             </remarks>\r
11467         </member>\r
11468         <member name="M:log4net.Core.LoggerManager.ShutdownRepository(System.Reflection.Assembly)">\r
11469             <summary>\r
11470             Shuts down the repository for the repository specified.\r
11471             </summary>\r
11472             <param name="repositoryAssembly">The assembly to use to lookup the repository.</param>\r
11473             <remarks>\r
11474             <para>\r
11475             Calling this method will <b>safely</b> close and remove all\r
11476             appenders in all the loggers including root contained in the\r
11477             repository for the repository. The repository is looked up using\r
11478             the <paramref name="repositoryAssembly"/> specified.\r
11479             </para>\r
11480             <para>\r
11481             Some appenders need to be closed before the application exists. \r
11482             Otherwise, pending logging events might be lost.\r
11483             </para>\r
11484             <para>\r
11485             The <c>shutdown</c> method is careful to close nested\r
11486             appenders before closing regular appenders. This is allows\r
11487             configurations where a regular appender is attached to a logger\r
11488             and again to a nested appender.\r
11489             </para>\r
11490             </remarks>\r
11491         </member>\r
11492         <member name="M:log4net.Core.LoggerManager.ResetConfiguration(System.String)">\r
11493             <summary>\r
11494             Resets all values contained in this repository instance to their defaults.\r
11495             </summary>\r
11496             <param name="repository">The repository to reset.</param>\r
11497             <remarks>\r
11498             <para>\r
11499             Resets all values contained in the repository instance to their\r
11500             defaults.  This removes all appenders from all loggers, sets\r
11501             the level of all non-root loggers to <c>null</c>,\r
11502             sets their additivity flag to <c>true</c> and sets the level\r
11503             of the root logger to <see cref="F:log4net.Core.Level.Debug"/>. Moreover,\r
11504             message disabling is set its default "off" value.\r
11505             </para>             \r
11506             </remarks>\r
11507         </member>\r
11508         <member name="M:log4net.Core.LoggerManager.ResetConfiguration(System.Reflection.Assembly)">\r
11509             <summary>\r
11510             Resets all values contained in this repository instance to their defaults.\r
11511             </summary>\r
11512             <param name="repositoryAssembly">The assembly to use to lookup the repository to reset.</param>\r
11513             <remarks>\r
11514             <para>\r
11515             Resets all values contained in the repository instance to their\r
11516             defaults.  This removes all appenders from all loggers, sets\r
11517             the level of all non-root loggers to <c>null</c>,\r
11518             sets their additivity flag to <c>true</c> and sets the level\r
11519             of the root logger to <see cref="F:log4net.Core.Level.Debug"/>. Moreover,\r
11520             message disabling is set its default "off" value.\r
11521             </para>             \r
11522             </remarks>\r
11523         </member>\r
11524         <member name="M:log4net.Core.LoggerManager.CreateDomain(System.String)">\r
11525             <summary>\r
11526             Creates a repository with the specified name.\r
11527             </summary>\r
11528             <param name="repository">The name of the repository, this must be unique amongst repositories.</param>\r
11529             <returns>The <see cref="T:log4net.Repository.ILoggerRepository"/> created for the repository.</returns>\r
11530             <remarks>\r
11531             <para>\r
11532             <b>CreateDomain is obsolete. Use CreateRepository instead of CreateDomain.</b>\r
11533             </para>\r
11534             <para>\r
11535             Creates the default type of <see cref="T:log4net.Repository.ILoggerRepository"/> which is a\r
11536             <see cref="T:log4net.Repository.Hierarchy.Hierarchy"/> object.\r
11537             </para>\r
11538             <para>\r
11539             The <paramref name="repository"/> name must be unique. Repositories cannot be redefined.\r
11540             An <see cref="T:System.Exception"/> will be thrown if the repository already exists.\r
11541             </para>\r
11542             </remarks>\r
11543             <exception cref="T:log4net.Core.LogException">The specified repository already exists.</exception>\r
11544         </member>\r
11545         <member name="M:log4net.Core.LoggerManager.CreateRepository(System.String)">\r
11546             <summary>\r
11547             Creates a repository with the specified name.\r
11548             </summary>\r
11549             <param name="repository">The name of the repository, this must be unique amongst repositories.</param>\r
11550             <returns>The <see cref="T:log4net.Repository.ILoggerRepository"/> created for the repository.</returns>\r
11551             <remarks>\r
11552             <para>\r
11553             Creates the default type of <see cref="T:log4net.Repository.ILoggerRepository"/> which is a\r
11554             <see cref="T:log4net.Repository.Hierarchy.Hierarchy"/> object.\r
11555             </para>\r
11556             <para>\r
11557             The <paramref name="repository"/> name must be unique. Repositories cannot be redefined.\r
11558             An <see cref="T:System.Exception"/> will be thrown if the repository already exists.\r
11559             </para>\r
11560             </remarks>\r
11561             <exception cref="T:log4net.Core.LogException">The specified repository already exists.</exception>\r
11562         </member>\r
11563         <member name="M:log4net.Core.LoggerManager.CreateDomain(System.String,System.Type)">\r
11564             <summary>\r
11565             Creates a repository with the specified name and repository type.\r
11566             </summary>\r
11567             <param name="repository">The name of the repository, this must be unique to the repository.</param>\r
11568             <param name="repositoryType">A <see cref="T:System.Type"/> that implements <see cref="T:log4net.Repository.ILoggerRepository"/>\r
11569             and has a no arg constructor. An instance of this type will be created to act\r
11570             as the <see cref="T:log4net.Repository.ILoggerRepository"/> for the repository specified.</param>\r
11571             <returns>The <see cref="T:log4net.Repository.ILoggerRepository"/> created for the repository.</returns>\r
11572             <remarks>\r
11573             <para>\r
11574             <b>CreateDomain is obsolete. Use CreateRepository instead of CreateDomain.</b>\r
11575             </para>\r
11576             <para>\r
11577             The <paramref name="repository"/> name must be unique. Repositories cannot be redefined.\r
11578             An Exception will be thrown if the repository already exists.\r
11579             </para>\r
11580             </remarks>\r
11581             <exception cref="T:log4net.Core.LogException">The specified repository already exists.</exception>\r
11582         </member>\r
11583         <member name="M:log4net.Core.LoggerManager.CreateRepository(System.String,System.Type)">\r
11584             <summary>\r
11585             Creates a repository with the specified name and repository type.\r
11586             </summary>\r
11587             <param name="repository">The name of the repository, this must be unique to the repository.</param>\r
11588             <param name="repositoryType">A <see cref="T:System.Type"/> that implements <see cref="T:log4net.Repository.ILoggerRepository"/>\r
11589             and has a no arg constructor. An instance of this type will be created to act\r
11590             as the <see cref="T:log4net.Repository.ILoggerRepository"/> for the repository specified.</param>\r
11591             <returns>The <see cref="T:log4net.Repository.ILoggerRepository"/> created for the repository.</returns>\r
11592             <remarks>\r
11593             <para>\r
11594             The <paramref name="repository"/> name must be unique. Repositories cannot be redefined.\r
11595             An Exception will be thrown if the repository already exists.\r
11596             </para>\r
11597             </remarks>\r
11598             <exception cref="T:log4net.Core.LogException">The specified repository already exists.</exception>\r
11599         </member>\r
11600         <member name="M:log4net.Core.LoggerManager.CreateDomain(System.Reflection.Assembly,System.Type)">\r
11601             <summary>\r
11602             Creates a repository for the specified assembly and repository type.\r
11603             </summary>\r
11604             <param name="repositoryAssembly">The assembly to use to get the name of the repository.</param>\r
11605             <param name="repositoryType">A <see cref="T:System.Type"/> that implements <see cref="T:log4net.Repository.ILoggerRepository"/>\r
11606             and has a no arg constructor. An instance of this type will be created to act\r
11607             as the <see cref="T:log4net.Repository.ILoggerRepository"/> for the repository specified.</param>\r
11608             <returns>The <see cref="T:log4net.Repository.ILoggerRepository"/> created for the repository.</returns>\r
11609             <remarks>\r
11610             <para>\r
11611             <b>CreateDomain is obsolete. Use CreateRepository instead of CreateDomain.</b>\r
11612             </para>\r
11613             <para>\r
11614             The <see cref="T:log4net.Repository.ILoggerRepository"/> created will be associated with the repository\r
11615             specified such that a call to <see cref="M:log4net.Core.LoggerManager.GetRepository(System.Reflection.Assembly)"/> with the\r
11616             same assembly specified will return the same repository instance.\r
11617             </para>\r
11618             </remarks>\r
11619         </member>\r
11620         <member name="M:log4net.Core.LoggerManager.CreateRepository(System.Reflection.Assembly,System.Type)">\r
11621             <summary>\r
11622             Creates a repository for the specified assembly and repository type.\r
11623             </summary>\r
11624             <param name="repositoryAssembly">The assembly to use to get the name of the repository.</param>\r
11625             <param name="repositoryType">A <see cref="T:System.Type"/> that implements <see cref="T:log4net.Repository.ILoggerRepository"/>\r
11626             and has a no arg constructor. An instance of this type will be created to act\r
11627             as the <see cref="T:log4net.Repository.ILoggerRepository"/> for the repository specified.</param>\r
11628             <returns>The <see cref="T:log4net.Repository.ILoggerRepository"/> created for the repository.</returns>\r
11629             <remarks>\r
11630             <para>\r
11631             The <see cref="T:log4net.Repository.ILoggerRepository"/> created will be associated with the repository\r
11632             specified such that a call to <see cref="M:log4net.Core.LoggerManager.GetRepository(System.Reflection.Assembly)"/> with the\r
11633             same assembly specified will return the same repository instance.\r
11634             </para>\r
11635             </remarks>\r
11636         </member>\r
11637         <member name="M:log4net.Core.LoggerManager.GetAllRepositories">\r
11638             <summary>\r
11639             Gets an array of all currently defined repositories.\r
11640             </summary>\r
11641             <returns>An array of all the known <see cref="T:log4net.Repository.ILoggerRepository"/> objects.</returns>\r
11642             <remarks>\r
11643             <para>\r
11644             Gets an array of all currently defined repositories.\r
11645             </para>\r
11646             </remarks>\r
11647         </member>\r
11648         <member name="M:log4net.Core.LoggerManager.GetVersionInfo">\r
11649             <summary>\r
11650             Internal method to get pertinent version info.\r
11651             </summary>\r
11652             <returns>A string of version info.</returns>\r
11653         </member>\r
11654         <member name="M:log4net.Core.LoggerManager.OnDomainUnload(System.Object,System.EventArgs)">\r
11655             <summary>\r
11656             Called when the <see cref="E:System.AppDomain.DomainUnload"/> event fires\r
11657             </summary>\r
11658             <param name="sender">the <see cref="T:System.AppDomain"/> that is exiting</param>\r
11659             <param name="e">null</param>\r
11660             <remarks>\r
11661             <para>\r
11662             Called when the <see cref="E:System.AppDomain.DomainUnload"/> event fires.\r
11663             </para>\r
11664             <para>\r
11665             When the event is triggered the log4net system is <see cref="M:log4net.Core.LoggerManager.Shutdown"/>.\r
11666             </para>\r
11667             </remarks>\r
11668         </member>\r
11669         <member name="M:log4net.Core.LoggerManager.OnProcessExit(System.Object,System.EventArgs)">\r
11670             <summary>\r
11671             Called when the <see cref="E:System.AppDomain.ProcessExit"/> event fires\r
11672             </summary>\r
11673             <param name="sender">the <see cref="T:System.AppDomain"/> that is exiting</param>\r
11674             <param name="e">null</param>\r
11675             <remarks>\r
11676             <para>\r
11677             Called when the <see cref="E:System.AppDomain.ProcessExit"/> event fires.\r
11678             </para>\r
11679             <para>\r
11680             When the event is triggered the log4net system is <see cref="M:log4net.Core.LoggerManager.Shutdown"/>.\r
11681             </para>\r
11682             </remarks>\r
11683         </member>\r
11684         <member name="F:log4net.Core.LoggerManager.s_repositorySelector">\r
11685             <summary>\r
11686             Initialize the default repository selector\r
11687             </summary>\r
11688         </member>\r
11689         <member name="P:log4net.Core.LoggerManager.RepositorySelector">\r
11690             <summary>\r
11691             Gets or sets the repository selector used by the <see cref="T:log4net.LogManager"/>.\r
11692             </summary>\r
11693             <value>\r
11694             The repository selector used by the <see cref="T:log4net.LogManager"/>.\r
11695             </value>\r
11696             <remarks>\r
11697             <para>\r
11698             The repository selector (<see cref="T:log4net.Core.IRepositorySelector"/>) is used by \r
11699             the <see cref="T:log4net.LogManager"/> to create and select repositories \r
11700             (<see cref="T:log4net.Repository.ILoggerRepository"/>).\r
11701             </para>\r
11702             <para>\r
11703             The caller to <see cref="T:log4net.LogManager"/> supplies either a string name \r
11704             or an assembly (if not supplied the assembly is inferred using \r
11705             <see cref="M:System.Reflection.Assembly.GetCallingAssembly"/>).\r
11706             </para>\r
11707             <para>\r
11708             This context is used by the selector to lookup a specific repository.\r
11709             </para>\r
11710             <para>\r
11711             For the full .NET Framework, the default repository is <c>DefaultRepositorySelector</c>;\r
11712             for the .NET Compact Framework <c>CompactRepositorySelector</c> is the default\r
11713             repository.\r
11714             </para>\r
11715             </remarks>\r
11716         </member>\r
11717         <member name="T:log4net.Core.LoggerWrapperImpl">\r
11718             <summary>\r
11719             Implementation of the <see cref="T:log4net.Core.ILoggerWrapper"/> interface.\r
11720             </summary>\r
11721             <remarks>\r
11722             <para>\r
11723             This class should be used as the base for all wrapper implementations.\r
11724             </para>\r
11725             </remarks>\r
11726             <author>Nicko Cadell</author>\r
11727             <author>Gert Driesen</author>\r
11728         </member>\r
11729         <member name="M:log4net.Core.LoggerWrapperImpl.#ctor(log4net.Core.ILogger)">\r
11730             <summary>\r
11731             Constructs a new wrapper for the specified logger.\r
11732             </summary>\r
11733             <param name="logger">The logger to wrap.</param>\r
11734             <remarks>\r
11735             <para>\r
11736             Constructs a new wrapper for the specified logger.\r
11737             </para>\r
11738             </remarks>\r
11739         </member>\r
11740         <member name="F:log4net.Core.LoggerWrapperImpl.m_logger">\r
11741             <summary>\r
11742             The logger that this object is wrapping\r
11743             </summary>\r
11744         </member>\r
11745         <member name="P:log4net.Core.LoggerWrapperImpl.Logger">\r
11746             <summary>\r
11747             Gets the implementation behind this wrapper object.\r
11748             </summary>\r
11749             <value>\r
11750             The <see cref="T:log4net.Core.ILogger"/> object that this object is implementing.\r
11751             </value>\r
11752             <remarks>\r
11753             <para>\r
11754             The <c>Logger</c> object may not be the same object as this object \r
11755             because of logger decorators.\r
11756             </para>\r
11757             <para>\r
11758             This gets the actual underlying objects that is used to process\r
11759             the log events.\r
11760             </para>\r
11761             </remarks>\r
11762         </member>\r
11763         <member name="T:log4net.Core.LoggingEventData">\r
11764             <summary>\r
11765             Portable data structure used by <see cref="T:log4net.Core.LoggingEvent"/>\r
11766             </summary>\r
11767             <remarks>\r
11768             <para>\r
11769             Portable data structure used by <see cref="T:log4net.Core.LoggingEvent"/>\r
11770             </para>\r
11771             </remarks>\r
11772             <author>Nicko Cadell</author>\r
11773         </member>\r
11774         <member name="F:log4net.Core.LoggingEventData.LoggerName">\r
11775             <summary>\r
11776             The logger name.\r
11777             </summary>\r
11778             <remarks>\r
11779             <para>\r
11780             The logger name.\r
11781             </para>\r
11782             </remarks>\r
11783         </member>\r
11784         <member name="F:log4net.Core.LoggingEventData.Level">\r
11785             <summary>\r
11786             Level of logging event.\r
11787             </summary>\r
11788             <remarks>\r
11789             <para>\r
11790             Level of logging event. Level cannot be Serializable\r
11791             because it is a flyweight.  Due to its special serialization it\r
11792             cannot be declared final either.\r
11793             </para>\r
11794             </remarks>\r
11795         </member>\r
11796         <member name="F:log4net.Core.LoggingEventData.Message">\r
11797             <summary>\r
11798             The application supplied message.\r
11799             </summary>\r
11800             <remarks>\r
11801             <para>\r
11802             The application supplied message of logging event.\r
11803             </para>\r
11804             </remarks>\r
11805         </member>\r
11806         <member name="F:log4net.Core.LoggingEventData.ThreadName">\r
11807             <summary>\r
11808             The name of thread\r
11809             </summary>\r
11810             <remarks>\r
11811             <para>\r
11812             The name of thread in which this logging event was generated\r
11813             </para>\r
11814             </remarks>\r
11815         </member>\r
11816         <member name="F:log4net.Core.LoggingEventData.TimeStamp">\r
11817             <summary>\r
11818             The time the event was logged\r
11819             </summary>\r
11820             <remarks>\r
11821             <para>\r
11822             The TimeStamp is stored in the local time zone for this computer.\r
11823             </para>\r
11824             </remarks>\r
11825         </member>\r
11826         <member name="F:log4net.Core.LoggingEventData.LocationInfo">\r
11827             <summary>\r
11828             Location information for the caller.\r
11829             </summary>\r
11830             <remarks>\r
11831             <para>\r
11832             Location information for the caller.\r
11833             </para>\r
11834             </remarks>\r
11835         </member>\r
11836         <member name="F:log4net.Core.LoggingEventData.UserName">\r
11837             <summary>\r
11838             String representation of the user\r
11839             </summary>\r
11840             <remarks>\r
11841             <para>\r
11842             String representation of the user's windows name,\r
11843             like DOMAIN\username\r
11844             </para>\r
11845             </remarks>\r
11846         </member>\r
11847         <member name="F:log4net.Core.LoggingEventData.Identity">\r
11848             <summary>\r
11849             String representation of the identity.\r
11850             </summary>\r
11851             <remarks>\r
11852             <para>\r
11853             String representation of the current thread's principal identity.\r
11854             </para>\r
11855             </remarks>\r
11856         </member>\r
11857         <member name="F:log4net.Core.LoggingEventData.ExceptionString">\r
11858             <summary>\r
11859             The string representation of the exception\r
11860             </summary>\r
11861             <remarks>\r
11862             <para>\r
11863             The string representation of the exception\r
11864             </para>\r
11865             </remarks>\r
11866         </member>\r
11867         <member name="F:log4net.Core.LoggingEventData.Domain">\r
11868             <summary>\r
11869             String representation of the AppDomain.\r
11870             </summary>\r
11871             <remarks>\r
11872             <para>\r
11873             String representation of the AppDomain.\r
11874             </para>\r
11875             </remarks>\r
11876         </member>\r
11877         <member name="F:log4net.Core.LoggingEventData.Properties">\r
11878             <summary>\r
11879             Additional event specific properties\r
11880             </summary>\r
11881             <remarks>\r
11882             <para>\r
11883             A logger or an appender may attach additional\r
11884             properties to specific events. These properties\r
11885             have a string key and an object value.\r
11886             </para>\r
11887             </remarks>\r
11888         </member>\r
11889         <member name="T:log4net.Core.FixFlags">\r
11890             <summary>\r
11891             Flags passed to the <see cref="P:log4net.Core.LoggingEvent.Fix"/> property\r
11892             </summary>\r
11893             <remarks>\r
11894             <para>\r
11895             Flags passed to the <see cref="P:log4net.Core.LoggingEvent.Fix"/> property\r
11896             </para>\r
11897             </remarks>\r
11898             <author>Nicko Cadell</author>\r
11899         </member>\r
11900         <member name="F:log4net.Core.FixFlags.Mdc">\r
11901             <summary>\r
11902             Fix the MDC\r
11903             </summary>\r
11904         </member>\r
11905         <member name="F:log4net.Core.FixFlags.Ndc">\r
11906             <summary>\r
11907             Fix the NDC\r
11908             </summary>\r
11909         </member>\r
11910         <member name="F:log4net.Core.FixFlags.Message">\r
11911             <summary>\r
11912             Fix the rendered message\r
11913             </summary>\r
11914         </member>\r
11915         <member name="F:log4net.Core.FixFlags.ThreadName">\r
11916             <summary>\r
11917             Fix the thread name\r
11918             </summary>\r
11919         </member>\r
11920         <member name="F:log4net.Core.FixFlags.LocationInfo">\r
11921             <summary>\r
11922             Fix the callers location information\r
11923             </summary>\r
11924             <remarks>\r
11925             CAUTION: Very slow to generate\r
11926             </remarks>\r
11927         </member>\r
11928         <member name="F:log4net.Core.FixFlags.UserName">\r
11929             <summary>\r
11930             Fix the callers windows user name\r
11931             </summary>\r
11932             <remarks>\r
11933             CAUTION: Slow to generate\r
11934             </remarks>\r
11935         </member>\r
11936         <member name="F:log4net.Core.FixFlags.Domain">\r
11937             <summary>\r
11938             Fix the domain friendly name\r
11939             </summary>\r
11940         </member>\r
11941         <member name="F:log4net.Core.FixFlags.Identity">\r
11942             <summary>\r
11943             Fix the callers principal name\r
11944             </summary>\r
11945             <remarks>\r
11946             CAUTION: May be slow to generate\r
11947             </remarks>\r
11948         </member>\r
11949         <member name="F:log4net.Core.FixFlags.Exception">\r
11950             <summary>\r
11951             Fix the exception text\r
11952             </summary>\r
11953         </member>\r
11954         <member name="F:log4net.Core.FixFlags.Properties">\r
11955             <summary>\r
11956             Fix the event properties\r
11957             </summary>\r
11958         </member>\r
11959         <member name="F:log4net.Core.FixFlags.None">\r
11960             <summary>\r
11961             No fields fixed\r
11962             </summary>\r
11963         </member>\r
11964         <member name="F:log4net.Core.FixFlags.All">\r
11965             <summary>\r
11966             All fields fixed\r
11967             </summary>\r
11968         </member>\r
11969         <member name="F:log4net.Core.FixFlags.Partial">\r
11970             <summary>\r
11971             Partial fields fixed\r
11972             </summary>\r
11973             <remarks>\r
11974             <para>\r
11975             This set of partial fields gives good performance. The following fields are fixed:\r
11976             </para>\r
11977             <list type="bullet">\r
11978             <item><description><see cref="F:log4net.Core.FixFlags.Message"/></description></item>\r
11979             <item><description><see cref="F:log4net.Core.FixFlags.ThreadName"/></description></item>\r
11980             <item><description><see cref="F:log4net.Core.FixFlags.Exception"/></description></item>\r
11981             <item><description><see cref="F:log4net.Core.FixFlags.Domain"/></description></item>\r
11982             <item><description><see cref="F:log4net.Core.FixFlags.Properties"/></description></item>\r
11983             </list>\r
11984             </remarks>\r
11985         </member>\r
11986         <member name="T:log4net.Core.LoggingEvent">\r
11987             <summary>\r
11988             The internal representation of logging events. \r
11989             </summary>\r
11990             <remarks>\r
11991             <para>\r
11992             When an affirmative decision is made to log then a \r
11993             <see cref="T:log4net.Core.LoggingEvent"/> instance is created. This instance \r
11994             is passed around to the different log4net components.\r
11995             </para>\r
11996             <para>\r
11997             This class is of concern to those wishing to extend log4net.\r
11998             </para>\r
11999             <para>\r
12000             Some of the values in instances of <see cref="T:log4net.Core.LoggingEvent"/>\r
12001             are considered volatile, that is the values are correct at the\r
12002             time the event is delivered to appenders, but will not be consistent\r
12003             at any time afterwards. If an event is to be stored and then processed\r
12004             at a later time these volatile values must be fixed by calling\r
12005             <see cref="M:log4net.Core.LoggingEvent.FixVolatileData"/>. There is a performance penalty\r
12006             for incurred by calling <see cref="M:log4net.Core.LoggingEvent.FixVolatileData"/> but it\r
12007             is essential to maintaining data consistency.\r
12008             </para>\r
12009             </remarks>\r
12010             <author>Nicko Cadell</author>\r
12011             <author>Gert Driesen</author>\r
12012             <author>Douglas de la Torre</author>\r
12013             <author>Daniel Cazzulino</author>\r
12014         </member>\r
12015         <member name="F:log4net.Core.LoggingEvent.HostNameProperty">\r
12016             <summary>\r
12017             The key into the Properties map for the host name value.\r
12018             </summary>\r
12019         </member>\r
12020         <member name="F:log4net.Core.LoggingEvent.IdentityProperty">\r
12021             <summary>\r
12022             The key into the Properties map for the thread identity value.\r
12023             </summary>\r
12024         </member>\r
12025         <member name="F:log4net.Core.LoggingEvent.UserNameProperty">\r
12026             <summary>\r
12027             The key into the Properties map for the user name value.\r
12028             </summary>\r
12029         </member>\r
12030         <member name="M:log4net.Core.LoggingEvent.#ctor(System.Type,log4net.Repository.ILoggerRepository,System.String,log4net.Core.Level,System.Object,System.Exception)">\r
12031             <summary>\r
12032             Initializes a new instance of the <see cref="T:log4net.Core.LoggingEvent"/> class\r
12033             from the supplied parameters.\r
12034             </summary>\r
12035             <param name="callerStackBoundaryDeclaringType">The declaring type of the method that is\r
12036             the stack boundary into the logging system for this call.</param>\r
12037             <param name="repository">The repository this event is logged in.</param>\r
12038             <param name="loggerName">The name of the logger of this event.</param>\r
12039             <param name="level">The level of this event.</param>\r
12040             <param name="message">The message of this event.</param>\r
12041             <param name="exception">The exception for this event.</param>\r
12042             <remarks>\r
12043             <para>\r
12044             Except <see cref="P:log4net.Core.LoggingEvent.TimeStamp"/>, <see cref="P:log4net.Core.LoggingEvent.Level"/> and <see cref="P:log4net.Core.LoggingEvent.LoggerName"/>, \r
12045             all fields of <c>LoggingEvent</c> are filled when actually needed. Call\r
12046             <see cref="M:log4net.Core.LoggingEvent.FixVolatileData"/> to cache all data locally\r
12047             to prevent inconsistencies.\r
12048             </para>\r
12049             <para>This method is called by the log4net framework\r
12050             to create a logging event.\r
12051             </para>\r
12052             </remarks>\r
12053         </member>\r
12054         <member name="M:log4net.Core.LoggingEvent.#ctor(System.Type,log4net.Repository.ILoggerRepository,log4net.Core.LoggingEventData,log4net.Core.FixFlags)">\r
12055             <summary>\r
12056             Initializes a new instance of the <see cref="T:log4net.Core.LoggingEvent"/> class \r
12057             using specific data.\r
12058             </summary>\r
12059             <param name="callerStackBoundaryDeclaringType">The declaring type of the method that is\r
12060             the stack boundary into the logging system for this call.</param>\r
12061             <param name="repository">The repository this event is logged in.</param>\r
12062             <param name="data">Data used to initialize the logging event.</param>\r
12063             <param name="fixedData">The fields in the <paranref name="data"/> struct that have already been fixed.</param>\r
12064             <remarks>\r
12065             <para>\r
12066             This constructor is provided to allow a <see cref="T:log4net.Core.LoggingEvent"/>\r
12067             to be created independently of the log4net framework. This can\r
12068             be useful if you require a custom serialization scheme.\r
12069             </para>\r
12070             <para>\r
12071             Use the <see cref="M:log4net.Core.LoggingEvent.GetLoggingEventData(log4net.Core.FixFlags)"/> method to obtain an \r
12072             instance of the <see cref="T:log4net.Core.LoggingEventData"/> class.\r
12073             </para>\r
12074             <para>\r
12075             The <paramref name="fixedData"/> parameter should be used to specify which fields in the\r
12076             <paramref name="data"/> struct have been preset. Fields not specified in the <paramref name="fixedData"/>\r
12077             will be captured from the environment if requested or fixed.\r
12078             </para>\r
12079             </remarks>\r
12080         </member>\r
12081         <member name="M:log4net.Core.LoggingEvent.#ctor(System.Type,log4net.Repository.ILoggerRepository,log4net.Core.LoggingEventData)">\r
12082             <summary>\r
12083             Initializes a new instance of the <see cref="T:log4net.Core.LoggingEvent"/> class \r
12084             using specific data.\r
12085             </summary>\r
12086             <param name="callerStackBoundaryDeclaringType">The declaring type of the method that is\r
12087             the stack boundary into the logging system for this call.</param>\r
12088             <param name="repository">The repository this event is logged in.</param>\r
12089             <param name="data">Data used to initialize the logging event.</param>\r
12090             <remarks>\r
12091             <para>\r
12092             This constructor is provided to allow a <see cref="T:log4net.Core.LoggingEvent"/>\r
12093             to be created independently of the log4net framework. This can\r
12094             be useful if you require a custom serialization scheme.\r
12095             </para>\r
12096             <para>\r
12097             Use the <see cref="M:log4net.Core.LoggingEvent.GetLoggingEventData(log4net.Core.FixFlags)"/> method to obtain an \r
12098             instance of the <see cref="T:log4net.Core.LoggingEventData"/> class.\r
12099             </para>\r
12100             <para>\r
12101             This constructor sets this objects <see cref="P:log4net.Core.LoggingEvent.Fix"/> flags to <see cref="F:log4net.Core.FixFlags.All"/>,\r
12102             this assumes that all the data relating to this event is passed in via the <paramref name="data"/>\r
12103             parameter and no other data should be captured from the environment.\r
12104             </para>\r
12105             </remarks>\r
12106         </member>\r
12107         <member name="M:log4net.Core.LoggingEvent.#ctor(log4net.Core.LoggingEventData)">\r
12108             <summary>\r
12109             Initializes a new instance of the <see cref="T:log4net.Core.LoggingEvent"/> class \r
12110             using specific data.\r
12111             </summary>\r
12112             <param name="data">Data used to initialize the logging event.</param>\r
12113             <remarks>\r
12114             <para>\r
12115             This constructor is provided to allow a <see cref="T:log4net.Core.LoggingEvent"/>\r
12116             to be created independently of the log4net framework. This can\r
12117             be useful if you require a custom serialization scheme.\r
12118             </para>\r
12119             <para>\r
12120             Use the <see cref="M:log4net.Core.LoggingEvent.GetLoggingEventData(log4net.Core.FixFlags)"/> method to obtain an \r
12121             instance of the <see cref="T:log4net.Core.LoggingEventData"/> class.\r
12122             </para>\r
12123             <para>\r
12124             This constructor sets this objects <see cref="P:log4net.Core.LoggingEvent.Fix"/> flags to <see cref="F:log4net.Core.FixFlags.All"/>,\r
12125             this assumes that all the data relating to this event is passed in via the <paramref name="data"/>\r
12126             parameter and no other data should be captured from the environment.\r
12127             </para>\r
12128             </remarks>\r
12129         </member>\r
12130         <member name="M:log4net.Core.LoggingEvent.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">\r
12131             <summary>\r
12132             Serialization constructor\r
12133             </summary>\r
12134             <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data.</param>\r
12135             <param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the source or destination.</param>\r
12136             <remarks>\r
12137             <para>\r
12138             Initializes a new instance of the <see cref="T:log4net.Core.LoggingEvent"/> class \r
12139             with serialized data.\r
12140             </para>\r
12141             </remarks>\r
12142         </member>\r
12143         <member name="M:log4net.Core.LoggingEvent.EnsureRepository(log4net.Repository.ILoggerRepository)">\r
12144             <summary>\r
12145             Ensure that the repository is set.\r
12146             </summary>\r
12147             <param name="repository">the value for the repository</param>\r
12148         </member>\r
12149         <member name="M:log4net.Core.LoggingEvent.WriteRenderedMessage(System.IO.TextWriter)">\r
12150             <summary>\r
12151             Write the rendered message to a TextWriter\r
12152             </summary>\r
12153             <param name="writer">the writer to write the message to</param>\r
12154             <remarks>\r
12155             <para>\r
12156             Unlike the <see cref="P:log4net.Core.LoggingEvent.RenderedMessage"/> property this method\r
12157             does store the message data in the internal cache. Therefore \r
12158             if called only once this method should be faster than the\r
12159             <see cref="P:log4net.Core.LoggingEvent.RenderedMessage"/> property, however if the message is\r
12160             to be accessed multiple times then the property will be more efficient.\r
12161             </para>\r
12162             </remarks>\r
12163         </member>\r
12164         <member name="M:log4net.Core.LoggingEvent.GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">\r
12165             <summary>\r
12166             Serializes this object into the <see cref="T:System.Runtime.Serialization.SerializationInfo"/> provided.\r
12167             </summary>\r
12168             <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> to populate with data.</param>\r
12169             <param name="context">The destination for this serialization.</param>\r
12170             <remarks>\r
12171             <para>\r
12172             The data in this event must be fixed before it can be serialized.\r
12173             </para>\r
12174             <para>\r
12175             The <see cref="M:log4net.Core.LoggingEvent.FixVolatileData"/> method must be called during the\r
12176             <see cref="M:log4net.Appender.IAppender.DoAppend(log4net.Core.LoggingEvent)"/> method call if this event \r
12177             is to be used outside that method.\r
12178             </para>\r
12179             </remarks>\r
12180         </member>\r
12181         <member name="M:log4net.Core.LoggingEvent.GetLoggingEventData">\r
12182             <summary>\r
12183             Gets the portable data for this <see cref="T:log4net.Core.LoggingEvent"/>.\r
12184             </summary>\r
12185             <returns>The <see cref="T:log4net.Core.LoggingEventData"/> for this event.</returns>\r
12186             <remarks>\r
12187             <para>\r
12188             A new <see cref="T:log4net.Core.LoggingEvent"/> can be constructed using a\r
12189             <see cref="T:log4net.Core.LoggingEventData"/> instance.\r
12190             </para>\r
12191             <para>\r
12192             Does a <see cref="F:log4net.Core.FixFlags.Partial"/> fix of the data\r
12193             in the logging event before returning the event data.\r
12194             </para>\r
12195             </remarks>\r
12196         </member>\r
12197         <member name="M:log4net.Core.LoggingEvent.GetLoggingEventData(log4net.Core.FixFlags)">\r
12198             <summary>\r
12199             Gets the portable data for this <see cref="T:log4net.Core.LoggingEvent"/>.\r
12200             </summary>\r
12201             <param name="fixFlags">The set of data to ensure is fixed in the LoggingEventData</param>\r
12202             <returns>The <see cref="T:log4net.Core.LoggingEventData"/> for this event.</returns>\r
12203             <remarks>\r
12204             <para>\r
12205             A new <see cref="T:log4net.Core.LoggingEvent"/> can be constructed using a\r
12206             <see cref="T:log4net.Core.LoggingEventData"/> instance.\r
12207             </para>\r
12208             </remarks>\r
12209         </member>\r
12210         <member name="M:log4net.Core.LoggingEvent.GetExceptionStrRep">\r
12211             <summary>\r
12212             Returns this event's exception's rendered using the \r
12213             <see cref="P:log4net.Repository.ILoggerRepository.RendererMap"/>.\r
12214             </summary>\r
12215             <returns>\r
12216             This event's exception's rendered using the <see cref="P:log4net.Repository.ILoggerRepository.RendererMap"/>.\r
12217             </returns>\r
12218             <remarks>\r
12219             <para>\r
12220             <b>Obsolete. Use <see cref="M:log4net.Core.LoggingEvent.GetExceptionString"/> instead.</b>\r
12221             </para>\r
12222             </remarks>\r
12223         </member>\r
12224         <member name="M:log4net.Core.LoggingEvent.GetExceptionString">\r
12225             <summary>\r
12226             Returns this event's exception's rendered using the \r
12227             <see cref="P:log4net.Repository.ILoggerRepository.RendererMap"/>.\r
12228             </summary>\r
12229             <returns>\r
12230             This event's exception's rendered using the <see cref="P:log4net.Repository.ILoggerRepository.RendererMap"/>.\r
12231             </returns>\r
12232             <remarks>\r
12233             <para>\r
12234             Returns this event's exception's rendered using the \r
12235             <see cref="P:log4net.Repository.ILoggerRepository.RendererMap"/>.\r
12236             </para>\r
12237             </remarks>\r
12238         </member>\r
12239         <member name="M:log4net.Core.LoggingEvent.FixVolatileData">\r
12240             <summary>\r
12241             Fix instance fields that hold volatile data.\r
12242             </summary>\r
12243             <remarks>\r
12244             <para>\r
12245             Some of the values in instances of <see cref="T:log4net.Core.LoggingEvent"/>\r
12246             are considered volatile, that is the values are correct at the\r
12247             time the event is delivered to appenders, but will not be consistent\r
12248             at any time afterwards. If an event is to be stored and then processed\r
12249             at a later time these volatile values must be fixed by calling\r
12250             <see cref="M:log4net.Core.LoggingEvent.FixVolatileData"/>. There is a performance penalty\r
12251             incurred by calling <see cref="M:log4net.Core.LoggingEvent.FixVolatileData"/> but it\r
12252             is essential to maintaining data consistency.\r
12253             </para>\r
12254             <para>\r
12255             Calling <see cref="M:log4net.Core.LoggingEvent.FixVolatileData"/> is equivalent to\r
12256             calling <see cref="M:log4net.Core.LoggingEvent.FixVolatileData(System.Boolean)"/> passing the parameter\r
12257             <c>false</c>.\r
12258             </para>\r
12259             <para>\r
12260             See <see cref="M:log4net.Core.LoggingEvent.FixVolatileData(System.Boolean)"/> for more\r
12261             information.\r
12262             </para>\r
12263             </remarks>\r
12264         </member>\r
12265         <member name="M:log4net.Core.LoggingEvent.FixVolatileData(System.Boolean)">\r
12266             <summary>\r
12267             Fixes instance fields that hold volatile data.\r
12268             </summary>\r
12269             <param name="fastButLoose">Set to <c>true</c> to not fix data that takes a long time to fix.</param>\r
12270             <remarks>\r
12271             <para>\r
12272             Some of the values in instances of <see cref="T:log4net.Core.LoggingEvent"/>\r
12273             are considered volatile, that is the values are correct at the\r
12274             time the event is delivered to appenders, but will not be consistent\r
12275             at any time afterwards. If an event is to be stored and then processed\r
12276             at a later time these volatile values must be fixed by calling\r
12277             <see cref="M:log4net.Core.LoggingEvent.FixVolatileData"/>. There is a performance penalty\r
12278             for incurred by calling <see cref="M:log4net.Core.LoggingEvent.FixVolatileData"/> but it\r
12279             is essential to maintaining data consistency.\r
12280             </para>\r
12281             <para>\r
12282             The <paramref name="fastButLoose"/> param controls the data that\r
12283             is fixed. Some of the data that can be fixed takes a long time to \r
12284             generate, therefore if you do not require those settings to be fixed\r
12285             they can be ignored by setting the <paramref name="fastButLoose"/> param\r
12286             to <c>true</c>. This setting will ignore the <see cref="P:log4net.Core.LoggingEvent.LocationInformation"/>\r
12287             and <see cref="P:log4net.Core.LoggingEvent.UserName"/> settings.\r
12288             </para>\r
12289             <para>\r
12290             Set <paramref name="fastButLoose"/> to <c>false</c> to ensure that all \r
12291             settings are fixed.\r
12292             </para>\r
12293             </remarks>\r
12294         </member>\r
12295         <member name="M:log4net.Core.LoggingEvent.FixVolatileData(log4net.Core.FixFlags)">\r
12296             <summary>\r
12297             Fix the fields specified by the <see cref="T:log4net.Core.FixFlags"/> parameter\r
12298             </summary>\r
12299             <param name="flags">the fields to fix</param>\r
12300             <remarks>\r
12301             <para>\r
12302             Only fields specified in the <paramref name="flags"/> will be fixed.\r
12303             Fields will not be fixed if they have previously been fixed.\r
12304             It is not possible to 'unfix' a field.\r
12305             </para>\r
12306             </remarks>\r
12307         </member>\r
12308         <member name="M:log4net.Core.LoggingEvent.LookupProperty(System.String)">\r
12309             <summary>\r
12310             Lookup a composite property in this event\r
12311             </summary>\r
12312             <param name="key">the key for the property to lookup</param>\r
12313             <returns>the value for the property</returns>\r
12314             <remarks>\r
12315             <para>\r
12316             This event has composite properties that combine together properties from\r
12317             several different contexts in the following order:\r
12318             <list type="definition">\r
12319                 <item>\r
12320                         <term>this events properties</term>\r
12321                         <description>\r
12322                         This event has <see cref="P:log4net.Core.LoggingEvent.Properties"/> that can be set. These \r
12323                         properties are specific to this event only.\r
12324                         </description>\r
12325                 </item>\r
12326                 <item>\r
12327                         <term>the thread properties</term>\r
12328                         <description>\r
12329                         The <see cref="P:log4net.ThreadContext.Properties"/> that are set on the current\r
12330                         thread. These properties are shared by all events logged on this thread.\r
12331                         </description>\r
12332                 </item>\r
12333                 <item>\r
12334                         <term>the global properties</term>\r
12335                         <description>\r
12336                         The <see cref="P:log4net.GlobalContext.Properties"/> that are set globally. These \r
12337                         properties are shared by all the threads in the AppDomain.\r
12338                         </description>\r
12339                 </item>\r
12340             </list>\r
12341             </para>\r
12342             </remarks>\r
12343         </member>\r
12344         <member name="M:log4net.Core.LoggingEvent.GetProperties">\r
12345             <summary>\r
12346             Get all the composite properties in this event\r
12347             </summary>\r
12348             <returns>the <see cref="T:log4net.Util.PropertiesDictionary"/> containing all the properties</returns>\r
12349             <remarks>\r
12350             <para>\r
12351             See <see cref="M:log4net.Core.LoggingEvent.LookupProperty(System.String)"/> for details of the composite properties \r
12352             stored by the event.\r
12353             </para>\r
12354             <para>\r
12355             This method returns a single <see cref="T:log4net.Util.PropertiesDictionary"/> containing all the\r
12356             properties defined for this event.\r
12357             </para>\r
12358             </remarks>\r
12359         </member>\r
12360         <member name="F:log4net.Core.LoggingEvent.m_data">\r
12361             <summary>\r
12362             The internal logging event data.\r
12363             </summary>\r
12364         </member>\r
12365         <member name="F:log4net.Core.LoggingEvent.m_compositeProperties">\r
12366             <summary>\r
12367             The internal logging event data.\r
12368             </summary>\r
12369         </member>\r
12370         <member name="F:log4net.Core.LoggingEvent.m_eventProperties">\r
12371             <summary>\r
12372             The internal logging event data.\r
12373             </summary>\r
12374         </member>\r
12375         <member name="F:log4net.Core.LoggingEvent.m_callerStackBoundaryDeclaringType">\r
12376             <summary>\r
12377             The fully qualified Type of the calling \r
12378             logger class in the stack frame (i.e. the declaring type of the method).\r
12379             </summary>\r
12380         </member>\r
12381         <member name="F:log4net.Core.LoggingEvent.m_message">\r
12382             <summary>\r
12383             The application supplied message of logging event.\r
12384             </summary>\r
12385         </member>\r
12386         <member name="F:log4net.Core.LoggingEvent.m_thrownException">\r
12387             <summary>\r
12388             The exception that was thrown.\r
12389             </summary>\r
12390             <remarks>\r
12391             This is not serialized. The string representation\r
12392             is serialized instead.\r
12393             </remarks>\r
12394         </member>\r
12395         <member name="F:log4net.Core.LoggingEvent.m_repository">\r
12396             <summary>\r
12397             The repository that generated the logging event\r
12398             </summary>\r
12399             <remarks>\r
12400             This is not serialized.\r
12401             </remarks>\r
12402         </member>\r
12403         <member name="F:log4net.Core.LoggingEvent.m_fixFlags">\r
12404             <summary>\r
12405             The fix state for this event\r
12406             </summary>\r
12407             <remarks>\r
12408             These flags indicate which fields have been fixed.\r
12409             Not serialized.\r
12410             </remarks>\r
12411         </member>\r
12412         <member name="F:log4net.Core.LoggingEvent.m_cacheUpdatable">\r
12413             <summary>\r
12414             Indicated that the internal cache is updateable (ie not fixed)\r
12415             </summary>\r
12416             <remarks>\r
12417             This is a seperate flag to m_fixFlags as it allows incrementel fixing and simpler\r
12418             changes in the caching strategy.\r
12419             </remarks>\r
12420         </member>\r
12421         <member name="P:log4net.Core.LoggingEvent.StartTime">\r
12422             <summary>\r
12423             Gets the time when the current process started.\r
12424             </summary>\r
12425             <value>\r
12426             This is the time when this process started.\r
12427             </value>\r
12428             <remarks>\r
12429             <para>\r
12430             The TimeStamp is stored in the local time zone for this computer.\r
12431             </para>\r
12432             <para>\r
12433             Tries to get the start time for the current process.\r
12434             Failing that it returns the time of the first call to\r
12435             this property.\r
12436             </para>\r
12437             <para>\r
12438             Note that AppDomains may be loaded and unloaded within the\r
12439             same process without the process terminating and therefore\r
12440             without the process start time being reset.\r
12441             </para>\r
12442             </remarks>\r
12443         </member>\r
12444         <member name="P:log4net.Core.LoggingEvent.Level">\r
12445             <summary>\r
12446             Gets the <see cref="P:log4net.Core.LoggingEvent.Level"/> of the logging event.\r
12447             </summary>\r
12448             <value>\r
12449             The <see cref="P:log4net.Core.LoggingEvent.Level"/> of the logging event.\r
12450             </value>\r
12451             <remarks>\r
12452             <para>\r
12453             Gets the <see cref="P:log4net.Core.LoggingEvent.Level"/> of the logging event.\r
12454             </para>\r
12455             </remarks>\r
12456         </member>\r
12457         <member name="P:log4net.Core.LoggingEvent.TimeStamp">\r
12458             <summary>\r
12459             Gets the time of the logging event.\r
12460             </summary>\r
12461             <value>\r
12462             The time of the logging event.\r
12463             </value>\r
12464             <remarks>\r
12465             <para>\r
12466             The TimeStamp is stored in the local time zone for this computer.\r
12467             </para>\r
12468             </remarks>\r
12469         </member>\r
12470         <member name="P:log4net.Core.LoggingEvent.LoggerName">\r
12471             <summary>\r
12472             Gets the name of the logger that logged the event.\r
12473             </summary>\r
12474             <value>\r
12475             The name of the logger that logged the event.\r
12476             </value>\r
12477             <remarks>\r
12478             <para>\r
12479             Gets the name of the logger that logged the event.\r
12480             </para>\r
12481             </remarks>\r
12482         </member>\r
12483         <member name="P:log4net.Core.LoggingEvent.LocationInformation">\r
12484             <summary>\r
12485             Gets the location information for this logging event.\r
12486             </summary>\r
12487             <value>\r
12488             The location information for this logging event.\r
12489             </value>\r
12490             <remarks>\r
12491             <para>\r
12492             The collected information is cached for future use.\r
12493             </para>\r
12494             <para>\r
12495             See the <see cref="T:log4net.Core.LocationInfo"/> class for more information on\r
12496             supported frameworks and the different behavior in Debug and\r
12497             Release builds.\r
12498             </para>\r
12499             </remarks>\r
12500         </member>\r
12501         <member name="P:log4net.Core.LoggingEvent.MessageObject">\r
12502             <summary>\r
12503             Gets the message object used to initialize this event.\r
12504             </summary>\r
12505             <value>\r
12506             The message object used to initialize this event.\r
12507             </value>\r
12508             <remarks>\r
12509             <para>\r
12510             Gets the message object used to initialize this event.\r
12511             Note that this event may not have a valid message object.\r
12512             If the event is serialized the message object will not \r
12513             be transferred. To get the text of the message the\r
12514             <see cref="P:log4net.Core.LoggingEvent.RenderedMessage"/> property must be used \r
12515             not this property.\r
12516             </para>\r
12517             <para>\r
12518             If there is no defined message object for this event then\r
12519             null will be returned.\r
12520             </para>\r
12521             </remarks>\r
12522         </member>\r
12523         <member name="P:log4net.Core.LoggingEvent.ExceptionObject">\r
12524             <summary>\r
12525             Gets the exception object used to initialize this event.\r
12526             </summary>\r
12527             <value>\r
12528             The exception object used to initialize this event.\r
12529             </value>\r
12530             <remarks>\r
12531             <para>\r
12532             Gets the exception object used to initialize this event.\r
12533             Note that this event may not have a valid exception object.\r
12534             If the event is serialized the exception object will not \r
12535             be transferred. To get the text of the exception the\r
12536             <see cref="M:log4net.Core.LoggingEvent.GetExceptionString"/> method must be used \r
12537             not this property.\r
12538             </para>\r
12539             <para>\r
12540             If there is no defined exception object for this event then\r
12541             null will be returned.\r
12542             </para>\r
12543             </remarks>\r
12544         </member>\r
12545         <member name="P:log4net.Core.LoggingEvent.Repository">\r
12546             <summary>\r
12547             The <see cref="T:log4net.Repository.ILoggerRepository"/> that this event was created in.\r
12548             </summary>\r
12549             <remarks>\r
12550             <para>\r
12551             The <see cref="T:log4net.Repository.ILoggerRepository"/> that this event was created in.\r
12552             </para>\r
12553             </remarks>\r
12554         </member>\r
12555         <member name="P:log4net.Core.LoggingEvent.RenderedMessage">\r
12556             <summary>\r
12557             Gets the message, rendered through the <see cref="P:log4net.Repository.ILoggerRepository.RendererMap"/>.\r
12558             </summary>\r
12559             <value>\r
12560             The message rendered through the <see cref="P:log4net.Repository.ILoggerRepository.RendererMap"/>.\r
12561             </value>\r
12562             <remarks>\r
12563             <para>\r
12564             The collected information is cached for future use.\r
12565             </para>\r
12566             </remarks>\r
12567         </member>\r
12568         <member name="P:log4net.Core.LoggingEvent.ThreadName">\r
12569             <summary>\r
12570             Gets the name of the current thread.  \r
12571             </summary>\r
12572             <value>\r
12573             The name of the current thread, or the thread ID when \r
12574             the name is not available.\r
12575             </value>\r
12576             <remarks>\r
12577             <para>\r
12578             The collected information is cached for future use.\r
12579             </para>\r
12580             </remarks>\r
12581         </member>\r
12582         <member name="P:log4net.Core.LoggingEvent.UserName">\r
12583             <summary>\r
12584             Gets the name of the current user.\r
12585             </summary>\r
12586             <value>\r
12587             The name of the current user, or <c>NOT AVAILABLE</c> when the \r
12588             underlying runtime has no support for retrieving the name of the \r
12589             current user.\r
12590             </value>\r
12591             <remarks>\r
12592             <para>\r
12593             Calls <c>WindowsIdentity.GetCurrent().Name</c> to get the name of\r
12594             the current windows user.\r
12595             </para>\r
12596             <para>\r
12597             To improve performance, we could cache the string representation of \r
12598             the name, and reuse that as long as the identity stayed constant.  \r
12599             Once the identity changed, we would need to re-assign and re-render \r
12600             the string.\r
12601             </para>\r
12602             <para>\r
12603             However, the <c>WindowsIdentity.GetCurrent()</c> call seems to \r
12604             return different objects every time, so the current implementation \r
12605             doesn't do this type of caching.\r
12606             </para>\r
12607             <para>\r
12608             Timing for these operations:\r
12609             </para>\r
12610             <list type="table">\r
12611               <listheader>\r
12612                 <term>Method</term>\r
12613                 <description>Results</description>\r
12614               </listheader>\r
12615               <item>\r
12616                 <term><c>WindowsIdentity.GetCurrent()</c></term>\r
12617                 <description>10000 loops, 00:00:00.2031250 seconds</description>\r
12618               </item>\r
12619               <item>\r
12620                 <term><c>WindowsIdentity.GetCurrent().Name</c></term>\r
12621                 <description>10000 loops, 00:00:08.0468750 seconds</description>\r
12622               </item>\r
12623             </list>\r
12624             <para>\r
12625             This means we could speed things up almost 40 times by caching the \r
12626             value of the <c>WindowsIdentity.GetCurrent().Name</c> property, since \r
12627             this takes (8.04-0.20) = 7.84375 seconds.\r
12628             </para>\r
12629             </remarks>\r
12630         </member>\r
12631         <member name="P:log4net.Core.LoggingEvent.Identity">\r
12632             <summary>\r
12633             Gets the identity of the current thread principal.\r
12634             </summary>\r
12635             <value>\r
12636             The string name of the identity of the current thread principal.\r
12637             </value>\r
12638             <remarks>\r
12639             <para>\r
12640             Calls <c>System.Threading.Thread.CurrentPrincipal.Identity.Name</c> to get\r
12641             the name of the current thread principal.\r
12642             </para>\r
12643             </remarks>\r
12644         </member>\r
12645         <member name="P:log4net.Core.LoggingEvent.Domain">\r
12646             <summary>\r
12647             Gets the AppDomain friendly name.\r
12648             </summary>\r
12649             <value>\r
12650             The AppDomain friendly name.\r
12651             </value>\r
12652             <remarks>\r
12653             <para>\r
12654             Gets the AppDomain friendly name.\r
12655             </para>\r
12656             </remarks>\r
12657         </member>\r
12658         <member name="P:log4net.Core.LoggingEvent.Properties">\r
12659             <summary>\r
12660             Additional event specific properties.\r
12661             </summary>\r
12662             <value>\r
12663             Additional event specific properties.\r
12664             </value>\r
12665             <remarks>\r
12666             <para>\r
12667             A logger or an appender may attach additional\r
12668             properties to specific events. These properties\r
12669             have a string key and an object value.\r
12670             </para>\r
12671             <para>\r
12672             This property is for events that have been added directly to\r
12673             this event. The aggregate properties (which include these\r
12674             event properties) can be retrieved using <see cref="M:log4net.Core.LoggingEvent.LookupProperty(System.String)"/>\r
12675             and <see cref="M:log4net.Core.LoggingEvent.GetProperties"/>.\r
12676             </para>\r
12677             <para>\r
12678             Once the properties have been fixed <see cref="P:log4net.Core.LoggingEvent.Fix"/> this property\r
12679             returns the combined cached properties. This ensures that updates to\r
12680             this property are always reflected in the underlying storage. When\r
12681             returning the combined properties there may be more keys in the\r
12682             Dictionary than expected.\r
12683             </para>\r
12684             </remarks>\r
12685         </member>\r
12686         <member name="P:log4net.Core.LoggingEvent.Fix">\r
12687             <summary>\r
12688             The fixed fields in this event\r
12689             </summary>\r
12690             <value>\r
12691             The set of fields that are fixed in this event\r
12692             </value>\r
12693             <remarks>\r
12694             <para>\r
12695             Fields will not be fixed if they have previously been fixed.\r
12696             It is not possible to 'unfix' a field.\r
12697             </para>\r
12698             </remarks>\r
12699         </member>\r
12700         <member name="T:log4net.Core.LogImpl">\r
12701             <summary>\r
12702             Implementation of <see cref="T:log4net.ILog"/> wrapper interface.\r
12703             </summary>\r
12704             <remarks>\r
12705             <para>\r
12706             This implementation of the <see cref="T:log4net.ILog"/> interface\r
12707             forwards to the <see cref="T:log4net.Core.ILogger"/> held by the base class.\r
12708             </para>\r
12709             <para>\r
12710             This logger has methods to allow the caller to log at the following\r
12711             levels:\r
12712             </para>\r
12713             <list type="definition">\r
12714               <item>\r
12715                 <term>DEBUG</term>\r
12716                 <description>\r
12717                 The <see cref="M:log4net.Core.LogImpl.Debug(System.Object)"/> and <see cref="M:log4net.Core.LogImpl.DebugFormat(System.String,System.Object[])"/> methods log messages\r
12718                 at the <c>DEBUG</c> level. That is the level with that name defined in the\r
12719                 repositories <see cref="P:log4net.Repository.ILoggerRepository.LevelMap"/>. The default value\r
12720                 for this level is <see cref="F:log4net.Core.Level.Debug"/>. The <see cref="P:log4net.Core.LogImpl.IsDebugEnabled"/>\r
12721                 property tests if this level is enabled for logging.\r
12722                 </description>\r
12723               </item>\r
12724               <item>\r
12725                 <term>INFO</term>\r
12726                 <description>\r
12727                 The <see cref="M:log4net.Core.LogImpl.Info(System.Object)"/> and <see cref="M:log4net.Core.LogImpl.InfoFormat(System.String,System.Object[])"/> methods log messages\r
12728                 at the <c>INFO</c> level. That is the level with that name defined in the\r
12729                 repositories <see cref="P:log4net.Repository.ILoggerRepository.LevelMap"/>. The default value\r
12730                 for this level is <see cref="F:log4net.Core.Level.Info"/>. The <see cref="P:log4net.Core.LogImpl.IsInfoEnabled"/>\r
12731                 property tests if this level is enabled for logging.\r
12732                 </description>\r
12733               </item>\r
12734               <item>\r
12735                 <term>WARN</term>\r
12736                 <description>\r
12737                 The <see cref="M:log4net.Core.LogImpl.Warn(System.Object)"/> and <see cref="M:log4net.Core.LogImpl.WarnFormat(System.String,System.Object[])"/> methods log messages\r
12738                 at the <c>WARN</c> level. That is the level with that name defined in the\r
12739                 repositories <see cref="P:log4net.Repository.ILoggerRepository.LevelMap"/>. The default value\r
12740                 for this level is <see cref="F:log4net.Core.Level.Warn"/>. The <see cref="P:log4net.Core.LogImpl.IsWarnEnabled"/>\r
12741                 property tests if this level is enabled for logging.\r
12742                 </description>\r
12743               </item>\r
12744               <item>\r
12745                 <term>ERROR</term>\r
12746                 <description>\r
12747                 The <see cref="M:log4net.Core.LogImpl.Error(System.Object)"/> and <see cref="M:log4net.Core.LogImpl.ErrorFormat(System.String,System.Object[])"/> methods log messages\r
12748                 at the <c>ERROR</c> level. That is the level with that name defined in the\r
12749                 repositories <see cref="P:log4net.Repository.ILoggerRepository.LevelMap"/>. The default value\r
12750                 for this level is <see cref="F:log4net.Core.Level.Error"/>. The <see cref="P:log4net.Core.LogImpl.IsErrorEnabled"/>\r
12751                 property tests if this level is enabled for logging.\r
12752                 </description>\r
12753               </item>\r
12754               <item>\r
12755                 <term>FATAL</term>\r
12756                 <description>\r
12757                 The <see cref="M:log4net.Core.LogImpl.Fatal(System.Object)"/> and <see cref="M:log4net.Core.LogImpl.FatalFormat(System.String,System.Object[])"/> methods log messages\r
12758                 at the <c>FATAL</c> level. That is the level with that name defined in the\r
12759                 repositories <see cref="P:log4net.Repository.ILoggerRepository.LevelMap"/>. The default value\r
12760                 for this level is <see cref="F:log4net.Core.Level.Fatal"/>. The <see cref="P:log4net.Core.LogImpl.IsFatalEnabled"/>\r
12761                 property tests if this level is enabled for logging.\r
12762                 </description>\r
12763               </item>\r
12764             </list>\r
12765             <para>\r
12766             The values for these levels and their semantic meanings can be changed by \r
12767             configuring the <see cref="P:log4net.Repository.ILoggerRepository.LevelMap"/> for the repository.\r
12768             </para>\r
12769             </remarks>\r
12770             <author>Nicko Cadell</author>\r
12771             <author>Gert Driesen</author>\r
12772         </member>\r
12773         <member name="T:log4net.ILog">\r
12774             <summary>\r
12775             The ILog interface is use by application to log messages into\r
12776             the log4net framework.\r
12777             </summary>\r
12778             <remarks>\r
12779             <para>\r
12780             Use the <see cref="T:log4net.LogManager"/> to obtain logger instances\r
12781             that implement this interface. The <see cref="M:log4net.LogManager.GetLogger(System.Reflection.Assembly,System.Type)"/>\r
12782             static method is used to get logger instances.\r
12783             </para>\r
12784             <para>\r
12785             This class contains methods for logging at different levels and also\r
12786             has properties for determining if those logging levels are\r
12787             enabled in the current configuration.\r
12788             </para>\r
12789             <para>\r
12790             This interface can be implemented in different ways. This documentation\r
12791             specifies reasonable behavior that a caller can expect from the actual\r
12792             implementation, however different implementations reserve the right to\r
12793             do things differently.\r
12794             </para>\r
12795             </remarks>\r
12796             <example>Simple example of logging messages\r
12797             <code lang="C#">\r
12798             ILog log = LogManager.GetLogger("application-log");\r
12799             \r
12800             log.Info("Application Start");\r
12801             log.Debug("This is a debug message");\r
12802             \r
12803             if (log.IsDebugEnabled)\r
12804             {\r
12805                 log.Debug("This is another debug message");\r
12806             }\r
12807             </code>\r
12808             </example>\r
12809             <seealso cref="T:log4net.LogManager"/>\r
12810             <seealso cref="M:log4net.LogManager.GetLogger(System.Reflection.Assembly,System.Type)"/>\r
12811             <author>Nicko Cadell</author>\r
12812             <author>Gert Driesen</author>\r
12813         </member>\r
12814         <member name="M:log4net.ILog.Debug(System.Object)">\r
12815             <overloads>Log a message object with the <see cref="F:log4net.Core.Level.Debug"/> level.</overloads>\r
12816             <summary>\r
12817             Log a message object with the <see cref="F:log4net.Core.Level.Debug"/> level.\r
12818             </summary>\r
12819             <param name="message">The message object to log.</param>\r
12820             <remarks>\r
12821             <para>\r
12822             This method first checks if this logger is <c>DEBUG</c>\r
12823             enabled by comparing the level of this logger with the \r
12824             <see cref="F:log4net.Core.Level.Debug"/> level. If this logger is\r
12825             <c>DEBUG</c> enabled, then it converts the message object\r
12826             (passed as parameter) to a string by invoking the appropriate\r
12827             <see cref="T:log4net.ObjectRenderer.IObjectRenderer"/>. It then \r
12828             proceeds to call all the registered appenders in this logger \r
12829             and also higher in the hierarchy depending on the value of \r
12830             the additivity flag.\r
12831             </para>\r
12832             <para><b>WARNING</b> Note that passing an <see cref="T:System.Exception"/> \r
12833             to this method will print the name of the <see cref="T:System.Exception"/> \r
12834             but no stack trace. To print a stack trace use the \r
12835             <see cref="M:log4net.ILog.Debug(System.Object,System.Exception)"/> form instead.\r
12836             </para>\r
12837             </remarks>\r
12838             <seealso cref="M:log4net.ILog.Debug(System.Object,System.Exception)"/>\r
12839             <seealso cref="P:log4net.ILog.IsDebugEnabled"/>\r
12840         </member>\r
12841         <member name="M:log4net.ILog.Debug(System.Object,System.Exception)">\r
12842             <summary>\r
12843             Log a message object with the <see cref="F:log4net.Core.Level.Debug"/> level including\r
12844             the stack trace of the <see cref="T:System.Exception"/> passed\r
12845             as a parameter.\r
12846             </summary>\r
12847             <param name="message">The message object to log.</param>\r
12848             <param name="exception">The exception to log, including its stack trace.</param>\r
12849             <remarks>\r
12850             <para>\r
12851             See the <see cref="M:log4net.ILog.Debug(System.Object)"/> form for more detailed information.\r
12852             </para>\r
12853             </remarks>\r
12854             <seealso cref="M:log4net.ILog.Debug(System.Object)"/>\r
12855             <seealso cref="P:log4net.ILog.IsDebugEnabled"/>\r
12856         </member>\r
12857         <member name="M:log4net.ILog.DebugFormat(System.String,System.Object[])">\r
12858             <overloads>Log a formatted string with the <see cref="F:log4net.Core.Level.Debug"/> level.</overloads>\r
12859             <summary>\r
12860             Logs a formatted message string with the <see cref="F:log4net.Core.Level.Debug"/> level.\r
12861             </summary>\r
12862             <param name="format">A String containing zero or more format items</param>\r
12863             <param name="args">An Object array containing zero or more objects to format</param>\r
12864             <remarks>\r
12865             <para>\r
12866             The message is formatted using the <c>String.Format</c> method. See\r
12867             <see cref="M:System.String.Format(System.String,System.Object[])"/> for details of the syntax of the format string and the behavior\r
12868             of the formatting.\r
12869             </para>\r
12870             <para>\r
12871             This method does not take an <see cref="T:System.Exception"/> object to include in the\r
12872             log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.ILog.Debug(System.Object,System.Exception)"/>\r
12873             methods instead.\r
12874             </para>\r
12875             </remarks>\r
12876             <seealso cref="M:log4net.ILog.Debug(System.Object)"/>\r
12877             <seealso cref="P:log4net.ILog.IsDebugEnabled"/>\r
12878         </member>\r
12879         <member name="M:log4net.ILog.DebugFormat(System.String,System.Object)">\r
12880             <summary>\r
12881             Logs a formatted message string with the <see cref="F:log4net.Core.Level.Debug"/> level.\r
12882             </summary>\r
12883             <param name="format">A String containing zero or more format items</param>\r
12884             <param name="arg0">An Object to format</param>\r
12885             <remarks>\r
12886             <para>\r
12887             The message is formatted using the <c>String.Format</c> method. See\r
12888             <see cref="M:System.String.Format(System.String,System.Object[])"/> for details of the syntax of the format string and the behavior\r
12889             of the formatting.\r
12890             </para>\r
12891             <para>\r
12892             This method does not take an <see cref="T:System.Exception"/> object to include in the\r
12893             log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.ILog.Debug(System.Object,System.Exception)"/>\r
12894             methods instead.\r
12895             </para>\r
12896             </remarks>\r
12897             <seealso cref="M:log4net.ILog.Debug(System.Object)"/>\r
12898             <seealso cref="P:log4net.ILog.IsDebugEnabled"/>\r
12899         </member>\r
12900         <member name="M:log4net.ILog.DebugFormat(System.String,System.Object,System.Object)">\r
12901             <summary>\r
12902             Logs a formatted message string with the <see cref="F:log4net.Core.Level.Debug"/> level.\r
12903             </summary>\r
12904             <param name="format">A String containing zero or more format items</param>\r
12905             <param name="arg0">An Object to format</param>\r
12906             <param name="arg1">An Object to format</param>\r
12907             <remarks>\r
12908             <para>\r
12909             The message is formatted using the <c>String.Format</c> method. See\r
12910             <see cref="M:System.String.Format(System.String,System.Object[])"/> for details of the syntax of the format string and the behavior\r
12911             of the formatting.\r
12912             </para>\r
12913             <para>\r
12914             This method does not take an <see cref="T:System.Exception"/> object to include in the\r
12915             log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.ILog.Debug(System.Object,System.Exception)"/>\r
12916             methods instead.\r
12917             </para>\r
12918             </remarks>\r
12919             <seealso cref="M:log4net.ILog.Debug(System.Object)"/>\r
12920             <seealso cref="P:log4net.ILog.IsDebugEnabled"/>\r
12921         </member>\r
12922         <member name="M:log4net.ILog.DebugFormat(System.String,System.Object,System.Object,System.Object)">\r
12923             <summary>\r
12924             Logs a formatted message string with the <see cref="F:log4net.Core.Level.Debug"/> level.\r
12925             </summary>\r
12926             <param name="format">A String containing zero or more format items</param>\r
12927             <param name="arg0">An Object to format</param>\r
12928             <param name="arg1">An Object to format</param>\r
12929             <param name="arg2">An Object to format</param>\r
12930             <remarks>\r
12931             <para>\r
12932             The message is formatted using the <c>String.Format</c> method. See\r
12933             <see cref="M:System.String.Format(System.String,System.Object[])"/> for details of the syntax of the format string and the behavior\r
12934             of the formatting.\r
12935             </para>\r
12936             <para>\r
12937             This method does not take an <see cref="T:System.Exception"/> object to include in the\r
12938             log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.ILog.Debug(System.Object,System.Exception)"/>\r
12939             methods instead.\r
12940             </para>\r
12941             </remarks>\r
12942             <seealso cref="M:log4net.ILog.Debug(System.Object)"/>\r
12943             <seealso cref="P:log4net.ILog.IsDebugEnabled"/>\r
12944         </member>\r
12945         <member name="M:log4net.ILog.DebugFormat(System.IFormatProvider,System.String,System.Object[])">\r
12946             <summary>\r
12947             Logs a formatted message string with the <see cref="F:log4net.Core.Level.Debug"/> level.\r
12948             </summary>\r
12949             <param name="provider">An <see cref="T:System.IFormatProvider"/> that supplies culture-specific formatting information</param>\r
12950             <param name="format">A String containing zero or more format items</param>\r
12951             <param name="args">An Object array containing zero or more objects to format</param>\r
12952             <remarks>\r
12953             <para>\r
12954             The message is formatted using the <c>String.Format</c> method. See\r
12955             <see cref="M:System.String.Format(System.String,System.Object[])"/> for details of the syntax of the format string and the behavior\r
12956             of the formatting.\r
12957             </para>\r
12958             <para>\r
12959             This method does not take an <see cref="T:System.Exception"/> object to include in the\r
12960             log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.ILog.Debug(System.Object,System.Exception)"/>\r
12961             methods instead.\r
12962             </para>\r
12963             </remarks>\r
12964             <seealso cref="M:log4net.ILog.Debug(System.Object)"/>\r
12965             <seealso cref="P:log4net.ILog.IsDebugEnabled"/>\r
12966         </member>\r
12967         <member name="M:log4net.ILog.Info(System.Object)">\r
12968             <overloads>Log a message object with the <see cref="F:log4net.Core.Level.Info"/> level.</overloads>\r
12969             <summary>\r
12970             Logs a message object with the <see cref="F:log4net.Core.Level.Info"/> level.\r
12971             </summary>\r
12972             <remarks>\r
12973             <para>\r
12974             This method first checks if this logger is <c>INFO</c>\r
12975             enabled by comparing the level of this logger with the \r
12976             <see cref="F:log4net.Core.Level.Info"/> level. If this logger is\r
12977             <c>INFO</c> enabled, then it converts the message object\r
12978             (passed as parameter) to a string by invoking the appropriate\r
12979             <see cref="T:log4net.ObjectRenderer.IObjectRenderer"/>. It then \r
12980             proceeds to call all the registered appenders in this logger \r
12981             and also higher in the hierarchy depending on the value of the \r
12982             additivity flag.\r
12983             </para>\r
12984             <para><b>WARNING</b> Note that passing an <see cref="T:System.Exception"/> \r
12985             to this method will print the name of the <see cref="T:System.Exception"/> \r
12986             but no stack trace. To print a stack trace use the \r
12987             <see cref="M:log4net.ILog.Info(System.Object,System.Exception)"/> form instead.\r
12988             </para>\r
12989             </remarks>\r
12990             <param name="message">The message object to log.</param>\r
12991             <seealso cref="M:log4net.ILog.Info(System.Object,System.Exception)"/>\r
12992             <seealso cref="P:log4net.ILog.IsInfoEnabled"/>\r
12993         </member>\r
12994         <member name="M:log4net.ILog.Info(System.Object,System.Exception)">\r
12995             <summary>\r
12996             Logs a message object with the <c>INFO</c> level including\r
12997             the stack trace of the <see cref="T:System.Exception"/> passed\r
12998             as a parameter.\r
12999             </summary>\r
13000             <param name="message">The message object to log.</param>\r
13001             <param name="exception">The exception to log, including its stack trace.</param>\r
13002             <remarks>\r
13003             <para>\r
13004             See the <see cref="M:log4net.ILog.Info(System.Object)"/> form for more detailed information.\r
13005             </para>\r
13006             </remarks>\r
13007             <seealso cref="M:log4net.ILog.Info(System.Object)"/>\r
13008             <seealso cref="P:log4net.ILog.IsInfoEnabled"/>\r
13009         </member>\r
13010         <member name="M:log4net.ILog.InfoFormat(System.String,System.Object[])">\r
13011             <overloads>Log a formatted message string with the <see cref="F:log4net.Core.Level.Info"/> level.</overloads>\r
13012             <summary>\r
13013             Logs a formatted message string with the <see cref="F:log4net.Core.Level.Info"/> level.\r
13014             </summary>\r
13015             <param name="format">A String containing zero or more format items</param>\r
13016             <param name="args">An Object array containing zero or more objects to format</param>\r
13017             <remarks>\r
13018             <para>\r
13019             The message is formatted using the <c>String.Format</c> method. See\r
13020             <see cref="M:System.String.Format(System.String,System.Object[])"/> for details of the syntax of the format string and the behavior\r
13021             of the formatting.\r
13022             </para>\r
13023             <para>\r
13024             This method does not take an <see cref="T:System.Exception"/> object to include in the\r
13025             log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.ILog.Info(System.Object)"/>\r
13026             methods instead.\r
13027             </para>\r
13028             </remarks>\r
13029             <seealso cref="M:log4net.ILog.Info(System.Object,System.Exception)"/>\r
13030             <seealso cref="P:log4net.ILog.IsInfoEnabled"/>\r
13031         </member>\r
13032         <member name="M:log4net.ILog.InfoFormat(System.String,System.Object)">\r
13033             <summary>\r
13034             Logs a formatted message string with the <see cref="F:log4net.Core.Level.Info"/> level.\r
13035             </summary>\r
13036             <param name="format">A String containing zero or more format items</param>\r
13037             <param name="arg0">An Object to format</param>\r
13038             <remarks>\r
13039             <para>\r
13040             The message is formatted using the <c>String.Format</c> method. See\r
13041             <see cref="M:System.String.Format(System.String,System.Object[])"/> for details of the syntax of the format string and the behavior\r
13042             of the formatting.\r
13043             </para>\r
13044             <para>\r
13045             This method does not take an <see cref="T:System.Exception"/> object to include in the\r
13046             log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.ILog.Info(System.Object,System.Exception)"/>\r
13047             methods instead.\r
13048             </para>\r
13049             </remarks>\r
13050             <seealso cref="M:log4net.ILog.Info(System.Object)"/>\r
13051             <seealso cref="P:log4net.ILog.IsInfoEnabled"/>\r
13052         </member>\r
13053         <member name="M:log4net.ILog.InfoFormat(System.String,System.Object,System.Object)">\r
13054             <summary>\r
13055             Logs a formatted message string with the <see cref="F:log4net.Core.Level.Info"/> level.\r
13056             </summary>\r
13057             <param name="format">A String containing zero or more format items</param>\r
13058             <param name="arg0">An Object to format</param>\r
13059             <param name="arg1">An Object to format</param>\r
13060             <remarks>\r
13061             <para>\r
13062             The message is formatted using the <c>String.Format</c> method. See\r
13063             <see cref="M:System.String.Format(System.String,System.Object[])"/> for details of the syntax of the format string and the behavior\r
13064             of the formatting.\r
13065             </para>\r
13066             <para>\r
13067             This method does not take an <see cref="T:System.Exception"/> object to include in the\r
13068             log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.ILog.Info(System.Object,System.Exception)"/>\r
13069             methods instead.\r
13070             </para>\r
13071             </remarks>\r
13072             <seealso cref="M:log4net.ILog.Info(System.Object)"/>\r
13073             <seealso cref="P:log4net.ILog.IsInfoEnabled"/>\r
13074         </member>\r
13075         <member name="M:log4net.ILog.InfoFormat(System.String,System.Object,System.Object,System.Object)">\r
13076             <summary>\r
13077             Logs a formatted message string with the <see cref="F:log4net.Core.Level.Info"/> level.\r
13078             </summary>\r
13079             <param name="format">A String containing zero or more format items</param>\r
13080             <param name="arg0">An Object to format</param>\r
13081             <param name="arg1">An Object to format</param>\r
13082             <param name="arg2">An Object to format</param>\r
13083             <remarks>\r
13084             <para>\r
13085             The message is formatted using the <c>String.Format</c> method. See\r
13086             <see cref="M:System.String.Format(System.String,System.Object[])"/> for details of the syntax of the format string and the behavior\r
13087             of the formatting.\r
13088             </para>\r
13089             <para>\r
13090             This method does not take an <see cref="T:System.Exception"/> object to include in the\r
13091             log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.ILog.Info(System.Object,System.Exception)"/>\r
13092             methods instead.\r
13093             </para>\r
13094             </remarks>\r
13095             <seealso cref="M:log4net.ILog.Info(System.Object)"/>\r
13096             <seealso cref="P:log4net.ILog.IsInfoEnabled"/>\r
13097         </member>\r
13098         <member name="M:log4net.ILog.InfoFormat(System.IFormatProvider,System.String,System.Object[])">\r
13099             <summary>\r
13100             Logs a formatted message string with the <see cref="F:log4net.Core.Level.Info"/> level.\r
13101             </summary>\r
13102             <param name="provider">An <see cref="T:System.IFormatProvider"/> that supplies culture-specific formatting information</param>\r
13103             <param name="format">A String containing zero or more format items</param>\r
13104             <param name="args">An Object array containing zero or more objects to format</param>\r
13105             <remarks>\r
13106             <para>\r
13107             The message is formatted using the <c>String.Format</c> method. See\r
13108             <see cref="M:System.String.Format(System.String,System.Object[])"/> for details of the syntax of the format string and the behavior\r
13109             of the formatting.\r
13110             </para>\r
13111             <para>\r
13112             This method does not take an <see cref="T:System.Exception"/> object to include in the\r
13113             log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.ILog.Info(System.Object)"/>\r
13114             methods instead.\r
13115             </para>\r
13116             </remarks>\r
13117             <seealso cref="M:log4net.ILog.Info(System.Object,System.Exception)"/>\r
13118             <seealso cref="P:log4net.ILog.IsInfoEnabled"/>\r
13119         </member>\r
13120         <member name="M:log4net.ILog.Warn(System.Object)">\r
13121             <overloads>Log a message object with the <see cref="F:log4net.Core.Level.Warn"/> level.</overloads>\r
13122             <summary>\r
13123             Log a message object with the <see cref="F:log4net.Core.Level.Warn"/> level.\r
13124             </summary>\r
13125             <remarks>\r
13126             <para>\r
13127             This method first checks if this logger is <c>WARN</c>\r
13128             enabled by comparing the level of this logger with the \r
13129             <see cref="F:log4net.Core.Level.Warn"/> level. If this logger is\r
13130             <c>WARN</c> enabled, then it converts the message object\r
13131             (passed as parameter) to a string by invoking the appropriate\r
13132             <see cref="T:log4net.ObjectRenderer.IObjectRenderer"/>. It then \r
13133             proceeds to call all the registered appenders in this logger \r
13134             and also higher in the hierarchy depending on the value of the \r
13135             additivity flag.\r
13136             </para>\r
13137             <para><b>WARNING</b> Note that passing an <see cref="T:System.Exception"/> \r
13138             to this method will print the name of the <see cref="T:System.Exception"/> \r
13139             but no stack trace. To print a stack trace use the \r
13140             <see cref="M:log4net.ILog.Warn(System.Object,System.Exception)"/> form instead.\r
13141             </para>\r
13142             </remarks>\r
13143             <param name="message">The message object to log.</param>\r
13144             <seealso cref="M:log4net.ILog.Warn(System.Object,System.Exception)"/>\r
13145             <seealso cref="P:log4net.ILog.IsWarnEnabled"/>\r
13146         </member>\r
13147         <member name="M:log4net.ILog.Warn(System.Object,System.Exception)">\r
13148             <summary>\r
13149             Log a message object with the <see cref="F:log4net.Core.Level.Warn"/> level including\r
13150             the stack trace of the <see cref="T:System.Exception"/> passed\r
13151             as a parameter.\r
13152             </summary>\r
13153             <param name="message">The message object to log.</param>\r
13154             <param name="exception">The exception to log, including its stack trace.</param>\r
13155             <remarks>\r
13156             <para>\r
13157             See the <see cref="M:log4net.ILog.Warn(System.Object)"/> form for more detailed information.\r
13158             </para>\r
13159             </remarks>\r
13160             <seealso cref="M:log4net.ILog.Warn(System.Object)"/>\r
13161             <seealso cref="P:log4net.ILog.IsWarnEnabled"/>\r
13162         </member>\r
13163         <member name="M:log4net.ILog.WarnFormat(System.String,System.Object[])">\r
13164             <overloads>Log a formatted message string with the <see cref="F:log4net.Core.Level.Warn"/> level.</overloads>\r
13165             <summary>\r
13166             Logs a formatted message string with the <see cref="F:log4net.Core.Level.Warn"/> level.\r
13167             </summary>\r
13168             <param name="format">A String containing zero or more format items</param>\r
13169             <param name="args">An Object array containing zero or more objects to format</param>\r
13170             <remarks>\r
13171             <para>\r
13172             The message is formatted using the <c>String.Format</c> method. See\r
13173             <see cref="M:System.String.Format(System.String,System.Object[])"/> for details of the syntax of the format string and the behavior\r
13174             of the formatting.\r
13175             </para>\r
13176             <para>\r
13177             This method does not take an <see cref="T:System.Exception"/> object to include in the\r
13178             log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.ILog.Warn(System.Object)"/>\r
13179             methods instead.\r
13180             </para>\r
13181             </remarks>\r
13182             <seealso cref="M:log4net.ILog.Warn(System.Object,System.Exception)"/>\r
13183             <seealso cref="P:log4net.ILog.IsWarnEnabled"/>\r
13184         </member>\r
13185         <member name="M:log4net.ILog.WarnFormat(System.String,System.Object)">\r
13186             <summary>\r
13187             Logs a formatted message string with the <see cref="F:log4net.Core.Level.Warn"/> level.\r
13188             </summary>\r
13189             <param name="format">A String containing zero or more format items</param>\r
13190             <param name="arg0">An Object to format</param>\r
13191             <remarks>\r
13192             <para>\r
13193             The message is formatted using the <c>String.Format</c> method. See\r
13194             <see cref="M:System.String.Format(System.String,System.Object[])"/> for details of the syntax of the format string and the behavior\r
13195             of the formatting.\r
13196             </para>\r
13197             <para>\r
13198             This method does not take an <see cref="T:System.Exception"/> object to include in the\r
13199             log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.ILog.Warn(System.Object,System.Exception)"/>\r
13200             methods instead.\r
13201             </para>\r
13202             </remarks>\r
13203             <seealso cref="M:log4net.ILog.Warn(System.Object)"/>\r
13204             <seealso cref="P:log4net.ILog.IsWarnEnabled"/>\r
13205         </member>\r
13206         <member name="M:log4net.ILog.WarnFormat(System.String,System.Object,System.Object)">\r
13207             <summary>\r
13208             Logs a formatted message string with the <see cref="F:log4net.Core.Level.Warn"/> level.\r
13209             </summary>\r
13210             <param name="format">A String containing zero or more format items</param>\r
13211             <param name="arg0">An Object to format</param>\r
13212             <param name="arg1">An Object to format</param>\r
13213             <remarks>\r
13214             <para>\r
13215             The message is formatted using the <c>String.Format</c> method. See\r
13216             <see cref="M:System.String.Format(System.String,System.Object[])"/> for details of the syntax of the format string and the behavior\r
13217             of the formatting.\r
13218             </para>\r
13219             <para>\r
13220             This method does not take an <see cref="T:System.Exception"/> object to include in the\r
13221             log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.ILog.Warn(System.Object,System.Exception)"/>\r
13222             methods instead.\r
13223             </para>\r
13224             </remarks>\r
13225             <seealso cref="M:log4net.ILog.Warn(System.Object)"/>\r
13226             <seealso cref="P:log4net.ILog.IsWarnEnabled"/>\r
13227         </member>\r
13228         <member name="M:log4net.ILog.WarnFormat(System.String,System.Object,System.Object,System.Object)">\r
13229             <summary>\r
13230             Logs a formatted message string with the <see cref="F:log4net.Core.Level.Warn"/> level.\r
13231             </summary>\r
13232             <param name="format">A String containing zero or more format items</param>\r
13233             <param name="arg0">An Object to format</param>\r
13234             <param name="arg1">An Object to format</param>\r
13235             <param name="arg2">An Object to format</param>\r
13236             <remarks>\r
13237             <para>\r
13238             The message is formatted using the <c>String.Format</c> method. See\r
13239             <see cref="M:System.String.Format(System.String,System.Object[])"/> for details of the syntax of the format string and the behavior\r
13240             of the formatting.\r
13241             </para>\r
13242             <para>\r
13243             This method does not take an <see cref="T:System.Exception"/> object to include in the\r
13244             log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.ILog.Warn(System.Object,System.Exception)"/>\r
13245             methods instead.\r
13246             </para>\r
13247             </remarks>\r
13248             <seealso cref="M:log4net.ILog.Warn(System.Object)"/>\r
13249             <seealso cref="P:log4net.ILog.IsWarnEnabled"/>\r
13250         </member>\r
13251         <member name="M:log4net.ILog.WarnFormat(System.IFormatProvider,System.String,System.Object[])">\r
13252             <summary>\r
13253             Logs a formatted message string with the <see cref="F:log4net.Core.Level.Warn"/> level.\r
13254             </summary>\r
13255             <param name="provider">An <see cref="T:System.IFormatProvider"/> that supplies culture-specific formatting information</param>\r
13256             <param name="format">A String containing zero or more format items</param>\r
13257             <param name="args">An Object array containing zero or more objects to format</param>\r
13258             <remarks>\r
13259             <para>\r
13260             The message is formatted using the <c>String.Format</c> method. See\r
13261             <see cref="M:System.String.Format(System.String,System.Object[])"/> for details of the syntax of the format string and the behavior\r
13262             of the formatting.\r
13263             </para>\r
13264             <para>\r
13265             This method does not take an <see cref="T:System.Exception"/> object to include in the\r
13266             log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.ILog.Warn(System.Object)"/>\r
13267             methods instead.\r
13268             </para>\r
13269             </remarks>\r
13270             <seealso cref="M:log4net.ILog.Warn(System.Object,System.Exception)"/>\r
13271             <seealso cref="P:log4net.ILog.IsWarnEnabled"/>\r
13272         </member>\r
13273         <member name="M:log4net.ILog.Error(System.Object)">\r
13274             <overloads>Log a message object with the <see cref="F:log4net.Core.Level.Error"/> level.</overloads>\r
13275             <summary>\r
13276             Logs a message object with the <see cref="F:log4net.Core.Level.Error"/> level.\r
13277             </summary>\r
13278             <param name="message">The message object to log.</param>\r
13279             <remarks>\r
13280             <para>\r
13281             This method first checks if this logger is <c>ERROR</c>\r
13282             enabled by comparing the level of this logger with the \r
13283             <see cref="F:log4net.Core.Level.Error"/> level. If this logger is\r
13284             <c>ERROR</c> enabled, then it converts the message object\r
13285             (passed as parameter) to a string by invoking the appropriate\r
13286             <see cref="T:log4net.ObjectRenderer.IObjectRenderer"/>. It then \r
13287             proceeds to call all the registered appenders in this logger \r
13288             and also higher in the hierarchy depending on the value of the \r
13289             additivity flag.\r
13290             </para>\r
13291             <para><b>WARNING</b> Note that passing an <see cref="T:System.Exception"/> \r
13292             to this method will print the name of the <see cref="T:System.Exception"/> \r
13293             but no stack trace. To print a stack trace use the \r
13294             <see cref="M:log4net.ILog.Error(System.Object,System.Exception)"/> form instead.\r
13295             </para>\r
13296             </remarks>\r
13297             <seealso cref="M:log4net.ILog.Error(System.Object,System.Exception)"/>\r
13298             <seealso cref="P:log4net.ILog.IsErrorEnabled"/>\r
13299         </member>\r
13300         <member name="M:log4net.ILog.Error(System.Object,System.Exception)">\r
13301             <summary>\r
13302             Log a message object with the <see cref="F:log4net.Core.Level.Error"/> level including\r
13303             the stack trace of the <see cref="T:System.Exception"/> passed\r
13304             as a parameter.\r
13305             </summary>\r
13306             <param name="message">The message object to log.</param>\r
13307             <param name="exception">The exception to log, including its stack trace.</param>\r
13308             <remarks>\r
13309             <para>\r
13310             See the <see cref="M:log4net.ILog.Error(System.Object)"/> form for more detailed information.\r
13311             </para>\r
13312             </remarks>\r
13313             <seealso cref="M:log4net.ILog.Error(System.Object)"/>\r
13314             <seealso cref="P:log4net.ILog.IsErrorEnabled"/>\r
13315         </member>\r
13316         <member name="M:log4net.ILog.ErrorFormat(System.String,System.Object[])">\r
13317             <overloads>Log a formatted message string with the <see cref="F:log4net.Core.Level.Error"/> level.</overloads>\r
13318             <summary>\r
13319             Logs a formatted message string with the <see cref="F:log4net.Core.Level.Error"/> level.\r
13320             </summary>\r
13321             <param name="format">A String containing zero or more format items</param>\r
13322             <param name="args">An Object array containing zero or more objects to format</param>\r
13323             <remarks>\r
13324             <para>\r
13325             The message is formatted using the <c>String.Format</c> method. See\r
13326             <see cref="M:System.String.Format(System.String,System.Object[])"/> for details of the syntax of the format string and the behavior\r
13327             of the formatting.\r
13328             </para>\r
13329             <para>\r
13330             This method does not take an <see cref="T:System.Exception"/> object to include in the\r
13331             log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.ILog.Error(System.Object)"/>\r
13332             methods instead.\r
13333             </para>\r
13334             </remarks>\r
13335             <seealso cref="M:log4net.ILog.Error(System.Object,System.Exception)"/>\r
13336             <seealso cref="P:log4net.ILog.IsErrorEnabled"/>\r
13337         </member>\r
13338         <member name="M:log4net.ILog.ErrorFormat(System.String,System.Object)">\r
13339             <summary>\r
13340             Logs a formatted message string with the <see cref="F:log4net.Core.Level.Error"/> level.\r
13341             </summary>\r
13342             <param name="format">A String containing zero or more format items</param>\r
13343             <param name="arg0">An Object to format</param>\r
13344             <remarks>\r
13345             <para>\r
13346             The message is formatted using the <c>String.Format</c> method. See\r
13347             <see cref="M:System.String.Format(System.String,System.Object[])"/> for details of the syntax of the format string and the behavior\r
13348             of the formatting.\r
13349             </para>\r
13350             <para>\r
13351             This method does not take an <see cref="T:System.Exception"/> object to include in the\r
13352             log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.ILog.Error(System.Object,System.Exception)"/>\r
13353             methods instead.\r
13354             </para>\r
13355             </remarks>\r
13356             <seealso cref="M:log4net.ILog.Error(System.Object)"/>\r
13357             <seealso cref="P:log4net.ILog.IsErrorEnabled"/>\r
13358         </member>\r
13359         <member name="M:log4net.ILog.ErrorFormat(System.String,System.Object,System.Object)">\r
13360             <summary>\r
13361             Logs a formatted message string with the <see cref="F:log4net.Core.Level.Error"/> level.\r
13362             </summary>\r
13363             <param name="format">A String containing zero or more format items</param>\r
13364             <param name="arg0">An Object to format</param>\r
13365             <param name="arg1">An Object to format</param>\r
13366             <remarks>\r
13367             <para>\r
13368             The message is formatted using the <c>String.Format</c> method. See\r
13369             <see cref="M:System.String.Format(System.String,System.Object[])"/> for details of the syntax of the format string and the behavior\r
13370             of the formatting.\r
13371             </para>\r
13372             <para>\r
13373             This method does not take an <see cref="T:System.Exception"/> object to include in the\r
13374             log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.ILog.Error(System.Object,System.Exception)"/>\r
13375             methods instead.\r
13376             </para>\r
13377             </remarks>\r
13378             <seealso cref="M:log4net.ILog.Error(System.Object)"/>\r
13379             <seealso cref="P:log4net.ILog.IsErrorEnabled"/>\r
13380         </member>\r
13381         <member name="M:log4net.ILog.ErrorFormat(System.String,System.Object,System.Object,System.Object)">\r
13382             <summary>\r
13383             Logs a formatted message string with the <see cref="F:log4net.Core.Level.Error"/> level.\r
13384             </summary>\r
13385             <param name="format">A String containing zero or more format items</param>\r
13386             <param name="arg0">An Object to format</param>\r
13387             <param name="arg1">An Object to format</param>\r
13388             <param name="arg2">An Object to format</param>\r
13389             <remarks>\r
13390             <para>\r
13391             The message is formatted using the <c>String.Format</c> method. See\r
13392             <see cref="M:System.String.Format(System.String,System.Object[])"/> for details of the syntax of the format string and the behavior\r
13393             of the formatting.\r
13394             </para>\r
13395             <para>\r
13396             This method does not take an <see cref="T:System.Exception"/> object to include in the\r
13397             log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.ILog.Error(System.Object,System.Exception)"/>\r
13398             methods instead.\r
13399             </para>\r
13400             </remarks>\r
13401             <seealso cref="M:log4net.ILog.Error(System.Object)"/>\r
13402             <seealso cref="P:log4net.ILog.IsErrorEnabled"/>\r
13403         </member>\r
13404         <member name="M:log4net.ILog.ErrorFormat(System.IFormatProvider,System.String,System.Object[])">\r
13405             <summary>\r
13406             Logs a formatted message string with the <see cref="F:log4net.Core.Level.Error"/> level.\r
13407             </summary>\r
13408             <param name="provider">An <see cref="T:System.IFormatProvider"/> that supplies culture-specific formatting information</param>\r
13409             <param name="format">A String containing zero or more format items</param>\r
13410             <param name="args">An Object array containing zero or more objects to format</param>\r
13411             <remarks>\r
13412             <para>\r
13413             The message is formatted using the <c>String.Format</c> method. See\r
13414             <see cref="M:System.String.Format(System.String,System.Object[])"/> for details of the syntax of the format string and the behavior\r
13415             of the formatting.\r
13416             </para>\r
13417             <para>\r
13418             This method does not take an <see cref="T:System.Exception"/> object to include in the\r
13419             log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.ILog.Error(System.Object)"/>\r
13420             methods instead.\r
13421             </para>\r
13422             </remarks>\r
13423             <seealso cref="M:log4net.ILog.Error(System.Object,System.Exception)"/>\r
13424             <seealso cref="P:log4net.ILog.IsErrorEnabled"/>\r
13425         </member>\r
13426         <member name="M:log4net.ILog.Fatal(System.Object)">\r
13427             <overloads>Log a message object with the <see cref="F:log4net.Core.Level.Fatal"/> level.</overloads>\r
13428             <summary>\r
13429             Log a message object with the <see cref="F:log4net.Core.Level.Fatal"/> level.\r
13430             </summary>\r
13431             <remarks>\r
13432             <para>\r
13433             This method first checks if this logger is <c>FATAL</c>\r
13434             enabled by comparing the level of this logger with the \r
13435             <see cref="F:log4net.Core.Level.Fatal"/> level. If this logger is\r
13436             <c>FATAL</c> enabled, then it converts the message object\r
13437             (passed as parameter) to a string by invoking the appropriate\r
13438             <see cref="T:log4net.ObjectRenderer.IObjectRenderer"/>. It then \r
13439             proceeds to call all the registered appenders in this logger \r
13440             and also higher in the hierarchy depending on the value of the \r
13441             additivity flag.\r
13442             </para>\r
13443             <para><b>WARNING</b> Note that passing an <see cref="T:System.Exception"/> \r
13444             to this method will print the name of the <see cref="T:System.Exception"/> \r
13445             but no stack trace. To print a stack trace use the \r
13446             <see cref="M:log4net.ILog.Fatal(System.Object,System.Exception)"/> form instead.\r
13447             </para>\r
13448             </remarks>\r
13449             <param name="message">The message object to log.</param>\r
13450             <seealso cref="M:log4net.ILog.Fatal(System.Object,System.Exception)"/>\r
13451             <seealso cref="P:log4net.ILog.IsFatalEnabled"/>\r
13452         </member>\r
13453         <member name="M:log4net.ILog.Fatal(System.Object,System.Exception)">\r
13454             <summary>\r
13455             Log a message object with the <see cref="F:log4net.Core.Level.Fatal"/> level including\r
13456             the stack trace of the <see cref="T:System.Exception"/> passed\r
13457             as a parameter.\r
13458             </summary>\r
13459             <param name="message">The message object to log.</param>\r
13460             <param name="exception">The exception to log, including its stack trace.</param>\r
13461             <remarks>\r
13462             <para>\r
13463             See the <see cref="M:log4net.ILog.Fatal(System.Object)"/> form for more detailed information.\r
13464             </para>\r
13465             </remarks>\r
13466             <seealso cref="M:log4net.ILog.Fatal(System.Object)"/>\r
13467             <seealso cref="P:log4net.ILog.IsFatalEnabled"/>\r
13468         </member>\r
13469         <member name="M:log4net.ILog.FatalFormat(System.String,System.Object[])">\r
13470             <overloads>Log a formatted message string with the <see cref="F:log4net.Core.Level.Fatal"/> level.</overloads>\r
13471             <summary>\r
13472             Logs a formatted message string with the <see cref="F:log4net.Core.Level.Fatal"/> level.\r
13473             </summary>\r
13474             <param name="format">A String containing zero or more format items</param>\r
13475             <param name="args">An Object array containing zero or more objects to format</param>\r
13476             <remarks>\r
13477             <para>\r
13478             The message is formatted using the <c>String.Format</c> method. See\r
13479             <see cref="M:System.String.Format(System.String,System.Object[])"/> for details of the syntax of the format string and the behavior\r
13480             of the formatting.\r
13481             </para>\r
13482             <para>\r
13483             This method does not take an <see cref="T:System.Exception"/> object to include in the\r
13484             log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.ILog.Fatal(System.Object)"/>\r
13485             methods instead.\r
13486             </para>\r
13487             </remarks>\r
13488             <seealso cref="M:log4net.ILog.Fatal(System.Object,System.Exception)"/>\r
13489             <seealso cref="P:log4net.ILog.IsFatalEnabled"/>\r
13490         </member>\r
13491         <member name="M:log4net.ILog.FatalFormat(System.String,System.Object)">\r
13492             <summary>\r
13493             Logs a formatted message string with the <see cref="F:log4net.Core.Level.Fatal"/> level.\r
13494             </summary>\r
13495             <param name="format">A String containing zero or more format items</param>\r
13496             <param name="arg0">An Object to format</param>\r
13497             <remarks>\r
13498             <para>\r
13499             The message is formatted using the <c>String.Format</c> method. See\r
13500             <see cref="M:System.String.Format(System.String,System.Object[])"/> for details of the syntax of the format string and the behavior\r
13501             of the formatting.\r
13502             </para>\r
13503             <para>\r
13504             This method does not take an <see cref="T:System.Exception"/> object to include in the\r
13505             log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.ILog.Fatal(System.Object,System.Exception)"/>\r
13506             methods instead.\r
13507             </para>\r
13508             </remarks>\r
13509             <seealso cref="M:log4net.ILog.Fatal(System.Object)"/>\r
13510             <seealso cref="P:log4net.ILog.IsFatalEnabled"/>\r
13511         </member>\r
13512         <member name="M:log4net.ILog.FatalFormat(System.String,System.Object,System.Object)">\r
13513             <summary>\r
13514             Logs a formatted message string with the <see cref="F:log4net.Core.Level.Fatal"/> level.\r
13515             </summary>\r
13516             <param name="format">A String containing zero or more format items</param>\r
13517             <param name="arg0">An Object to format</param>\r
13518             <param name="arg1">An Object to format</param>\r
13519             <remarks>\r
13520             <para>\r
13521             The message is formatted using the <c>String.Format</c> method. See\r
13522             <see cref="M:System.String.Format(System.String,System.Object[])"/> for details of the syntax of the format string and the behavior\r
13523             of the formatting.\r
13524             </para>\r
13525             <para>\r
13526             This method does not take an <see cref="T:System.Exception"/> object to include in the\r
13527             log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.ILog.Fatal(System.Object,System.Exception)"/>\r
13528             methods instead.\r
13529             </para>\r
13530             </remarks>\r
13531             <seealso cref="M:log4net.ILog.Fatal(System.Object)"/>\r
13532             <seealso cref="P:log4net.ILog.IsFatalEnabled"/>\r
13533         </member>\r
13534         <member name="M:log4net.ILog.FatalFormat(System.String,System.Object,System.Object,System.Object)">\r
13535             <summary>\r
13536             Logs a formatted message string with the <see cref="F:log4net.Core.Level.Fatal"/> level.\r
13537             </summary>\r
13538             <param name="format">A String containing zero or more format items</param>\r
13539             <param name="arg0">An Object to format</param>\r
13540             <param name="arg1">An Object to format</param>\r
13541             <param name="arg2">An Object to format</param>\r
13542             <remarks>\r
13543             <para>\r
13544             The message is formatted using the <c>String.Format</c> method. See\r
13545             <see cref="M:System.String.Format(System.String,System.Object[])"/> for details of the syntax of the format string and the behavior\r
13546             of the formatting.\r
13547             </para>\r
13548             <para>\r
13549             This method does not take an <see cref="T:System.Exception"/> object to include in the\r
13550             log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.ILog.Fatal(System.Object,System.Exception)"/>\r
13551             methods instead.\r
13552             </para>\r
13553             </remarks>\r
13554             <seealso cref="M:log4net.ILog.Fatal(System.Object)"/>\r
13555             <seealso cref="P:log4net.ILog.IsFatalEnabled"/>\r
13556         </member>\r
13557         <member name="M:log4net.ILog.FatalFormat(System.IFormatProvider,System.String,System.Object[])">\r
13558             <summary>\r
13559             Logs a formatted message string with the <see cref="F:log4net.Core.Level.Fatal"/> level.\r
13560             </summary>\r
13561             <param name="provider">An <see cref="T:System.IFormatProvider"/> that supplies culture-specific formatting information</param>\r
13562             <param name="format">A String containing zero or more format items</param>\r
13563             <param name="args">An Object array containing zero or more objects to format</param>\r
13564             <remarks>\r
13565             <para>\r
13566             The message is formatted using the <c>String.Format</c> method. See\r
13567             <see cref="M:System.String.Format(System.String,System.Object[])"/> for details of the syntax of the format string and the behavior\r
13568             of the formatting.\r
13569             </para>\r
13570             <para>\r
13571             This method does not take an <see cref="T:System.Exception"/> object to include in the\r
13572             log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.ILog.Fatal(System.Object)"/>\r
13573             methods instead.\r
13574             </para>\r
13575             </remarks>\r
13576             <seealso cref="M:log4net.ILog.Fatal(System.Object,System.Exception)"/>\r
13577             <seealso cref="P:log4net.ILog.IsFatalEnabled"/>\r
13578         </member>\r
13579         <member name="P:log4net.ILog.IsDebugEnabled">\r
13580             <summary>\r
13581             Checks if this logger is enabled for the <see cref="F:log4net.Core.Level.Debug"/> level.\r
13582             </summary>\r
13583             <value>\r
13584             <c>true</c> if this logger is enabled for <see cref="F:log4net.Core.Level.Debug"/> events, <c>false</c> otherwise.\r
13585             </value>\r
13586             <remarks>\r
13587             <para>\r
13588             This function is intended to lessen the computational cost of\r
13589             disabled log debug statements.\r
13590             </para>\r
13591             <para> For some ILog interface <c>log</c>, when you write:</para>\r
13592             <code lang="C#">\r
13593             log.Debug("This is entry number: " + i );\r
13594             </code>\r
13595             <para>\r
13596             You incur the cost constructing the message, string construction and concatenation in\r
13597             this case, regardless of whether the message is logged or not.\r
13598             </para>\r
13599             <para>\r
13600             If you are worried about speed (who isn't), then you should write:\r
13601             </para>\r
13602             <code lang="C#">\r
13603             if (log.IsDebugEnabled)\r
13604             { \r
13605                 log.Debug("This is entry number: " + i );\r
13606             }\r
13607             </code>\r
13608             <para>\r
13609             This way you will not incur the cost of parameter\r
13610             construction if debugging is disabled for <c>log</c>. On\r
13611             the other hand, if the <c>log</c> is debug enabled, you\r
13612             will incur the cost of evaluating whether the logger is debug\r
13613             enabled twice. Once in <see cref="P:log4net.ILog.IsDebugEnabled"/> and once in\r
13614             the <see cref="M:log4net.ILog.Debug(System.Object)"/>.  This is an insignificant overhead\r
13615             since evaluating a logger takes about 1% of the time it\r
13616             takes to actually log. This is the preferred style of logging.\r
13617             </para>\r
13618             <para>Alternatively if your logger is available statically then the is debug\r
13619             enabled state can be stored in a static variable like this:\r
13620             </para>\r
13621             <code lang="C#">\r
13622             private static readonly bool isDebugEnabled = log.IsDebugEnabled;\r
13623             </code>\r
13624             <para>\r
13625             Then when you come to log you can write:\r
13626             </para>\r
13627             <code lang="C#">\r
13628             if (isDebugEnabled)\r
13629             { \r
13630                 log.Debug("This is entry number: " + i );\r
13631             }\r
13632             </code>\r
13633             <para>\r
13634             This way the debug enabled state is only queried once\r
13635             when the class is loaded. Using a <c>private static readonly</c>\r
13636             variable is the most efficient because it is a run time constant\r
13637             and can be heavily optimized by the JIT compiler.\r
13638             </para>\r
13639             <para>\r
13640             Of course if you use a static readonly variable to\r
13641             hold the enabled state of the logger then you cannot\r
13642             change the enabled state at runtime to vary the logging\r
13643             that is produced. You have to decide if you need absolute\r
13644             speed or runtime flexibility.\r
13645             </para>\r
13646             </remarks>\r
13647             <seealso cref="M:log4net.ILog.Debug(System.Object)"/>\r
13648             <seealso cref="M:log4net.ILog.DebugFormat(System.IFormatProvider,System.String,System.Object[])"/>\r
13649         </member>\r
13650         <member name="P:log4net.ILog.IsInfoEnabled">\r
13651             <summary>\r
13652             Checks if this logger is enabled for the <see cref="F:log4net.Core.Level.Info"/> level.\r
13653             </summary>\r
13654             <value>\r
13655             <c>true</c> if this logger is enabled for <see cref="F:log4net.Core.Level.Info"/> events, <c>false</c> otherwise.\r
13656             </value>\r
13657             <remarks>\r
13658             For more information see <see cref="P:log4net.ILog.IsDebugEnabled"/>.\r
13659             </remarks>\r
13660             <seealso cref="M:log4net.ILog.Info(System.Object)"/>\r
13661             <seealso cref="M:log4net.ILog.InfoFormat(System.IFormatProvider,System.String,System.Object[])"/>\r
13662             <seealso cref="P:log4net.ILog.IsDebugEnabled"/>\r
13663         </member>\r
13664         <member name="P:log4net.ILog.IsWarnEnabled">\r
13665             <summary>\r
13666             Checks if this logger is enabled for the <see cref="F:log4net.Core.Level.Warn"/> level.\r
13667             </summary>\r
13668             <value>\r
13669             <c>true</c> if this logger is enabled for <see cref="F:log4net.Core.Level.Warn"/> events, <c>false</c> otherwise.\r
13670             </value>\r
13671             <remarks>\r
13672             For more information see <see cref="P:log4net.ILog.IsDebugEnabled"/>.\r
13673             </remarks>\r
13674             <seealso cref="M:log4net.ILog.Warn(System.Object)"/>\r
13675             <seealso cref="M:log4net.ILog.WarnFormat(System.IFormatProvider,System.String,System.Object[])"/>\r
13676             <seealso cref="P:log4net.ILog.IsDebugEnabled"/>\r
13677         </member>\r
13678         <member name="P:log4net.ILog.IsErrorEnabled">\r
13679             <summary>\r
13680             Checks if this logger is enabled for the <see cref="F:log4net.Core.Level.Error"/> level.\r
13681             </summary>\r
13682             <value>\r
13683             <c>true</c> if this logger is enabled for <see cref="F:log4net.Core.Level.Error"/> events, <c>false</c> otherwise.\r
13684             </value>\r
13685             <remarks>\r
13686             For more information see <see cref="P:log4net.ILog.IsDebugEnabled"/>.\r
13687             </remarks>\r
13688             <seealso cref="M:log4net.ILog.Error(System.Object)"/>\r
13689             <seealso cref="M:log4net.ILog.ErrorFormat(System.IFormatProvider,System.String,System.Object[])"/>\r
13690             <seealso cref="P:log4net.ILog.IsDebugEnabled"/>\r
13691         </member>\r
13692         <member name="P:log4net.ILog.IsFatalEnabled">\r
13693             <summary>\r
13694             Checks if this logger is enabled for the <see cref="F:log4net.Core.Level.Fatal"/> level.\r
13695             </summary>\r
13696             <value>\r
13697             <c>true</c> if this logger is enabled for <see cref="F:log4net.Core.Level.Fatal"/> events, <c>false</c> otherwise.\r
13698             </value>\r
13699             <remarks>\r
13700             For more information see <see cref="P:log4net.ILog.IsDebugEnabled"/>.\r
13701             </remarks>\r
13702             <seealso cref="M:log4net.ILog.Fatal(System.Object)"/>\r
13703             <seealso cref="M:log4net.ILog.FatalFormat(System.IFormatProvider,System.String,System.Object[])"/>\r
13704             <seealso cref="P:log4net.ILog.IsDebugEnabled"/>\r
13705         </member>\r
13706         <member name="M:log4net.Core.LogImpl.#ctor(log4net.Core.ILogger)">\r
13707             <summary>\r
13708             Construct a new wrapper for the specified logger.\r
13709             </summary>\r
13710             <param name="logger">The logger to wrap.</param>\r
13711             <remarks>\r
13712             <para>\r
13713             Construct a new wrapper for the specified logger.\r
13714             </para>\r
13715             </remarks>\r
13716         </member>\r
13717         <member name="M:log4net.Core.LogImpl.ReloadLevels(log4net.Repository.ILoggerRepository)">\r
13718             <summary>\r
13719             Virtual method called when the configuration of the repository changes\r
13720             </summary>\r
13721             <param name="repository">the repository holding the levels</param>\r
13722             <remarks>\r
13723             <para>\r
13724             Virtual method called when the configuration of the repository changes\r
13725             </para>\r
13726             </remarks>\r
13727         </member>\r
13728         <member name="M:log4net.Core.LogImpl.Debug(System.Object)">\r
13729             <summary>\r
13730             Logs a message object with the <c>DEBUG</c> level.\r
13731             </summary>\r
13732             <param name="message">The message object to log.</param>\r
13733             <remarks>\r
13734             <para>\r
13735             This method first checks if this logger is <c>DEBUG</c>\r
13736             enabled by comparing the level of this logger with the \r
13737             <c>DEBUG</c> level. If this logger is\r
13738             <c>DEBUG</c> enabled, then it converts the message object\r
13739             (passed as parameter) to a string by invoking the appropriate\r
13740             <see cref="T:log4net.ObjectRenderer.IObjectRenderer"/>. It then \r
13741             proceeds to call all the registered appenders in this logger \r
13742             and also higher in the hierarchy depending on the value of the \r
13743             additivity flag.\r
13744             </para>\r
13745             <para>\r
13746             <b>WARNING</b> Note that passing an <see cref="T:System.Exception"/> \r
13747             to this method will print the name of the <see cref="T:System.Exception"/> \r
13748             but no stack trace. To print a stack trace use the \r
13749             <see cref="M:log4net.Core.LogImpl.Debug(System.Object,System.Exception)"/> form instead.\r
13750             </para>\r
13751             </remarks>\r
13752         </member>\r
13753         <member name="M:log4net.Core.LogImpl.Debug(System.Object,System.Exception)">\r
13754             <summary>\r
13755             Logs a message object with the <c>DEBUG</c> level\r
13756             </summary>\r
13757             <param name="message">The message object to log.</param>\r
13758             <param name="exception">The exception to log, including its stack trace.</param>\r
13759             <remarks>\r
13760             <para>\r
13761             Logs a message object with the <c>DEBUG</c> level including\r
13762             the stack trace of the <see cref="T:System.Exception"/> <paramref name="exception"/> passed\r
13763             as a parameter.\r
13764             </para>\r
13765             <para>\r
13766             See the <see cref="M:log4net.Core.LogImpl.Debug(System.Object)"/> form for more detailed information.\r
13767             </para>\r
13768             </remarks>\r
13769             <seealso cref="M:log4net.Core.LogImpl.Debug(System.Object)"/>\r
13770         </member>\r
13771         <member name="M:log4net.Core.LogImpl.DebugFormat(System.String,System.Object[])">\r
13772             <summary>\r
13773             Logs a formatted message string with the <c>DEBUG</c> level.\r
13774             </summary>\r
13775             <param name="format">A String containing zero or more format items</param>\r
13776             <param name="args">An Object array containing zero or more objects to format</param>\r
13777             <remarks>\r
13778             <para>\r
13779             The message is formatted using the <see cref="M:System.String.Format(System.IFormatProvider,System.String,System.Object[])"/> method. See\r
13780             <c>String.Format</c> for details of the syntax of the format string and the behavior\r
13781             of the formatting.\r
13782             </para>\r
13783             <para>\r
13784             The string is formatted using the <see cref="P:System.Globalization.CultureInfo.InvariantCulture"/>\r
13785             format provider. To specify a localized provider use the\r
13786             <see cref="M:log4net.Core.LogImpl.DebugFormat(System.IFormatProvider,System.String,System.Object[])"/> method.\r
13787             </para>\r
13788             <para>\r
13789             This method does not take an <see cref="T:System.Exception"/> object to include in the\r
13790             log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.Core.LogImpl.Debug(System.Object)"/>\r
13791             methods instead.\r
13792             </para>\r
13793             </remarks>\r
13794         </member>\r
13795         <member name="M:log4net.Core.LogImpl.DebugFormat(System.String,System.Object)">\r
13796             <summary>\r
13797             Logs a formatted message string with the <c>DEBUG</c> level.\r
13798             </summary>\r
13799             <param name="format">A String containing zero or more format items</param>\r
13800             <param name="arg0">An Object to format</param>\r
13801             <remarks>\r
13802             <para>\r
13803             The message is formatted using the <see cref="M:System.String.Format(System.IFormatProvider,System.String,System.Object[])"/> method. See\r
13804             <c>String.Format</c> for details of the syntax of the format string and the behavior\r
13805             of the formatting.\r
13806             </para>\r
13807             <para>\r
13808             The string is formatted using the <see cref="P:System.Globalization.CultureInfo.InvariantCulture"/>\r
13809             format provider. To specify a localized provider use the\r
13810             <see cref="M:log4net.Core.LogImpl.DebugFormat(System.IFormatProvider,System.String,System.Object[])"/> method.\r
13811             </para>\r
13812             <para>\r
13813             This method does not take an <see cref="T:System.Exception"/> object to include in the\r
13814             log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.Core.LogImpl.Debug(System.Object)"/>\r
13815             methods instead.\r
13816             </para>\r
13817             </remarks>\r
13818         </member>\r
13819         <member name="M:log4net.Core.LogImpl.DebugFormat(System.String,System.Object,System.Object)">\r
13820             <summary>\r
13821             Logs a formatted message string with the <c>DEBUG</c> level.\r
13822             </summary>\r
13823             <param name="format">A String containing zero or more format items</param>\r
13824             <param name="arg0">An Object to format</param>\r
13825             <param name="arg1">An Object to format</param>\r
13826             <remarks>\r
13827             <para>\r
13828             The message is formatted using the <see cref="M:System.String.Format(System.IFormatProvider,System.String,System.Object[])"/> method. See\r
13829             <c>String.Format</c> for details of the syntax of the format string and the behavior\r
13830             of the formatting.\r
13831             </para>\r
13832             <para>\r
13833             The string is formatted using the <see cref="P:System.Globalization.CultureInfo.InvariantCulture"/>\r
13834             format provider. To specify a localized provider use the\r
13835             <see cref="M:log4net.Core.LogImpl.DebugFormat(System.IFormatProvider,System.String,System.Object[])"/> method.\r
13836             </para>\r
13837             <para>\r
13838             This method does not take an <see cref="T:System.Exception"/> object to include in the\r
13839             log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.Core.LogImpl.Debug(System.Object)"/>\r
13840             methods instead.\r
13841             </para>\r
13842             </remarks>\r
13843         </member>\r
13844         <member name="M:log4net.Core.LogImpl.DebugFormat(System.String,System.Object,System.Object,System.Object)">\r
13845             <summary>\r
13846             Logs a formatted message string with the <c>DEBUG</c> level.\r
13847             </summary>\r
13848             <param name="format">A String containing zero or more format items</param>\r
13849             <param name="arg0">An Object to format</param>\r
13850             <param name="arg1">An Object to format</param>\r
13851             <param name="arg2">An Object to format</param>\r
13852             <remarks>\r
13853             <para>\r
13854             The message is formatted using the <see cref="M:System.String.Format(System.IFormatProvider,System.String,System.Object[])"/> method. See\r
13855             <c>String.Format</c> for details of the syntax of the format string and the behavior\r
13856             of the formatting.\r
13857             </para>\r
13858             <para>\r
13859             The string is formatted using the <see cref="P:System.Globalization.CultureInfo.InvariantCulture"/>\r
13860             format provider. To specify a localized provider use the\r
13861             <see cref="M:log4net.Core.LogImpl.DebugFormat(System.IFormatProvider,System.String,System.Object[])"/> method.\r
13862             </para>\r
13863             <para>\r
13864             This method does not take an <see cref="T:System.Exception"/> object to include in the\r
13865             log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.Core.LogImpl.Debug(System.Object)"/>\r
13866             methods instead.\r
13867             </para>\r
13868             </remarks>\r
13869         </member>\r
13870         <member name="M:log4net.Core.LogImpl.DebugFormat(System.IFormatProvider,System.String,System.Object[])">\r
13871             <summary>\r
13872             Logs a formatted message string with the <c>DEBUG</c> level.\r
13873             </summary>\r
13874             <param name="provider">An <see cref="T:System.IFormatProvider"/> that supplies culture-specific formatting information</param>\r
13875             <param name="format">A String containing zero or more format items</param>\r
13876             <param name="args">An Object array containing zero or more objects to format</param>\r
13877             <remarks>\r
13878             <para>\r
13879             The message is formatted using the <see cref="M:System.String.Format(System.IFormatProvider,System.String,System.Object[])"/> method. See\r
13880             <c>String.Format</c> for details of the syntax of the format string and the behavior\r
13881             of the formatting.\r
13882             </para>\r
13883             <para>\r
13884             This method does not take an <see cref="T:System.Exception"/> object to include in the\r
13885             log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.Core.LogImpl.Debug(System.Object)"/>\r
13886             methods instead.\r
13887             </para>\r
13888             </remarks>\r
13889         </member>\r
13890         <member name="M:log4net.Core.LogImpl.Info(System.Object)">\r
13891             <summary>\r
13892             Logs a message object with the <c>INFO</c> level.\r
13893             </summary>\r
13894             <param name="message">The message object to log.</param>\r
13895             <remarks>\r
13896             <para>\r
13897             This method first checks if this logger is <c>INFO</c>\r
13898             enabled by comparing the level of this logger with the \r
13899             <c>INFO</c> level. If this logger is\r
13900             <c>INFO</c> enabled, then it converts the message object\r
13901             (passed as parameter) to a string by invoking the appropriate\r
13902             <see cref="T:log4net.ObjectRenderer.IObjectRenderer"/>. It then \r
13903             proceeds to call all the registered appenders in this logger \r
13904             and also higher in the hierarchy depending on the value of \r
13905             the additivity flag.\r
13906             </para>\r
13907             <para>\r
13908             <b>WARNING</b> Note that passing an <see cref="T:System.Exception"/> \r
13909             to this method will print the name of the <see cref="T:System.Exception"/> \r
13910             but no stack trace. To print a stack trace use the \r
13911             <see cref="M:log4net.Core.LogImpl.Info(System.Object,System.Exception)"/> form instead.\r
13912             </para>\r
13913             </remarks>\r
13914         </member>\r
13915         <member name="M:log4net.Core.LogImpl.Info(System.Object,System.Exception)">\r
13916             <summary>\r
13917             Logs a message object with the <c>INFO</c> level.\r
13918             </summary>\r
13919             <param name="message">The message object to log.</param>\r
13920             <param name="exception">The exception to log, including its stack trace.</param>\r
13921             <remarks>\r
13922             <para>\r
13923             Logs a message object with the <c>INFO</c> level including\r
13924             the stack trace of the <see cref="T:System.Exception"/> <paramref name="exception"/> \r
13925             passed as a parameter.\r
13926             </para>\r
13927             <para>\r
13928             See the <see cref="M:log4net.Core.LogImpl.Info(System.Object)"/> form for more detailed information.\r
13929             </para>\r
13930             </remarks>\r
13931             <seealso cref="M:log4net.Core.LogImpl.Info(System.Object)"/>\r
13932         </member>\r
13933         <member name="M:log4net.Core.LogImpl.InfoFormat(System.String,System.Object[])">\r
13934             <summary>\r
13935             Logs a formatted message string with the <c>INFO</c> level.\r
13936             </summary>\r
13937             <param name="format">A String containing zero or more format items</param>\r
13938             <param name="args">An Object array containing zero or more objects to format</param>\r
13939             <remarks>\r
13940             <para>\r
13941             The message is formatted using the <see cref="M:System.String.Format(System.IFormatProvider,System.String,System.Object[])"/> method. See\r
13942             <c>String.Format</c> for details of the syntax of the format string and the behavior\r
13943             of the formatting.\r
13944             </para>\r
13945             <para>\r
13946             The string is formatted using the <see cref="P:System.Globalization.CultureInfo.InvariantCulture"/>\r
13947             format provider. To specify a localized provider use the\r
13948             <see cref="M:log4net.Core.LogImpl.InfoFormat(System.IFormatProvider,System.String,System.Object[])"/> method.\r
13949             </para>\r
13950             <para>\r
13951             This method does not take an <see cref="T:System.Exception"/> object to include in the\r
13952             log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.Core.LogImpl.Info(System.Object)"/>\r
13953             methods instead.\r
13954             </para>\r
13955             </remarks>\r
13956         </member>\r
13957         <member name="M:log4net.Core.LogImpl.InfoFormat(System.String,System.Object)">\r
13958             <summary>\r
13959             Logs a formatted message string with the <c>INFO</c> level.\r
13960             </summary>\r
13961             <param name="format">A String containing zero or more format items</param>\r
13962             <param name="arg0">An Object to format</param>\r
13963             <remarks>\r
13964             <para>\r
13965             The message is formatted using the <see cref="M:System.String.Format(System.IFormatProvider,System.String,System.Object[])"/> method. See\r
13966             <c>String.Format</c> for details of the syntax of the format string and the behavior\r
13967             of the formatting.\r
13968             </para>\r
13969             <para>\r
13970             The string is formatted using the <see cref="P:System.Globalization.CultureInfo.InvariantCulture"/>\r
13971             format provider. To specify a localized provider use the\r
13972             <see cref="M:log4net.Core.LogImpl.InfoFormat(System.IFormatProvider,System.String,System.Object[])"/> method.\r
13973             </para>\r
13974             <para>\r
13975             This method does not take an <see cref="T:System.Exception"/> object to include in the\r
13976             log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.Core.LogImpl.Info(System.Object)"/>\r
13977             methods instead.\r
13978             </para>\r
13979             </remarks>\r
13980         </member>\r
13981         <member name="M:log4net.Core.LogImpl.InfoFormat(System.String,System.Object,System.Object)">\r
13982             <summary>\r
13983             Logs a formatted message string with the <c>INFO</c> level.\r
13984             </summary>\r
13985             <param name="format">A String containing zero or more format items</param>\r
13986             <param name="arg0">An Object to format</param>\r
13987             <param name="arg1">An Object to format</param>\r
13988             <remarks>\r
13989             <para>\r
13990             The message is formatted using the <see cref="M:System.String.Format(System.IFormatProvider,System.String,System.Object[])"/> method. See\r
13991             <c>String.Format</c> for details of the syntax of the format string and the behavior\r
13992             of the formatting.\r
13993             </para>\r
13994             <para>\r
13995             The string is formatted using the <see cref="P:System.Globalization.CultureInfo.InvariantCulture"/>\r
13996             format provider. To specify a localized provider use the\r
13997             <see cref="M:log4net.Core.LogImpl.InfoFormat(System.IFormatProvider,System.String,System.Object[])"/> method.\r
13998             </para>\r
13999             <para>\r
14000             This method does not take an <see cref="T:System.Exception"/> object to include in the\r
14001             log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.Core.LogImpl.Info(System.Object)"/>\r
14002             methods instead.\r
14003             </para>\r
14004             </remarks>\r
14005         </member>\r
14006         <member name="M:log4net.Core.LogImpl.InfoFormat(System.String,System.Object,System.Object,System.Object)">\r
14007             <summary>\r
14008             Logs a formatted message string with the <c>INFO</c> level.\r
14009             </summary>\r
14010             <param name="format">A String containing zero or more format items</param>\r
14011             <param name="arg0">An Object to format</param>\r
14012             <param name="arg1">An Object to format</param>\r
14013             <param name="arg2">An Object to format</param>\r
14014             <remarks>\r
14015             <para>\r
14016             The message is formatted using the <see cref="M:System.String.Format(System.IFormatProvider,System.String,System.Object[])"/> method. See\r
14017             <c>String.Format</c> for details of the syntax of the format string and the behavior\r
14018             of the formatting.\r
14019             </para>\r
14020             <para>\r
14021             The string is formatted using the <see cref="P:System.Globalization.CultureInfo.InvariantCulture"/>\r
14022             format provider. To specify a localized provider use the\r
14023             <see cref="M:log4net.Core.LogImpl.InfoFormat(System.IFormatProvider,System.String,System.Object[])"/> method.\r
14024             </para>\r
14025             <para>\r
14026             This method does not take an <see cref="T:System.Exception"/> object to include in the\r
14027             log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.Core.LogImpl.Info(System.Object)"/>\r
14028             methods instead.\r
14029             </para>\r
14030             </remarks>\r
14031         </member>\r
14032         <member name="M:log4net.Core.LogImpl.InfoFormat(System.IFormatProvider,System.String,System.Object[])">\r
14033             <summary>\r
14034             Logs a formatted message string with the <c>INFO</c> level.\r
14035             </summary>\r
14036             <param name="provider">An <see cref="T:System.IFormatProvider"/> that supplies culture-specific formatting information</param>\r
14037             <param name="format">A String containing zero or more format items</param>\r
14038             <param name="args">An Object array containing zero or more objects to format</param>\r
14039             <remarks>\r
14040             <para>\r
14041             The message is formatted using the <see cref="M:System.String.Format(System.IFormatProvider,System.String,System.Object[])"/> method. See\r
14042             <c>String.Format</c> for details of the syntax of the format string and the behavior\r
14043             of the formatting.\r
14044             </para>\r
14045             <para>\r
14046             This method does not take an <see cref="T:System.Exception"/> object to include in the\r
14047             log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.Core.LogImpl.Info(System.Object)"/>\r
14048             methods instead.\r
14049             </para>\r
14050             </remarks>\r
14051         </member>\r
14052         <member name="M:log4net.Core.LogImpl.Warn(System.Object)">\r
14053             <summary>\r
14054             Logs a message object with the <c>WARN</c> level.\r
14055             </summary>\r
14056             <param name="message">the message object to log</param>\r
14057             <remarks>\r
14058             <para>\r
14059             This method first checks if this logger is <c>WARN</c>\r
14060             enabled by comparing the level of this logger with the \r
14061             <c>WARN</c> level. If this logger is\r
14062             <c>WARN</c> enabled, then it converts the message object\r
14063             (passed as parameter) to a string by invoking the appropriate\r
14064             <see cref="T:log4net.ObjectRenderer.IObjectRenderer"/>. It then \r
14065             proceeds to call all the registered appenders in this logger and \r
14066             also higher in the hierarchy depending on the value of the \r
14067             additivity flag.\r
14068             </para>\r
14069             <para>\r
14070             <b>WARNING</b> Note that passing an <see cref="T:System.Exception"/> to this\r
14071             method will print the name of the <see cref="T:System.Exception"/> but no\r
14072             stack trace. To print a stack trace use the \r
14073             <see cref="M:log4net.Core.LogImpl.Warn(System.Object,System.Exception)"/> form instead.\r
14074             </para>\r
14075             </remarks>\r
14076         </member>\r
14077         <member name="M:log4net.Core.LogImpl.Warn(System.Object,System.Exception)">\r
14078             <summary>\r
14079             Logs a message object with the <c>WARN</c> level\r
14080             </summary>\r
14081             <param name="message">The message object to log.</param>\r
14082             <param name="exception">The exception to log, including its stack trace.</param>\r
14083             <remarks>\r
14084             <para>\r
14085             Logs a message object with the <c>WARN</c> level including\r
14086             the stack trace of the <see cref="T:System.Exception"/> <paramref name="exception"/> \r
14087             passed as a parameter.\r
14088             </para>\r
14089             <para>\r
14090             See the <see cref="M:log4net.Core.LogImpl.Warn(System.Object)"/> form for more detailed information.\r
14091             </para>\r
14092             </remarks>\r
14093             <seealso cref="M:log4net.Core.LogImpl.Warn(System.Object)"/>\r
14094         </member>\r
14095         <member name="M:log4net.Core.LogImpl.WarnFormat(System.String,System.Object[])">\r
14096             <summary>\r
14097             Logs a formatted message string with the <c>WARN</c> level.\r
14098             </summary>\r
14099             <param name="format">A String containing zero or more format items</param>\r
14100             <param name="args">An Object array containing zero or more objects to format</param>\r
14101             <remarks>\r
14102             <para>\r
14103             The message is formatted using the <see cref="M:System.String.Format(System.IFormatProvider,System.String,System.Object[])"/> method. See\r
14104             <c>String.Format</c> for details of the syntax of the format string and the behavior\r
14105             of the formatting.\r
14106             </para>\r
14107             <para>\r
14108             The string is formatted using the <see cref="P:System.Globalization.CultureInfo.InvariantCulture"/>\r
14109             format provider. To specify a localized provider use the\r
14110             <see cref="M:log4net.Core.LogImpl.WarnFormat(System.IFormatProvider,System.String,System.Object[])"/> method.\r
14111             </para>\r
14112             <para>\r
14113             This method does not take an <see cref="T:System.Exception"/> object to include in the\r
14114             log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.Core.LogImpl.Warn(System.Object)"/>\r
14115             methods instead.\r
14116             </para>\r
14117             </remarks>\r
14118         </member>\r
14119         <member name="M:log4net.Core.LogImpl.WarnFormat(System.String,System.Object)">\r
14120             <summary>\r
14121             Logs a formatted message string with the <c>WARN</c> level.\r
14122             </summary>\r
14123             <param name="format">A String containing zero or more format items</param>\r
14124             <param name="arg0">An Object to format</param>\r
14125             <remarks>\r
14126             <para>\r
14127             The message is formatted using the <see cref="M:System.String.Format(System.IFormatProvider,System.String,System.Object[])"/> method. See\r
14128             <c>String.Format</c> for details of the syntax of the format string and the behavior\r
14129             of the formatting.\r
14130             </para>\r
14131             <para>\r
14132             The string is formatted using the <see cref="P:System.Globalization.CultureInfo.InvariantCulture"/>\r
14133             format provider. To specify a localized provider use the\r
14134             <see cref="M:log4net.Core.LogImpl.WarnFormat(System.IFormatProvider,System.String,System.Object[])"/> method.\r
14135             </para>\r
14136             <para>\r
14137             This method does not take an <see cref="T:System.Exception"/> object to include in the\r
14138             log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.Core.LogImpl.Warn(System.Object)"/>\r
14139             methods instead.\r
14140             </para>\r
14141             </remarks>\r
14142         </member>\r
14143         <member name="M:log4net.Core.LogImpl.WarnFormat(System.String,System.Object,System.Object)">\r
14144             <summary>\r
14145             Logs a formatted message string with the <c>WARN</c> level.\r
14146             </summary>\r
14147             <param name="format">A String containing zero or more format items</param>\r
14148             <param name="arg0">An Object to format</param>\r
14149             <param name="arg1">An Object to format</param>\r
14150             <remarks>\r
14151             <para>\r
14152             The message is formatted using the <see cref="M:System.String.Format(System.IFormatProvider,System.String,System.Object[])"/> method. See\r
14153             <c>String.Format</c> for details of the syntax of the format string and the behavior\r
14154             of the formatting.\r
14155             </para>\r
14156             <para>\r
14157             The string is formatted using the <see cref="P:System.Globalization.CultureInfo.InvariantCulture"/>\r
14158             format provider. To specify a localized provider use the\r
14159             <see cref="M:log4net.Core.LogImpl.WarnFormat(System.IFormatProvider,System.String,System.Object[])"/> method.\r
14160             </para>\r
14161             <para>\r
14162             This method does not take an <see cref="T:System.Exception"/> object to include in the\r
14163             log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.Core.LogImpl.Warn(System.Object)"/>\r
14164             methods instead.\r
14165             </para>\r
14166             </remarks>\r
14167         </member>\r
14168         <member name="M:log4net.Core.LogImpl.WarnFormat(System.String,System.Object,System.Object,System.Object)">\r
14169             <summary>\r
14170             Logs a formatted message string with the <c>WARN</c> level.\r
14171             </summary>\r
14172             <param name="format">A String containing zero or more format items</param>\r
14173             <param name="arg0">An Object to format</param>\r
14174             <param name="arg1">An Object to format</param>\r
14175             <param name="arg2">An Object to format</param>\r
14176             <remarks>\r
14177             <para>\r
14178             The message is formatted using the <see cref="M:System.String.Format(System.IFormatProvider,System.String,System.Object[])"/> method. See\r
14179             <c>String.Format</c> for details of the syntax of the format string and the behavior\r
14180             of the formatting.\r
14181             </para>\r
14182             <para>\r
14183             The string is formatted using the <see cref="P:System.Globalization.CultureInfo.InvariantCulture"/>\r
14184             format provider. To specify a localized provider use the\r
14185             <see cref="M:log4net.Core.LogImpl.WarnFormat(System.IFormatProvider,System.String,System.Object[])"/> method.\r
14186             </para>\r
14187             <para>\r
14188             This method does not take an <see cref="T:System.Exception"/> object to include in the\r
14189             log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.Core.LogImpl.Warn(System.Object)"/>\r
14190             methods instead.\r
14191             </para>\r
14192             </remarks>\r
14193         </member>\r
14194         <member name="M:log4net.Core.LogImpl.WarnFormat(System.IFormatProvider,System.String,System.Object[])">\r
14195             <summary>\r
14196             Logs a formatted message string with the <c>WARN</c> level.\r
14197             </summary>\r
14198             <param name="provider">An <see cref="T:System.IFormatProvider"/> that supplies culture-specific formatting information</param>\r
14199             <param name="format">A String containing zero or more format items</param>\r
14200             <param name="args">An Object array containing zero or more objects to format</param>\r
14201             <remarks>\r
14202             <para>\r
14203             The message is formatted using the <see cref="M:System.String.Format(System.IFormatProvider,System.String,System.Object[])"/> method. See\r
14204             <c>String.Format</c> for details of the syntax of the format string and the behavior\r
14205             of the formatting.\r
14206             </para>\r
14207             <para>\r
14208             This method does not take an <see cref="T:System.Exception"/> object to include in the\r
14209             log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.Core.LogImpl.Warn(System.Object)"/>\r
14210             methods instead.\r
14211             </para>\r
14212             </remarks>\r
14213         </member>\r
14214         <member name="M:log4net.Core.LogImpl.Error(System.Object)">\r
14215             <summary>\r
14216             Logs a message object with the <c>ERROR</c> level.\r
14217             </summary>\r
14218             <param name="message">The message object to log.</param>\r
14219             <remarks>\r
14220             <para>\r
14221             This method first checks if this logger is <c>ERROR</c>\r
14222             enabled by comparing the level of this logger with the \r
14223             <c>ERROR</c> level. If this logger is\r
14224             <c>ERROR</c> enabled, then it converts the message object\r
14225             (passed as parameter) to a string by invoking the appropriate\r
14226             <see cref="T:log4net.ObjectRenderer.IObjectRenderer"/>. It then \r
14227             proceeds to call all the registered appenders in this logger and \r
14228             also higher in the hierarchy depending on the value of the \r
14229             additivity flag.\r
14230             </para>\r
14231             <para>\r
14232             <b>WARNING</b> Note that passing an <see cref="T:System.Exception"/> to this\r
14233             method will print the name of the <see cref="T:System.Exception"/> but no\r
14234             stack trace. To print a stack trace use the \r
14235             <see cref="M:log4net.Core.LogImpl.Error(System.Object,System.Exception)"/> form instead.\r
14236             </para>\r
14237             </remarks>\r
14238         </member>\r
14239         <member name="M:log4net.Core.LogImpl.Error(System.Object,System.Exception)">\r
14240             <summary>\r
14241             Logs a message object with the <c>ERROR</c> level\r
14242             </summary>\r
14243             <param name="message">The message object to log.</param>\r
14244             <param name="exception">The exception to log, including its stack trace.</param>\r
14245             <remarks>\r
14246             <para>\r
14247             Logs a message object with the <c>ERROR</c> level including\r
14248             the stack trace of the <see cref="T:System.Exception"/> <paramref name="exception"/> \r
14249             passed as a parameter.\r
14250             </para>\r
14251             <para>\r
14252             See the <see cref="M:log4net.Core.LogImpl.Error(System.Object)"/> form for more detailed information.\r
14253             </para>\r
14254             </remarks>\r
14255             <seealso cref="M:log4net.Core.LogImpl.Error(System.Object)"/>\r
14256         </member>\r
14257         <member name="M:log4net.Core.LogImpl.ErrorFormat(System.String,System.Object[])">\r
14258             <summary>\r
14259             Logs a formatted message string with the <c>ERROR</c> level.\r
14260             </summary>\r
14261             <param name="format">A String containing zero or more format items</param>\r
14262             <param name="args">An Object array containing zero or more objects to format</param>\r
14263             <remarks>\r
14264             <para>\r
14265             The message is formatted using the <see cref="M:System.String.Format(System.IFormatProvider,System.String,System.Object[])"/> method. See\r
14266             <c>String.Format</c> for details of the syntax of the format string and the behavior\r
14267             of the formatting.\r
14268             </para>\r
14269             <para>\r
14270             The string is formatted using the <see cref="P:System.Globalization.CultureInfo.InvariantCulture"/>\r
14271             format provider. To specify a localized provider use the\r
14272             <see cref="M:log4net.Core.LogImpl.ErrorFormat(System.IFormatProvider,System.String,System.Object[])"/> method.\r
14273             </para>\r
14274             <para>\r
14275             This method does not take an <see cref="T:System.Exception"/> object to include in the\r
14276             log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.Core.LogImpl.Error(System.Object)"/>\r
14277             methods instead.\r
14278             </para>\r
14279             </remarks>\r
14280         </member>\r
14281         <member name="M:log4net.Core.LogImpl.ErrorFormat(System.String,System.Object)">\r
14282             <summary>\r
14283             Logs a formatted message string with the <c>ERROR</c> level.\r
14284             </summary>\r
14285             <param name="format">A String containing zero or more format items</param>\r
14286             <param name="arg0">An Object to format</param>\r
14287             <remarks>\r
14288             <para>\r
14289             The message is formatted using the <see cref="M:System.String.Format(System.IFormatProvider,System.String,System.Object[])"/> method. See\r
14290             <c>String.Format</c> for details of the syntax of the format string and the behavior\r
14291             of the formatting.\r
14292             </para>\r
14293             <para>\r
14294             The string is formatted using the <see cref="P:System.Globalization.CultureInfo.InvariantCulture"/>\r
14295             format provider. To specify a localized provider use the\r
14296             <see cref="M:log4net.Core.LogImpl.ErrorFormat(System.IFormatProvider,System.String,System.Object[])"/> method.\r
14297             </para>\r
14298             <para>\r
14299             This method does not take an <see cref="T:System.Exception"/> object to include in the\r
14300             log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.Core.LogImpl.Error(System.Object)"/>\r
14301             methods instead.\r
14302             </para>\r
14303             </remarks>\r
14304         </member>\r
14305         <member name="M:log4net.Core.LogImpl.ErrorFormat(System.String,System.Object,System.Object)">\r
14306             <summary>\r
14307             Logs a formatted message string with the <c>ERROR</c> level.\r
14308             </summary>\r
14309             <param name="format">A String containing zero or more format items</param>\r
14310             <param name="arg0">An Object to format</param>\r
14311             <param name="arg1">An Object to format</param>\r
14312             <remarks>\r
14313             <para>\r
14314             The message is formatted using the <see cref="M:System.String.Format(System.IFormatProvider,System.String,System.Object[])"/> method. See\r
14315             <c>String.Format</c> for details of the syntax of the format string and the behavior\r
14316             of the formatting.\r
14317             </para>\r
14318             <para>\r
14319             The string is formatted using the <see cref="P:System.Globalization.CultureInfo.InvariantCulture"/>\r
14320             format provider. To specify a localized provider use the\r
14321             <see cref="M:log4net.Core.LogImpl.ErrorFormat(System.IFormatProvider,System.String,System.Object[])"/> method.\r
14322             </para>\r
14323             <para>\r
14324             This method does not take an <see cref="T:System.Exception"/> object to include in the\r
14325             log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.Core.LogImpl.Error(System.Object)"/>\r
14326             methods instead.\r
14327             </para>\r
14328             </remarks>\r
14329         </member>\r
14330         <member name="M:log4net.Core.LogImpl.ErrorFormat(System.String,System.Object,System.Object,System.Object)">\r
14331             <summary>\r
14332             Logs a formatted message string with the <c>ERROR</c> level.\r
14333             </summary>\r
14334             <param name="format">A String containing zero or more format items</param>\r
14335             <param name="arg0">An Object to format</param>\r
14336             <param name="arg1">An Object to format</param>\r
14337             <param name="arg2">An Object to format</param>\r
14338             <remarks>\r
14339             <para>\r
14340             The message is formatted using the <see cref="M:System.String.Format(System.IFormatProvider,System.String,System.Object[])"/> method. See\r
14341             <c>String.Format</c> for details of the syntax of the format string and the behavior\r
14342             of the formatting.\r
14343             </para>\r
14344             <para>\r
14345             The string is formatted using the <see cref="P:System.Globalization.CultureInfo.InvariantCulture"/>\r
14346             format provider. To specify a localized provider use the\r
14347             <see cref="M:log4net.Core.LogImpl.ErrorFormat(System.IFormatProvider,System.String,System.Object[])"/> method.\r
14348             </para>\r
14349             <para>\r
14350             This method does not take an <see cref="T:System.Exception"/> object to include in the\r
14351             log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.Core.LogImpl.Error(System.Object)"/>\r
14352             methods instead.\r
14353             </para>\r
14354             </remarks>\r
14355         </member>\r
14356         <member name="M:log4net.Core.LogImpl.ErrorFormat(System.IFormatProvider,System.String,System.Object[])">\r
14357             <summary>\r
14358             Logs a formatted message string with the <c>ERROR</c> level.\r
14359             </summary>\r
14360             <param name="provider">An <see cref="T:System.IFormatProvider"/> that supplies culture-specific formatting information</param>\r
14361             <param name="format">A String containing zero or more format items</param>\r
14362             <param name="args">An Object array containing zero or more objects to format</param>\r
14363             <remarks>\r
14364             <para>\r
14365             The message is formatted using the <see cref="M:System.String.Format(System.IFormatProvider,System.String,System.Object[])"/> method. See\r
14366             <c>String.Format</c> for details of the syntax of the format string and the behavior\r
14367             of the formatting.\r
14368             </para>\r
14369             <para>\r
14370             This method does not take an <see cref="T:System.Exception"/> object to include in the\r
14371             log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.Core.LogImpl.Error(System.Object)"/>\r
14372             methods instead.\r
14373             </para>\r
14374             </remarks>\r
14375         </member>\r
14376         <member name="M:log4net.Core.LogImpl.Fatal(System.Object)">\r
14377             <summary>\r
14378             Logs a message object with the <c>FATAL</c> level.\r
14379             </summary>\r
14380             <param name="message">The message object to log.</param>\r
14381             <remarks>\r
14382             <para>\r
14383             This method first checks if this logger is <c>FATAL</c>\r
14384             enabled by comparing the level of this logger with the \r
14385             <c>FATAL</c> level. If this logger is\r
14386             <c>FATAL</c> enabled, then it converts the message object\r
14387             (passed as parameter) to a string by invoking the appropriate\r
14388             <see cref="T:log4net.ObjectRenderer.IObjectRenderer"/>. It then \r
14389             proceeds to call all the registered appenders in this logger and \r
14390             also higher in the hierarchy depending on the value of the \r
14391             additivity flag.\r
14392             </para>\r
14393             <para>\r
14394             <b>WARNING</b> Note that passing an <see cref="T:System.Exception"/> to this\r
14395             method will print the name of the <see cref="T:System.Exception"/> but no\r
14396             stack trace. To print a stack trace use the \r
14397             <see cref="M:log4net.Core.LogImpl.Fatal(System.Object,System.Exception)"/> form instead.\r
14398             </para>\r
14399             </remarks>\r
14400         </member>\r
14401         <member name="M:log4net.Core.LogImpl.Fatal(System.Object,System.Exception)">\r
14402             <summary>\r
14403             Logs a message object with the <c>FATAL</c> level\r
14404             </summary>\r
14405             <param name="message">The message object to log.</param>\r
14406             <param name="exception">The exception to log, including its stack trace.</param>\r
14407             <remarks>\r
14408             <para>\r
14409             Logs a message object with the <c>FATAL</c> level including\r
14410             the stack trace of the <see cref="T:System.Exception"/> <paramref name="exception"/> \r
14411             passed as a parameter.\r
14412             </para>\r
14413             <para>\r
14414             See the <see cref="M:log4net.Core.LogImpl.Fatal(System.Object)"/> form for more detailed information.\r
14415             </para>\r
14416             </remarks>\r
14417             <seealso cref="M:log4net.Core.LogImpl.Fatal(System.Object)"/>\r
14418         </member>\r
14419         <member name="M:log4net.Core.LogImpl.FatalFormat(System.String,System.Object[])">\r
14420             <summary>\r
14421             Logs a formatted message string with the <c>FATAL</c> level.\r
14422             </summary>\r
14423             <param name="format">A String containing zero or more format items</param>\r
14424             <param name="args">An Object array containing zero or more objects to format</param>\r
14425             <remarks>\r
14426             <para>\r
14427             The message is formatted using the <see cref="M:System.String.Format(System.IFormatProvider,System.String,System.Object[])"/> method. See\r
14428             <c>String.Format</c> for details of the syntax of the format string and the behavior\r
14429             of the formatting.\r
14430             </para>\r
14431             <para>\r
14432             The string is formatted using the <see cref="P:System.Globalization.CultureInfo.InvariantCulture"/>\r
14433             format provider. To specify a localized provider use the\r
14434             <see cref="M:log4net.Core.LogImpl.FatalFormat(System.IFormatProvider,System.String,System.Object[])"/> method.\r
14435             </para>\r
14436             <para>\r
14437             This method does not take an <see cref="T:System.Exception"/> object to include in the\r
14438             log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.Core.LogImpl.Fatal(System.Object)"/>\r
14439             methods instead.\r
14440             </para>\r
14441             </remarks>\r
14442         </member>\r
14443         <member name="M:log4net.Core.LogImpl.FatalFormat(System.String,System.Object)">\r
14444             <summary>\r
14445             Logs a formatted message string with the <c>FATAL</c> level.\r
14446             </summary>\r
14447             <param name="format">A String containing zero or more format items</param>\r
14448             <param name="arg0">An Object to format</param>\r
14449             <remarks>\r
14450             <para>\r
14451             The message is formatted using the <see cref="M:System.String.Format(System.IFormatProvider,System.String,System.Object[])"/> method. See\r
14452             <c>String.Format</c> for details of the syntax of the format string and the behavior\r
14453             of the formatting.\r
14454             </para>\r
14455             <para>\r
14456             The string is formatted using the <see cref="P:System.Globalization.CultureInfo.InvariantCulture"/>\r
14457             format provider. To specify a localized provider use the\r
14458             <see cref="M:log4net.Core.LogImpl.FatalFormat(System.IFormatProvider,System.String,System.Object[])"/> method.\r
14459             </para>\r
14460             <para>\r
14461             This method does not take an <see cref="T:System.Exception"/> object to include in the\r
14462             log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.Core.LogImpl.Fatal(System.Object)"/>\r
14463             methods instead.\r
14464             </para>\r
14465             </remarks>\r
14466         </member>\r
14467         <member name="M:log4net.Core.LogImpl.FatalFormat(System.String,System.Object,System.Object)">\r
14468             <summary>\r
14469             Logs a formatted message string with the <c>FATAL</c> level.\r
14470             </summary>\r
14471             <param name="format">A String containing zero or more format items</param>\r
14472             <param name="arg0">An Object to format</param>\r
14473             <param name="arg1">An Object to format</param>\r
14474             <remarks>\r
14475             <para>\r
14476             The message is formatted using the <see cref="M:System.String.Format(System.IFormatProvider,System.String,System.Object[])"/> method. See\r
14477             <c>String.Format</c> for details of the syntax of the format string and the behavior\r
14478             of the formatting.\r
14479             </para>\r
14480             <para>\r
14481             The string is formatted using the <see cref="P:System.Globalization.CultureInfo.InvariantCulture"/>\r
14482             format provider. To specify a localized provider use the\r
14483             <see cref="M:log4net.Core.LogImpl.FatalFormat(System.IFormatProvider,System.String,System.Object[])"/> method.\r
14484             </para>\r
14485             <para>\r
14486             This method does not take an <see cref="T:System.Exception"/> object to include in the\r
14487             log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.Core.LogImpl.Fatal(System.Object)"/>\r
14488             methods instead.\r
14489             </para>\r
14490             </remarks>\r
14491         </member>\r
14492         <member name="M:log4net.Core.LogImpl.FatalFormat(System.String,System.Object,System.Object,System.Object)">\r
14493             <summary>\r
14494             Logs a formatted message string with the <c>FATAL</c> level.\r
14495             </summary>\r
14496             <param name="format">A String containing zero or more format items</param>\r
14497             <param name="arg0">An Object to format</param>\r
14498             <param name="arg1">An Object to format</param>\r
14499             <param name="arg2">An Object to format</param>\r
14500             <remarks>\r
14501             <para>\r
14502             The message is formatted using the <see cref="M:System.String.Format(System.IFormatProvider,System.String,System.Object[])"/> method. See\r
14503             <c>String.Format</c> for details of the syntax of the format string and the behavior\r
14504             of the formatting.\r
14505             </para>\r
14506             <para>\r
14507             The string is formatted using the <see cref="P:System.Globalization.CultureInfo.InvariantCulture"/>\r
14508             format provider. To specify a localized provider use the\r
14509             <see cref="M:log4net.Core.LogImpl.FatalFormat(System.IFormatProvider,System.String,System.Object[])"/> method.\r
14510             </para>\r
14511             <para>\r
14512             This method does not take an <see cref="T:System.Exception"/> object to include in the\r
14513             log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.Core.LogImpl.Fatal(System.Object)"/>\r
14514             methods instead.\r
14515             </para>\r
14516             </remarks>\r
14517         </member>\r
14518         <member name="M:log4net.Core.LogImpl.FatalFormat(System.IFormatProvider,System.String,System.Object[])">\r
14519             <summary>\r
14520             Logs a formatted message string with the <c>FATAL</c> level.\r
14521             </summary>\r
14522             <param name="provider">An <see cref="T:System.IFormatProvider"/> that supplies culture-specific formatting information</param>\r
14523             <param name="format">A String containing zero or more format items</param>\r
14524             <param name="args">An Object array containing zero or more objects to format</param>\r
14525             <remarks>\r
14526             <para>\r
14527             The message is formatted using the <see cref="M:System.String.Format(System.IFormatProvider,System.String,System.Object[])"/> method. See\r
14528             <c>String.Format</c> for details of the syntax of the format string and the behavior\r
14529             of the formatting.\r
14530             </para>\r
14531             <para>\r
14532             This method does not take an <see cref="T:System.Exception"/> object to include in the\r
14533             log event. To pass an <see cref="T:System.Exception"/> use one of the <see cref="M:log4net.Core.LogImpl.Fatal(System.Object)"/>\r
14534             methods instead.\r
14535             </para>\r
14536             </remarks>\r
14537         </member>\r
14538         <member name="M:log4net.Core.LogImpl.LoggerRepositoryConfigurationChanged(System.Object,System.EventArgs)">\r
14539             <summary>\r
14540             Event handler for the <see cref="E:log4net.Repository.ILoggerRepository.ConfigurationChanged"/> event\r
14541             </summary>\r
14542             <param name="sender">the repository</param>\r
14543             <param name="e">Empty</param>\r
14544         </member>\r
14545         <member name="F:log4net.Core.LogImpl.ThisDeclaringType">\r
14546             <summary>\r
14547             The fully qualified name of this declaring type not the type of any subclass.\r
14548             </summary>\r
14549         </member>\r
14550         <member name="P:log4net.Core.LogImpl.IsDebugEnabled">\r
14551             <summary>\r
14552             Checks if this logger is enabled for the <c>DEBUG</c>\r
14553             level.\r
14554             </summary>\r
14555             <value>\r
14556             <c>true</c> if this logger is enabled for <c>DEBUG</c> events,\r
14557             <c>false</c> otherwise.\r
14558             </value>\r
14559             <remarks>\r
14560             <para>\r
14561             This function is intended to lessen the computational cost of\r
14562             disabled log debug statements.\r
14563             </para>\r
14564             <para>\r
14565             For some <c>log</c> Logger object, when you write:\r
14566             </para>\r
14567             <code lang="C#">\r
14568             log.Debug("This is entry number: " + i );\r
14569             </code>\r
14570             <para>\r
14571             You incur the cost constructing the message, concatenation in\r
14572             this case, regardless of whether the message is logged or not.\r
14573             </para>\r
14574             <para>\r
14575             If you are worried about speed, then you should write:\r
14576             </para>\r
14577             <code lang="C#">\r
14578             if (log.IsDebugEnabled())\r
14579             { \r
14580              log.Debug("This is entry number: " + i );\r
14581             }\r
14582             </code>\r
14583             <para>\r
14584             This way you will not incur the cost of parameter\r
14585             construction if debugging is disabled for <c>log</c>. On\r
14586             the other hand, if the <c>log</c> is debug enabled, you\r
14587             will incur the cost of evaluating whether the logger is debug\r
14588             enabled twice. Once in <c>IsDebugEnabled</c> and once in\r
14589             the <c>Debug</c>.  This is an insignificant overhead\r
14590             since evaluating a logger takes about 1% of the time it\r
14591             takes to actually log.\r
14592             </para>\r
14593             </remarks>\r
14594         </member>\r
14595         <member name="P:log4net.Core.LogImpl.IsInfoEnabled">\r
14596             <summary>\r
14597             Checks if this logger is enabled for the <c>INFO</c> level.\r
14598             </summary>\r
14599             <value>\r
14600             <c>true</c> if this logger is enabled for <c>INFO</c> events,\r
14601             <c>false</c> otherwise.\r
14602             </value>\r
14603             <remarks>\r
14604             <para>\r
14605             See <see cref="P:log4net.Core.LogImpl.IsDebugEnabled"/> for more information and examples \r
14606             of using this method.\r
14607             </para>\r
14608             </remarks>\r
14609             <seealso cref="P:log4net.Core.LogImpl.IsDebugEnabled"/>\r
14610         </member>\r
14611         <member name="P:log4net.Core.LogImpl.IsWarnEnabled">\r
14612             <summary>\r
14613             Checks if this logger is enabled for the <c>WARN</c> level.\r
14614             </summary>\r
14615             <value>\r
14616             <c>true</c> if this logger is enabled for <c>WARN</c> events,\r
14617             <c>false</c> otherwise.\r
14618             </value>\r
14619             <remarks>\r
14620             <para>\r
14621             See <see cref="P:log4net.Core.LogImpl.IsDebugEnabled"/> for more information and examples \r
14622             of using this method.\r
14623             </para>\r
14624             </remarks>\r
14625             <seealso cref="P:log4net.ILog.IsDebugEnabled"/>\r
14626         </member>\r
14627         <member name="P:log4net.Core.LogImpl.IsErrorEnabled">\r
14628             <summary>\r
14629             Checks if this logger is enabled for the <c>ERROR</c> level.\r
14630             </summary>\r
14631             <value>\r
14632             <c>true</c> if this logger is enabled for <c>ERROR</c> events,\r
14633             <c>false</c> otherwise.\r
14634             </value>\r
14635             <remarks>\r
14636             <para>\r
14637             See <see cref="P:log4net.Core.LogImpl.IsDebugEnabled"/> for more information and examples of using this method.\r
14638             </para>\r
14639             </remarks>\r
14640             <seealso cref="P:log4net.ILog.IsDebugEnabled"/>\r
14641         </member>\r
14642         <member name="P:log4net.Core.LogImpl.IsFatalEnabled">\r
14643             <summary>\r
14644             Checks if this logger is enabled for the <c>FATAL</c> level.\r
14645             </summary>\r
14646             <value>\r
14647             <c>true</c> if this logger is enabled for <c>FATAL</c> events,\r
14648             <c>false</c> otherwise.\r
14649             </value>\r
14650             <remarks>\r
14651             <para>\r
14652             See <see cref="P:log4net.Core.LogImpl.IsDebugEnabled"/> for more information and examples of using this method.\r
14653             </para>\r
14654             </remarks>\r
14655             <seealso cref="P:log4net.ILog.IsDebugEnabled"/>\r
14656         </member>\r
14657         <member name="T:log4net.Core.SecurityContext">\r
14658             <summary>\r
14659             A SecurityContext used by log4net when interacting with protected resources\r
14660             </summary>\r
14661             <remarks>\r
14662             <para>\r
14663             A SecurityContext used by log4net when interacting with protected resources\r
14664             for example with operating system services. This can be used to impersonate\r
14665             a principal that has been granted privileges on the system resources.\r
14666             </para>\r
14667             </remarks>\r
14668             <author>Nicko Cadell</author>\r
14669         </member>\r
14670         <member name="M:log4net.Core.SecurityContext.Impersonate(System.Object)">\r
14671             <summary>\r
14672             Impersonate this SecurityContext\r
14673             </summary>\r
14674             <param name="state">State supplied by the caller</param>\r
14675             <returns>An <see cref="T:System.IDisposable"/> instance that will\r
14676             revoke the impersonation of this SecurityContext, or <c>null</c></returns>\r
14677             <remarks>\r
14678             <para>\r
14679             Impersonate this security context. Further calls on the current\r
14680             thread should now be made in the security context provided\r
14681             by this object. When the <see cref="T:System.IDisposable"/> result \r
14682             <see cref="M:System.IDisposable.Dispose"/> method is called the security\r
14683             context of the thread should be reverted to the state it was in\r
14684             before <see cref="M:log4net.Core.SecurityContext.Impersonate(System.Object)"/> was called.\r
14685             </para>\r
14686             </remarks>\r
14687         </member>\r
14688         <member name="T:log4net.Core.SecurityContextProvider">\r
14689             <summary>\r
14690             The <see cref="T:log4net.Core.SecurityContextProvider"/> providers default <see cref="T:log4net.Core.SecurityContext"/> instances.\r
14691             </summary>\r
14692             <remarks>\r
14693             <para>\r
14694             A configured component that interacts with potentially protected system\r
14695             resources uses a <see cref="T:log4net.Core.SecurityContext"/> to provide the elevated\r
14696             privileges required. If the <see cref="T:log4net.Core.SecurityContext"/> object has\r
14697             been not been explicitly provided to the component then the component\r
14698             will request one from this <see cref="T:log4net.Core.SecurityContextProvider"/>.\r
14699             </para>\r
14700             <para>\r
14701             By default the <see cref="P:log4net.Core.SecurityContextProvider.DefaultProvider"/> is\r
14702             an instance of <see cref="T:log4net.Core.SecurityContextProvider"/> which returns only\r
14703             <see cref="T:log4net.Util.NullSecurityContext"/> objects. This is a reasonable default\r
14704             where the privileges required are not know by the system.\r
14705             </para>\r
14706             <para>\r
14707             This default behavior can be overridden by subclassing the <see cref="T:log4net.Core.SecurityContextProvider"/>\r
14708             and overriding the <see cref="M:log4net.Core.SecurityContextProvider.CreateSecurityContext(System.Object)"/> method to return\r
14709             the desired <see cref="T:log4net.Core.SecurityContext"/> objects. The default provider\r
14710             can be replaced by programmatically setting the value of the \r
14711             <see cref="P:log4net.Core.SecurityContextProvider.DefaultProvider"/> property.\r
14712             </para>\r
14713             <para>\r
14714             An alternative is to use the <c>log4net.Config.SecurityContextProviderAttribute</c>\r
14715             This attribute can be applied to an assembly in the same way as the\r
14716             <c>log4net.Config.XmlConfiguratorAttribute"</c>. The attribute takes\r
14717             the type to use as the <see cref="T:log4net.Core.SecurityContextProvider"/> as an argument.\r
14718             </para>\r
14719             </remarks>\r
14720             <author>Nicko Cadell</author>\r
14721         </member>\r
14722         <member name="F:log4net.Core.SecurityContextProvider.s_defaultProvider">\r
14723             <summary>\r
14724             The default provider\r
14725             </summary>\r
14726         </member>\r
14727         <member name="M:log4net.Core.SecurityContextProvider.#ctor">\r
14728             <summary>\r
14729             Protected default constructor to allow subclassing\r
14730             </summary>\r
14731             <remarks>\r
14732             <para>\r
14733             Protected default constructor to allow subclassing\r
14734             </para>\r
14735             </remarks>\r
14736         </member>\r
14737         <member name="M:log4net.Core.SecurityContextProvider.CreateSecurityContext(System.Object)">\r
14738             <summary>\r
14739             Create a SecurityContext for a consumer\r
14740             </summary>\r
14741             <param name="consumer">The consumer requesting the SecurityContext</param>\r
14742             <returns>An impersonation context</returns>\r
14743             <remarks>\r
14744             <para>\r
14745             The default implementation is to return a <see cref="T:log4net.Util.NullSecurityContext"/>.\r
14746             </para>\r
14747             <para>\r
14748             Subclasses should override this method to provide their own\r
14749             behavior.\r
14750             </para>\r
14751             </remarks>\r
14752         </member>\r
14753         <member name="P:log4net.Core.SecurityContextProvider.DefaultProvider">\r
14754             <summary>\r
14755             Gets or sets the default SecurityContextProvider\r
14756             </summary>\r
14757             <value>\r
14758             The default SecurityContextProvider\r
14759             </value>\r
14760             <remarks>\r
14761             <para>\r
14762             The default provider is used by configured components that\r
14763             require a <see cref="T:log4net.Core.SecurityContext"/> and have not had one\r
14764             given to them.\r
14765             </para>\r
14766             <para>\r
14767             By default this is an instance of <see cref="T:log4net.Core.SecurityContextProvider"/>\r
14768             that returns <see cref="T:log4net.Util.NullSecurityContext"/> objects.\r
14769             </para>\r
14770             <para>\r
14771             The default provider can be set programmatically by setting\r
14772             the value of this property to a sub class of <see cref="T:log4net.Core.SecurityContextProvider"/>\r
14773             that has the desired behavior.\r
14774             </para>\r
14775             </remarks>\r
14776         </member>\r
14777         <member name="T:log4net.Core.WrapperCreationHandler">\r
14778             <summary>\r
14779             Delegate used to handle creation of new wrappers.\r
14780             </summary>\r
14781             <param name="logger">The logger to wrap in a wrapper.</param>\r
14782             <remarks>\r
14783             <para>\r
14784             Delegate used to handle creation of new wrappers. This delegate\r
14785             is called from the <see cref="M:log4net.Core.WrapperMap.CreateNewWrapperObject(log4net.Core.ILogger)"/>\r
14786             method to construct the wrapper for the specified logger.\r
14787             </para>\r
14788             <para>\r
14789             The delegate to use is supplied to the <see cref="T:log4net.Core.WrapperMap"/>\r
14790             constructor.\r
14791             </para>\r
14792             </remarks>\r
14793         </member>\r
14794         <member name="T:log4net.Core.WrapperMap">\r
14795             <summary>\r
14796             Maps between logger objects and wrapper objects.\r
14797             </summary>\r
14798             <remarks>\r
14799             <para>\r
14800             This class maintains a mapping between <see cref="T:log4net.Core.ILogger"/> objects and\r
14801             <see cref="T:log4net.Core.ILoggerWrapper"/> objects. Use the <see cref="M:log4net.Core.WrapperMap.GetWrapper(log4net.Core.ILogger)"/> method to \r
14802             lookup the <see cref="T:log4net.Core.ILoggerWrapper"/> for the specified <see cref="T:log4net.Core.ILogger"/>.\r
14803             </para>\r
14804             <para>\r
14805             New wrapper instances are created by the <see cref="M:log4net.Core.WrapperMap.CreateNewWrapperObject(log4net.Core.ILogger)"/>\r
14806             method. The default behavior is for this method to delegate construction\r
14807             of the wrapper to the <see cref="T:log4net.Core.WrapperCreationHandler"/> delegate supplied\r
14808             to the constructor. This allows specialization of the behavior without\r
14809             requiring subclassing of this type.\r
14810             </para>\r
14811             </remarks>\r
14812             <author>Nicko Cadell</author>\r
14813             <author>Gert Driesen</author>\r
14814         </member>\r
14815         <member name="M:log4net.Core.WrapperMap.#ctor(log4net.Core.WrapperCreationHandler)">\r
14816             <summary>\r
14817             Initializes a new instance of the <see cref="T:log4net.Core.WrapperMap"/>\r
14818             </summary>\r
14819             <param name="createWrapperHandler">The handler to use to create the wrapper objects.</param>\r
14820             <remarks>\r
14821             <para>\r
14822             Initializes a new instance of the <see cref="T:log4net.Core.WrapperMap"/> class with \r
14823             the specified handler to create the wrapper objects.\r
14824             </para>\r
14825             </remarks>\r
14826         </member>\r
14827         <member name="M:log4net.Core.WrapperMap.GetWrapper(log4net.Core.ILogger)">\r
14828             <summary>\r
14829             Gets the wrapper object for the specified logger.\r
14830             </summary>\r
14831             <returns>The wrapper object for the specified logger</returns>\r
14832             <remarks>\r
14833             <para>\r
14834             If the logger is null then the corresponding wrapper is null.\r
14835             </para>\r
14836             <para>\r
14837             Looks up the wrapper it it has previously been requested and\r
14838             returns it. If the wrapper has never been requested before then\r
14839             the <see cref="M:log4net.Core.WrapperMap.CreateNewWrapperObject(log4net.Core.ILogger)"/> virtual method is\r
14840             called.\r
14841             </para>\r
14842             </remarks>\r
14843         </member>\r
14844         <member name="M:log4net.Core.WrapperMap.CreateNewWrapperObject(log4net.Core.ILogger)">\r
14845             <summary>\r
14846             Creates the wrapper object for the specified logger.\r
14847             </summary>\r
14848             <param name="logger">The logger to wrap in a wrapper.</param>\r
14849             <returns>The wrapper object for the logger.</returns>\r
14850             <remarks>\r
14851             <para>\r
14852             This implementation uses the <see cref="T:log4net.Core.WrapperCreationHandler"/>\r
14853             passed to the constructor to create the wrapper. This method\r
14854             can be overridden in a subclass.\r
14855             </para>\r
14856             </remarks>\r
14857         </member>\r
14858         <member name="M:log4net.Core.WrapperMap.RepositoryShutdown(log4net.Repository.ILoggerRepository)">\r
14859             <summary>\r
14860             Called when a monitored repository shutdown event is received.\r
14861             </summary>\r
14862             <param name="repository">The <see cref="T:log4net.Repository.ILoggerRepository"/> that is shutting down</param>\r
14863             <remarks>\r
14864             <para>\r
14865             This method is called when a <see cref="T:log4net.Repository.ILoggerRepository"/> that this\r
14866             <see cref="T:log4net.Core.WrapperMap"/> is holding loggers for has signaled its shutdown\r
14867             event <see cref="E:log4net.Repository.ILoggerRepository.ShutdownEvent"/>. The default\r
14868             behavior of this method is to release the references to the loggers\r
14869             and their wrappers generated for this repository.\r
14870             </para>\r
14871             </remarks>\r
14872         </member>\r
14873         <member name="M:log4net.Core.WrapperMap.ILoggerRepository_Shutdown(System.Object,System.EventArgs)">\r
14874             <summary>\r
14875             Event handler for repository shutdown event.\r
14876             </summary>\r
14877             <param name="sender">The sender of the event.</param>\r
14878             <param name="e">The event args.</param>\r
14879         </member>\r
14880         <member name="F:log4net.Core.WrapperMap.m_repositories">\r
14881             <summary>\r
14882             Map of logger repositories to hashtables of ILogger to ILoggerWrapper mappings\r
14883             </summary>\r
14884         </member>\r
14885         <member name="F:log4net.Core.WrapperMap.m_createWrapperHandler">\r
14886             <summary>\r
14887             The handler to use to create the extension wrapper objects.\r
14888             </summary>\r
14889         </member>\r
14890         <member name="F:log4net.Core.WrapperMap.m_shutdownHandler">\r
14891             <summary>\r
14892             Internal reference to the delegate used to register for repository shutdown events.\r
14893             </summary>\r
14894         </member>\r
14895         <member name="P:log4net.Core.WrapperMap.Repositories">\r
14896             <summary>\r
14897             Gets the map of logger repositories.\r
14898             </summary>\r
14899             <value>\r
14900             Map of logger repositories.\r
14901             </value>\r
14902             <remarks>\r
14903             <para>\r
14904             Gets the hashtable that is keyed on <see cref="T:log4net.Repository.ILoggerRepository"/>. The\r
14905             values are hashtables keyed on <see cref="T:log4net.Core.ILogger"/> with the\r
14906             value being the corresponding <see cref="T:log4net.Core.ILoggerWrapper"/>.\r
14907             </para>\r
14908             </remarks>\r
14909         </member>\r
14910         <member name="T:log4net.DateFormatter.AbsoluteTimeDateFormatter">\r
14911             <summary>\r
14912             Formats a <see cref="T:System.DateTime"/> as <c>"HH:mm:ss,fff"</c>.\r
14913             </summary>\r
14914             <remarks>\r
14915             <para>\r
14916             Formats a <see cref="T:System.DateTime"/> in the format <c>"HH:mm:ss,fff"</c> for example, <c>"15:49:37,459"</c>.\r
14917             </para>\r
14918             </remarks>\r
14919             <author>Nicko Cadell</author>\r
14920             <author>Gert Driesen</author>\r
14921         </member>\r
14922         <member name="T:log4net.DateFormatter.IDateFormatter">\r
14923             <summary>\r
14924             Render a <see cref="T:System.DateTime"/> as a string.\r
14925             </summary>\r
14926             <remarks>\r
14927             <para>\r
14928             Interface to abstract the rendering of a <see cref="T:System.DateTime"/>\r
14929             instance into a string.\r
14930             </para>\r
14931             <para>\r
14932             The <see cref="M:log4net.DateFormatter.IDateFormatter.FormatDate(System.DateTime,System.IO.TextWriter)"/> method is used to render the\r
14933             date to a text writer.\r
14934             </para>\r
14935             </remarks>\r
14936             <author>Nicko Cadell</author>\r
14937             <author>Gert Driesen</author>\r
14938         </member>\r
14939         <member name="M:log4net.DateFormatter.IDateFormatter.FormatDate(System.DateTime,System.IO.TextWriter)">\r
14940             <summary>\r
14941             Formats the specified date as a string.\r
14942             </summary>\r
14943             <param name="dateToFormat">The date to format.</param>\r
14944             <param name="writer">The writer to write to.</param>\r
14945             <remarks>\r
14946             <para>\r
14947             Format the <see cref="T:System.DateTime"/> as a string and write it\r
14948             to the <see cref="T:System.IO.TextWriter"/> provided.\r
14949             </para>\r
14950             </remarks>\r
14951         </member>\r
14952         <member name="F:log4net.DateFormatter.AbsoluteTimeDateFormatter.AbsoluteTimeDateFormat">\r
14953             <summary>\r
14954             String constant used to specify AbsoluteTimeDateFormat in layouts. Current value is <b>ABSOLUTE</b>.\r
14955             </summary>\r
14956         </member>\r
14957         <member name="F:log4net.DateFormatter.AbsoluteTimeDateFormatter.DateAndTimeDateFormat">\r
14958             <summary>\r
14959             String constant used to specify DateTimeDateFormat in layouts.  Current value is <b>DATE</b>.\r
14960             </summary>\r
14961         </member>\r
14962         <member name="F:log4net.DateFormatter.AbsoluteTimeDateFormatter.Iso8601TimeDateFormat">\r
14963             <summary>\r
14964             String constant used to specify ISO8601DateFormat in layouts. Current value is <b>ISO8601</b>.\r
14965             </summary>\r
14966         </member>\r
14967         <member name="M:log4net.DateFormatter.AbsoluteTimeDateFormatter.FormatDateWithoutMillis(System.DateTime,System.Text.StringBuilder)">\r
14968             <summary>\r
14969             Renders the date into a string. Format is <c>"HH:mm:ss"</c>.\r
14970             </summary>\r
14971             <param name="dateToFormat">The date to render into a string.</param>\r
14972             <param name="buffer">The string builder to write to.</param>\r
14973             <remarks>\r
14974             <para>\r
14975             Subclasses should override this method to render the date\r
14976             into a string using a precision up to the second. This method\r
14977             will be called at most once per second and the result will be\r
14978             reused if it is needed again during the same second.\r
14979             </para>\r
14980             </remarks>\r
14981         </member>\r
14982         <member name="M:log4net.DateFormatter.AbsoluteTimeDateFormatter.FormatDate(System.DateTime,System.IO.TextWriter)">\r
14983             <summary>\r
14984             Renders the date into a string. Format is "HH:mm:ss,fff".\r
14985             </summary>\r
14986             <param name="dateToFormat">The date to render into a string.</param>\r
14987             <param name="writer">The writer to write to.</param>\r
14988             <remarks>\r
14989             <para>\r
14990             Uses the <see cref="M:log4net.DateFormatter.AbsoluteTimeDateFormatter.FormatDateWithoutMillis(System.DateTime,System.Text.StringBuilder)"/> method to generate the\r
14991             time string up to the seconds and then appends the current\r
14992             milliseconds. The results from <see cref="M:log4net.DateFormatter.AbsoluteTimeDateFormatter.FormatDateWithoutMillis(System.DateTime,System.Text.StringBuilder)"/> are\r
14993             cached and <see cref="M:log4net.DateFormatter.AbsoluteTimeDateFormatter.FormatDateWithoutMillis(System.DateTime,System.Text.StringBuilder)"/> is called at most once\r
14994             per second.\r
14995             </para>\r
14996             <para>\r
14997             Sub classes should override <see cref="M:log4net.DateFormatter.AbsoluteTimeDateFormatter.FormatDateWithoutMillis(System.DateTime,System.Text.StringBuilder)"/>\r
14998             rather than <see cref="M:log4net.DateFormatter.AbsoluteTimeDateFormatter.FormatDate(System.DateTime,System.IO.TextWriter)"/>.\r
14999             </para>\r
15000             </remarks>\r
15001         </member>\r
15002         <member name="F:log4net.DateFormatter.AbsoluteTimeDateFormatter.s_lastTimeToTheSecond">\r
15003             <summary>\r
15004             Last stored time with precision up to the second.\r
15005             </summary>\r
15006         </member>\r
15007         <member name="F:log4net.DateFormatter.AbsoluteTimeDateFormatter.s_lastTimeBuf">\r
15008             <summary>\r
15009             Last stored time with precision up to the second, formatted\r
15010             as a string.\r
15011             </summary>\r
15012         </member>\r
15013         <member name="F:log4net.DateFormatter.AbsoluteTimeDateFormatter.s_lastTimeString">\r
15014             <summary>\r
15015             Last stored time with precision up to the second, formatted\r
15016             as a string.\r
15017             </summary>\r
15018         </member>\r
15019         <member name="T:log4net.DateFormatter.DateTimeDateFormatter">\r
15020             <summary>\r
15021             Formats a <see cref="T:System.DateTime"/> as <c>"dd MMM yyyy HH:mm:ss,fff"</c>\r
15022             </summary>\r
15023             <remarks>\r
15024             <para>\r
15025             Formats a <see cref="T:System.DateTime"/> in the format \r
15026             <c>"dd MMM yyyy HH:mm:ss,fff"</c> for example, \r
15027             <c>"06 Nov 1994 15:49:37,459"</c>.\r
15028             </para>\r
15029             </remarks>\r
15030             <author>Nicko Cadell</author>\r
15031             <author>Gert Driesen</author>\r
15032             <author>Angelika Schnagl</author>\r
15033         </member>\r
15034         <member name="M:log4net.DateFormatter.DateTimeDateFormatter.#ctor">\r
15035             <summary>\r
15036             Default constructor.\r
15037             </summary>\r
15038             <remarks>\r
15039             <para>\r
15040             Initializes a new instance of the <see cref="T:log4net.DateFormatter.DateTimeDateFormatter"/> class.\r
15041             </para>\r
15042             </remarks>\r
15043         </member>\r
15044         <member name="M:log4net.DateFormatter.DateTimeDateFormatter.FormatDateWithoutMillis(System.DateTime,System.Text.StringBuilder)">\r
15045             <summary>\r
15046             Formats the date without the milliseconds part\r
15047             </summary>\r
15048             <param name="dateToFormat">The date to format.</param>\r
15049             <param name="buffer">The string builder to write to.</param>\r
15050             <remarks>\r
15051             <para>\r
15052             Formats a DateTime in the format <c>"dd MMM yyyy HH:mm:ss"</c>\r
15053             for example, <c>"06 Nov 1994 15:49:37"</c>.\r
15054             </para>\r
15055             <para>\r
15056             The base class will append the <c>",fff"</c> milliseconds section.\r
15057             This method will only be called at most once per second.\r
15058             </para>\r
15059             </remarks>\r
15060         </member>\r
15061         <member name="F:log4net.DateFormatter.DateTimeDateFormatter.m_dateTimeFormatInfo">\r
15062             <summary>\r
15063             The format info for the invariant culture.\r
15064             </summary>\r
15065         </member>\r
15066         <member name="T:log4net.DateFormatter.Iso8601DateFormatter">\r
15067             <summary>\r
15068             Formats the <see cref="T:System.DateTime"/> as <c>"yyyy-MM-dd HH:mm:ss,fff"</c>.\r
15069             </summary>\r
15070             <remarks>\r
15071             <para>\r
15072             Formats the <see cref="T:System.DateTime"/> specified as a string: <c>"yyyy-MM-dd HH:mm:ss,fff"</c>.\r
15073             </para>\r
15074             </remarks>\r
15075             <author>Nicko Cadell</author>\r
15076             <author>Gert Driesen</author>\r
15077         </member>\r
15078         <member name="M:log4net.DateFormatter.Iso8601DateFormatter.#ctor">\r
15079             <summary>\r
15080             Default constructor\r
15081             </summary>\r
15082             <remarks>\r
15083             <para>\r
15084             Initializes a new instance of the <see cref="T:log4net.DateFormatter.Iso8601DateFormatter"/> class.\r
15085             </para>\r
15086             </remarks>\r
15087         </member>\r
15088         <member name="M:log4net.DateFormatter.Iso8601DateFormatter.FormatDateWithoutMillis(System.DateTime,System.Text.StringBuilder)">\r
15089             <summary>\r
15090             Formats the date without the milliseconds part\r
15091             </summary>\r
15092             <param name="dateToFormat">The date to format.</param>\r
15093             <param name="buffer">The string builder to write to.</param>\r
15094             <remarks>\r
15095             <para>\r
15096             Formats the date specified as a string: <c>"yyyy-MM-dd HH:mm:ss"</c>.\r
15097             </para>\r
15098             <para>\r
15099             The base class will append the <c>",fff"</c> milliseconds section.\r
15100             This method will only be called at most once per second.\r
15101             </para>\r
15102             </remarks>\r
15103         </member>\r
15104         <member name="T:log4net.DateFormatter.SimpleDateFormatter">\r
15105             <summary>\r
15106             Formats the <see cref="T:System.DateTime"/> using the <see cref="M:System.DateTime.ToString(System.String,System.IFormatProvider)"/> method.\r
15107             </summary>\r
15108             <remarks>\r
15109             <para>\r
15110             Formats the <see cref="T:System.DateTime"/> using the <see cref="T:System.DateTime"/> <see cref="M:System.DateTime.ToString(System.String,System.IFormatProvider)"/> method.\r
15111             </para>\r
15112             </remarks>\r
15113             <author>Nicko Cadell</author>\r
15114             <author>Gert Driesen</author>\r
15115         </member>\r
15116         <member name="M:log4net.DateFormatter.SimpleDateFormatter.#ctor(System.String)">\r
15117             <summary>\r
15118             Constructor\r
15119             </summary>\r
15120             <param name="format">The format string.</param>\r
15121             <remarks>\r
15122             <para>\r
15123             Initializes a new instance of the <see cref="T:log4net.DateFormatter.SimpleDateFormatter"/> class \r
15124             with the specified format string.\r
15125             </para>\r
15126             <para>\r
15127             The format string must be compatible with the options\r
15128             that can be supplied to <see cref="M:System.DateTime.ToString(System.String,System.IFormatProvider)"/>.\r
15129             </para>\r
15130             </remarks>\r
15131         </member>\r
15132         <member name="M:log4net.DateFormatter.SimpleDateFormatter.FormatDate(System.DateTime,System.IO.TextWriter)">\r
15133             <summary>\r
15134             Formats the date using <see cref="M:System.DateTime.ToString(System.String,System.IFormatProvider)"/>.\r
15135             </summary>\r
15136             <param name="dateToFormat">The date to convert to a string.</param>\r
15137             <param name="writer">The writer to write to.</param>\r
15138             <remarks>\r
15139             <para>\r
15140             Uses the date format string supplied to the constructor to call\r
15141             the <see cref="M:System.DateTime.ToString(System.String,System.IFormatProvider)"/> method to format the date.\r
15142             </para>\r
15143             </remarks>\r
15144         </member>\r
15145         <member name="F:log4net.DateFormatter.SimpleDateFormatter.m_formatString">\r
15146             <summary>\r
15147             The format string used to format the <see cref="T:System.DateTime"/>.\r
15148             </summary>\r
15149             <remarks>\r
15150             <para>\r
15151             The format string must be compatible with the options\r
15152             that can be supplied to <see cref="M:System.DateTime.ToString(System.String,System.IFormatProvider)"/>.\r
15153             </para>\r
15154             </remarks>\r
15155         </member>\r
15156         <member name="T:log4net.Filter.DenyAllFilter">\r
15157             <summary>\r
15158             This filter drops all <see cref="T:log4net.Core.LoggingEvent"/>. \r
15159             </summary>\r
15160             <remarks>\r
15161             <para>\r
15162             You can add this filter to the end of a filter chain to\r
15163             switch from the default "accept all unless instructed otherwise"\r
15164             filtering behavior to a "deny all unless instructed otherwise"\r
15165             behavior.\r
15166             </para>\r
15167             </remarks>\r
15168             <author>Nicko Cadell</author>\r
15169             <author>Gert Driesen</author>\r
15170         </member>\r
15171         <member name="T:log4net.Filter.FilterSkeleton">\r
15172             <summary>\r
15173             Subclass this type to implement customized logging event filtering\r
15174             </summary>\r
15175             <remarks>\r
15176             <para>\r
15177             Users should extend this class to implement customized logging\r
15178             event filtering. Note that <see cref="T:log4net.Repository.Hierarchy.Logger"/> and \r
15179             <see cref="T:log4net.Appender.AppenderSkeleton"/>, the parent class of all standard\r
15180             appenders, have built-in filtering rules. It is suggested that you\r
15181             first use and understand the built-in rules before rushing to write\r
15182             your own custom filters.\r
15183             </para>\r
15184             <para>\r
15185             This abstract class assumes and also imposes that filters be\r
15186             organized in a linear chain. The <see cref="M:log4net.Filter.FilterSkeleton.Decide(log4net.Core.LoggingEvent)"/>\r
15187             method of each filter is called sequentially, in the order of their \r
15188             addition to the chain.\r
15189             </para>\r
15190             <para>\r
15191             The <see cref="M:log4net.Filter.FilterSkeleton.Decide(log4net.Core.LoggingEvent)"/> method must return one\r
15192             of the integer constants <see cref="F:log4net.Filter.FilterDecision.Deny"/>, \r
15193             <see cref="F:log4net.Filter.FilterDecision.Neutral"/> or <see cref="F:log4net.Filter.FilterDecision.Accept"/>.\r
15194             </para>\r
15195             <para>\r
15196             If the value <see cref="F:log4net.Filter.FilterDecision.Deny"/> is returned, then the log event is dropped \r
15197             immediately without consulting with the remaining filters.\r
15198             </para>\r
15199             <para>\r
15200             If the value <see cref="F:log4net.Filter.FilterDecision.Neutral"/> is returned, then the next filter\r
15201             in the chain is consulted. If there are no more filters in the\r
15202             chain, then the log event is logged. Thus, in the presence of no\r
15203             filters, the default behavior is to log all logging events.\r
15204             </para>\r
15205             <para>\r
15206             If the value <see cref="F:log4net.Filter.FilterDecision.Accept"/> is returned, then the log\r
15207             event is logged without consulting the remaining filters.\r
15208             </para>\r
15209             <para>\r
15210             The philosophy of log4net filters is largely inspired from the\r
15211             Linux ipchains.\r
15212             </para>\r
15213             </remarks>\r
15214             <author>Nicko Cadell</author>\r
15215             <author>Gert Driesen</author>\r
15216         </member>\r
15217         <member name="T:log4net.Filter.IFilter">\r
15218             <summary>\r
15219             Implement this interface to provide customized logging event filtering\r
15220             </summary>\r
15221             <remarks>\r
15222             <para>\r
15223             Users should implement this interface to implement customized logging\r
15224             event filtering. Note that <see cref="T:log4net.Repository.Hierarchy.Logger"/> and \r
15225             <see cref="T:log4net.Appender.AppenderSkeleton"/>, the parent class of all standard\r
15226             appenders, have built-in filtering rules. It is suggested that you\r
15227             first use and understand the built-in rules before rushing to write\r
15228             your own custom filters.\r
15229             </para>\r
15230             <para>\r
15231             This abstract class assumes and also imposes that filters be\r
15232             organized in a linear chain. The <see cref="M:log4net.Filter.IFilter.Decide(log4net.Core.LoggingEvent)"/>\r
15233             method of each filter is called sequentially, in the order of their \r
15234             addition to the chain.\r
15235             </para>\r
15236             <para>\r
15237             The <see cref="M:log4net.Filter.IFilter.Decide(log4net.Core.LoggingEvent)"/> method must return one\r
15238             of the integer constants <see cref="F:log4net.Filter.FilterDecision.Deny"/>, \r
15239             <see cref="F:log4net.Filter.FilterDecision.Neutral"/> or <see cref="F:log4net.Filter.FilterDecision.Accept"/>.\r
15240             </para>\r
15241             <para>\r
15242             If the value <see cref="F:log4net.Filter.FilterDecision.Deny"/> is returned, then the log event is dropped \r
15243             immediately without consulting with the remaining filters.\r
15244             </para>\r
15245             <para>\r
15246             If the value <see cref="F:log4net.Filter.FilterDecision.Neutral"/> is returned, then the next filter\r
15247             in the chain is consulted. If there are no more filters in the\r
15248             chain, then the log event is logged. Thus, in the presence of no\r
15249             filters, the default behavior is to log all logging events.\r
15250             </para>\r
15251             <para>\r
15252             If the value <see cref="F:log4net.Filter.FilterDecision.Accept"/> is returned, then the log\r
15253             event is logged without consulting the remaining filters.\r
15254             </para>\r
15255             <para>\r
15256             The philosophy of log4net filters is largely inspired from the\r
15257             Linux ipchains.\r
15258             </para>\r
15259             </remarks>\r
15260             <author>Nicko Cadell</author>\r
15261             <author>Gert Driesen</author>\r
15262         </member>\r
15263         <member name="M:log4net.Filter.IFilter.Decide(log4net.Core.LoggingEvent)">\r
15264             <summary>\r
15265             Decide if the logging event should be logged through an appender.\r
15266             </summary>\r
15267             <param name="loggingEvent">The LoggingEvent to decide upon</param>\r
15268             <returns>The decision of the filter</returns>\r
15269             <remarks>\r
15270             <para>\r
15271             If the decision is <see cref="F:log4net.Filter.FilterDecision.Deny"/>, then the event will be\r
15272             dropped. If the decision is <see cref="F:log4net.Filter.FilterDecision.Neutral"/>, then the next\r
15273             filter, if any, will be invoked. If the decision is <see cref="F:log4net.Filter.FilterDecision.Accept"/> then\r
15274             the event will be logged without consulting with other filters in\r
15275             the chain.\r
15276             </para>\r
15277             </remarks>\r
15278         </member>\r
15279         <member name="P:log4net.Filter.IFilter.Next">\r
15280             <summary>\r
15281             Property to get and set the next filter\r
15282             </summary>\r
15283             <value>\r
15284             The next filter in the chain\r
15285             </value>\r
15286             <remarks>\r
15287             <para>\r
15288             Filters are typically composed into chains. This property allows the next filter in \r
15289             the chain to be accessed.\r
15290             </para>\r
15291             </remarks>\r
15292         </member>\r
15293         <member name="F:log4net.Filter.FilterSkeleton.m_next">\r
15294             <summary>\r
15295             Points to the next filter in the filter chain.\r
15296             </summary>\r
15297             <remarks>\r
15298             <para>\r
15299             See <see cref="P:log4net.Filter.FilterSkeleton.Next"/> for more information.\r
15300             </para>\r
15301             </remarks>\r
15302         </member>\r
15303         <member name="M:log4net.Filter.FilterSkeleton.ActivateOptions">\r
15304             <summary>\r
15305             Initialize the filter with the options set\r
15306             </summary>\r
15307             <remarks>\r
15308             <para>\r
15309             This is part of the <see cref="T:log4net.Core.IOptionHandler"/> delayed object\r
15310             activation scheme. The <see cref="M:log4net.Filter.FilterSkeleton.ActivateOptions"/> method must \r
15311             be called on this object after the configuration properties have\r
15312             been set. Until <see cref="M:log4net.Filter.FilterSkeleton.ActivateOptions"/> is called this\r
15313             object is in an undefined state and must not be used. \r
15314             </para>\r
15315             <para>\r
15316             If any of the configuration properties are modified then \r
15317             <see cref="M:log4net.Filter.FilterSkeleton.ActivateOptions"/> must be called again.\r
15318             </para>\r
15319             <para>\r
15320             Typically filter's options become active immediately on set, \r
15321             however this method must still be called. \r
15322             </para>\r
15323             </remarks>\r
15324         </member>\r
15325         <member name="M:log4net.Filter.FilterSkeleton.Decide(log4net.Core.LoggingEvent)">\r
15326             <summary>\r
15327             Decide if the <see cref="T:log4net.Core.LoggingEvent"/> should be logged through an appender.\r
15328             </summary>\r
15329             <param name="loggingEvent">The <see cref="T:log4net.Core.LoggingEvent"/> to decide upon</param>\r
15330             <returns>The decision of the filter</returns>\r
15331             <remarks>\r
15332             <para>\r
15333             If the decision is <see cref="F:log4net.Filter.FilterDecision.Deny"/>, then the event will be\r
15334             dropped. If the decision is <see cref="F:log4net.Filter.FilterDecision.Neutral"/>, then the next\r
15335             filter, if any, will be invoked. If the decision is <see cref="F:log4net.Filter.FilterDecision.Accept"/> then\r
15336             the event will be logged without consulting with other filters in\r
15337             the chain.\r
15338             </para>\r
15339             <para>\r
15340             This method is marked <c>abstract</c> and must be implemented\r
15341             in a subclass.\r
15342             </para>\r
15343             </remarks>\r
15344         </member>\r
15345         <member name="P:log4net.Filter.FilterSkeleton.Next">\r
15346             <summary>\r
15347             Property to get and set the next filter\r
15348             </summary>\r
15349             <value>\r
15350             The next filter in the chain\r
15351             </value>\r
15352             <remarks>\r
15353             <para>\r
15354             Filters are typically composed into chains. This property allows the next filter in \r
15355             the chain to be accessed.\r
15356             </para>\r
15357             </remarks>\r
15358         </member>\r
15359         <member name="M:log4net.Filter.DenyAllFilter.#ctor">\r
15360             <summary>\r
15361             Default constructor\r
15362             </summary>\r
15363         </member>\r
15364         <member name="M:log4net.Filter.DenyAllFilter.Decide(log4net.Core.LoggingEvent)">\r
15365             <summary>\r
15366             Always returns the integer constant <see cref="F:log4net.Filter.FilterDecision.Deny"/>\r
15367             </summary>\r
15368             <param name="loggingEvent">the LoggingEvent to filter</param>\r
15369             <returns>Always returns <see cref="F:log4net.Filter.FilterDecision.Deny"/></returns>\r
15370             <remarks>\r
15371             <para>\r
15372             Ignores the event being logged and just returns\r
15373             <see cref="F:log4net.Filter.FilterDecision.Deny"/>. This can be used to change the default filter\r
15374             chain behavior from <see cref="F:log4net.Filter.FilterDecision.Accept"/> to <see cref="F:log4net.Filter.FilterDecision.Deny"/>. This filter\r
15375             should only be used as the last filter in the chain\r
15376             as any further filters will be ignored!\r
15377             </para>\r
15378             </remarks>\r
15379         </member>\r
15380         <member name="T:log4net.Filter.FilterDecision">\r
15381             <summary>\r
15382             The return result from <see cref="M:log4net.Filter.IFilter.Decide(log4net.Core.LoggingEvent)"/>\r
15383             </summary>\r
15384             <remarks>\r
15385             <para>\r
15386             The return result from <see cref="M:log4net.Filter.IFilter.Decide(log4net.Core.LoggingEvent)"/>\r
15387             </para>\r
15388             </remarks>\r
15389         </member>\r
15390         <member name="F:log4net.Filter.FilterDecision.Deny">\r
15391             <summary>\r
15392             The log event must be dropped immediately without \r
15393             consulting with the remaining filters, if any, in the chain.\r
15394             </summary>\r
15395         </member>\r
15396         <member name="F:log4net.Filter.FilterDecision.Neutral">\r
15397             <summary>\r
15398             This filter is neutral with respect to the log event. \r
15399             The remaining filters, if any, should be consulted for a final decision.\r
15400             </summary>\r
15401         </member>\r
15402         <member name="F:log4net.Filter.FilterDecision.Accept">\r
15403             <summary>\r
15404             The log event must be logged immediately without \r
15405             consulting with the remaining filters, if any, in the chain.\r
15406             </summary>\r
15407         </member>\r
15408         <member name="T:log4net.Filter.LevelMatchFilter">\r
15409             <summary>\r
15410             This is a very simple filter based on <see cref="T:log4net.Core.Level"/> matching.\r
15411             </summary>\r
15412             <remarks>\r
15413             <para>\r
15414             The filter admits two options <see cref="P:log4net.Filter.LevelMatchFilter.LevelToMatch"/> and\r
15415             <see cref="P:log4net.Filter.LevelMatchFilter.AcceptOnMatch"/>. If there is an exact match between the value\r
15416             of the <see cref="P:log4net.Filter.LevelMatchFilter.LevelToMatch"/> option and the <see cref="T:log4net.Core.Level"/> of the \r
15417             <see cref="T:log4net.Core.LoggingEvent"/>, then the <see cref="M:log4net.Filter.LevelMatchFilter.Decide(log4net.Core.LoggingEvent)"/> method returns <see cref="F:log4net.Filter.FilterDecision.Accept"/> in \r
15418             case the <see cref="P:log4net.Filter.LevelMatchFilter.AcceptOnMatch"/> option value is set\r
15419             to <c>true</c>, if it is <c>false</c> then \r
15420             <see cref="F:log4net.Filter.FilterDecision.Deny"/> is returned. If the <see cref="T:log4net.Core.Level"/> does not match then\r
15421             the result will be <see cref="F:log4net.Filter.FilterDecision.Neutral"/>.\r
15422             </para>\r
15423             </remarks>\r
15424             <author>Nicko Cadell</author>\r
15425             <author>Gert Driesen</author>\r
15426         </member>\r
15427         <member name="F:log4net.Filter.LevelMatchFilter.m_acceptOnMatch">\r
15428             <summary>\r
15429             flag to indicate if the filter should <see cref="F:log4net.Filter.FilterDecision.Accept"/> on a match\r
15430             </summary>\r
15431         </member>\r
15432         <member name="F:log4net.Filter.LevelMatchFilter.m_levelToMatch">\r
15433             <summary>\r
15434             the <see cref="T:log4net.Core.Level"/> to match against\r
15435             </summary>\r
15436         </member>\r
15437         <member name="M:log4net.Filter.LevelMatchFilter.#ctor">\r
15438             <summary>\r
15439             Default constructor\r
15440             </summary>\r
15441         </member>\r
15442         <member name="M:log4net.Filter.LevelMatchFilter.Decide(log4net.Core.LoggingEvent)">\r
15443             <summary>\r
15444             Tests if the <see cref="T:log4net.Core.Level"/> of the logging event matches that of the filter\r
15445             </summary>\r
15446             <param name="loggingEvent">the event to filter</param>\r
15447             <returns>see remarks</returns>\r
15448             <remarks>\r
15449             <para>\r
15450             If the <see cref="T:log4net.Core.Level"/> of the event matches the level of the\r
15451             filter then the result of the function depends on the\r
15452             value of <see cref="P:log4net.Filter.LevelMatchFilter.AcceptOnMatch"/>. If it is true then\r
15453             the function will return <see cref="F:log4net.Filter.FilterDecision.Accept"/>, it it is false then it\r
15454             will return <see cref="F:log4net.Filter.FilterDecision.Deny"/>. If the <see cref="T:log4net.Core.Level"/> does not match then\r
15455             the result will be <see cref="F:log4net.Filter.FilterDecision.Neutral"/>.\r
15456             </para>\r
15457             </remarks>\r
15458         </member>\r
15459         <member name="P:log4net.Filter.LevelMatchFilter.AcceptOnMatch">\r
15460             <summary>\r
15461             <see cref="F:log4net.Filter.FilterDecision.Accept"/> when matching <see cref="P:log4net.Filter.LevelMatchFilter.LevelToMatch"/>\r
15462             </summary>\r
15463             <remarks>\r
15464             <para>\r
15465             The <see cref="P:log4net.Filter.LevelMatchFilter.AcceptOnMatch"/> property is a flag that determines\r
15466             the behavior when a matching <see cref="T:log4net.Core.Level"/> is found. If the\r
15467             flag is set to true then the filter will <see cref="F:log4net.Filter.FilterDecision.Accept"/> the \r
15468             logging event, otherwise it will <see cref="F:log4net.Filter.FilterDecision.Deny"/> the event.\r
15469             </para>\r
15470             <para>\r
15471             The default is <c>true</c> i.e. to <see cref="F:log4net.Filter.FilterDecision.Accept"/> the event.\r
15472             </para>\r
15473             </remarks>\r
15474         </member>\r
15475         <member name="P:log4net.Filter.LevelMatchFilter.LevelToMatch">\r
15476             <summary>\r
15477             The <see cref="T:log4net.Core.Level"/> that the filter will match\r
15478             </summary>\r
15479             <remarks>\r
15480             <para>\r
15481             The level that this filter will attempt to match against the \r
15482             <see cref="T:log4net.Core.LoggingEvent"/> level. If a match is found then\r
15483             the result depends on the value of <see cref="P:log4net.Filter.LevelMatchFilter.AcceptOnMatch"/>.\r
15484             </para>\r
15485             </remarks>\r
15486         </member>\r
15487         <member name="T:log4net.Filter.LevelRangeFilter">\r
15488             <summary>\r
15489             This is a simple filter based on <see cref="T:log4net.Core.Level"/> matching.\r
15490             </summary>\r
15491             <remarks>\r
15492             <para>\r
15493             The filter admits three options <see cref="P:log4net.Filter.LevelRangeFilter.LevelMin"/> and <see cref="P:log4net.Filter.LevelRangeFilter.LevelMax"/>\r
15494             that determine the range of priorities that are matched, and\r
15495             <see cref="P:log4net.Filter.LevelRangeFilter.AcceptOnMatch"/>. If there is a match between the range\r
15496             of priorities and the <see cref="T:log4net.Core.Level"/> of the <see cref="T:log4net.Core.LoggingEvent"/>, then the \r
15497             <see cref="M:log4net.Filter.LevelRangeFilter.Decide(log4net.Core.LoggingEvent)"/> method returns <see cref="F:log4net.Filter.FilterDecision.Accept"/> in case the <see cref="P:log4net.Filter.LevelRangeFilter.AcceptOnMatch"/> \r
15498             option value is set to <c>true</c>, if it is <c>false</c>\r
15499             then <see cref="F:log4net.Filter.FilterDecision.Deny"/> is returned. If there is no match, <see cref="F:log4net.Filter.FilterDecision.Deny"/> is returned.\r
15500             </para>\r
15501             </remarks>\r
15502             <author>Nicko Cadell</author>\r
15503             <author>Gert Driesen</author>\r
15504         </member>\r
15505         <member name="F:log4net.Filter.LevelRangeFilter.m_acceptOnMatch">\r
15506             <summary>\r
15507             Flag to indicate the behavior when matching a <see cref="T:log4net.Core.Level"/>\r
15508             </summary>\r
15509         </member>\r
15510         <member name="F:log4net.Filter.LevelRangeFilter.m_levelMin">\r
15511             <summary>\r
15512             the minimum <see cref="T:log4net.Core.Level"/> value to match\r
15513             </summary>\r
15514         </member>\r
15515         <member name="F:log4net.Filter.LevelRangeFilter.m_levelMax">\r
15516             <summary>\r
15517             the maximum <see cref="T:log4net.Core.Level"/> value to match\r
15518             </summary>\r
15519         </member>\r
15520         <member name="M:log4net.Filter.LevelRangeFilter.#ctor">\r
15521             <summary>\r
15522             Default constructor\r
15523             </summary>\r
15524         </member>\r
15525         <member name="M:log4net.Filter.LevelRangeFilter.Decide(log4net.Core.LoggingEvent)">\r
15526             <summary>\r
15527             Check if the event should be logged.\r
15528             </summary>\r
15529             <param name="loggingEvent">the logging event to check</param>\r
15530             <returns>see remarks</returns>\r
15531             <remarks>\r
15532             <para>\r
15533             If the <see cref="T:log4net.Core.Level"/> of the logging event is outside the range\r
15534             matched by this filter then <see cref="F:log4net.Filter.FilterDecision.Deny"/>\r
15535             is returned. If the <see cref="T:log4net.Core.Level"/> is matched then the value of\r
15536             <see cref="P:log4net.Filter.LevelRangeFilter.AcceptOnMatch"/> is checked. If it is true then\r
15537             <see cref="F:log4net.Filter.FilterDecision.Accept"/> is returned, otherwise\r
15538             <see cref="F:log4net.Filter.FilterDecision.Neutral"/> is returned.\r
15539             </para>\r
15540             </remarks>\r
15541         </member>\r
15542         <member name="P:log4net.Filter.LevelRangeFilter.AcceptOnMatch">\r
15543             <summary>\r
15544             <see cref="F:log4net.Filter.FilterDecision.Accept"/> when matching <see cref="P:log4net.Filter.LevelRangeFilter.LevelMin"/> and <see cref="P:log4net.Filter.LevelRangeFilter.LevelMax"/>\r
15545             </summary>\r
15546             <remarks>\r
15547             <para>\r
15548             The <see cref="P:log4net.Filter.LevelRangeFilter.AcceptOnMatch"/> property is a flag that determines\r
15549             the behavior when a matching <see cref="T:log4net.Core.Level"/> is found. If the\r
15550             flag is set to true then the filter will <see cref="F:log4net.Filter.FilterDecision.Accept"/> the \r
15551             logging event, otherwise it will <see cref="F:log4net.Filter.FilterDecision.Neutral"/> the event.\r
15552             </para>\r
15553             <para>\r
15554             The default is <c>true</c> i.e. to <see cref="F:log4net.Filter.FilterDecision.Accept"/> the event.\r
15555             </para>\r
15556             </remarks>\r
15557         </member>\r
15558         <member name="P:log4net.Filter.LevelRangeFilter.LevelMin">\r
15559             <summary>\r
15560             Set the minimum matched <see cref="T:log4net.Core.Level"/>\r
15561             </summary>\r
15562             <remarks>\r
15563             <para>\r
15564             The minimum level that this filter will attempt to match against the \r
15565             <see cref="T:log4net.Core.LoggingEvent"/> level. If a match is found then\r
15566             the result depends on the value of <see cref="P:log4net.Filter.LevelRangeFilter.AcceptOnMatch"/>.\r
15567             </para>\r
15568             </remarks>\r
15569         </member>\r
15570         <member name="P:log4net.Filter.LevelRangeFilter.LevelMax">\r
15571             <summary>\r
15572             Sets the maximum matched <see cref="T:log4net.Core.Level"/>\r
15573             </summary>\r
15574             <remarks>\r
15575             <para>\r
15576             The maximum level that this filter will attempt to match against the \r
15577             <see cref="T:log4net.Core.LoggingEvent"/> level. If a match is found then\r
15578             the result depends on the value of <see cref="P:log4net.Filter.LevelRangeFilter.AcceptOnMatch"/>.\r
15579             </para>\r
15580             </remarks>\r
15581         </member>\r
15582         <member name="T:log4net.Filter.LoggerMatchFilter">\r
15583             <summary>\r
15584             Simple filter to match a string in the event's logger name.\r
15585             </summary>\r
15586             <remarks>\r
15587             <para>\r
15588             The works very similar to the <see cref="T:log4net.Filter.LevelMatchFilter"/>. It admits two \r
15589             options <see cref="P:log4net.Filter.LoggerMatchFilter.LoggerToMatch"/> and <see cref="P:log4net.Filter.LoggerMatchFilter.AcceptOnMatch"/>. If the \r
15590             <see cref="P:log4net.Core.LoggingEvent.LoggerName"/> of the <see cref="T:log4net.Core.LoggingEvent"/> starts \r
15591             with the value of the <see cref="P:log4net.Filter.LoggerMatchFilter.LoggerToMatch"/> option, then the \r
15592             <see cref="M:log4net.Filter.LoggerMatchFilter.Decide(log4net.Core.LoggingEvent)"/> method returns <see cref="F:log4net.Filter.FilterDecision.Accept"/> in \r
15593             case the <see cref="P:log4net.Filter.LoggerMatchFilter.AcceptOnMatch"/> option value is set to <c>true</c>, \r
15594             if it is <c>false</c> then <see cref="F:log4net.Filter.FilterDecision.Deny"/> is returned.\r
15595             </para>\r
15596             </remarks>\r
15597             <author>Daniel Cazzulino</author>\r
15598         </member>\r
15599         <member name="F:log4net.Filter.LoggerMatchFilter.m_acceptOnMatch">\r
15600             <summary>\r
15601             Flag to indicate the behavior when we have a match\r
15602             </summary>\r
15603         </member>\r
15604         <member name="F:log4net.Filter.LoggerMatchFilter.m_loggerToMatch">\r
15605             <summary>\r
15606             The logger name string to substring match against the event\r
15607             </summary>\r
15608         </member>\r
15609         <member name="M:log4net.Filter.LoggerMatchFilter.#ctor">\r
15610             <summary>\r
15611             Default constructor\r
15612             </summary>\r
15613         </member>\r
15614         <member name="M:log4net.Filter.LoggerMatchFilter.Decide(log4net.Core.LoggingEvent)">\r
15615             <summary>\r
15616             Check if this filter should allow the event to be logged\r
15617             </summary>\r
15618             <param name="loggingEvent">the event being logged</param>\r
15619             <returns>see remarks</returns>\r
15620             <remarks>\r
15621             <para>\r
15622             The rendered message is matched against the <see cref="P:log4net.Filter.LoggerMatchFilter.LoggerToMatch"/>.\r
15623             If the <see cref="P:log4net.Filter.LoggerMatchFilter.LoggerToMatch"/> equals the beginning of \r
15624             the incoming <see cref="P:log4net.Core.LoggingEvent.LoggerName"/> (<see cref="M:System.String.StartsWith(System.String)"/>)\r
15625             then a match will have occurred. If no match occurs\r
15626             this function will return <see cref="F:log4net.Filter.FilterDecision.Neutral"/>\r
15627             allowing other filters to check the event. If a match occurs then\r
15628             the value of <see cref="P:log4net.Filter.LoggerMatchFilter.AcceptOnMatch"/> is checked. If it is\r
15629             true then <see cref="F:log4net.Filter.FilterDecision.Accept"/> is returned otherwise\r
15630             <see cref="F:log4net.Filter.FilterDecision.Deny"/> is returned.\r
15631             </para>\r
15632             </remarks>\r
15633         </member>\r
15634         <member name="P:log4net.Filter.LoggerMatchFilter.AcceptOnMatch">\r
15635             <summary>\r
15636             <see cref="F:log4net.Filter.FilterDecision.Accept"/> when matching <see cref="P:log4net.Filter.LoggerMatchFilter.LoggerToMatch"/>\r
15637             </summary>\r
15638             <remarks>\r
15639             <para>\r
15640             The <see cref="P:log4net.Filter.LoggerMatchFilter.AcceptOnMatch"/> property is a flag that determines\r
15641             the behavior when a matching <see cref="T:log4net.Core.Level"/> is found. If the\r
15642             flag is set to true then the filter will <see cref="F:log4net.Filter.FilterDecision.Accept"/> the \r
15643             logging event, otherwise it will <see cref="F:log4net.Filter.FilterDecision.Deny"/> the event.\r
15644             </para>\r
15645             <para>\r
15646             The default is <c>true</c> i.e. to <see cref="F:log4net.Filter.FilterDecision.Accept"/> the event.\r
15647             </para>\r
15648             </remarks>\r
15649         </member>\r
15650         <member name="P:log4net.Filter.LoggerMatchFilter.LoggerToMatch">\r
15651             <summary>\r
15652             The <see cref="P:log4net.Core.LoggingEvent.LoggerName"/> that the filter will match\r
15653             </summary>\r
15654             <remarks>\r
15655             <para>\r
15656             This filter will attempt to match this value against logger name in\r
15657             the following way. The match will be done against the beginning of the\r
15658             logger name (using <see cref="M:System.String.StartsWith(System.String)"/>). The match is\r
15659             case sensitive. If a match is found then\r
15660             the result depends on the value of <see cref="P:log4net.Filter.LoggerMatchFilter.AcceptOnMatch"/>.\r
15661             </para>\r
15662             </remarks>\r
15663         </member>\r
15664         <member name="T:log4net.Filter.MdcFilter">\r
15665             <summary>\r
15666             Simple filter to match a keyed string in the <see cref="T:log4net.MDC"/>\r
15667             </summary>\r
15668             <remarks>\r
15669             <para>\r
15670             Simple filter to match a keyed string in the <see cref="T:log4net.MDC"/>\r
15671             </para>\r
15672             <para>\r
15673             As the MDC has been replaced with layered properties the\r
15674             <see cref="T:log4net.Filter.PropertyFilter"/> should be used instead.\r
15675             </para>\r
15676             </remarks>\r
15677             <author>Nicko Cadell</author>\r
15678             <author>Gert Driesen</author>\r
15679         </member>\r
15680         <member name="T:log4net.Filter.PropertyFilter">\r
15681             <summary>\r
15682             Simple filter to match a string an event property\r
15683             </summary>\r
15684             <remarks>\r
15685             <para>\r
15686             Simple filter to match a string in the value for a\r
15687             specific event property\r
15688             </para>\r
15689             </remarks>\r
15690             <author>Nicko Cadell</author>\r
15691         </member>\r
15692         <member name="T:log4net.Filter.StringMatchFilter">\r
15693             <summary>\r
15694             Simple filter to match a string in the rendered message\r
15695             </summary>\r
15696             <remarks>\r
15697             <para>\r
15698             Simple filter to match a string in the rendered message\r
15699             </para>\r
15700             </remarks>\r
15701             <author>Nicko Cadell</author>\r
15702             <author>Gert Driesen</author>\r
15703         </member>\r
15704         <member name="F:log4net.Filter.StringMatchFilter.m_acceptOnMatch">\r
15705             <summary>\r
15706             Flag to indicate the behavior when we have a match\r
15707             </summary>\r
15708         </member>\r
15709         <member name="F:log4net.Filter.StringMatchFilter.m_stringToMatch">\r
15710             <summary>\r
15711             The string to substring match against the message\r
15712             </summary>\r
15713         </member>\r
15714         <member name="F:log4net.Filter.StringMatchFilter.m_stringRegexToMatch">\r
15715             <summary>\r
15716             A string regex to match\r
15717             </summary>\r
15718         </member>\r
15719         <member name="F:log4net.Filter.StringMatchFilter.m_regexToMatch">\r
15720             <summary>\r
15721             A regex object to match (generated from m_stringRegexToMatch)\r
15722             </summary>\r
15723         </member>\r
15724         <member name="M:log4net.Filter.StringMatchFilter.#ctor">\r
15725             <summary>\r
15726             Default constructor\r
15727             </summary>\r
15728         </member>\r
15729         <member name="M:log4net.Filter.StringMatchFilter.ActivateOptions">\r
15730             <summary>\r
15731             Initialize and precompile the Regex if required\r
15732             </summary>\r
15733             <remarks>\r
15734             <para>\r
15735             This is part of the <see cref="T:log4net.Core.IOptionHandler"/> delayed object\r
15736             activation scheme. The <see cref="M:log4net.Filter.StringMatchFilter.ActivateOptions"/> method must \r
15737             be called on this object after the configuration properties have\r
15738             been set. Until <see cref="M:log4net.Filter.StringMatchFilter.ActivateOptions"/> is called this\r
15739             object is in an undefined state and must not be used. \r
15740             </para>\r
15741             <para>\r
15742             If any of the configuration properties are modified then \r
15743             <see cref="M:log4net.Filter.StringMatchFilter.ActivateOptions"/> must be called again.\r
15744             </para>\r
15745             </remarks>\r
15746         </member>\r
15747         <member name="M:log4net.Filter.StringMatchFilter.Decide(log4net.Core.LoggingEvent)">\r
15748             <summary>\r
15749             Check if this filter should allow the event to be logged\r
15750             </summary>\r
15751             <param name="loggingEvent">the event being logged</param>\r
15752             <returns>see remarks</returns>\r
15753             <remarks>\r
15754             <para>\r
15755             The rendered message is matched against the <see cref="P:log4net.Filter.StringMatchFilter.StringToMatch"/>.\r
15756             If the <see cref="P:log4net.Filter.StringMatchFilter.StringToMatch"/> occurs as a substring within\r
15757             the message then a match will have occurred. If no match occurs\r
15758             this function will return <see cref="F:log4net.Filter.FilterDecision.Neutral"/>\r
15759             allowing other filters to check the event. If a match occurs then\r
15760             the value of <see cref="P:log4net.Filter.StringMatchFilter.AcceptOnMatch"/> is checked. If it is\r
15761             true then <see cref="F:log4net.Filter.FilterDecision.Accept"/> is returned otherwise\r
15762             <see cref="F:log4net.Filter.FilterDecision.Deny"/> is returned.\r
15763             </para>\r
15764             </remarks>\r
15765         </member>\r
15766         <member name="P:log4net.Filter.StringMatchFilter.AcceptOnMatch">\r
15767             <summary>\r
15768             <see cref="F:log4net.Filter.FilterDecision.Accept"/> when matching <see cref="P:log4net.Filter.StringMatchFilter.StringToMatch"/> or <see cref="P:log4net.Filter.StringMatchFilter.RegexToMatch"/>\r
15769             </summary>\r
15770             <remarks>\r
15771             <para>\r
15772             The <see cref="P:log4net.Filter.StringMatchFilter.AcceptOnMatch"/> property is a flag that determines\r
15773             the behavior when a matching <see cref="T:log4net.Core.Level"/> is found. If the\r
15774             flag is set to true then the filter will <see cref="F:log4net.Filter.FilterDecision.Accept"/> the \r
15775             logging event, otherwise it will <see cref="F:log4net.Filter.FilterDecision.Neutral"/> the event.\r
15776             </para>\r
15777             <para>\r
15778             The default is <c>true</c> i.e. to <see cref="F:log4net.Filter.FilterDecision.Accept"/> the event.\r
15779             </para>\r
15780             </remarks>\r
15781         </member>\r
15782         <member name="P:log4net.Filter.StringMatchFilter.StringToMatch">\r
15783             <summary>\r
15784             Sets the static string to match\r
15785             </summary>\r
15786             <remarks>\r
15787             <para>\r
15788             The string that will be substring matched against\r
15789             the rendered message. If the message contains this\r
15790             string then the filter will match. If a match is found then\r
15791             the result depends on the value of <see cref="P:log4net.Filter.StringMatchFilter.AcceptOnMatch"/>.\r
15792             </para>\r
15793             <para>\r
15794             One of <see cref="P:log4net.Filter.StringMatchFilter.StringToMatch"/> or <see cref="P:log4net.Filter.StringMatchFilter.RegexToMatch"/>\r
15795             must be specified.\r
15796             </para>\r
15797             </remarks>\r
15798         </member>\r
15799         <member name="P:log4net.Filter.StringMatchFilter.RegexToMatch">\r
15800             <summary>\r
15801             Sets the regular expression to match\r
15802             </summary>\r
15803             <remarks>\r
15804             <para>\r
15805             The regular expression pattern that will be matched against\r
15806             the rendered message. If the message matches this\r
15807             pattern then the filter will match. If a match is found then\r
15808             the result depends on the value of <see cref="P:log4net.Filter.StringMatchFilter.AcceptOnMatch"/>.\r
15809             </para>\r
15810             <para>\r
15811             One of <see cref="P:log4net.Filter.StringMatchFilter.StringToMatch"/> or <see cref="P:log4net.Filter.StringMatchFilter.RegexToMatch"/>\r
15812             must be specified.\r
15813             </para>\r
15814             </remarks>\r
15815         </member>\r
15816         <member name="F:log4net.Filter.PropertyFilter.m_key">\r
15817             <summary>\r
15818             The key to use to lookup the string from the event properties\r
15819             </summary>\r
15820         </member>\r
15821         <member name="M:log4net.Filter.PropertyFilter.#ctor">\r
15822             <summary>\r
15823             Default constructor\r
15824             </summary>\r
15825         </member>\r
15826         <member name="M:log4net.Filter.PropertyFilter.Decide(log4net.Core.LoggingEvent)">\r
15827             <summary>\r
15828             Check if this filter should allow the event to be logged\r
15829             </summary>\r
15830             <param name="loggingEvent">the event being logged</param>\r
15831             <returns>see remarks</returns>\r
15832             <remarks>\r
15833             <para>\r
15834             The event property for the <see cref="P:log4net.Filter.PropertyFilter.Key"/> is matched against \r
15835             the <see cref="P:log4net.Filter.StringMatchFilter.StringToMatch"/>.\r
15836             If the <see cref="P:log4net.Filter.StringMatchFilter.StringToMatch"/> occurs as a substring within\r
15837             the property value then a match will have occurred. If no match occurs\r
15838             this function will return <see cref="F:log4net.Filter.FilterDecision.Neutral"/>\r
15839             allowing other filters to check the event. If a match occurs then\r
15840             the value of <see cref="P:log4net.Filter.StringMatchFilter.AcceptOnMatch"/> is checked. If it is\r
15841             true then <see cref="F:log4net.Filter.FilterDecision.Accept"/> is returned otherwise\r
15842             <see cref="F:log4net.Filter.FilterDecision.Deny"/> is returned.\r
15843             </para>\r
15844             </remarks>\r
15845         </member>\r
15846         <member name="P:log4net.Filter.PropertyFilter.Key">\r
15847             <summary>\r
15848             The key to lookup in the event properties and then match against.\r
15849             </summary>\r
15850             <remarks>\r
15851             <para>\r
15852             The key name to use to lookup in the properties map of the\r
15853             <see cref="T:log4net.Core.LoggingEvent"/>. The match will be performed against \r
15854             the value of this property if it exists.\r
15855             </para>\r
15856             </remarks>\r
15857         </member>\r
15858         <member name="T:log4net.Filter.NdcFilter">\r
15859             <summary>\r
15860             Simple filter to match a string in the <see cref="T:log4net.NDC"/>\r
15861             </summary>\r
15862             <remarks>\r
15863             <para>\r
15864             Simple filter to match a string in the <see cref="T:log4net.NDC"/>\r
15865             </para>\r
15866             <para>\r
15867             As the MDC has been replaced with named stacks stored in the\r
15868             properties collections the <see cref="T:log4net.Filter.PropertyFilter"/> should \r
15869             be used instead.\r
15870             </para>\r
15871             </remarks>\r
15872             <author>Nicko Cadell</author>\r
15873             <author>Gert Driesen</author>\r
15874         </member>\r
15875         <member name="M:log4net.Filter.NdcFilter.#ctor">\r
15876             <summary>\r
15877             Default constructor\r
15878             </summary>\r
15879             <remarks>\r
15880             <para>\r
15881             Sets the <see cref="P:log4net.Filter.PropertyFilter.Key"/> to <c>"NDC"</c>.\r
15882             </para>\r
15883             </remarks>\r
15884         </member>\r
15885         <member name="T:log4net.Layout.Pattern.AppDomainPatternConverter">\r
15886             <summary>\r
15887             Write the event appdomain name to the output\r
15888             </summary>\r
15889             <remarks>\r
15890             <para>\r
15891             Writes the <see cref="P:log4net.Core.LoggingEvent.Domain"/> to the output writer.\r
15892             </para>\r
15893             </remarks>\r
15894             <author>Daniel Cazzulino</author>\r
15895             <author>Nicko Cadell</author>\r
15896         </member>\r
15897         <member name="T:log4net.Layout.Pattern.PatternLayoutConverter">\r
15898             <summary>\r
15899             Abstract class that provides the formatting functionality that \r
15900             derived classes need.\r
15901             </summary>\r
15902             <remarks>\r
15903             Conversion specifiers in a conversion patterns are parsed to\r
15904             individual PatternConverters. Each of which is responsible for\r
15905             converting a logging event in a converter specific manner.\r
15906             </remarks>\r
15907             <author>Nicko Cadell</author>\r
15908         </member>\r
15909         <member name="T:log4net.Util.PatternConverter">\r
15910             <summary>\r
15911             Abstract class that provides the formatting functionality that \r
15912             derived classes need.\r
15913             </summary>\r
15914             <remarks>\r
15915             <para>\r
15916             Conversion specifiers in a conversion patterns are parsed to\r
15917             individual PatternConverters. Each of which is responsible for\r
15918             converting a logging event in a converter specific manner.\r
15919             </para>\r
15920             </remarks>\r
15921             <author>Nicko Cadell</author>\r
15922             <author>Gert Driesen</author>\r
15923         </member>\r
15924         <member name="F:log4net.Util.PatternConverter.c_renderBufferSize">\r
15925             <summary>\r
15926             Initial buffer size\r
15927             </summary>\r
15928         </member>\r
15929         <member name="F:log4net.Util.PatternConverter.c_renderBufferMaxCapacity">\r
15930             <summary>\r
15931             Maximum buffer size before it is recycled\r
15932             </summary>\r
15933         </member>\r
15934         <member name="M:log4net.Util.PatternConverter.#ctor">\r
15935             <summary>\r
15936             Protected constructor\r
15937             </summary>\r
15938             <remarks>\r
15939             <para>\r
15940             Initializes a new instance of the <see cref="T:log4net.Util.PatternConverter"/> class.\r
15941             </para>\r
15942             </remarks>\r
15943         </member>\r
15944         <member name="M:log4net.Util.PatternConverter.Convert(System.IO.TextWriter,System.Object)">\r
15945             <summary>\r
15946             Evaluate this pattern converter and write the output to a writer.\r
15947             </summary>\r
15948             <param name="writer"><see cref="T:System.IO.TextWriter"/> that will receive the formatted result.</param>\r
15949             <param name="state">The state object on which the pattern converter should be executed.</param>\r
15950             <remarks>\r
15951             <para>\r
15952             Derived pattern converters must override this method in order to\r
15953             convert conversion specifiers in the appropriate way.\r
15954             </para>\r
15955             </remarks>\r
15956         </member>\r
15957         <member name="M:log4net.Util.PatternConverter.SetNext(log4net.Util.PatternConverter)">\r
15958             <summary>\r
15959             Set the next pattern converter in the chains\r
15960             </summary>\r
15961             <param name="patternConverter">the pattern converter that should follow this converter in the chain</param>\r
15962             <returns>the next converter</returns>\r
15963             <remarks>\r
15964             <para>\r
15965             The PatternConverter can merge with its neighbor during this method (or a sub class).\r
15966             Therefore the return value may or may not be the value of the argument passed in.\r
15967             </para>\r
15968             </remarks>\r
15969         </member>\r
15970         <member name="M:log4net.Util.PatternConverter.Format(System.IO.TextWriter,System.Object)">\r
15971             <summary>\r
15972             Write the pattern converter to the writer with appropriate formatting\r
15973             </summary>\r
15974             <param name="writer"><see cref="T:System.IO.TextWriter"/> that will receive the formatted result.</param>\r
15975             <param name="state">The state object on which the pattern converter should be executed.</param>\r
15976             <remarks>\r
15977             <para>\r
15978             This method calls <see cref="M:log4net.Util.PatternConverter.Convert(System.IO.TextWriter,System.Object)"/> to allow the subclass to perform\r
15979             appropriate conversion of the pattern converter. If formatting options have\r
15980             been specified via the <see cref="P:log4net.Util.PatternConverter.FormattingInfo"/> then this method will\r
15981             apply those formattings before writing the output.\r
15982             </para>\r
15983             </remarks>\r
15984         </member>\r
15985         <member name="M:log4net.Util.PatternConverter.SpacePad(System.IO.TextWriter,System.Int32)">\r
15986             <summary>\r
15987             Fast space padding method.\r
15988             </summary>\r
15989             <param name="writer"><see cref="T:System.IO.TextWriter"/> to which the spaces will be appended.</param>\r
15990             <param name="length">The number of spaces to be padded.</param>\r
15991             <remarks>\r
15992             <para>\r
15993             Fast space padding method.\r
15994             </para>\r
15995             </remarks>\r
15996         </member>\r
15997         <member name="F:log4net.Util.PatternConverter.m_option">\r
15998             <summary>\r
15999             The option string to the converter\r
16000             </summary>\r
16001         </member>\r
16002         <member name="M:log4net.Util.PatternConverter.WriteDictionary(System.IO.TextWriter,log4net.Repository.ILoggerRepository,System.Collections.IDictionary)">\r
16003             <summary>\r
16004             Write an dictionary to a <see cref="T:System.IO.TextWriter"/>\r
16005             </summary>\r
16006             <param name="writer">the writer to write to</param>\r
16007             <param name="repository">a <see cref="T:log4net.Repository.ILoggerRepository"/> to use for object conversion</param>\r
16008             <param name="value">the value to write to the writer</param>\r
16009             <remarks>\r
16010             <para>\r
16011             Writes the <see cref="T:System.Collections.IDictionary"/> to a writer in the form:\r
16012             </para>\r
16013             <code>\r
16014             {key1=value1, key2=value2, key3=value3}\r
16015             </code>\r
16016             <para>\r
16017             If the <see cref="T:log4net.Repository.ILoggerRepository"/> specified\r
16018             is not null then it is used to render the key and value to text, otherwise\r
16019             the object's ToString method is called.\r
16020             </para>\r
16021             </remarks>\r
16022         </member>\r
16023         <member name="M:log4net.Util.PatternConverter.WriteObject(System.IO.TextWriter,log4net.Repository.ILoggerRepository,System.Object)">\r
16024             <summary>\r
16025             Write an object to a <see cref="T:System.IO.TextWriter"/>\r
16026             </summary>\r
16027             <param name="writer">the writer to write to</param>\r
16028             <param name="repository">a <see cref="T:log4net.Repository.ILoggerRepository"/> to use for object conversion</param>\r
16029             <param name="value">the value to write to the writer</param>\r
16030             <remarks>\r
16031             <para>\r
16032             Writes the Object to a writer. If the <see cref="T:log4net.Repository.ILoggerRepository"/> specified\r
16033             is not null then it is used to render the object to text, otherwise\r
16034             the object's ToString method is called.\r
16035             </para>\r
16036             </remarks>\r
16037         </member>\r
16038         <member name="P:log4net.Util.PatternConverter.Next">\r
16039             <summary>\r
16040             Get the next pattern converter in the chain\r
16041             </summary>\r
16042             <value>\r
16043             the next pattern converter in the chain\r
16044             </value>\r
16045             <remarks>\r
16046             <para>\r
16047             Get the next pattern converter in the chain\r
16048             </para>\r
16049             </remarks>\r
16050         </member>\r
16051         <member name="P:log4net.Util.PatternConverter.FormattingInfo">\r
16052             <summary>\r
16053             Gets or sets the formatting info for this converter\r
16054             </summary>\r
16055             <value>\r
16056             The formatting info for this converter\r
16057             </value>\r
16058             <remarks>\r
16059             <para>\r
16060             Gets or sets the formatting info for this converter\r
16061             </para>\r
16062             </remarks>\r
16063         </member>\r
16064         <member name="P:log4net.Util.PatternConverter.Option">\r
16065             <summary>\r
16066             Gets or sets the option value for this converter\r
16067             </summary>\r
16068             <summary>\r
16069             The option for this converter\r
16070             </summary>\r
16071             <remarks>\r
16072             <para>\r
16073             Gets or sets the option value for this converter\r
16074             </para>\r
16075             </remarks>\r
16076         </member>\r
16077         <member name="M:log4net.Layout.Pattern.PatternLayoutConverter.#ctor">\r
16078             <summary>\r
16079             Initializes a new instance of the <see cref="T:log4net.Layout.Pattern.PatternLayoutConverter"/> class.\r
16080             </summary>\r
16081         </member>\r
16082         <member name="M:log4net.Layout.Pattern.PatternLayoutConverter.Convert(System.IO.TextWriter,log4net.Core.LoggingEvent)">\r
16083             <summary>\r
16084             Derived pattern converters must override this method in order to\r
16085             convert conversion specifiers in the correct way.\r
16086             </summary>\r
16087             <param name="writer"><see cref="T:System.IO.TextWriter"/> that will receive the formatted result.</param>\r
16088             <param name="loggingEvent">The <see cref="T:log4net.Core.LoggingEvent"/> on which the pattern converter should be executed.</param>\r
16089         </member>\r
16090         <member name="M:log4net.Layout.Pattern.PatternLayoutConverter.Convert(System.IO.TextWriter,System.Object)">\r
16091             <summary>\r
16092             Derived pattern converters must override this method in order to\r
16093             convert conversion specifiers in the correct way.\r
16094             </summary>\r
16095             <param name="writer"><see cref="T:System.IO.TextWriter"/> that will receive the formatted result.</param>\r
16096             <param name="state">The state object on which the pattern converter should be executed.</param>\r
16097         </member>\r
16098         <member name="F:log4net.Layout.Pattern.PatternLayoutConverter.m_ignoresException">\r
16099             <summary>\r
16100             Flag indicating if this converter handles exceptions\r
16101             </summary>\r
16102             <remarks>\r
16103             <c>false</c> if this converter handles exceptions\r
16104             </remarks>\r
16105         </member>\r
16106         <member name="P:log4net.Layout.Pattern.PatternLayoutConverter.IgnoresException">\r
16107             <summary>\r
16108             Flag indicating if this converter handles the logging event exception\r
16109             </summary>\r
16110             <value><c>false</c> if this converter handles the logging event exception</value>\r
16111             <remarks>\r
16112             <para>\r
16113             If this converter handles the exception object contained within\r
16114             <see cref="T:log4net.Core.LoggingEvent"/>, then this property should be set to\r
16115             <c>false</c>. Otherwise, if the layout ignores the exception\r
16116             object, then the property should be set to <c>true</c>.\r
16117             </para>\r
16118             <para>\r
16119             Set this value to override a this default setting. The default\r
16120             value is <c>true</c>, this converter does not handle the exception.\r
16121             </para>\r
16122             </remarks>\r
16123         </member>\r
16124         <member name="M:log4net.Layout.Pattern.AppDomainPatternConverter.Convert(System.IO.TextWriter,log4net.Core.LoggingEvent)">\r
16125             <summary>\r
16126             Write the event appdomain name to the output\r
16127             </summary>\r
16128             <param name="writer"><see cref="T:System.IO.TextWriter"/> that will receive the formatted result.</param>\r
16129             <param name="loggingEvent">the event being logged</param>\r
16130             <remarks>\r
16131             <para>\r
16132             Writes the <see cref="P:log4net.Core.LoggingEvent.Domain"/> to the output <paramref name="writer"/>.\r
16133             </para>\r
16134             </remarks>\r
16135         </member>\r
16136         <member name="T:log4net.Layout.Pattern.DatePatternConverter">\r
16137             <summary>\r
16138             Date pattern converter, uses a <see cref="T:log4net.DateFormatter.IDateFormatter"/> to format \r
16139             the date of a <see cref="T:log4net.Core.LoggingEvent"/>.\r
16140             </summary>\r
16141             <remarks>\r
16142             <para>\r
16143             Render the <see cref="P:log4net.Core.LoggingEvent.TimeStamp"/> to the writer as a string.\r
16144             </para>\r
16145             <para>\r
16146             The value of the <see cref="P:log4net.Util.PatternConverter.Option"/> determines \r
16147             the formatting of the date. The following values are allowed:\r
16148             <list type="definition">\r
16149                 <listheader>\r
16150                         <term>Option value</term>\r
16151                         <description>Output</description>\r
16152                 </listheader>\r
16153                 <item>\r
16154                         <term>ISO8601</term>\r
16155                         <description>\r
16156                         Uses the <see cref="T:log4net.DateFormatter.Iso8601DateFormatter"/> formatter. \r
16157                         Formats using the <c>"yyyy-MM-dd HH:mm:ss,fff"</c> pattern.\r
16158                         </description>\r
16159                 </item>\r
16160                 <item>\r
16161                         <term>DATE</term>\r
16162                         <description>\r
16163                         Uses the <see cref="T:log4net.DateFormatter.DateTimeDateFormatter"/> formatter. \r
16164                         Formats using the <c>"dd MMM yyyy HH:mm:ss,fff"</c> for example, <c>"06 Nov 1994 15:49:37,459"</c>.\r
16165                         </description>\r
16166                 </item>\r
16167                 <item>\r
16168                         <term>ABSOLUTE</term>\r
16169                         <description>\r
16170                         Uses the <see cref="T:log4net.DateFormatter.AbsoluteTimeDateFormatter"/> formatter. \r
16171                         Formats using the <c>"HH:mm:ss,yyyy"</c> for example, <c>"15:49:37,459"</c>.\r
16172                         </description>\r
16173                 </item>\r
16174                 <item>\r
16175                         <term>other</term>\r
16176                         <description>\r
16177                         Any other pattern string uses the <see cref="T:log4net.DateFormatter.SimpleDateFormatter"/> formatter. \r
16178                         This formatter passes the pattern string to the <see cref="T:System.DateTime"/> \r
16179                         <see cref="M:System.DateTime.ToString(System.String)"/> method.\r
16180                         For details on valid patterns see \r
16181                         <a href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfsystemglobalizationdatetimeformatinfoclasstopic.asp">DateTimeFormatInfo Class</a>.\r
16182                         </description>\r
16183                 </item>\r
16184             </list>\r
16185             </para>\r
16186             <para>\r
16187             The <see cref="P:log4net.Core.LoggingEvent.TimeStamp"/> is in the local time zone and is rendered in that zone.\r
16188             To output the time in Universal time see <see cref="T:log4net.Layout.Pattern.UtcDatePatternConverter"/>.\r
16189             </para>\r
16190             </remarks>\r
16191             <author>Nicko Cadell</author>\r
16192         </member>\r
16193         <member name="F:log4net.Layout.Pattern.DatePatternConverter.m_dateFormatter">\r
16194             <summary>\r
16195             The <see cref="T:log4net.DateFormatter.IDateFormatter"/> used to render the date to a string\r
16196             </summary>\r
16197             <remarks>\r
16198             <para>\r
16199             The <see cref="T:log4net.DateFormatter.IDateFormatter"/> used to render the date to a string\r
16200             </para>\r
16201             </remarks>\r
16202         </member>\r
16203         <member name="M:log4net.Layout.Pattern.DatePatternConverter.ActivateOptions">\r
16204             <summary>\r
16205             Initialize the converter pattern based on the <see cref="P:log4net.Util.PatternConverter.Option"/> property.\r
16206             </summary>\r
16207             <remarks>\r
16208             <para>\r
16209             This is part of the <see cref="T:log4net.Core.IOptionHandler"/> delayed object\r
16210             activation scheme. The <see cref="M:log4net.Layout.Pattern.DatePatternConverter.ActivateOptions"/> method must \r
16211             be called on this object after the configuration properties have\r
16212             been set. Until <see cref="M:log4net.Layout.Pattern.DatePatternConverter.ActivateOptions"/> is called this\r
16213             object is in an undefined state and must not be used. \r
16214             </para>\r
16215             <para>\r
16216             If any of the configuration properties are modified then \r
16217             <see cref="M:log4net.Layout.Pattern.DatePatternConverter.ActivateOptions"/> must be called again.\r
16218             </para>\r
16219             </remarks>\r
16220         </member>\r
16221         <member name="M:log4net.Layout.Pattern.DatePatternConverter.Convert(System.IO.TextWriter,log4net.Core.LoggingEvent)">\r
16222             <summary>\r
16223             Convert the pattern into the rendered message\r
16224             </summary>\r
16225             <param name="writer"><see cref="T:System.IO.TextWriter"/> that will receive the formatted result.</param>\r
16226             <param name="loggingEvent">the event being logged</param>\r
16227             <remarks>\r
16228             <para>\r
16229             Pass the <see cref="P:log4net.Core.LoggingEvent.TimeStamp"/> to the <see cref="T:log4net.DateFormatter.IDateFormatter"/>\r
16230             for it to render it to the writer.\r
16231             </para>\r
16232             <para>\r
16233             The <see cref="P:log4net.Core.LoggingEvent.TimeStamp"/> passed is in the local time zone.\r
16234             </para>\r
16235             </remarks>\r
16236         </member>\r
16237         <member name="T:log4net.Layout.Pattern.ExceptionPatternConverter">\r
16238             <summary>\r
16239             Write the exception text to the output\r
16240             </summary>\r
16241             <remarks>\r
16242             <para>\r
16243             If an exception object is stored in the logging event\r
16244             it will be rendered into the pattern output with a\r
16245             trailing newline.\r
16246             </para>\r
16247             <para>\r
16248             If there is no exception then nothing will be output\r
16249             and no trailing newline will be appended.\r
16250             It is typical to put a newline before the exception\r
16251             and to have the exception as the last data in the pattern.\r
16252             </para>\r
16253             </remarks>\r
16254             <author>Nicko Cadell</author>\r
16255         </member>\r
16256         <member name="M:log4net.Layout.Pattern.ExceptionPatternConverter.#ctor">\r
16257             <summary>\r
16258             Default constructor\r
16259             </summary>\r
16260         </member>\r
16261         <member name="M:log4net.Layout.Pattern.ExceptionPatternConverter.Convert(System.IO.TextWriter,log4net.Core.LoggingEvent)">\r
16262             <summary>\r
16263             Write the exception text to the output\r
16264             </summary>\r
16265             <param name="writer"><see cref="T:System.IO.TextWriter"/> that will receive the formatted result.</param>\r
16266             <param name="loggingEvent">the event being logged</param>\r
16267             <remarks>\r
16268             <para>\r
16269             If an exception object is stored in the logging event\r
16270             it will be rendered into the pattern output with a\r
16271             trailing newline.\r
16272             </para>\r
16273             <para>\r
16274             If there is no exception then nothing will be output\r
16275             and no trailing newline will be appended.\r
16276             It is typical to put a newline before the exception\r
16277             and to have the exception as the last data in the pattern.\r
16278             </para>\r
16279             </remarks>\r
16280         </member>\r
16281         <member name="T:log4net.Layout.Pattern.FileLocationPatternConverter">\r
16282             <summary>\r
16283             Writes the caller location file name to the output\r
16284             </summary>\r
16285             <remarks>\r
16286             <para>\r
16287             Writes the value of the <see cref="P:log4net.Core.LocationInfo.FileName"/> for\r
16288             the event to the output writer.\r
16289             </para>\r
16290             </remarks>\r
16291             <author>Nicko Cadell</author>\r
16292         </member>\r
16293         <member name="M:log4net.Layout.Pattern.FileLocationPatternConverter.Convert(System.IO.TextWriter,log4net.Core.LoggingEvent)">\r
16294             <summary>\r
16295             Write the caller location file name to the output\r
16296             </summary>\r
16297             <param name="writer"><see cref="T:System.IO.TextWriter"/> that will receive the formatted result.</param>\r
16298             <param name="loggingEvent">the event being logged</param>\r
16299             <remarks>\r
16300             <para>\r
16301             Writes the value of the <see cref="P:log4net.Core.LocationInfo.FileName"/> for\r
16302             the <paramref name="loggingEvent"/> to the output <paramref name="writer"/>.\r
16303             </para>\r
16304             </remarks>\r
16305         </member>\r
16306         <member name="T:log4net.Layout.Pattern.FullLocationPatternConverter">\r
16307             <summary>\r
16308             Write the caller location info to the output\r
16309             </summary>\r
16310             <remarks>\r
16311             <para>\r
16312             Writes the <see cref="P:log4net.Core.LocationInfo.FullInfo"/> to the output writer.\r
16313             </para>\r
16314             </remarks>\r
16315             <author>Nicko Cadell</author>\r
16316         </member>\r
16317         <member name="M:log4net.Layout.Pattern.FullLocationPatternConverter.Convert(System.IO.TextWriter,log4net.Core.LoggingEvent)">\r
16318             <summary>\r
16319             Write the caller location info to the output\r
16320             </summary>\r
16321             <param name="writer"><see cref="T:System.IO.TextWriter"/> that will receive the formatted result.</param>\r
16322             <param name="loggingEvent">the event being logged</param>\r
16323             <remarks>\r
16324             <para>\r
16325             Writes the <see cref="P:log4net.Core.LocationInfo.FullInfo"/> to the output writer.\r
16326             </para>\r
16327             </remarks>\r
16328         </member>\r
16329         <member name="T:log4net.Layout.Pattern.IdentityPatternConverter">\r
16330             <summary>\r
16331             Writes the event identity to the output\r
16332             </summary>\r
16333             <remarks>\r
16334             <para>\r
16335             Writes the value of the <see cref="P:log4net.Core.LoggingEvent.Identity"/> to\r
16336             the output writer.\r
16337             </para>\r
16338             </remarks>\r
16339             <author>Daniel Cazzulino</author>\r
16340             <author>Nicko Cadell</author>\r
16341         </member>\r
16342         <member name="M:log4net.Layout.Pattern.IdentityPatternConverter.Convert(System.IO.TextWriter,log4net.Core.LoggingEvent)">\r
16343             <summary>\r
16344             Writes the event identity to the output\r
16345             </summary>\r
16346             <param name="writer"><see cref="T:System.IO.TextWriter"/> that will receive the formatted result.</param>\r
16347             <param name="loggingEvent">the event being logged</param>\r
16348             <remarks>\r
16349             <para>\r
16350             Writes the value of the <paramref name="loggingEvent"/> \r
16351             <see cref="P:log4net.Core.LoggingEvent.Identity"/> to\r
16352             the output <paramref name="writer"/>.\r
16353             </para>\r
16354             </remarks>\r
16355         </member>\r
16356         <member name="T:log4net.Layout.Pattern.LevelPatternConverter">\r
16357             <summary>\r
16358             Write the event level to the output\r
16359             </summary>\r
16360             <remarks>\r
16361             <para>\r
16362             Writes the display name of the event <see cref="P:log4net.Core.LoggingEvent.Level"/>\r
16363             to the writer.\r
16364             </para>\r
16365             </remarks>\r
16366             <author>Nicko Cadell</author>\r
16367         </member>\r
16368         <member name="M:log4net.Layout.Pattern.LevelPatternConverter.Convert(System.IO.TextWriter,log4net.Core.LoggingEvent)">\r
16369             <summary>\r
16370             Write the event level to the output\r
16371             </summary>\r
16372             <param name="writer"><see cref="T:System.IO.TextWriter"/> that will receive the formatted result.</param>\r
16373             <param name="loggingEvent">the event being logged</param>\r
16374             <remarks>\r
16375             <para>\r
16376             Writes the <see cref="P:log4net.Core.Level.DisplayName"/> of the <paramref name="loggingEvent"/> <see cref="P:log4net.Core.LoggingEvent.Level"/>\r
16377             to the <paramref name="writer"/>.\r
16378             </para>\r
16379             </remarks>\r
16380         </member>\r
16381         <member name="T:log4net.Layout.Pattern.LineLocationPatternConverter">\r
16382             <summary>\r
16383             Write the caller location line number to the output\r
16384             </summary>\r
16385             <remarks>\r
16386             <para>\r
16387             Writes the value of the <see cref="P:log4net.Core.LocationInfo.LineNumber"/> for\r
16388             the event to the output writer.\r
16389             </para>\r
16390             </remarks>\r
16391             <author>Nicko Cadell</author>\r
16392         </member>\r
16393         <member name="M:log4net.Layout.Pattern.LineLocationPatternConverter.Convert(System.IO.TextWriter,log4net.Core.LoggingEvent)">\r
16394             <summary>\r
16395             Write the caller location line number to the output\r
16396             </summary>\r
16397             <param name="writer"><see cref="T:System.IO.TextWriter"/> that will receive the formatted result.</param>\r
16398             <param name="loggingEvent">the event being logged</param>\r
16399             <remarks>\r
16400             <para>\r
16401             Writes the value of the <see cref="P:log4net.Core.LocationInfo.LineNumber"/> for\r
16402             the <paramref name="loggingEvent"/> to the output <paramref name="writer"/>.\r
16403             </para>\r
16404             </remarks>\r
16405         </member>\r
16406         <member name="T:log4net.Layout.Pattern.LoggerPatternConverter">\r
16407             <summary>\r
16408             Converter for logger name\r
16409             </summary>\r
16410             <remarks>\r
16411             <para>\r
16412             Outputs the <see cref="P:log4net.Core.LoggingEvent.LoggerName"/> of the event.\r
16413             </para>\r
16414             </remarks>\r
16415             <author>Nicko Cadell</author>\r
16416         </member>\r
16417         <member name="T:log4net.Layout.Pattern.NamedPatternConverter">\r
16418             <summary>\r
16419             Converter to output and truncate <c>'.'</c> separated strings\r
16420             </summary>\r
16421             <remarks>\r
16422             <para>\r
16423             This abstract class supports truncating a <c>'.'</c> separated string\r
16424             to show a specified number of elements from the right hand side.\r
16425             This is used to truncate class names that are fully qualified.\r
16426             </para>\r
16427             <para>\r
16428             Subclasses should override the <see cref="M:log4net.Layout.Pattern.NamedPatternConverter.GetFullyQualifiedName(log4net.Core.LoggingEvent)"/> method to\r
16429             return the fully qualified string.\r
16430             </para>\r
16431             </remarks>\r
16432             <author>Nicko Cadell</author>\r
16433         </member>\r
16434         <member name="M:log4net.Layout.Pattern.NamedPatternConverter.ActivateOptions">\r
16435             <summary>\r
16436             Initialize the converter \r
16437             </summary>\r
16438             <remarks>\r
16439             <para>\r
16440             This is part of the <see cref="T:log4net.Core.IOptionHandler"/> delayed object\r
16441             activation scheme. The <see cref="M:log4net.Layout.Pattern.NamedPatternConverter.ActivateOptions"/> method must \r
16442             be called on this object after the configuration properties have\r
16443             been set. Until <see cref="M:log4net.Layout.Pattern.NamedPatternConverter.ActivateOptions"/> is called this\r
16444             object is in an undefined state and must not be used. \r
16445             </para>\r
16446             <para>\r
16447             If any of the configuration properties are modified then \r
16448             <see cref="M:log4net.Layout.Pattern.NamedPatternConverter.ActivateOptions"/> must be called again.\r
16449             </para>\r
16450             </remarks>\r
16451         </member>\r
16452         <member name="M:log4net.Layout.Pattern.NamedPatternConverter.GetFullyQualifiedName(log4net.Core.LoggingEvent)">\r
16453             <summary>\r
16454             Get the fully qualified string data\r
16455             </summary>\r
16456             <param name="loggingEvent">the event being logged</param>\r
16457             <returns>the fully qualified name</returns>\r
16458             <remarks>\r
16459             <para>\r
16460             Overridden by subclasses to get the fully qualified name before the\r
16461             precision is applied to it.\r
16462             </para>\r
16463             <para>\r
16464             Return the fully qualified <c>'.'</c> (dot/period) separated string.\r
16465             </para>\r
16466             </remarks>\r
16467         </member>\r
16468         <member name="M:log4net.Layout.Pattern.NamedPatternConverter.Convert(System.IO.TextWriter,log4net.Core.LoggingEvent)">\r
16469             <summary>\r
16470             Convert the pattern to the rendered message\r
16471             </summary>\r
16472             <param name="writer"><see cref="T:System.IO.TextWriter"/> that will receive the formatted result.</param>\r
16473             <param name="loggingEvent">the event being logged</param>\r
16474             <remarks>\r
16475             Render the <see cref="M:log4net.Layout.Pattern.NamedPatternConverter.GetFullyQualifiedName(log4net.Core.LoggingEvent)"/> to the precision\r
16476             specified by the <see cref="P:log4net.Util.PatternConverter.Option"/> property.\r
16477             </remarks>\r
16478         </member>\r
16479         <member name="M:log4net.Layout.Pattern.LoggerPatternConverter.GetFullyQualifiedName(log4net.Core.LoggingEvent)">\r
16480             <summary>\r
16481             Gets the fully qualified name of the logger\r
16482             </summary>\r
16483             <param name="loggingEvent">the event being logged</param>\r
16484             <returns>The fully qualified logger name</returns>\r
16485             <remarks>\r
16486             <para>\r
16487             Returns the <see cref="P:log4net.Core.LoggingEvent.LoggerName"/> of the <paramref name="loggingEvent"/>.\r
16488             </para>\r
16489             </remarks>\r
16490         </member>\r
16491         <member name="T:log4net.Layout.Pattern.MessagePatternConverter">\r
16492             <summary>\r
16493             Writes the event message to the output\r
16494             </summary>\r
16495             <remarks>\r
16496             <para>\r
16497             Uses the <see cref="M:log4net.Core.LoggingEvent.WriteRenderedMessage(System.IO.TextWriter)"/> method\r
16498             to write out the event message.\r
16499             </para>\r
16500             </remarks>\r
16501             <author>Nicko Cadell</author>\r
16502         </member>\r
16503         <member name="M:log4net.Layout.Pattern.MessagePatternConverter.Convert(System.IO.TextWriter,log4net.Core.LoggingEvent)">\r
16504             <summary>\r
16505             Writes the event message to the output\r
16506             </summary>\r
16507             <param name="writer"><see cref="T:System.IO.TextWriter"/> that will receive the formatted result.</param>\r
16508             <param name="loggingEvent">the event being logged</param>\r
16509             <remarks>\r
16510             <para>\r
16511             Uses the <see cref="M:log4net.Core.LoggingEvent.WriteRenderedMessage(System.IO.TextWriter)"/> method\r
16512             to write out the event message.\r
16513             </para>\r
16514             </remarks>\r
16515         </member>\r
16516         <member name="T:log4net.Layout.Pattern.MethodLocationPatternConverter">\r
16517             <summary>\r
16518             Write the method name to the output\r
16519             </summary>\r
16520             <remarks>\r
16521             <para>\r
16522             Writes the caller location <see cref="P:log4net.Core.LocationInfo.MethodName"/> to\r
16523             the output.\r
16524             </para>\r
16525             </remarks>\r
16526             <author>Nicko Cadell</author>\r
16527         </member>\r
16528         <member name="M:log4net.Layout.Pattern.MethodLocationPatternConverter.Convert(System.IO.TextWriter,log4net.Core.LoggingEvent)">\r
16529             <summary>\r
16530             Write the method name to the output\r
16531             </summary>\r
16532             <param name="writer"><see cref="T:System.IO.TextWriter"/> that will receive the formatted result.</param>\r
16533             <param name="loggingEvent">the event being logged</param>\r
16534             <remarks>\r
16535             <para>\r
16536             Writes the caller location <see cref="P:log4net.Core.LocationInfo.MethodName"/> to\r
16537             the output.\r
16538             </para>\r
16539             </remarks>\r
16540         </member>\r
16541         <member name="T:log4net.Layout.Pattern.NdcPatternConverter">\r
16542             <summary>\r
16543             Converter to include event NDC\r
16544             </summary>\r
16545             <remarks>\r
16546             <para>\r
16547             Outputs the value of the event property named <c>NDC</c>.\r
16548             </para>\r
16549             <para>\r
16550             The <see cref="T:log4net.Layout.Pattern.PropertyPatternConverter"/> should be used instead.\r
16551             </para>\r
16552             </remarks>\r
16553             <author>Nicko Cadell</author>\r
16554         </member>\r
16555         <member name="M:log4net.Layout.Pattern.NdcPatternConverter.Convert(System.IO.TextWriter,log4net.Core.LoggingEvent)">\r
16556             <summary>\r
16557             Write the event NDC to the output\r
16558             </summary>\r
16559             <param name="writer"><see cref="T:System.IO.TextWriter"/> that will receive the formatted result.</param>\r
16560             <param name="loggingEvent">the event being logged</param>\r
16561             <remarks>\r
16562             <para>\r
16563             As the thread context stacks are now stored in named event properties\r
16564             this converter simply looks up the value of the <c>NDC</c> property.\r
16565             </para>\r
16566             <para>\r
16567             The <see cref="T:log4net.Layout.Pattern.PropertyPatternConverter"/> should be used instead.\r
16568             </para>\r
16569             </remarks>\r
16570         </member>\r
16571         <member name="T:log4net.Layout.Pattern.PropertyPatternConverter">\r
16572             <summary>\r
16573             Property pattern converter\r
16574             </summary>\r
16575             <remarks>\r
16576             <para>\r
16577             Writes out the value of a named property. The property name\r
16578             should be set in the <see cref="P:log4net.Util.PatternConverter.Option"/>\r
16579             property.\r
16580             </para>\r
16581             <para>\r
16582             If the <see cref="P:log4net.Util.PatternConverter.Option"/> is set to <c>null</c>\r
16583             then all the properties are written as key value pairs.\r
16584             </para>\r
16585             </remarks>\r
16586             <author>Nicko Cadell</author>\r
16587         </member>\r
16588         <member name="M:log4net.Layout.Pattern.PropertyPatternConverter.Convert(System.IO.TextWriter,log4net.Core.LoggingEvent)">\r
16589             <summary>\r
16590             Write the property value to the output\r
16591             </summary>\r
16592             <param name="writer"><see cref="T:System.IO.TextWriter"/> that will receive the formatted result.</param>\r
16593             <param name="loggingEvent">the event being logged</param>\r
16594             <remarks>\r
16595             <para>\r
16596             Writes out the value of a named property. The property name\r
16597             should be set in the <see cref="P:log4net.Util.PatternConverter.Option"/>\r
16598             property.\r
16599             </para>\r
16600             <para>\r
16601             If the <see cref="P:log4net.Util.PatternConverter.Option"/> is set to <c>null</c>\r
16602             then all the properties are written as key value pairs.\r
16603             </para>\r
16604             </remarks>\r
16605         </member>\r
16606         <member name="T:log4net.Layout.Pattern.RelativeTimePatternConverter">\r
16607             <summary>\r
16608             Converter to output the relative time of the event\r
16609             </summary>\r
16610             <remarks>\r
16611             <para>\r
16612             Converter to output the time of the event relative to the start of the program.\r
16613             </para>\r
16614             </remarks>\r
16615             <author>Nicko Cadell</author>\r
16616         </member>\r
16617         <member name="M:log4net.Layout.Pattern.RelativeTimePatternConverter.Convert(System.IO.TextWriter,log4net.Core.LoggingEvent)">\r
16618             <summary>\r
16619             Write the relative time to the output\r
16620             </summary>\r
16621             <param name="writer"><see cref="T:System.IO.TextWriter"/> that will receive the formatted result.</param>\r
16622             <param name="loggingEvent">the event being logged</param>\r
16623             <remarks>\r
16624             <para>\r
16625             Writes out the relative time of the event in milliseconds.\r
16626             That is the number of milliseconds between the event <see cref="P:log4net.Core.LoggingEvent.TimeStamp"/>\r
16627             and the <see cref="P:log4net.Core.LoggingEvent.StartTime"/>.\r
16628             </para>\r
16629             </remarks>\r
16630         </member>\r
16631         <member name="M:log4net.Layout.Pattern.RelativeTimePatternConverter.TimeDifferenceInMillis(System.DateTime,System.DateTime)">\r
16632             <summary>\r
16633             Helper method to get the time difference between two DateTime objects\r
16634             </summary>\r
16635             <param name="start">start time (in the current local time zone)</param>\r
16636             <param name="end">end time (in the current local time zone)</param>\r
16637             <returns>the time difference in milliseconds</returns>\r
16638         </member>\r
16639         <member name="T:log4net.Layout.Pattern.ThreadPatternConverter">\r
16640             <summary>\r
16641             Converter to include event thread name\r
16642             </summary>\r
16643             <remarks>\r
16644             <para>\r
16645             Writes the <see cref="P:log4net.Core.LoggingEvent.ThreadName"/> to the output.\r
16646             </para>\r
16647             </remarks>\r
16648             <author>Nicko Cadell</author>\r
16649         </member>\r
16650         <member name="M:log4net.Layout.Pattern.ThreadPatternConverter.Convert(System.IO.TextWriter,log4net.Core.LoggingEvent)">\r
16651             <summary>\r
16652             Write the ThreadName to the output\r
16653             </summary>\r
16654             <param name="writer"><see cref="T:System.IO.TextWriter"/> that will receive the formatted result.</param>\r
16655             <param name="loggingEvent">the event being logged</param>\r
16656             <remarks>\r
16657             <para>\r
16658             Writes the <see cref="P:log4net.Core.LoggingEvent.ThreadName"/> to the <paramref name="writer"/>.\r
16659             </para>\r
16660             </remarks>\r
16661         </member>\r
16662         <member name="T:log4net.Layout.Pattern.TypeNamePatternConverter">\r
16663             <summary>\r
16664             Pattern converter for the class name\r
16665             </summary>\r
16666             <remarks>\r
16667             <para>\r
16668             Outputs the <see cref="P:log4net.Core.LocationInfo.ClassName"/> of the event.\r
16669             </para>\r
16670             </remarks>\r
16671             <author>Nicko Cadell</author>\r
16672         </member>\r
16673         <member name="M:log4net.Layout.Pattern.TypeNamePatternConverter.GetFullyQualifiedName(log4net.Core.LoggingEvent)">\r
16674             <summary>\r
16675             Gets the fully qualified name of the class\r
16676             </summary>\r
16677             <param name="loggingEvent">the event being logged</param>\r
16678             <returns>The fully qualified type name for the caller location</returns>\r
16679             <remarks>\r
16680             <para>\r
16681             Returns the <see cref="P:log4net.Core.LocationInfo.ClassName"/> of the <paramref name="loggingEvent"/>.\r
16682             </para>\r
16683             </remarks>\r
16684         </member>\r
16685         <member name="T:log4net.Layout.Pattern.UserNamePatternConverter">\r
16686             <summary>\r
16687             Converter to include event user name\r
16688             </summary>\r
16689             <author>Douglas de la Torre</author>\r
16690             <author>Nicko Cadell</author>\r
16691         </member>\r
16692         <member name="M:log4net.Layout.Pattern.UserNamePatternConverter.Convert(System.IO.TextWriter,log4net.Core.LoggingEvent)">\r
16693             <summary>\r
16694             Convert the pattern to the rendered message\r
16695             </summary>\r
16696             <param name="writer"><see cref="T:System.IO.TextWriter"/> that will receive the formatted result.</param>\r
16697             <param name="loggingEvent">the event being logged</param>\r
16698         </member>\r
16699         <member name="T:log4net.Layout.Pattern.UtcDatePatternConverter">\r
16700             <summary>\r
16701             Write the TimeStamp to the output\r
16702             </summary>\r
16703             <remarks>\r
16704             <para>\r
16705             Date pattern converter, uses a <see cref="T:log4net.DateFormatter.IDateFormatter"/> to format \r
16706             the date of a <see cref="T:log4net.Core.LoggingEvent"/>.\r
16707             </para>\r
16708             <para>\r
16709             Uses a <see cref="T:log4net.DateFormatter.IDateFormatter"/> to format the <see cref="P:log4net.Core.LoggingEvent.TimeStamp"/> \r
16710             in Universal time.\r
16711             </para>\r
16712             <para>\r
16713             See the <see cref="T:log4net.Layout.Pattern.DatePatternConverter"/> for details on the date pattern syntax.\r
16714             </para>\r
16715             </remarks>\r
16716             <seealso cref="T:log4net.Layout.Pattern.DatePatternConverter"/>\r
16717             <author>Nicko Cadell</author>\r
16718         </member>\r
16719         <member name="M:log4net.Layout.Pattern.UtcDatePatternConverter.Convert(System.IO.TextWriter,log4net.Core.LoggingEvent)">\r
16720             <summary>\r
16721             Write the TimeStamp to the output\r
16722             </summary>\r
16723             <param name="writer"><see cref="T:System.IO.TextWriter"/> that will receive the formatted result.</param>\r
16724             <param name="loggingEvent">the event being logged</param>\r
16725             <remarks>\r
16726             <para>\r
16727             Pass the <see cref="P:log4net.Core.LoggingEvent.TimeStamp"/> to the <see cref="T:log4net.DateFormatter.IDateFormatter"/>\r
16728             for it to render it to the writer.\r
16729             </para>\r
16730             <para>\r
16731             The <see cref="P:log4net.Core.LoggingEvent.TimeStamp"/> passed is in the local time zone, this is converted\r
16732             to Universal time before it is rendered.\r
16733             </para>\r
16734             </remarks>\r
16735             <seealso cref="T:log4net.Layout.Pattern.DatePatternConverter"/>\r
16736         </member>\r
16737         <member name="T:log4net.Layout.ExceptionLayout">\r
16738             <summary>\r
16739             A Layout that renders only the Exception text from the logging event\r
16740             </summary>\r
16741             <remarks>\r
16742             <para>\r
16743             A Layout that renders only the Exception text from the logging event.\r
16744             </para>\r
16745             <para>\r
16746             This Layout should only be used with appenders that utilize multiple\r
16747             layouts (e.g. <see cref="T:log4net.Appender.AdoNetAppender"/>).\r
16748             </para>\r
16749             </remarks>\r
16750             <author>Nicko Cadell</author>\r
16751             <author>Gert Driesen</author>\r
16752         </member>\r
16753         <member name="T:log4net.Layout.LayoutSkeleton">\r
16754             <summary>\r
16755             Extend this abstract class to create your own log layout format.\r
16756             </summary>\r
16757             <remarks>\r
16758             <para>\r
16759             This is the base implementation of the <see cref="T:log4net.Layout.ILayout"/>\r
16760             interface. Most layout objects should extend this class.\r
16761             </para>\r
16762             </remarks>\r
16763             <remarks>\r
16764             <note type="inheritinfo">\r
16765             <para>\r
16766             Subclasses must implement the <see cref="M:log4net.Layout.LayoutSkeleton.Format(System.IO.TextWriter,log4net.Core.LoggingEvent)"/>\r
16767             method.\r
16768             </para>\r
16769             <para>\r
16770             Subclasses should set the <see cref="P:log4net.Layout.LayoutSkeleton.IgnoresException"/> in their default\r
16771             constructor.\r
16772             </para>\r
16773             </note>\r
16774             </remarks>\r
16775             <author>Nicko Cadell</author>\r
16776             <author>Gert Driesen</author>\r
16777         </member>\r
16778         <member name="T:log4net.Layout.ILayout">\r
16779             <summary>\r
16780             Interface implemented by layout objects\r
16781             </summary>\r
16782             <remarks>\r
16783             <para>\r
16784             An <see cref="T:log4net.Layout.ILayout"/> object is used to format a <see cref="T:log4net.Core.LoggingEvent"/>\r
16785             as text. The <see cref="M:log4net.Layout.ILayout.Format(System.IO.TextWriter,log4net.Core.LoggingEvent)"/> method is called by an\r
16786             appender to transform the <see cref="T:log4net.Core.LoggingEvent"/> into a string.\r
16787             </para>\r
16788             <para>\r
16789             The layout can also supply <see cref="P:log4net.Layout.ILayout.Header"/> and <see cref="P:log4net.Layout.ILayout.Footer"/>\r
16790             text that is appender before any events and after all the events respectively.\r
16791             </para>\r
16792             </remarks>\r
16793             <author>Nicko Cadell</author>\r
16794             <author>Gert Driesen</author>\r
16795         </member>\r
16796         <member name="M:log4net.Layout.ILayout.Format(System.IO.TextWriter,log4net.Core.LoggingEvent)">\r
16797             <summary>\r
16798             Implement this method to create your own layout format.\r
16799             </summary>\r
16800             <param name="writer">The TextWriter to write the formatted event to</param>\r
16801             <param name="loggingEvent">The event to format</param>\r
16802             <remarks>\r
16803             <para>\r
16804             This method is called by an appender to format\r
16805             the <paramref name="loggingEvent"/> as text and output to a writer.\r
16806             </para>\r
16807             <para>\r
16808             If the caller does not have a <see cref="T:System.IO.TextWriter"/> and prefers the\r
16809             event to be formatted as a <see cref="T:System.String"/> then the following\r
16810             code can be used to format the event into a <see cref="T:System.IO.StringWriter"/>.\r
16811             </para>\r
16812             <code lang="C#">\r
16813             StringWriter writer = new StringWriter();\r
16814             Layout.Format(writer, loggingEvent);\r
16815             string formattedEvent = writer.ToString();\r
16816             </code>\r
16817             </remarks>\r
16818         </member>\r
16819         <member name="P:log4net.Layout.ILayout.ContentType">\r
16820             <summary>\r
16821             The content type output by this layout. \r
16822             </summary>\r
16823             <value>The content type</value>\r
16824             <remarks>\r
16825             <para>\r
16826             The content type output by this layout.\r
16827             </para>\r
16828             <para>\r
16829             This is a MIME type e.g. <c>"text/plain"</c>.\r
16830             </para>\r
16831             </remarks>\r
16832         </member>\r
16833         <member name="P:log4net.Layout.ILayout.Header">\r
16834             <summary>\r
16835             The header for the layout format.\r
16836             </summary>\r
16837             <value>the layout header</value>\r
16838             <remarks>\r
16839             <para>\r
16840             The Header text will be appended before any logging events\r
16841             are formatted and appended.\r
16842             </para>\r
16843             </remarks>\r
16844         </member>\r
16845         <member name="P:log4net.Layout.ILayout.Footer">\r
16846             <summary>\r
16847             The footer for the layout format.\r
16848             </summary>\r
16849             <value>the layout footer</value>\r
16850             <remarks>\r
16851             <para>\r
16852             The Footer text will be appended after all the logging events\r
16853             have been formatted and appended.\r
16854             </para>\r
16855             </remarks>\r
16856         </member>\r
16857         <member name="P:log4net.Layout.ILayout.IgnoresException">\r
16858             <summary>\r
16859             Flag indicating if this layout handle exceptions\r
16860             </summary>\r
16861             <value><c>false</c> if this layout handles exceptions</value>\r
16862             <remarks>\r
16863             <para>\r
16864             If this layout handles the exception object contained within\r
16865             <see cref="T:log4net.Core.LoggingEvent"/>, then the layout should return\r
16866             <c>false</c>. Otherwise, if the layout ignores the exception\r
16867             object, then the layout should return <c>true</c>.\r
16868             </para>\r
16869             </remarks>\r
16870         </member>\r
16871         <member name="F:log4net.Layout.LayoutSkeleton.m_header">\r
16872             <summary>\r
16873             The header text\r
16874             </summary>\r
16875             <remarks>\r
16876             <para>\r
16877             See <see cref="P:log4net.Layout.LayoutSkeleton.Header"/> for more information.\r
16878             </para>\r
16879             </remarks>\r
16880         </member>\r
16881         <member name="F:log4net.Layout.LayoutSkeleton.m_footer">\r
16882             <summary>\r
16883             The footer text\r
16884             </summary>\r
16885             <remarks>\r
16886             <para>\r
16887             See <see cref="P:log4net.Layout.LayoutSkeleton.Footer"/> for more information.\r
16888             </para>\r
16889             </remarks>\r
16890         </member>\r
16891         <member name="F:log4net.Layout.LayoutSkeleton.m_ignoresException">\r
16892             <summary>\r
16893             Flag indicating if this layout handles exceptions\r
16894             </summary>\r
16895             <remarks>\r
16896             <para>\r
16897             <c>false</c> if this layout handles exceptions\r
16898             </para>\r
16899             </remarks>\r
16900         </member>\r
16901         <member name="M:log4net.Layout.LayoutSkeleton.#ctor">\r
16902             <summary>\r
16903             Empty default constructor\r
16904             </summary>\r
16905             <remarks>\r
16906             <para>\r
16907             Empty default constructor\r
16908             </para>\r
16909             </remarks>\r
16910         </member>\r
16911         <member name="M:log4net.Layout.LayoutSkeleton.ActivateOptions">\r
16912             <summary>\r
16913             Activate component options\r
16914             </summary>\r
16915             <remarks>\r
16916             <para>\r
16917             This is part of the <see cref="T:log4net.Core.IOptionHandler"/> delayed object\r
16918             activation scheme. The <see cref="M:log4net.Layout.LayoutSkeleton.ActivateOptions"/> method must \r
16919             be called on this object after the configuration properties have\r
16920             been set. Until <see cref="M:log4net.Layout.LayoutSkeleton.ActivateOptions"/> is called this\r
16921             object is in an undefined state and must not be used. \r
16922             </para>\r
16923             <para>\r
16924             If any of the configuration properties are modified then \r
16925             <see cref="M:log4net.Layout.LayoutSkeleton.ActivateOptions"/> must be called again.\r
16926             </para>\r
16927             <para>\r
16928             This method must be implemented by the subclass.\r
16929             </para>\r
16930             </remarks>\r
16931         </member>\r
16932         <member name="M:log4net.Layout.LayoutSkeleton.Format(System.IO.TextWriter,log4net.Core.LoggingEvent)">\r
16933             <summary>\r
16934             Implement this method to create your own layout format.\r
16935             </summary>\r
16936             <param name="writer">The TextWriter to write the formatted event to</param>\r
16937             <param name="loggingEvent">The event to format</param>\r
16938             <remarks>\r
16939             <para>\r
16940             This method is called by an appender to format\r
16941             the <paramref name="loggingEvent"/> as text.\r
16942             </para>\r
16943             </remarks>\r
16944         </member>\r
16945         <member name="P:log4net.Layout.LayoutSkeleton.ContentType">\r
16946             <summary>\r
16947             The content type output by this layout. \r
16948             </summary>\r
16949             <value>The content type is <c>"text/plain"</c></value>\r
16950             <remarks>\r
16951             <para>\r
16952             The content type output by this layout.\r
16953             </para>\r
16954             <para>\r
16955             This base class uses the value <c>"text/plain"</c>.\r
16956             To change this value a subclass must override this\r
16957             property.\r
16958             </para>\r
16959             </remarks>\r
16960         </member>\r
16961         <member name="P:log4net.Layout.LayoutSkeleton.Header">\r
16962             <summary>\r
16963             The header for the layout format.\r
16964             </summary>\r
16965             <value>the layout header</value>\r
16966             <remarks>\r
16967             <para>\r
16968             The Header text will be appended before any logging events\r
16969             are formatted and appended.\r
16970             </para>\r
16971             </remarks>\r
16972         </member>\r
16973         <member name="P:log4net.Layout.LayoutSkeleton.Footer">\r
16974             <summary>\r
16975             The footer for the layout format.\r
16976             </summary>\r
16977             <value>the layout footer</value>\r
16978             <remarks>\r
16979             <para>\r
16980             The Footer text will be appended after all the logging events\r
16981             have been formatted and appended.\r
16982             </para>\r
16983             </remarks>\r
16984         </member>\r
16985         <member name="P:log4net.Layout.LayoutSkeleton.IgnoresException">\r
16986             <summary>\r
16987             Flag indicating if this layout handles exceptions\r
16988             </summary>\r
16989             <value><c>false</c> if this layout handles exceptions</value>\r
16990             <remarks>\r
16991             <para>\r
16992             If this layout handles the exception object contained within\r
16993             <see cref="T:log4net.Core.LoggingEvent"/>, then the layout should return\r
16994             <c>false</c>. Otherwise, if the layout ignores the exception\r
16995             object, then the layout should return <c>true</c>.\r
16996             </para>\r
16997             <para>\r
16998             Set this value to override a this default setting. The default\r
16999             value is <c>true</c>, this layout does not handle the exception.\r
17000             </para>\r
17001             </remarks>\r
17002         </member>\r
17003         <member name="M:log4net.Layout.ExceptionLayout.#ctor">\r
17004             <summary>\r
17005             Default constructor\r
17006             </summary>\r
17007             <remarks>\r
17008             <para>\r
17009             Constructs a ExceptionLayout\r
17010             </para>\r
17011             </remarks>\r
17012         </member>\r
17013         <member name="M:log4net.Layout.ExceptionLayout.ActivateOptions">\r
17014             <summary>\r
17015             Activate component options\r
17016             </summary>\r
17017             <remarks>\r
17018             <para>\r
17019             Part of the <see cref="T:log4net.Core.IOptionHandler"/> component activation\r
17020             framework.\r
17021             </para>\r
17022             <para>\r
17023             This method does nothing as options become effective immediately.\r
17024             </para>\r
17025             </remarks>\r
17026         </member>\r
17027         <member name="M:log4net.Layout.ExceptionLayout.Format(System.IO.TextWriter,log4net.Core.LoggingEvent)">\r
17028             <summary>\r
17029             Gets the exception text from the logging event\r
17030             </summary>\r
17031             <param name="writer">The TextWriter to write the formatted event to</param>\r
17032             <param name="loggingEvent">the event being logged</param>\r
17033             <remarks>\r
17034             <para>\r
17035             Write the exception string to the <see cref="T:System.IO.TextWriter"/>.\r
17036             The exception string is retrieved from <see cref="M:log4net.Core.LoggingEvent.GetExceptionString"/>.\r
17037             </para>\r
17038             </remarks>\r
17039         </member>\r
17040         <member name="T:log4net.Layout.IRawLayout">\r
17041             <summary>\r
17042             Interface for raw layout objects\r
17043             </summary>\r
17044             <remarks>\r
17045             <para>\r
17046             Interface used to format a <see cref="T:log4net.Core.LoggingEvent"/>\r
17047             to an object.\r
17048             </para>\r
17049             <para>\r
17050             This interface should not be confused with the\r
17051             <see cref="T:log4net.Layout.ILayout"/> interface. This interface is used in\r
17052             only certain specialized situations where a raw object is\r
17053             required rather than a formatted string. The <see cref="T:log4net.Layout.ILayout"/>\r
17054             is not generally useful than this interface.\r
17055             </para>\r
17056             </remarks>\r
17057             <author>Nicko Cadell</author>\r
17058             <author>Gert Driesen</author>\r
17059         </member>\r
17060         <member name="M:log4net.Layout.IRawLayout.Format(log4net.Core.LoggingEvent)">\r
17061             <summary>\r
17062             Implement this method to create your own layout format.\r
17063             </summary>\r
17064             <param name="loggingEvent">The event to format</param>\r
17065             <returns>returns the formatted event</returns>\r
17066             <remarks>\r
17067             <para>\r
17068             Implement this method to create your own layout format.\r
17069             </para>\r
17070             </remarks>\r
17071         </member>\r
17072         <member name="T:log4net.Layout.Layout2RawLayoutAdapter">\r
17073             <summary>\r
17074             Adapts any <see cref="T:log4net.Layout.ILayout"/> to a <see cref="T:log4net.Layout.IRawLayout"/>\r
17075             </summary>\r
17076             <remarks>\r
17077             <para>\r
17078             Where an <see cref="T:log4net.Layout.IRawLayout"/> is required this adapter\r
17079             allows a <see cref="T:log4net.Layout.ILayout"/> to be specified.\r
17080             </para>\r
17081             </remarks>\r
17082             <author>Nicko Cadell</author>\r
17083             <author>Gert Driesen</author>\r
17084         </member>\r
17085         <member name="F:log4net.Layout.Layout2RawLayoutAdapter.m_layout">\r
17086             <summary>\r
17087             The layout to adapt\r
17088             </summary>\r
17089         </member>\r
17090         <member name="M:log4net.Layout.Layout2RawLayoutAdapter.#ctor(log4net.Layout.ILayout)">\r
17091             <summary>\r
17092             Construct a new adapter\r
17093             </summary>\r
17094             <param name="layout">the layout to adapt</param>\r
17095             <remarks>\r
17096             <para>\r
17097             Create the adapter for the specified <paramref name="layout"/>.\r
17098             </para>\r
17099             </remarks>\r
17100         </member>\r
17101         <member name="M:log4net.Layout.Layout2RawLayoutAdapter.Format(log4net.Core.LoggingEvent)">\r
17102             <summary>\r
17103             Format the logging event as an object.\r
17104             </summary>\r
17105             <param name="loggingEvent">The event to format</param>\r
17106             <returns>returns the formatted event</returns>\r
17107             <remarks>\r
17108             <para>\r
17109             Format the logging event as an object.\r
17110             </para>\r
17111             <para>\r
17112             Uses the <see cref="T:log4net.Layout.ILayout"/> object supplied to \r
17113             the constructor to perform the formatting.\r
17114             </para>\r
17115             </remarks>\r
17116         </member>\r
17117         <member name="T:log4net.Layout.PatternLayout">\r
17118             <summary>\r
17119             A flexible layout configurable with pattern string.\r
17120             </summary>\r
17121             <remarks>\r
17122             <para>\r
17123             The goal of this class is to <see cref="M:log4net.Layout.PatternLayout.Format(System.IO.TextWriter,log4net.Core.LoggingEvent)"/> a \r
17124             <see cref="T:log4net.Core.LoggingEvent"/> as a string. The results\r
17125             depend on the <i>conversion pattern</i>.\r
17126             </para>\r
17127             <para>\r
17128             The conversion pattern is closely related to the conversion\r
17129             pattern of the printf function in C. A conversion pattern is\r
17130             composed of literal text and format control expressions called\r
17131             <i>conversion specifiers</i>.\r
17132             </para>\r
17133             <para>\r
17134             <i>You are free to insert any literal text within the conversion\r
17135             pattern.</i>\r
17136             </para>\r
17137             <para>\r
17138             Each conversion specifier starts with a percent sign (%) and is\r
17139             followed by optional <i>format modifiers</i> and a <i>conversion\r
17140             pattern name</i>. The conversion pattern name specifies the type of\r
17141             data, e.g. logger, level, date, thread name. The format\r
17142             modifiers control such things as field width, padding, left and\r
17143             right justification. The following is a simple example.\r
17144             </para>\r
17145             <para>\r
17146             Let the conversion pattern be <b>"%-5level [%thread]: %message%newline"</b> and assume\r
17147             that the log4net environment was set to use a PatternLayout. Then the\r
17148             statements\r
17149             </para>\r
17150             <code lang="C#">\r
17151             ILog log = LogManager.GetLogger(typeof(TestApp));\r
17152             log.Debug("Message 1");\r
17153             log.Warn("Message 2");   \r
17154             </code>\r
17155             <para>would yield the output</para>\r
17156             <code>\r
17157             DEBUG [main]: Message 1\r
17158             WARN  [main]: Message 2  \r
17159             </code>\r
17160             <para>\r
17161             Note that there is no explicit separator between text and\r
17162             conversion specifiers. The pattern parser knows when it has reached\r
17163             the end of a conversion specifier when it reads a conversion\r
17164             character. In the example above the conversion specifier\r
17165             <b>%-5level</b> means the level of the logging event should be left\r
17166             justified to a width of five characters.\r
17167             </para>\r
17168             <para>\r
17169             The recognized conversion pattern names are:\r
17170             </para>\r
17171             <list type="table">\r
17172                 <listheader>\r
17173                     <term>Conversion Pattern Name</term>\r
17174                     <description>Effect</description>\r
17175                 </listheader>\r
17176                 <item>\r
17177                     <term>a</term>\r
17178                     <description>Equivalent to <b>appdomain</b></description>\r
17179                 </item>\r
17180                 <item>\r
17181                     <term>appdomain</term>\r
17182                     <description>\r
17183                                 Used to output the friendly name of the AppDomain where the \r
17184                                 logging event was generated. \r
17185                     </description>\r
17186                 </item>\r
17187                 <item>\r
17188                     <term>c</term>\r
17189                     <description>Equivalent to <b>logger</b></description>\r
17190                 </item>\r
17191                 <item>\r
17192                     <term>C</term>\r
17193                     <description>Equivalent to <b>type</b></description>\r
17194                 </item>\r
17195                 <item>\r
17196                     <term>class</term>\r
17197                     <description>Equivalent to <b>type</b></description>\r
17198                 </item>\r
17199                 <item>\r
17200                     <term>d</term>\r
17201                     <description>Equivalent to <b>date</b></description>\r
17202                 </item>\r
17203                 <item>\r
17204                         <term>date</term> \r
17205                         <description>\r
17206                                 <para>\r
17207                                 Used to output the date of the logging event in the local time zone. \r
17208                                 To output the date in universal time use the <c>%utcdate</c> pattern.\r
17209                                 The date conversion \r
17210                                 specifier may be followed by a <i>date format specifier</i> enclosed \r
17211                                 between braces. For example, <b>%date{HH:mm:ss,fff}</b> or\r
17212                                 <b>%date{dd MMM yyyy HH:mm:ss,fff}</b>.  If no date format specifier is \r
17213                                 given then ISO8601 format is\r
17214                                 assumed (<see cref="T:log4net.DateFormatter.Iso8601DateFormatter"/>).\r
17215                                 </para>\r
17216                                 <para>\r
17217                                 The date format specifier admits the same syntax as the\r
17218                                 time pattern string of the <see cref="M:System.DateTime.ToString(System.String)"/>.\r
17219                                 </para>\r
17220                                 <para>\r
17221                                 For better results it is recommended to use the log4net date\r
17222                                 formatters. These can be specified using one of the strings\r
17223                                 "ABSOLUTE", "DATE" and "ISO8601" for specifying \r
17224                                 <see cref="T:log4net.DateFormatter.AbsoluteTimeDateFormatter"/>, \r
17225                                 <see cref="T:log4net.DateFormatter.DateTimeDateFormatter"/> and respectively \r
17226                                 <see cref="T:log4net.DateFormatter.Iso8601DateFormatter"/>. For example, \r
17227                                 <b>%date{ISO8601}</b> or <b>%date{ABSOLUTE}</b>.\r
17228                                 </para>\r
17229                                 <para>\r
17230                                 These dedicated date formatters perform significantly\r
17231                                 better than <see cref="M:System.DateTime.ToString(System.String)"/>.\r
17232                                 </para>\r
17233                         </description>\r
17234                 </item>\r
17235                 <item>\r
17236                         <term>exception</term>\r
17237                         <description>\r
17238                                 <para>\r
17239                                 Used to output the exception passed in with the log message.\r
17240                                 </para>\r
17241                                 <para>\r
17242                                 If an exception object is stored in the logging event\r
17243                                 it will be rendered into the pattern output with a\r
17244                                 trailing newline.\r
17245                                 If there is no exception then nothing will be output\r
17246                                 and no trailing newline will be appended.\r
17247                                 It is typical to put a newline before the exception\r
17248                                 and to have the exception as the last data in the pattern.\r
17249                                 </para>\r
17250                         </description>\r
17251                 </item>\r
17252                 <item>\r
17253                     <term>F</term>\r
17254                     <description>Equivalent to <b>file</b></description>\r
17255                 </item>\r
17256                 <item>\r
17257                         <term>file</term>\r
17258                         <description>\r
17259                                 <para>\r
17260                                 Used to output the file name where the logging request was\r
17261                                 issued.\r
17262                                 </para>\r
17263                                 <para>\r
17264                                 <b>WARNING</b> Generating caller location information is\r
17265                                 extremely slow. Its use should be avoided unless execution speed\r
17266                                 is not an issue.\r
17267                                 </para>\r
17268                                 <para>\r
17269                                 See the note below on the availability of caller location information.\r
17270                                 </para>\r
17271                         </description>\r
17272                 </item>\r
17273                 <item>\r
17274                         <term>identity</term>\r
17275                         <description>\r
17276                                 <para>\r
17277                                 Used to output the user name for the currently active user\r
17278                                 (Principal.Identity.Name).\r
17279                                 </para>\r
17280                                 <para>\r
17281                                 <b>WARNING</b> Generating caller information is\r
17282                                 extremely slow. Its use should be avoided unless execution speed\r
17283                                 is not an issue.\r
17284                                 </para>\r
17285                         </description>\r
17286                 </item>\r
17287                 <item>\r
17288                     <term>l</term>\r
17289                     <description>Equivalent to <b>location</b></description>\r
17290                 </item>\r
17291                 <item>\r
17292                     <term>L</term>\r
17293                     <description>Equivalent to <b>line</b></description>\r
17294                 </item>\r
17295                 <item>\r
17296                         <term>location</term>\r
17297                         <description>\r
17298                                 <para>\r
17299                                 Used to output location information of the caller which generated\r
17300                                 the logging event.\r
17301                                 </para>\r
17302                                 <para>\r
17303                                 The location information depends on the CLI implementation but\r
17304                                 usually consists of the fully qualified name of the calling\r
17305                                 method followed by the callers source the file name and line\r
17306                                 number between parentheses.\r
17307                                 </para>\r
17308                                 <para>\r
17309                                 The location information can be very useful. However, its\r
17310                                 generation is <b>extremely</b> slow. Its use should be avoided\r
17311                                 unless execution speed is not an issue.\r
17312                                 </para>\r
17313                                 <para>\r
17314                                 See the note below on the availability of caller location information.\r
17315                                 </para>\r
17316                         </description>\r
17317                 </item>\r
17318                 <item>\r
17319                         <term>level</term>\r
17320                         <description>\r
17321                                 <para>\r
17322                                 Used to output the level of the logging event.\r
17323                                 </para>\r
17324                         </description>\r
17325                 </item>\r
17326                 <item>\r
17327                         <term>line</term>\r
17328                         <description>\r
17329                                 <para>\r
17330                                 Used to output the line number from where the logging request\r
17331                                 was issued.\r
17332                                 </para>\r
17333                                 <para>\r
17334                                 <b>WARNING</b> Generating caller location information is\r
17335                                 extremely slow. Its use should be avoided unless execution speed\r
17336                                 is not an issue.\r
17337                                 </para>\r
17338                                 <para>\r
17339                                 See the note below on the availability of caller location information.\r
17340                                 </para>\r
17341                         </description>\r
17342                 </item>\r
17343                 <item>\r
17344                     <term>logger</term>\r
17345                     <description>\r
17346                         <para>\r
17347                                 Used to output the logger of the logging event. The\r
17348                                 logger conversion specifier can be optionally followed by\r
17349                                 <i>precision specifier</i>, that is a decimal constant in\r
17350                                 brackets.\r
17351                         </para>\r
17352                                 <para>\r
17353                                 If a precision specifier is given, then only the corresponding\r
17354                                 number of right most components of the logger name will be\r
17355                                 printed. By default the logger name is printed in full.\r
17356                                 </para>\r
17357                                 <para>\r
17358                                 For example, for the logger name "a.b.c" the pattern\r
17359                                 <b>%logger{2}</b> will output "b.c".\r
17360                                 </para>\r
17361                     </description>\r
17362                 </item>\r
17363                 <item>\r
17364                     <term>m</term>\r
17365                     <description>Equivalent to <b>message</b></description>\r
17366                 </item>\r
17367                 <item>\r
17368                     <term>M</term>\r
17369                     <description>Equivalent to <b>method</b></description>\r
17370                 </item>\r
17371                 <item>\r
17372                         <term>message</term>\r
17373                         <description>\r
17374                                 <para>\r
17375                                 Used to output the application supplied message associated with \r
17376                                 the logging event.\r
17377                                 </para>\r
17378                         </description>\r
17379                 </item>\r
17380                 <item>\r
17381                         <term>mdc</term>\r
17382                         <description>\r
17383                                 <para>\r
17384                                 The MDC (old name for the ThreadContext.Properties) is now part of the\r
17385                                 combined event properties. This pattern is supported for compatibility\r
17386                                 but is equivalent to <b>property</b>.\r
17387                                 </para>\r
17388                         </description>\r
17389                 </item>\r
17390                 <item>\r
17391                         <term>method</term>\r
17392                         <description>\r
17393                                 <para>\r
17394                                 Used to output the method name where the logging request was\r
17395                                 issued.\r
17396                                 </para>\r
17397                                 <para>\r
17398                                 <b>WARNING</b> Generating caller location information is\r
17399                                 extremely slow. Its use should be avoided unless execution speed\r
17400                                 is not an issue.\r
17401                                 </para>\r
17402                                 <para>\r
17403                                 See the note below on the availability of caller location information.\r
17404                                 </para>\r
17405                         </description>\r
17406                 </item>\r
17407                 <item>\r
17408                     <term>n</term>\r
17409                     <description>Equivalent to <b>newline</b></description>\r
17410                 </item>\r
17411                 <item>\r
17412                         <term>newline</term>\r
17413                         <description>\r
17414                                 <para>\r
17415                                 Outputs the platform dependent line separator character or\r
17416                                 characters.\r
17417                                 </para>\r
17418                                 <para>\r
17419                                 This conversion pattern offers the same performance as using \r
17420                                 non-portable line separator strings such as     "\n", or "\r\n". \r
17421                                 Thus, it is the preferred way of specifying a line separator.\r
17422                                 </para> \r
17423                         </description>\r
17424                 </item>\r
17425                 <item>\r
17426                         <term>ndc</term>\r
17427                         <description>\r
17428                                 <para>\r
17429                                 Used to output the NDC (nested diagnostic context) associated\r
17430                                 with the thread that generated the logging event.\r
17431                                 </para>\r
17432                         </description>\r
17433                 </item>\r
17434                 <item>\r
17435                     <term>p</term>\r
17436                     <description>Equivalent to <b>level</b></description>\r
17437                 </item>\r
17438                 <item>\r
17439                     <term>P</term>\r
17440                     <description>Equivalent to <b>property</b></description>\r
17441                 </item>\r
17442                 <item>\r
17443                     <term>properties</term>\r
17444                     <description>Equivalent to <b>property</b></description>\r
17445                 </item>\r
17446                 <item>\r
17447                         <term>property</term>\r
17448                         <description>\r
17449                                 <para>\r
17450                                 Used to output the an event specific property. The key to \r
17451                                 lookup must be specified within braces and directly following the\r
17452                                 pattern specifier, e.g. <b>%property{user}</b> would include the value\r
17453                                 from the property that is keyed by the string 'user'. Each property value\r
17454                                 that is to be included in the log must be specified separately.\r
17455                                 Properties are added to events by loggers or appenders. By default \r
17456                                 the <c>log4net:HostName</c> property is set to the name of machine on \r
17457                                 which the event was originally logged.\r
17458                                 </para>\r
17459                                 <para>\r
17460                                 If no key is specified, e.g. <b>%property</b> then all the keys and their\r
17461                                 values are printed in a comma separated list.\r
17462                                 </para>\r
17463                                 <para>\r
17464                                 The properties of an event are combined from a number of different\r
17465                                 contexts. These are listed below in the order in which they are searched.\r
17466                                 </para>\r
17467                                 <list type="definition">\r
17468                                         <item>\r
17469                                                 <term>the event properties</term>\r
17470                                                 <description>\r
17471                                                 The event has <see cref="P:log4net.Core.LoggingEvent.Properties"/> that can be set. These \r
17472                                                 properties are specific to this event only.\r
17473                                                 </description>\r
17474                                         </item>\r
17475                                         <item>\r
17476                                                 <term>the thread properties</term>\r
17477                                                 <description>\r
17478                                                 The <see cref="P:log4net.ThreadContext.Properties"/> that are set on the current\r
17479                                                 thread. These properties are shared by all events logged on this thread.\r
17480                                                 </description>\r
17481                                         </item>\r
17482                                         <item>\r
17483                                                 <term>the global properties</term>\r
17484                                                 <description>\r
17485                                                 The <see cref="P:log4net.GlobalContext.Properties"/> that are set globally. These \r
17486                                                 properties are shared by all the threads in the AppDomain.\r
17487                                                 </description>\r
17488                                         </item>\r
17489                                 </list>\r
17490                                 \r
17491                         </description>\r
17492                 </item>\r
17493                 <item>\r
17494                     <term>r</term>\r
17495                     <description>Equivalent to <b>timestamp</b></description>\r
17496                 </item>\r
17497                 <item>\r
17498                     <term>t</term>\r
17499                     <description>Equivalent to <b>thread</b></description>\r
17500                 </item>\r
17501                 <item>\r
17502                         <term>timestamp</term>\r
17503                         <description>\r
17504                                 <para>\r
17505                                 Used to output the number of milliseconds elapsed since the start\r
17506                                 of the application until the creation of the logging event.\r
17507                                 </para>\r
17508                         </description>\r
17509                 </item>\r
17510                 <item>\r
17511                         <term>thread</term>\r
17512                         <description>\r
17513                                 <para>\r
17514                                 Used to output the name of the thread that generated the\r
17515                                 logging event. Uses the thread number if no name is available.\r
17516                                 </para>\r
17517                         </description>\r
17518                 </item>\r
17519                 <item>\r
17520                         <term>type</term> \r
17521                         <description>\r
17522                                 <para>\r
17523                                 Used to output the fully qualified type name of the caller\r
17524                                 issuing the logging request. This conversion specifier\r
17525                                 can be optionally followed by <i>precision specifier</i>, that\r
17526                                 is a decimal constant in brackets.\r
17527                                 </para>\r
17528                                 <para>\r
17529                                 If a precision specifier is given, then only the corresponding\r
17530                                 number of right most components of the class name will be\r
17531                                 printed. By default the class name is output in fully qualified form.\r
17532                                 </para>\r
17533                                 <para>\r
17534                                 For example, for the class name "log4net.Layout.PatternLayout", the\r
17535                                 pattern <b>%type{1}</b> will output "PatternLayout".\r
17536                                 </para>\r
17537                                 <para>\r
17538                                 <b>WARNING</b> Generating the caller class information is\r
17539                                 slow. Thus, its use should be avoided unless execution speed is\r
17540                                 not an issue.\r
17541                                 </para>\r
17542                                 <para>\r
17543                                 See the note below on the availability of caller location information.\r
17544                                 </para>\r
17545                         </description>\r
17546                 </item>\r
17547                 <item>\r
17548                     <term>u</term>\r
17549                     <description>Equivalent to <b>identity</b></description>\r
17550                 </item>\r
17551                 <item>\r
17552                         <term>username</term>\r
17553                         <description>\r
17554                                 <para>\r
17555                                 Used to output the WindowsIdentity for the currently\r
17556                                 active user.\r
17557                                 </para>\r
17558                                 <para>\r
17559                                 <b>WARNING</b> Generating caller WindowsIdentity information is\r
17560                                 extremely slow. Its use should be avoided unless execution speed\r
17561                                 is not an issue.\r
17562                                 </para>\r
17563                         </description>\r
17564                 </item>\r
17565                 <item>\r
17566                         <term>utcdate</term> \r
17567                         <description>\r
17568                                 <para>\r
17569                                 Used to output the date of the logging event in universal time. \r
17570                                 The date conversion \r
17571                                 specifier may be followed by a <i>date format specifier</i> enclosed \r
17572                                 between braces. For example, <b>%utcdate{HH:mm:ss,fff}</b> or\r
17573                                 <b>%utcdate{dd MMM yyyy HH:mm:ss,fff}</b>.  If no date format specifier is \r
17574                                 given then ISO8601 format is\r
17575                                 assumed (<see cref="T:log4net.DateFormatter.Iso8601DateFormatter"/>).\r
17576                                 </para>\r
17577                                 <para>\r
17578                                 The date format specifier admits the same syntax as the\r
17579                                 time pattern string of the <see cref="M:System.DateTime.ToString(System.String)"/>.\r
17580                                 </para>\r
17581                                 <para>\r
17582                                 For better results it is recommended to use the log4net date\r
17583                                 formatters. These can be specified using one of the strings\r
17584                                 "ABSOLUTE", "DATE" and "ISO8601" for specifying \r
17585                                 <see cref="T:log4net.DateFormatter.AbsoluteTimeDateFormatter"/>, \r
17586                                 <see cref="T:log4net.DateFormatter.DateTimeDateFormatter"/> and respectively \r
17587                                 <see cref="T:log4net.DateFormatter.Iso8601DateFormatter"/>. For example, \r
17588                                 <b>%utcdate{ISO8601}</b> or <b>%utcdate{ABSOLUTE}</b>.\r
17589                                 </para>\r
17590                                 <para>\r
17591                                 These dedicated date formatters perform significantly\r
17592                                 better than <see cref="M:System.DateTime.ToString(System.String)"/>.\r
17593                                 </para>\r
17594                         </description>\r
17595                 </item>\r
17596                 <item>\r
17597                     <term>w</term>\r
17598                     <description>Equivalent to <b>username</b></description>\r
17599                 </item>\r
17600                 <item>\r
17601                     <term>x</term>\r
17602                     <description>Equivalent to <b>ndc</b></description>\r
17603                 </item>\r
17604                 <item>\r
17605                     <term>X</term>\r
17606                     <description>Equivalent to <b>mdc</b></description>\r
17607                 </item>\r
17608                 <item>\r
17609                         <term>%</term>\r
17610                         <description>\r
17611                                 <para>\r
17612                                 The sequence %% outputs a single percent sign.\r
17613                                 </para>\r
17614                         </description>\r
17615                 </item>\r
17616             </list>\r
17617             <para>\r
17618             The single letter patterns are deprecated in favor of the \r
17619             longer more descriptive pattern names.\r
17620             </para>\r
17621             <para>\r
17622             By default the relevant information is output as is. However,\r
17623             with the aid of format modifiers it is possible to change the\r
17624             minimum field width, the maximum field width and justification.\r
17625             </para>\r
17626             <para>\r
17627             The optional format modifier is placed between the percent sign\r
17628             and the conversion pattern name.\r
17629             </para>\r
17630             <para>\r
17631             The first optional format modifier is the <i>left justification\r
17632             flag</i> which is just the minus (-) character. Then comes the\r
17633             optional <i>minimum field width</i> modifier. This is a decimal\r
17634             constant that represents the minimum number of characters to\r
17635             output. If the data item requires fewer characters, it is padded on\r
17636             either the left or the right until the minimum width is\r
17637             reached. The default is to pad on the left (right justify) but you\r
17638             can specify right padding with the left justification flag. The\r
17639             padding character is space. If the data item is larger than the\r
17640             minimum field width, the field is expanded to accommodate the\r
17641             data. The value is never truncated.\r
17642             </para>\r
17643             <para>\r
17644             This behavior can be changed using the <i>maximum field\r
17645             width</i> modifier which is designated by a period followed by a\r
17646             decimal constant. If the data item is longer than the maximum\r
17647             field, then the extra characters are removed from the\r
17648             <i>beginning</i> of the data item and not from the end. For\r
17649             example, it the maximum field width is eight and the data item is\r
17650             ten characters long, then the first two characters of the data item\r
17651             are dropped. This behavior deviates from the printf function in C\r
17652             where truncation is done from the end.\r
17653             </para>\r
17654             <para>\r
17655             Below are various format modifier examples for the logger\r
17656             conversion specifier.\r
17657             </para>\r
17658             <div class="tablediv">\r
17659                 <table class="dtTABLE" cellspacing="0">\r
17660                         <tr>\r
17661                                 <th>Format modifier</th>\r
17662                                 <th>left justify</th>\r
17663                                 <th>minimum width</th>\r
17664                                 <th>maximum width</th>\r
17665                                 <th>comment</th>\r
17666                         </tr>\r
17667                         <tr>\r
17668                                 <td align="center">%20logger</td>\r
17669                                 <td align="center">false</td>\r
17670                                 <td align="center">20</td>\r
17671                                 <td align="center">none</td>\r
17672                                 <td>\r
17673                                         <para>\r
17674                                         Left pad with spaces if the logger name is less than 20\r
17675                                         characters long.\r
17676                                         </para>\r
17677                                 </td>\r
17678                         </tr>\r
17679                         <tr>\r
17680                                 <td align="center">%-20logger</td>\r
17681                                 <td align="center">true</td>\r
17682                                 <td align="center">20</td>\r
17683                                 <td align="center">none</td>\r
17684                                 <td>\r
17685                                         <para>\r
17686                                         Right pad with spaces if the logger \r
17687                                         name is less than 20 characters long.\r
17688                                         </para>\r
17689                                 </td>\r
17690                         </tr>\r
17691                         <tr>\r
17692                                 <td align="center">%.30logger</td>\r
17693                                 <td align="center">NA</td>\r
17694                                 <td align="center">none</td>\r
17695                                 <td align="center">30</td>\r
17696                                 <td>\r
17697                                         <para>\r
17698                                         Truncate from the beginning if the logger \r
17699                                         name is longer than 30 characters.\r
17700                                         </para>\r
17701                                 </td>\r
17702                         </tr>\r
17703                         <tr>\r
17704                                 <td align="center"><nobr>%20.30logger</nobr></td>\r
17705                                 <td align="center">false</td>\r
17706                                 <td align="center">20</td>\r
17707                                 <td align="center">30</td>\r
17708                                 <td>\r
17709                                         <para>\r
17710                                         Left pad with spaces if the logger name is shorter than 20\r
17711                                         characters. However, if logger name is longer than 30 characters,\r
17712                                         then truncate from the beginning.\r
17713                                         </para>\r
17714                                 </td>\r
17715                         </tr>\r
17716                         <tr>\r
17717                                 <td align="center">%-20.30logger</td>\r
17718                                 <td align="center">true</td>\r
17719                                 <td align="center">20</td>\r
17720                                 <td align="center">30</td>\r
17721                                 <td>\r
17722                                         <para>\r
17723                                         Right pad with spaces if the logger name is shorter than 20\r
17724                                         characters. However, if logger name is longer than 30 characters,\r
17725                                         then truncate from the beginning.\r
17726                                         </para>\r
17727                                 </td>\r
17728                         </tr>\r
17729                 </table>\r
17730             </div>\r
17731             <para>\r
17732             <b>Note about caller location information.</b><br/>\r
17733             The following patterns <c>%type %file %line %method %location %class %C %F %L %l %M</c> \r
17734             all generate caller location information.\r
17735             Location information uses the <c>System.Diagnostics.StackTrace</c> class to generate\r
17736             a call stack. The caller's information is then extracted from this stack.\r
17737             </para>\r
17738             <note type="caution">\r
17739             <para>\r
17740             The <c>System.Diagnostics.StackTrace</c> class is not supported on the \r
17741             .NET Compact Framework 1.0 therefore caller location information is not\r
17742             available on that framework.\r
17743             </para>\r
17744             </note>\r
17745             <note type="caution">\r
17746             <para>\r
17747             The <c>System.Diagnostics.StackTrace</c> class has this to say about Release builds:\r
17748             </para>\r
17749             <para>\r
17750             "StackTrace information will be most informative with Debug build configurations. \r
17751             By default, Debug builds include debug symbols, while Release builds do not. The \r
17752             debug symbols contain most of the file, method name, line number, and column \r
17753             information used in constructing StackFrame and StackTrace objects. StackTrace \r
17754             might not report as many method calls as expected, due to code transformations \r
17755             that occur during optimization."\r
17756             </para>\r
17757             <para>\r
17758             This means that in a Release build the caller information may be incomplete or may \r
17759             not exist at all! Therefore caller location information cannot be relied upon in a Release build.\r
17760             </para>\r
17761             </note>\r
17762             <para>\r
17763             Additional pattern converters may be registered with a specific <see cref="T:log4net.Layout.PatternLayout"/>\r
17764             instance using the <see cref="M:log4net.Layout.PatternLayout.AddConverter(System.String,System.Type)"/> method.\r
17765             </para>\r
17766             </remarks>\r
17767             <example>\r
17768             This is a more detailed pattern.\r
17769             <code><b>%timestamp [%thread] %level %logger %ndc - %message%newline</b></code>\r
17770             </example>\r
17771             <example>\r
17772             A similar pattern except that the relative time is\r
17773             right padded if less than 6 digits, thread name is right padded if\r
17774             less than 15 characters and truncated if longer and the logger\r
17775             name is left padded if shorter than 30 characters and truncated if\r
17776             longer.\r
17777             <code><b>%-6timestamp [%15.15thread] %-5level %30.30logger %ndc - %message%newline</b></code>\r
17778             </example>\r
17779             <author>Nicko Cadell</author>\r
17780             <author>Gert Driesen</author>\r
17781             <author>Douglas de la Torre</author>\r
17782             <author>Daniel Cazzulino</author>\r
17783         </member>\r
17784         <member name="F:log4net.Layout.PatternLayout.DefaultConversionPattern">\r
17785             <summary>\r
17786             Default pattern string for log output. \r
17787             </summary>\r
17788             <remarks>\r
17789             <para>\r
17790             Default pattern string for log output. \r
17791             Currently set to the string <b>"%message%newline"</b> \r
17792             which just prints the application supplied message. \r
17793             </para>\r
17794             </remarks>\r
17795         </member>\r
17796         <member name="F:log4net.Layout.PatternLayout.DetailConversionPattern">\r
17797             <summary>\r
17798             A detailed conversion pattern\r
17799             </summary>\r
17800             <remarks>\r
17801             <para>\r
17802             A conversion pattern which includes Time, Thread, Logger, and Nested Context.\r
17803             Current value is <b>%timestamp [%thread] %level %logger %ndc - %message%newline</b>.\r
17804             </para>\r
17805             </remarks>\r
17806         </member>\r
17807         <member name="F:log4net.Layout.PatternLayout.s_globalRulesRegistry">\r
17808             <summary>\r
17809             Internal map of converter identifiers to converter types.\r
17810             </summary>\r
17811             <remarks>\r
17812             <para>\r
17813             This static map is overridden by the m_converterRegistry instance map\r
17814             </para>\r
17815             </remarks>\r
17816         </member>\r
17817         <member name="F:log4net.Layout.PatternLayout.m_pattern">\r
17818             <summary>\r
17819             the pattern\r
17820             </summary>\r
17821         </member>\r
17822         <member name="F:log4net.Layout.PatternLayout.m_head">\r
17823             <summary>\r
17824             the head of the pattern converter chain\r
17825             </summary>\r
17826         </member>\r
17827         <member name="F:log4net.Layout.PatternLayout.m_instanceRulesRegistry">\r
17828             <summary>\r
17829             patterns defined on this PatternLayout only\r
17830             </summary>\r
17831         </member>\r
17832         <member name="M:log4net.Layout.PatternLayout.#cctor">\r
17833             <summary>\r
17834             Initialize the global registry\r
17835             </summary>\r
17836             <remarks>\r
17837             <para>\r
17838             Defines the builtin global rules.\r
17839             </para>\r
17840             </remarks>\r
17841         </member>\r
17842         <member name="M:log4net.Layout.PatternLayout.#ctor">\r
17843             <summary>\r
17844             Constructs a PatternLayout using the DefaultConversionPattern\r
17845             </summary>\r
17846             <remarks>\r
17847             <para>\r
17848             The default pattern just produces the application supplied message.\r
17849             </para>\r
17850             <para>\r
17851             Note to Inheritors: This constructor calls the virtual method\r
17852             <see cref="M:log4net.Layout.PatternLayout.CreatePatternParser(System.String)"/>. If you override this method be\r
17853             aware that it will be called before your is called constructor.\r
17854             </para>\r
17855             <para>\r
17856             As per the <see cref="T:log4net.Core.IOptionHandler"/> contract the <see cref="M:log4net.Layout.PatternLayout.ActivateOptions"/>\r
17857             method must be called after the properties on this object have been\r
17858             configured.\r
17859             </para>\r
17860             </remarks>\r
17861         </member>\r
17862         <member name="M:log4net.Layout.PatternLayout.#ctor(System.String)">\r
17863             <summary>\r
17864             Constructs a PatternLayout using the supplied conversion pattern\r
17865             </summary>\r
17866             <param name="pattern">the pattern to use</param>\r
17867             <remarks>\r
17868             <para>\r
17869             Note to Inheritors: This constructor calls the virtual method\r
17870             <see cref="M:log4net.Layout.PatternLayout.CreatePatternParser(System.String)"/>. If you override this method be\r
17871             aware that it will be called before your is called constructor.\r
17872             </para>\r
17873             <para>\r
17874             When using this constructor the <see cref="M:log4net.Layout.PatternLayout.ActivateOptions"/> method \r
17875             need not be called. This may not be the case when using a subclass.\r
17876             </para>\r
17877             </remarks>\r
17878         </member>\r
17879         <member name="M:log4net.Layout.PatternLayout.CreatePatternParser(System.String)">\r
17880             <summary>\r
17881             Create the pattern parser instance\r
17882             </summary>\r
17883             <param name="pattern">the pattern to parse</param>\r
17884             <returns>The <see cref="T:log4net.Util.PatternParser"/> that will format the event</returns>\r
17885             <remarks>\r
17886             <para>\r
17887             Creates the <see cref="T:log4net.Util.PatternParser"/> used to parse the conversion string. Sets the\r
17888             global and instance rules on the <see cref="T:log4net.Util.PatternParser"/>.\r
17889             </para>\r
17890             </remarks>\r
17891         </member>\r
17892         <member name="M:log4net.Layout.PatternLayout.ActivateOptions">\r
17893             <summary>\r
17894             Initialize layout options\r
17895             </summary>\r
17896             <remarks>\r
17897             <para>\r
17898             This is part of the <see cref="T:log4net.Core.IOptionHandler"/> delayed object\r
17899             activation scheme. The <see cref="M:log4net.Layout.PatternLayout.ActivateOptions"/> method must \r
17900             be called on this object after the configuration properties have\r
17901             been set. Until <see cref="M:log4net.Layout.PatternLayout.ActivateOptions"/> is called this\r
17902             object is in an undefined state and must not be used. \r
17903             </para>\r
17904             <para>\r
17905             If any of the configuration properties are modified then \r
17906             <see cref="M:log4net.Layout.PatternLayout.ActivateOptions"/> must be called again.\r
17907             </para>\r
17908             </remarks>\r
17909         </member>\r
17910         <member name="M:log4net.Layout.PatternLayout.Format(System.IO.TextWriter,log4net.Core.LoggingEvent)">\r
17911             <summary>\r
17912             Produces a formatted string as specified by the conversion pattern.\r
17913             </summary>\r
17914             <param name="loggingEvent">the event being logged</param>\r
17915             <param name="writer">The TextWriter to write the formatted event to</param>\r
17916             <remarks>\r
17917             <para>\r
17918             Parse the <see cref="T:log4net.Core.LoggingEvent"/> using the patter format\r
17919             specified in the <see cref="P:log4net.Layout.PatternLayout.ConversionPattern"/> property.\r
17920             </para>\r
17921             </remarks>\r
17922         </member>\r
17923         <member name="M:log4net.Layout.PatternLayout.AddConverter(log4net.Layout.PatternLayout.ConverterInfo)">\r
17924             <summary>\r
17925             Add a converter to this PatternLayout\r
17926             </summary>\r
17927             <param name="converterInfo">the converter info</param>\r
17928             <remarks>\r
17929             <para>\r
17930             This version of the method is used by the configurator.\r
17931             Programmatic users should use the alternative <see cref="M:log4net.Layout.PatternLayout.AddConverter(System.String,System.Type)"/> method.\r
17932             </para>\r
17933             </remarks>\r
17934         </member>\r
17935         <member name="M:log4net.Layout.PatternLayout.AddConverter(System.String,System.Type)">\r
17936             <summary>\r
17937             Add a converter to this PatternLayout\r
17938             </summary>\r
17939             <param name="name">the name of the conversion pattern for this converter</param>\r
17940             <param name="type">the type of the converter</param>\r
17941             <remarks>\r
17942             <para>\r
17943             Add a named pattern converter to this instance. This\r
17944             converter will be used in the formatting of the event.\r
17945             This method must be called before <see cref="M:log4net.Layout.PatternLayout.ActivateOptions"/>.\r
17946             </para>\r
17947             <para>\r
17948             The <paramref name="type"/> specified must extend the \r
17949             <see cref="T:log4net.Util.PatternConverter"/> type.\r
17950             </para>\r
17951             </remarks>\r
17952         </member>\r
17953         <member name="P:log4net.Layout.PatternLayout.ConversionPattern">\r
17954             <summary>\r
17955             The pattern formatting string\r
17956             </summary>\r
17957             <remarks>\r
17958             <para>\r
17959             The <b>ConversionPattern</b> option. This is the string which\r
17960             controls formatting and consists of a mix of literal content and\r
17961             conversion specifiers.\r
17962             </para>\r
17963             </remarks>\r
17964         </member>\r
17965         <member name="T:log4net.Layout.PatternLayout.ConverterInfo">\r
17966             <summary>\r
17967             Wrapper class used to map converter names to converter types\r
17968             </summary>\r
17969             <remarks>\r
17970             <para>\r
17971             Pattern converter info class used during configuration to\r
17972             pass to the <see cref="M:log4net.Layout.PatternLayout.AddConverter(log4net.Layout.PatternLayout.ConverterInfo)"/>\r
17973             method.\r
17974             </para>\r
17975             </remarks>\r
17976         </member>\r
17977         <member name="M:log4net.Layout.PatternLayout.ConverterInfo.#ctor">\r
17978             <summary>\r
17979             default constructor\r
17980             </summary>\r
17981         </member>\r
17982         <member name="P:log4net.Layout.PatternLayout.ConverterInfo.Name">\r
17983             <summary>\r
17984             Gets or sets the name of the conversion pattern\r
17985             </summary>\r
17986             <remarks>\r
17987             <para>\r
17988             The name of the pattern in the format string\r
17989             </para>\r
17990             </remarks>\r
17991         </member>\r
17992         <member name="P:log4net.Layout.PatternLayout.ConverterInfo.Type">\r
17993             <summary>\r
17994             Gets or sets the type of the converter\r
17995             </summary>\r
17996             <remarks>\r
17997             <para>\r
17998             The value specified must extend the \r
17999             <see cref="T:log4net.Util.PatternConverter"/> type.\r
18000             </para>\r
18001             </remarks>\r
18002         </member>\r
18003         <member name="T:log4net.Layout.RawLayoutConverter">\r
18004             <summary>\r
18005             Type converter for the <see cref="T:log4net.Layout.IRawLayout"/> interface\r
18006             </summary>\r
18007             <remarks>\r
18008             <para>\r
18009             Used to convert objects to the <see cref="T:log4net.Layout.IRawLayout"/> interface.\r
18010             Supports converting from the <see cref="T:log4net.Layout.ILayout"/> interface to\r
18011             the <see cref="T:log4net.Layout.IRawLayout"/> interface using the <see cref="T:log4net.Layout.Layout2RawLayoutAdapter"/>.\r
18012             </para>\r
18013             </remarks>\r
18014             <author>Nicko Cadell</author>\r
18015             <author>Gert Driesen</author>\r
18016         </member>\r
18017         <member name="T:log4net.Util.TypeConverters.IConvertFrom">\r
18018             <summary>\r
18019             Interface supported by type converters\r
18020             </summary>\r
18021             <remarks>\r
18022             <para>\r
18023             This interface supports conversion from arbitrary types\r
18024             to a single target type. See <see cref="T:log4net.Util.TypeConverters.TypeConverterAttribute"/>.\r
18025             </para>\r
18026             </remarks>\r
18027             <author>Nicko Cadell</author>\r
18028             <author>Gert Driesen</author>\r
18029         </member>\r
18030         <member name="M:log4net.Util.TypeConverters.IConvertFrom.CanConvertFrom(System.Type)">\r
18031             <summary>\r
18032             Can the source type be converted to the type supported by this object\r
18033             </summary>\r
18034             <param name="sourceType">the type to convert</param>\r
18035             <returns>true if the conversion is possible</returns>\r
18036             <remarks>\r
18037             <para>\r
18038             Test if the <paramref name="sourceType"/> can be converted to the\r
18039             type supported by this converter.\r
18040             </para>\r
18041             </remarks>\r
18042         </member>\r
18043         <member name="M:log4net.Util.TypeConverters.IConvertFrom.ConvertFrom(System.Object)">\r
18044             <summary>\r
18045             Convert the source object to the type supported by this object\r
18046             </summary>\r
18047             <param name="source">the object to convert</param>\r
18048             <returns>the converted object</returns>\r
18049             <remarks>\r
18050             <para>\r
18051             Converts the <paramref name="source"/> to the type supported\r
18052             by this converter.\r
18053             </para>\r
18054             </remarks>\r
18055         </member>\r
18056         <member name="M:log4net.Layout.RawLayoutConverter.CanConvertFrom(System.Type)">\r
18057             <summary>\r
18058             Can the sourceType be converted to an <see cref="T:log4net.Layout.IRawLayout"/>\r
18059             </summary>\r
18060             <param name="sourceType">the source to be to be converted</param>\r
18061             <returns><c>true</c> if the source type can be converted to <see cref="T:log4net.Layout.IRawLayout"/></returns>\r
18062             <remarks>\r
18063             <para>\r
18064             Test if the <paramref name="sourceType"/> can be converted to a\r
18065             <see cref="T:log4net.Layout.IRawLayout"/>. Only <see cref="T:log4net.Layout.ILayout"/> is supported\r
18066             as the <paramref name="sourceType"/>.\r
18067             </para>\r
18068             </remarks>\r
18069         </member>\r
18070         <member name="M:log4net.Layout.RawLayoutConverter.ConvertFrom(System.Object)">\r
18071             <summary>\r
18072             Convert the value to a <see cref="T:log4net.Layout.IRawLayout"/> object\r
18073             </summary>\r
18074             <param name="source">the value to convert</param>\r
18075             <returns>the <see cref="T:log4net.Layout.IRawLayout"/> object</returns>\r
18076             <remarks>\r
18077             <para>\r
18078             Convert the <paramref name="source"/> object to a \r
18079             <see cref="T:log4net.Layout.IRawLayout"/> object. If the <paramref name="source"/> object\r
18080             is a <see cref="T:log4net.Layout.ILayout"/> then the <see cref="T:log4net.Layout.Layout2RawLayoutAdapter"/>\r
18081             is used to adapt between the two interfaces, otherwise an\r
18082             exception is thrown.\r
18083             </para>\r
18084             </remarks>\r
18085         </member>\r
18086         <member name="T:log4net.Layout.RawPropertyLayout">\r
18087             <summary>\r
18088             Extract the value of a property from the <see cref="T:log4net.Core.LoggingEvent"/>\r
18089             </summary>\r
18090             <remarks>\r
18091             <para>\r
18092             Extract the value of a property from the <see cref="T:log4net.Core.LoggingEvent"/>\r
18093             </para>\r
18094             </remarks>\r
18095             <author>Nicko Cadell</author>\r
18096         </member>\r
18097         <member name="M:log4net.Layout.RawPropertyLayout.#ctor">\r
18098             <summary>\r
18099             Constructs a RawPropertyLayout\r
18100             </summary>\r
18101         </member>\r
18102         <member name="M:log4net.Layout.RawPropertyLayout.Format(log4net.Core.LoggingEvent)">\r
18103             <summary>\r
18104             Lookup the property for <see cref="P:log4net.Layout.RawPropertyLayout.Key"/>\r
18105             </summary>\r
18106             <param name="loggingEvent">The event to format</param>\r
18107             <returns>returns property value</returns>\r
18108             <remarks>\r
18109             <para>\r
18110             Looks up and returns the object value of the property\r
18111             named <see cref="P:log4net.Layout.RawPropertyLayout.Key"/>. If there is no property defined\r
18112             with than name then <c>null</c> will be returned.\r
18113             </para>\r
18114             </remarks>\r
18115         </member>\r
18116         <member name="P:log4net.Layout.RawPropertyLayout.Key">\r
18117             <summary>\r
18118             The name of the value to lookup in the LoggingEvent Properties collection.\r
18119             </summary>\r
18120             <value>\r
18121             Value to lookup in the LoggingEvent Properties collection\r
18122             </value>\r
18123             <remarks>\r
18124             <para>\r
18125             String name of the property to lookup in the <see cref="T:log4net.Core.LoggingEvent"/>.\r
18126             </para>\r
18127             </remarks>\r
18128         </member>\r
18129         <member name="T:log4net.Layout.RawTimeStampLayout">\r
18130             <summary>\r
18131             Extract the date from the <see cref="T:log4net.Core.LoggingEvent"/>\r
18132             </summary>\r
18133             <remarks>\r
18134             <para>\r
18135             Extract the date from the <see cref="T:log4net.Core.LoggingEvent"/>\r
18136             </para>\r
18137             </remarks>\r
18138             <author>Nicko Cadell</author>\r
18139             <author>Gert Driesen</author>\r
18140         </member>\r
18141         <member name="M:log4net.Layout.RawTimeStampLayout.#ctor">\r
18142             <summary>\r
18143             Constructs a RawTimeStampLayout\r
18144             </summary>\r
18145         </member>\r
18146         <member name="M:log4net.Layout.RawTimeStampLayout.Format(log4net.Core.LoggingEvent)">\r
18147             <summary>\r
18148             Gets the <see cref="P:log4net.Core.LoggingEvent.TimeStamp"/> as a <see cref="T:System.DateTime"/>.\r
18149             </summary>\r
18150             <param name="loggingEvent">The event to format</param>\r
18151             <returns>returns the time stamp</returns>\r
18152             <remarks>\r
18153             <para>\r
18154             Gets the <see cref="P:log4net.Core.LoggingEvent.TimeStamp"/> as a <see cref="T:System.DateTime"/>.\r
18155             </para>\r
18156             <para>\r
18157             The time stamp is in local time. To format the time stamp\r
18158             in universal time use <see cref="T:log4net.Layout.RawUtcTimeStampLayout"/>.\r
18159             </para>\r
18160             </remarks>\r
18161         </member>\r
18162         <member name="T:log4net.Layout.RawUtcTimeStampLayout">\r
18163             <summary>\r
18164             Extract the date from the <see cref="T:log4net.Core.LoggingEvent"/>\r
18165             </summary>\r
18166             <remarks>\r
18167             <para>\r
18168             Extract the date from the <see cref="T:log4net.Core.LoggingEvent"/>\r
18169             </para>\r
18170             </remarks>\r
18171             <author>Nicko Cadell</author>\r
18172             <author>Gert Driesen</author>\r
18173         </member>\r
18174         <member name="M:log4net.Layout.RawUtcTimeStampLayout.#ctor">\r
18175             <summary>\r
18176             Constructs a RawUtcTimeStampLayout\r
18177             </summary>\r
18178         </member>\r
18179         <member name="M:log4net.Layout.RawUtcTimeStampLayout.Format(log4net.Core.LoggingEvent)">\r
18180             <summary>\r
18181             Gets the <see cref="P:log4net.Core.LoggingEvent.TimeStamp"/> as a <see cref="T:System.DateTime"/>.\r
18182             </summary>\r
18183             <param name="loggingEvent">The event to format</param>\r
18184             <returns>returns the time stamp</returns>\r
18185             <remarks>\r
18186             <para>\r
18187             Gets the <see cref="P:log4net.Core.LoggingEvent.TimeStamp"/> as a <see cref="T:System.DateTime"/>.\r
18188             </para>\r
18189             <para>\r
18190             The time stamp is in universal time. To format the time stamp\r
18191             in local time use <see cref="T:log4net.Layout.RawTimeStampLayout"/>.\r
18192             </para>\r
18193             </remarks>\r
18194         </member>\r
18195         <member name="T:log4net.Layout.SimpleLayout">\r
18196             <summary>\r
18197             A very simple layout\r
18198             </summary>\r
18199             <remarks>\r
18200             <para>\r
18201             SimpleLayout consists of the level of the log statement,\r
18202             followed by " - " and then the log message itself. For example,\r
18203             <code>\r
18204             DEBUG - Hello world\r
18205             </code>\r
18206             </para>\r
18207             </remarks>\r
18208             <author>Nicko Cadell</author>\r
18209             <author>Gert Driesen</author>\r
18210         </member>\r
18211         <member name="M:log4net.Layout.SimpleLayout.#ctor">\r
18212             <summary>\r
18213             Constructs a SimpleLayout\r
18214             </summary>\r
18215         </member>\r
18216         <member name="M:log4net.Layout.SimpleLayout.ActivateOptions">\r
18217             <summary>\r
18218             Initialize layout options\r
18219             </summary>\r
18220             <remarks>\r
18221             <para>\r
18222             This is part of the <see cref="T:log4net.Core.IOptionHandler"/> delayed object\r
18223             activation scheme. The <see cref="M:log4net.Layout.SimpleLayout.ActivateOptions"/> method must \r
18224             be called on this object after the configuration properties have\r
18225             been set. Until <see cref="M:log4net.Layout.SimpleLayout.ActivateOptions"/> is called this\r
18226             object is in an undefined state and must not be used. \r
18227             </para>\r
18228             <para>\r
18229             If any of the configuration properties are modified then \r
18230             <see cref="M:log4net.Layout.SimpleLayout.ActivateOptions"/> must be called again.\r
18231             </para>\r
18232             </remarks>\r
18233         </member>\r
18234         <member name="M:log4net.Layout.SimpleLayout.Format(System.IO.TextWriter,log4net.Core.LoggingEvent)">\r
18235             <summary>\r
18236             Produces a simple formatted output.\r
18237             </summary>\r
18238             <param name="loggingEvent">the event being logged</param>\r
18239             <param name="writer">The TextWriter to write the formatted event to</param>\r
18240             <remarks>\r
18241             <para>\r
18242             Formats the event as the level of the even,\r
18243             followed by " - " and then the log message itself. The\r
18244             output is terminated by a newline.\r
18245             </para>\r
18246             </remarks>\r
18247         </member>\r
18248         <member name="T:log4net.Layout.XmlLayout">\r
18249              <summary>\r
18250              Layout that formats the log events as XML elements.\r
18251              </summary>\r
18252              <remarks>\r
18253              <para>\r
18254              The output of the <see cref="T:log4net.Layout.XmlLayout"/> consists of a series of \r
18255              log4net:event elements. It does not output a complete well-formed XML \r
18256              file. The output is designed to be included as an <em>external entity</em>\r
18257              in a separate file to form a correct XML file.\r
18258              </para>\r
18259              <para>\r
18260              For example, if <c>abc</c> is the name of the file where\r
18261              the <see cref="T:log4net.Layout.XmlLayout"/> output goes, then a well-formed XML file would \r
18262              be:\r
18263              </para>\r
18264              <code lang="XML">\r
18265              &lt;?xml version="1.0" ?&gt;\r
18266              \r
18267              &lt;!DOCTYPE log4net:events SYSTEM "log4net-events.dtd" [&lt;!ENTITY data SYSTEM "abc"&gt;]&gt;\r
18268             \r
18269              &lt;log4net:events version="1.2" xmlns:log4net="http://logging.apache.org/log4net/schemas/log4net-events-1.2&gt;\r
18270                  &amp;data;\r
18271              &lt;/log4net:events&gt;\r
18272              </code>\r
18273              <para>\r
18274              This approach enforces the independence of the <see cref="T:log4net.Layout.XmlLayout"/> \r
18275              and the appender where it is embedded.\r
18276              </para>\r
18277              <para>\r
18278              The <c>version</c> attribute helps components to correctly\r
18279              interpret output generated by <see cref="T:log4net.Layout.XmlLayout"/>. The value of \r
18280              this attribute should be "1.2" for release 1.2 and later.\r
18281              </para>\r
18282              <para>\r
18283              Alternatively the <c>Header</c> and <c>Footer</c> properties can be\r
18284              configured to output the correct XML header, open tag and close tag.\r
18285              When setting the <c>Header</c> and <c>Footer</c> properties it is essential\r
18286              that the underlying data store not be appendable otherwise the data\r
18287              will become invalid XML.\r
18288              </para>\r
18289              </remarks>\r
18290              <author>Nicko Cadell</author>\r
18291              <author>Gert Driesen</author>\r
18292         </member>\r
18293         <member name="T:log4net.Layout.XmlLayoutBase">\r
18294             <summary>\r
18295             Layout that formats the log events as XML elements.\r
18296             </summary>\r
18297             <remarks>\r
18298             <para>\r
18299             This is an abstract class that must be subclassed by an implementation \r
18300             to conform to a specific schema.\r
18301             </para>\r
18302             <para>\r
18303             Deriving classes must implement the <see cref="M:log4net.Layout.XmlLayoutBase.FormatXml(System.Xml.XmlWriter,log4net.Core.LoggingEvent)"/> method.\r
18304             </para>\r
18305             </remarks>\r
18306             <author>Nicko Cadell</author>\r
18307             <author>Gert Driesen</author>\r
18308         </member>\r
18309         <member name="M:log4net.Layout.XmlLayoutBase.#ctor">\r
18310             <summary>\r
18311             Protected constructor to support subclasses\r
18312             </summary>\r
18313             <remarks>\r
18314             <para>\r
18315             Initializes a new instance of the <see cref="T:log4net.Layout.XmlLayoutBase"/> class\r
18316             with no location info.\r
18317             </para>\r
18318             </remarks>\r
18319         </member>\r
18320         <member name="M:log4net.Layout.XmlLayoutBase.#ctor(System.Boolean)">\r
18321             <summary>\r
18322             Protected constructor to support subclasses\r
18323             </summary>\r
18324             <remarks>\r
18325             <para>\r
18326             The <paramref name="locationInfo" /> parameter determines whether \r
18327             location information will be output by the layout. If \r
18328             <paramref name="locationInfo" /> is set to <c>true</c>, then the \r
18329             file name and line number of the statement at the origin of the log \r
18330             statement will be output. \r
18331             </para>\r
18332             <para>\r
18333             If you are embedding this layout within an SMTPAppender\r
18334             then make sure to set the <b>LocationInfo</b> option of that \r
18335             appender as well.\r
18336             </para>\r
18337             </remarks>\r
18338         </member>\r
18339         <member name="M:log4net.Layout.XmlLayoutBase.ActivateOptions">\r
18340             <summary>\r
18341             Initialize layout options\r
18342             </summary>\r
18343             <remarks>\r
18344             <para>\r
18345             This is part of the <see cref="T:log4net.Core.IOptionHandler"/> delayed object\r
18346             activation scheme. The <see cref="M:log4net.Layout.XmlLayoutBase.ActivateOptions"/> method must \r
18347             be called on this object after the configuration properties have\r
18348             been set. Until <see cref="M:log4net.Layout.XmlLayoutBase.ActivateOptions"/> is called this\r
18349             object is in an undefined state and must not be used. \r
18350             </para>\r
18351             <para>\r
18352             If any of the configuration properties are modified then \r
18353             <see cref="M:log4net.Layout.XmlLayoutBase.ActivateOptions"/> must be called again.\r
18354             </para>\r
18355             </remarks>\r
18356         </member>\r
18357         <member name="M:log4net.Layout.XmlLayoutBase.Format(System.IO.TextWriter,log4net.Core.LoggingEvent)">\r
18358             <summary>\r
18359             Produces a formatted string.\r
18360             </summary>\r
18361             <param name="loggingEvent">The event being logged.</param>\r
18362             <param name="writer">The TextWriter to write the formatted event to</param>\r
18363             <remarks>\r
18364             <para>\r
18365             Format the <see cref="T:log4net.Core.LoggingEvent"/> and write it to the <see cref="T:System.IO.TextWriter"/>.\r
18366             </para>\r
18367             <para>\r
18368             This method creates an <see cref="T:System.Xml.XmlTextWriter"/> that writes to the\r
18369             <paramref name="writer"/>. The <see cref="T:System.Xml.XmlTextWriter"/> is passed \r
18370             to the <see cref="M:log4net.Layout.XmlLayoutBase.FormatXml(System.Xml.XmlWriter,log4net.Core.LoggingEvent)"/> method. Subclasses should override the\r
18371             <see cref="M:log4net.Layout.XmlLayoutBase.FormatXml(System.Xml.XmlWriter,log4net.Core.LoggingEvent)"/> method rather than this method.\r
18372             </para>\r
18373             </remarks>\r
18374         </member>\r
18375         <member name="M:log4net.Layout.XmlLayoutBase.FormatXml(System.Xml.XmlWriter,log4net.Core.LoggingEvent)">\r
18376             <summary>\r
18377             Does the actual writing of the XML.\r
18378             </summary>\r
18379             <param name="writer">The writer to use to output the event to.</param>\r
18380             <param name="loggingEvent">The event to write.</param>\r
18381             <remarks>\r
18382             <para>\r
18383             Subclasses should override this method to format\r
18384             the <see cref="T:log4net.Core.LoggingEvent"/> as XML.\r
18385             </para>\r
18386             </remarks>\r
18387         </member>\r
18388         <member name="F:log4net.Layout.XmlLayoutBase.m_locationInfo">\r
18389             <summary>\r
18390             Flag to indicate if location information should be included in\r
18391             the XML events.\r
18392             </summary>\r
18393         </member>\r
18394         <member name="F:log4net.Layout.XmlLayoutBase.m_protectCloseTextWriter">\r
18395             <summary>\r
18396             Writer adapter that ignores Close\r
18397             </summary>\r
18398         </member>\r
18399         <member name="F:log4net.Layout.XmlLayoutBase.m_invalidCharReplacement">\r
18400             <summary>\r
18401             The string to replace invalid chars with\r
18402             </summary>\r
18403         </member>\r
18404         <member name="P:log4net.Layout.XmlLayoutBase.LocationInfo">\r
18405             <summary>\r
18406             Gets a value indicating whether to include location information in \r
18407             the XML events.\r
18408             </summary>\r
18409             <value>\r
18410             <c>true</c> if location information should be included in the XML \r
18411             events; otherwise, <c>false</c>.\r
18412             </value>\r
18413             <remarks>\r
18414             <para>\r
18415             If <see cref="P:log4net.Layout.XmlLayoutBase.LocationInfo"/> is set to <c>true</c>, then the file \r
18416             name and line number of the statement at the origin of the log \r
18417             statement will be output. \r
18418             </para>\r
18419             <para>\r
18420             If you are embedding this layout within an <c>SMTPAppender</c>\r
18421             then make sure to set the <b>LocationInfo</b> option of that \r
18422             appender as well.\r
18423             </para>\r
18424             </remarks>\r
18425         </member>\r
18426         <member name="P:log4net.Layout.XmlLayoutBase.InvalidCharReplacement">\r
18427             <summary>\r
18428             The string to replace characters that can not be expressed in XML with.\r
18429             <remarks>\r
18430             <para>\r
18431             Not all characters may be expressed in XML. This property contains the\r
18432             string to replace those that can not with. This defaults to a ?. Set it\r
18433             to the empty string to simply remove offending characters. For more\r
18434             details on the allowed character ranges see http://www.w3.org/TR/REC-xml/#charsets\r
18435             Character replacement will occur in  the log message, the property names \r
18436             and the property values.\r
18437             </para>\r
18438             </remarks>\r
18439             </summary>\r
18440         </member>\r
18441         <member name="P:log4net.Layout.XmlLayoutBase.ContentType">\r
18442             <summary>\r
18443             Gets the content type output by this layout. \r
18444             </summary>\r
18445             <value>\r
18446             As this is the XML layout, the value is always <c>"text/xml"</c>.\r
18447             </value>\r
18448             <remarks>\r
18449             <para>\r
18450             As this is the XML layout, the value is always <c>"text/xml"</c>.\r
18451             </para>\r
18452             </remarks>\r
18453         </member>\r
18454         <member name="M:log4net.Layout.XmlLayout.#ctor">\r
18455             <summary>\r
18456             Constructs an XmlLayout\r
18457             </summary>\r
18458         </member>\r
18459         <member name="M:log4net.Layout.XmlLayout.#ctor(System.Boolean)">\r
18460             <summary>\r
18461             Constructs an XmlLayout.\r
18462             </summary>\r
18463             <remarks>\r
18464             <para>\r
18465             The <b>LocationInfo</b> option takes a boolean value. By\r
18466             default, it is set to false which means there will be no location\r
18467             information output by this layout. If the the option is set to\r
18468             true, then the file name and line number of the statement\r
18469             at the origin of the log statement will be output. \r
18470             </para>\r
18471             <para>\r
18472             If you are embedding this layout within an SmtpAppender\r
18473             then make sure to set the <b>LocationInfo</b> option of that \r
18474             appender as well.\r
18475             </para>\r
18476             </remarks>\r
18477         </member>\r
18478         <member name="M:log4net.Layout.XmlLayout.ActivateOptions">\r
18479             <summary>\r
18480             Initialize layout options\r
18481             </summary>\r
18482             <remarks>\r
18483             <para>\r
18484             This is part of the <see cref="T:log4net.Core.IOptionHandler"/> delayed object\r
18485             activation scheme. The <see cref="M:log4net.Layout.XmlLayout.ActivateOptions"/> method must \r
18486             be called on this object after the configuration properties have\r
18487             been set. Until <see cref="M:log4net.Layout.XmlLayout.ActivateOptions"/> is called this\r
18488             object is in an undefined state and must not be used. \r
18489             </para>\r
18490             <para>\r
18491             If any of the configuration properties are modified then \r
18492             <see cref="M:log4net.Layout.XmlLayout.ActivateOptions"/> must be called again.\r
18493             </para>\r
18494             <para>\r
18495             Builds a cache of the element names\r
18496             </para>\r
18497             </remarks>\r
18498         </member>\r
18499         <member name="M:log4net.Layout.XmlLayout.FormatXml(System.Xml.XmlWriter,log4net.Core.LoggingEvent)">\r
18500             <summary>\r
18501             Does the actual writing of the XML.\r
18502             </summary>\r
18503             <param name="writer">The writer to use to output the event to.</param>\r
18504             <param name="loggingEvent">The event to write.</param>\r
18505             <remarks>\r
18506             <para>\r
18507             Override the base class <see cref="M:log4net.Layout.XmlLayoutBase.FormatXml(System.Xml.XmlWriter,log4net.Core.LoggingEvent)"/> method\r
18508             to write the <see cref="T:log4net.Core.LoggingEvent"/> to the <see cref="T:System.Xml.XmlWriter"/>.\r
18509             </para>\r
18510             </remarks>\r
18511         </member>\r
18512         <member name="F:log4net.Layout.XmlLayout.m_prefix">\r
18513             <summary>\r
18514             The prefix to use for all generated element names\r
18515             </summary>\r
18516         </member>\r
18517         <member name="P:log4net.Layout.XmlLayout.Prefix">\r
18518             <summary>\r
18519             The prefix to use for all element names\r
18520             </summary>\r
18521             <remarks>\r
18522             <para>\r
18523             The default prefix is <b>log4net</b>. Set this property\r
18524             to change the prefix. If the prefix is set to an empty string\r
18525             then no prefix will be written.\r
18526             </para>\r
18527             </remarks>\r
18528         </member>\r
18529         <member name="P:log4net.Layout.XmlLayout.Base64EncodeMessage">\r
18530             <summary>\r
18531             Set whether or not to base64 encode the message.\r
18532             </summary>\r
18533             <remarks>\r
18534             <para>\r
18535             By default the log message will be written as text to the xml\r
18536             output. This can cause problems when the message contains binary\r
18537             data. By setting this to true the contents of the message will be\r
18538             base64 encoded. If this is set then invalid character replacement\r
18539             (see <see cref="P:log4net.Layout.XmlLayoutBase.InvalidCharReplacement"/>) will not be performed\r
18540             on the log message.\r
18541             </para>\r
18542             </remarks>\r
18543         </member>\r
18544         <member name="P:log4net.Layout.XmlLayout.Base64EncodeProperties">\r
18545             <summary>\r
18546             Set whether or not to base64 encode the property values.\r
18547             </summary>\r
18548             <remarks>\r
18549             <para>\r
18550             By default the properties will be written as text to the xml\r
18551             output. This can cause problems when one or more properties contain\r
18552             binary data. By setting this to true the values of the properties\r
18553             will be base64 encoded. If this is set then invalid character replacement\r
18554             (see <see cref="P:log4net.Layout.XmlLayoutBase.InvalidCharReplacement"/>) will not be performed\r
18555             on the property values.\r
18556             </para>\r
18557             </remarks>\r
18558         </member>\r
18559         <member name="T:log4net.Layout.XmlLayoutSchemaLog4j">\r
18560             <summary>\r
18561             Layout that formats the log events as XML elements compatible with the log4j schema\r
18562             </summary>\r
18563             <remarks>\r
18564             <para>\r
18565             Formats the log events according to the http://logging.apache.org/log4j schema.\r
18566             </para>\r
18567             </remarks>\r
18568             <author>Nicko Cadell</author>\r
18569         </member>\r
18570         <member name="F:log4net.Layout.XmlLayoutSchemaLog4j.s_date1970">\r
18571             <summary>\r
18572             The 1st of January 1970 in UTC\r
18573             </summary>\r
18574         </member>\r
18575         <member name="M:log4net.Layout.XmlLayoutSchemaLog4j.#ctor">\r
18576             <summary>\r
18577             Constructs an XMLLayoutSchemaLog4j\r
18578             </summary>\r
18579         </member>\r
18580         <member name="M:log4net.Layout.XmlLayoutSchemaLog4j.#ctor(System.Boolean)">\r
18581             <summary>\r
18582             Constructs an XMLLayoutSchemaLog4j.\r
18583             </summary>\r
18584             <remarks>\r
18585             <para>\r
18586             The <b>LocationInfo</b> option takes a boolean value. By\r
18587             default, it is set to false which means there will be no location\r
18588             information output by this layout. If the the option is set to\r
18589             true, then the file name and line number of the statement\r
18590             at the origin of the log statement will be output. \r
18591             </para>\r
18592             <para>\r
18593             If you are embedding this layout within an SMTPAppender\r
18594             then make sure to set the <b>LocationInfo</b> option of that \r
18595             appender as well.\r
18596             </para>\r
18597             </remarks>\r
18598         </member>\r
18599         <member name="M:log4net.Layout.XmlLayoutSchemaLog4j.FormatXml(System.Xml.XmlWriter,log4net.Core.LoggingEvent)">\r
18600             <summary>\r
18601             Actually do the writing of the xml\r
18602             </summary>\r
18603             <param name="writer">the writer to use</param>\r
18604             <param name="loggingEvent">the event to write</param>\r
18605             <remarks>\r
18606             <para>\r
18607             Generate XML that is compatible with the log4j schema.\r
18608             </para>\r
18609             </remarks>\r
18610         </member>\r
18611         <member name="P:log4net.Layout.XmlLayoutSchemaLog4j.Version">\r
18612             <summary>\r
18613             The version of the log4j schema to use.\r
18614             </summary>\r
18615             <remarks>\r
18616             <para>\r
18617             Only version 1.2 of the log4j schema is supported.\r
18618             </para>\r
18619             </remarks>\r
18620         </member>\r
18621         <member name="T:log4net.ObjectRenderer.DefaultRenderer">\r
18622             <summary>\r
18623             The default object Renderer.\r
18624             </summary>\r
18625             <remarks>\r
18626             <para>\r
18627             The default renderer supports rendering objects and collections to strings.\r
18628             </para>\r
18629             <para>\r
18630             See the <see cref="M:log4net.ObjectRenderer.DefaultRenderer.RenderObject(log4net.ObjectRenderer.RendererMap,System.Object,System.IO.TextWriter)"/> method for details of the output.\r
18631             </para>\r
18632             </remarks>\r
18633             <author>Nicko Cadell</author>\r
18634             <author>Gert Driesen</author>\r
18635         </member>\r
18636         <member name="T:log4net.ObjectRenderer.IObjectRenderer">\r
18637             <summary>\r
18638             Implement this interface in order to render objects as strings\r
18639             </summary>\r
18640             <remarks>\r
18641             <para>\r
18642             Certain types require special case conversion to\r
18643             string form. This conversion is done by an object renderer.\r
18644             Object renderers implement the <see cref="T:log4net.ObjectRenderer.IObjectRenderer"/>\r
18645             interface.\r
18646             </para>\r
18647             </remarks>\r
18648             <author>Nicko Cadell</author>\r
18649             <author>Gert Driesen</author>\r
18650         </member>\r
18651         <member name="M:log4net.ObjectRenderer.IObjectRenderer.RenderObject(log4net.ObjectRenderer.RendererMap,System.Object,System.IO.TextWriter)">\r
18652             <summary>\r
18653             Render the object <paramref name="obj"/> to a string\r
18654             </summary>\r
18655             <param name="rendererMap">The map used to lookup renderers</param>\r
18656             <param name="obj">The object to render</param>\r
18657             <param name="writer">The writer to render to</param>\r
18658             <remarks>\r
18659             <para>\r
18660             Render the object <paramref name="obj"/> to a \r
18661             string.\r
18662             </para>\r
18663             <para>\r
18664             The <paramref name="rendererMap"/> parameter is\r
18665             provided to lookup and render other objects. This is\r
18666             very useful where <paramref name="obj"/> contains\r
18667             nested objects of unknown type. The <see cref="M:log4net.ObjectRenderer.RendererMap.FindAndRender(System.Object,System.IO.TextWriter)"/>\r
18668             method can be used to render these objects.\r
18669             </para>\r
18670             </remarks>\r
18671         </member>\r
18672         <member name="M:log4net.ObjectRenderer.DefaultRenderer.#ctor">\r
18673             <summary>\r
18674             Default constructor\r
18675             </summary>\r
18676             <remarks>\r
18677             <para>\r
18678             Default constructor\r
18679             </para>\r
18680             </remarks>\r
18681         </member>\r
18682         <member name="M:log4net.ObjectRenderer.DefaultRenderer.RenderObject(log4net.ObjectRenderer.RendererMap,System.Object,System.IO.TextWriter)">\r
18683             <summary>\r
18684             Render the object <paramref name="obj"/> to a string\r
18685             </summary>\r
18686             <param name="rendererMap">The map used to lookup renderers</param>\r
18687             <param name="obj">The object to render</param>\r
18688             <param name="writer">The writer to render to</param>\r
18689             <remarks>\r
18690             <para>\r
18691             Render the object <paramref name="obj"/> to a string.\r
18692             </para>\r
18693             <para>\r
18694             The <paramref name="rendererMap"/> parameter is\r
18695             provided to lookup and render other objects. This is\r
18696             very useful where <paramref name="obj"/> contains\r
18697             nested objects of unknown type. The <see cref="M:log4net.ObjectRenderer.RendererMap.FindAndRender(System.Object)"/>\r
18698             method can be used to render these objects.\r
18699             </para>\r
18700             <para>\r
18701             The default renderer supports rendering objects to strings as follows:\r
18702             </para>\r
18703             <list type="table">\r
18704                 <listheader>\r
18705                         <term>Value</term>\r
18706                         <description>Rendered String</description>\r
18707                 </listheader>\r
18708                 <item>\r
18709                         <term><c>null</c></term>\r
18710                         <description>\r
18711                         <para>"(null)"</para>\r
18712                         </description>\r
18713                 </item>\r
18714                 <item>\r
18715                         <term><see cref="T:System.Array"/></term>\r
18716                         <description>\r
18717                         <para>\r
18718                         For a one dimensional array this is the\r
18719                         array type name, an open brace, followed by a comma\r
18720                         separated list of the elements (using the appropriate\r
18721                         renderer), followed by a close brace. \r
18722                         </para>\r
18723                         <para>\r
18724                         For example: <c>int[] {1, 2, 3}</c>.\r
18725                         </para>\r
18726                         <para>\r
18727                         If the array is not one dimensional the \r
18728                         <c>Array.ToString()</c> is returned.\r
18729                         </para>\r
18730                         </description>\r
18731                 </item>\r
18732                 <item>\r
18733                         <term><see cref="T:System.Collections.IEnumerable"/>, <see cref="T:System.Collections.ICollection"/> &amp; <see cref="T:System.Collections.IEnumerator"/></term>\r
18734                         <description>\r
18735                         <para>\r
18736                         Rendered as an open brace, followed by a comma\r
18737                         separated list of the elements (using the appropriate\r
18738                         renderer), followed by a close brace.\r
18739                         </para>\r
18740                         <para>\r
18741                         For example: <c>{a, b, c}</c>.\r
18742                         </para>\r
18743                         <para>\r
18744                         All collection classes that implement <see cref="T:System.Collections.ICollection"/> its subclasses, \r
18745                         or generic equivalents all implement the <see cref="T:System.Collections.IEnumerable"/> interface.\r
18746                         </para>\r
18747                         </description>\r
18748                 </item>         \r
18749                 <item>\r
18750                         <term><see cref="T:System.Collections.DictionaryEntry"/></term>\r
18751                         <description>\r
18752                         <para>\r
18753                         Rendered as the key, an equals sign ('='), and the value (using the appropriate\r
18754                         renderer). \r
18755                         </para>\r
18756                         <para>\r
18757                         For example: <c>key=value</c>.\r
18758                         </para>\r
18759                         </description>\r
18760                 </item>         \r
18761                 <item>\r
18762                         <term>other</term>\r
18763                         <description>\r
18764                         <para><c>Object.ToString()</c></para>\r
18765                         </description>\r
18766                 </item>\r
18767             </list>\r
18768             </remarks>\r
18769         </member>\r
18770         <member name="M:log4net.ObjectRenderer.DefaultRenderer.RenderArray(log4net.ObjectRenderer.RendererMap,System.Array,System.IO.TextWriter)">\r
18771             <summary>\r
18772             Render the array argument into a string\r
18773             </summary>\r
18774             <param name="rendererMap">The map used to lookup renderers</param>\r
18775             <param name="array">the array to render</param>\r
18776             <param name="writer">The writer to render to</param>\r
18777             <remarks>\r
18778             <para>\r
18779             For a one dimensional array this is the\r
18780             array type name, an open brace, followed by a comma\r
18781             separated list of the elements (using the appropriate\r
18782             renderer), followed by a close brace. For example:\r
18783             <c>int[] {1, 2, 3}</c>.\r
18784             </para>\r
18785             <para>\r
18786             If the array is not one dimensional the \r
18787             <c>Array.ToString()</c> is returned.\r
18788             </para>\r
18789             </remarks>\r
18790         </member>\r
18791         <member name="M:log4net.ObjectRenderer.DefaultRenderer.RenderEnumerator(log4net.ObjectRenderer.RendererMap,System.Collections.IEnumerator,System.IO.TextWriter)">\r
18792             <summary>\r
18793             Render the enumerator argument into a string\r
18794             </summary>\r
18795             <param name="rendererMap">The map used to lookup renderers</param>\r
18796             <param name="enumerator">the enumerator to render</param>\r
18797             <param name="writer">The writer to render to</param>\r
18798             <remarks>\r
18799             <para>\r
18800             Rendered as an open brace, followed by a comma\r
18801             separated list of the elements (using the appropriate\r
18802             renderer), followed by a close brace. For example:\r
18803             <c>{a, b, c}</c>.\r
18804             </para>\r
18805             </remarks>\r
18806         </member>\r
18807         <member name="M:log4net.ObjectRenderer.DefaultRenderer.RenderDictionaryEntry(log4net.ObjectRenderer.RendererMap,System.Collections.DictionaryEntry,System.IO.TextWriter)">\r
18808             <summary>\r
18809             Render the DictionaryEntry argument into a string\r
18810             </summary>\r
18811             <param name="rendererMap">The map used to lookup renderers</param>\r
18812             <param name="entry">the DictionaryEntry to render</param>\r
18813             <param name="writer">The writer to render to</param>\r
18814             <remarks>\r
18815             <para>\r
18816             Render the key, an equals sign ('='), and the value (using the appropriate\r
18817             renderer). For example: <c>key=value</c>.\r
18818             </para>\r
18819             </remarks>\r
18820         </member>\r
18821         <member name="T:log4net.ObjectRenderer.RendererMap">\r
18822             <summary>\r
18823             Map class objects to an <see cref="T:log4net.ObjectRenderer.IObjectRenderer"/>.\r
18824             </summary>\r
18825             <remarks>\r
18826             <para>\r
18827             Maintains a mapping between types that require special\r
18828             rendering and the <see cref="T:log4net.ObjectRenderer.IObjectRenderer"/> that\r
18829             is used to render them.\r
18830             </para>\r
18831             <para>\r
18832             The <see cref="M:log4net.ObjectRenderer.RendererMap.FindAndRender(System.Object)"/> method is used to render an\r
18833             <c>object</c> using the appropriate renderers defined in this map.\r
18834             </para>\r
18835             </remarks>\r
18836             <author>Nicko Cadell</author>\r
18837             <author>Gert Driesen</author>\r
18838         </member>\r
18839         <member name="M:log4net.ObjectRenderer.RendererMap.#ctor">\r
18840             <summary>\r
18841             Default Constructor\r
18842             </summary>\r
18843             <remarks>\r
18844             <para>\r
18845             Default constructor.\r
18846             </para>\r
18847             </remarks>\r
18848         </member>\r
18849         <member name="M:log4net.ObjectRenderer.RendererMap.FindAndRender(System.Object)">\r
18850             <summary>\r
18851             Render <paramref name="obj"/> using the appropriate renderer.\r
18852             </summary>\r
18853             <param name="obj">the object to render to a string</param>\r
18854             <returns>the object rendered as a string</returns>\r
18855             <remarks>\r
18856             <para>\r
18857             This is a convenience method used to render an object to a string.\r
18858             The alternative method <see cref="M:log4net.ObjectRenderer.RendererMap.FindAndRender(System.Object,System.IO.TextWriter)"/>\r
18859             should be used when streaming output to a <see cref="T:System.IO.TextWriter"/>.\r
18860             </para>\r
18861             </remarks>\r
18862         </member>\r
18863         <member name="M:log4net.ObjectRenderer.RendererMap.FindAndRender(System.Object,System.IO.TextWriter)">\r
18864             <summary>\r
18865             Render <paramref name="obj"/> using the appropriate renderer.\r
18866             </summary>\r
18867             <param name="obj">the object to render to a string</param>\r
18868             <param name="writer">The writer to render to</param>\r
18869             <remarks>\r
18870             <para>\r
18871             Find the appropriate renderer for the type of the\r
18872             <paramref name="obj"/> parameter. This is accomplished by calling the\r
18873             <see cref="M:log4net.ObjectRenderer.RendererMap.Get(System.Type)"/> method. Once a renderer is found, it is\r
18874             applied on the object <paramref name="obj"/> and the result is returned\r
18875             as a <see cref="T:System.String"/>.\r
18876             </para>\r
18877             </remarks>\r
18878         </member>\r
18879         <member name="M:log4net.ObjectRenderer.RendererMap.Get(System.Object)">\r
18880             <summary>\r
18881             Gets the renderer for the specified object type\r
18882             </summary>\r
18883             <param name="obj">the object to lookup the renderer for</param>\r
18884             <returns>the renderer for <paramref name="obj"/></returns>\r
18885             <remarks>\r
18886             <param>\r
18887             Gets the renderer for the specified object type.\r
18888             </param>\r
18889             <param>\r
18890             Syntactic sugar method that calls <see cref="M:log4net.ObjectRenderer.RendererMap.Get(System.Type)"/> \r
18891             with the type of the object parameter.\r
18892             </param>\r
18893             </remarks>\r
18894         </member>\r
18895         <member name="M:log4net.ObjectRenderer.RendererMap.Get(System.Type)">\r
18896             <summary>\r
18897             Gets the renderer for the specified type\r
18898             </summary>\r
18899             <param name="type">the type to lookup the renderer for</param>\r
18900             <returns>the renderer for the specified type</returns>\r
18901             <remarks>\r
18902             <para>\r
18903             Returns the renderer for the specified type.\r
18904             If no specific renderer has been defined the\r
18905             <see cref="P:log4net.ObjectRenderer.RendererMap.DefaultRenderer"/> will be returned.\r
18906             </para>\r
18907             </remarks>\r
18908         </member>\r
18909         <member name="M:log4net.ObjectRenderer.RendererMap.SearchTypeAndInterfaces(System.Type)">\r
18910             <summary>\r
18911             Internal function to recursively search interfaces\r
18912             </summary>\r
18913             <param name="type">the type to lookup the renderer for</param>\r
18914             <returns>the renderer for the specified type</returns>\r
18915         </member>\r
18916         <member name="M:log4net.ObjectRenderer.RendererMap.Clear">\r
18917             <summary>\r
18918             Clear the map of renderers\r
18919             </summary>\r
18920             <remarks>\r
18921             <para>\r
18922             Clear the custom renderers defined by using\r
18923             <see cref="M:log4net.ObjectRenderer.RendererMap.Put(System.Type,log4net.ObjectRenderer.IObjectRenderer)"/>. The <see cref="P:log4net.ObjectRenderer.RendererMap.DefaultRenderer"/>\r
18924             cannot be removed.\r
18925             </para>\r
18926             </remarks>\r
18927         </member>\r
18928         <member name="M:log4net.ObjectRenderer.RendererMap.Put(System.Type,log4net.ObjectRenderer.IObjectRenderer)">\r
18929             <summary>\r
18930             Register an <see cref="T:log4net.ObjectRenderer.IObjectRenderer"/> for <paramref name="typeToRender"/>. \r
18931             </summary>\r
18932             <param name="typeToRender">the type that will be rendered by <paramref name="renderer"/></param>\r
18933             <param name="renderer">the renderer for <paramref name="typeToRender"/></param>\r
18934             <remarks>\r
18935             <para>\r
18936             Register an object renderer for a specific source type.\r
18937             This renderer will be returned from a call to <see cref="M:log4net.ObjectRenderer.RendererMap.Get(System.Type)"/>\r
18938             specifying the same <paramref name="typeToRender"/> as an argument.\r
18939             </para>\r
18940             </remarks>\r
18941         </member>\r
18942         <member name="P:log4net.ObjectRenderer.RendererMap.DefaultRenderer">\r
18943             <summary>\r
18944             Get the default renderer instance\r
18945             </summary>\r
18946             <value>the default renderer</value>\r
18947             <remarks>\r
18948             <para>\r
18949             Get the default renderer\r
18950             </para>\r
18951             </remarks>\r
18952         </member>\r
18953         <member name="T:log4net.Plugin.IPlugin">\r
18954             <summary>\r
18955             Interface implemented by logger repository plugins.\r
18956             </summary>\r
18957             <remarks>\r
18958             <para>\r
18959             Plugins define additional behavior that can be associated\r
18960             with a <see cref="T:log4net.Repository.ILoggerRepository"/>.\r
18961             The <see cref="T:log4net.Plugin.PluginMap"/> held by the <see cref="P:log4net.Repository.ILoggerRepository.PluginMap"/>\r
18962             property is used to store the plugins for a repository.\r
18963             </para>\r
18964             <para>\r
18965             The <c>log4net.Config.PluginAttribute</c> can be used to\r
18966             attach plugins to repositories created using configuration\r
18967             attributes.\r
18968             </para>\r
18969             </remarks>\r
18970             <author>Nicko Cadell</author>\r
18971             <author>Gert Driesen</author>\r
18972         </member>\r
18973         <member name="M:log4net.Plugin.IPlugin.Attach(log4net.Repository.ILoggerRepository)">\r
18974             <summary>\r
18975             Attaches the plugin to the specified <see cref="T:log4net.Repository.ILoggerRepository"/>.\r
18976             </summary>\r
18977             <param name="repository">The <see cref="T:log4net.Repository.ILoggerRepository"/> that this plugin should be attached to.</param>\r
18978             <remarks>\r
18979             <para>\r
18980             A plugin may only be attached to a single repository.\r
18981             </para>\r
18982             <para>\r
18983             This method is called when the plugin is attached to the repository.\r
18984             </para>\r
18985             </remarks>\r
18986         </member>\r
18987         <member name="M:log4net.Plugin.IPlugin.Shutdown">\r
18988             <summary>\r
18989             Is called when the plugin is to shutdown.\r
18990             </summary>\r
18991             <remarks>\r
18992             <para>\r
18993             This method is called to notify the plugin that \r
18994             it should stop operating and should detach from\r
18995             the repository.\r
18996             </para>\r
18997             </remarks>\r
18998         </member>\r
18999         <member name="P:log4net.Plugin.IPlugin.Name">\r
19000             <summary>\r
19001             Gets the name of the plugin.\r
19002             </summary>\r
19003             <value>\r
19004             The name of the plugin.\r
19005             </value>\r
19006             <remarks>\r
19007             <para>\r
19008             Plugins are stored in the <see cref="T:log4net.Plugin.PluginMap"/>\r
19009             keyed by name. Each plugin instance attached to a\r
19010             repository must be a unique name.\r
19011             </para>\r
19012             </remarks>\r
19013         </member>\r
19014         <member name="T:log4net.Plugin.PluginCollection">\r
19015             <summary>\r
19016             A strongly-typed collection of <see cref="T:log4net.Plugin.IPlugin"/> objects.\r
19017             </summary>\r
19018             <author>Nicko Cadell</author>\r
19019         </member>\r
19020         <member name="M:log4net.Plugin.PluginCollection.ReadOnly(log4net.Plugin.PluginCollection)">\r
19021             <summary>\r
19022             Creates a read-only wrapper for a <c>PluginCollection</c> instance.\r
19023             </summary>\r
19024             <param name="list">list to create a readonly wrapper arround</param>\r
19025             <returns>\r
19026             A <c>PluginCollection</c> wrapper that is read-only.\r
19027             </returns>\r
19028         </member>\r
19029         <member name="M:log4net.Plugin.PluginCollection.#ctor">\r
19030             <summary>\r
19031             Initializes a new instance of the <c>PluginCollection</c> class\r
19032             that is empty and has the default initial capacity.\r
19033             </summary>\r
19034         </member>\r
19035         <member name="M:log4net.Plugin.PluginCollection.#ctor(System.Int32)">\r
19036             <summary>\r
19037             Initializes a new instance of the <c>PluginCollection</c> class\r
19038             that has the specified initial capacity.\r
19039             </summary>\r
19040             <param name="capacity">\r
19041             The number of elements that the new <c>PluginCollection</c> is initially capable of storing.\r
19042             </param>\r
19043         </member>\r
19044         <member name="M:log4net.Plugin.PluginCollection.#ctor(log4net.Plugin.PluginCollection)">\r
19045             <summary>\r
19046             Initializes a new instance of the <c>PluginCollection</c> class\r
19047             that contains elements copied from the specified <c>PluginCollection</c>.\r
19048             </summary>\r
19049             <param name="c">The <c>PluginCollection</c> whose elements are copied to the new collection.</param>\r
19050         </member>\r
19051         <member name="M:log4net.Plugin.PluginCollection.#ctor(log4net.Plugin.IPlugin[])">\r
19052             <summary>\r
19053             Initializes a new instance of the <c>PluginCollection</c> class\r
19054             that contains elements copied from the specified <see cref="T:log4net.Plugin.IPlugin"/> array.\r
19055             </summary>\r
19056             <param name="a">The <see cref="T:log4net.Plugin.IPlugin"/> array whose elements are copied to the new list.</param>\r
19057         </member>\r
19058         <member name="M:log4net.Plugin.PluginCollection.#ctor(System.Collections.ICollection)">\r
19059             <summary>\r
19060             Initializes a new instance of the <c>PluginCollection</c> class\r
19061             that contains elements copied from the specified <see cref="T:log4net.Plugin.IPlugin"/> collection.\r
19062             </summary>\r
19063             <param name="col">The <see cref="T:log4net.Plugin.IPlugin"/> collection whose elements are copied to the new list.</param>\r
19064         </member>\r
19065         <member name="M:log4net.Plugin.PluginCollection.#ctor(log4net.Plugin.PluginCollection.Tag)">\r
19066             <summary>\r
19067             Allow subclasses to avoid our default constructors\r
19068             </summary>\r
19069             <param name="tag"></param>\r
19070             <exclude/>\r
19071         </member>\r
19072         <member name="M:log4net.Plugin.PluginCollection.CopyTo(log4net.Plugin.IPlugin[])">\r
19073             <summary>\r
19074             Copies the entire <c>PluginCollection</c> to a one-dimensional\r
19075             <see cref="T:log4net.Plugin.IPlugin"/> array.\r
19076             </summary>\r
19077             <param name="array">The one-dimensional <see cref="T:log4net.Plugin.IPlugin"/> array to copy to.</param>\r
19078         </member>\r
19079         <member name="M:log4net.Plugin.PluginCollection.CopyTo(log4net.Plugin.IPlugin[],System.Int32)">\r
19080             <summary>\r
19081             Copies the entire <c>PluginCollection</c> to a one-dimensional\r
19082             <see cref="T:log4net.Plugin.IPlugin"/> array, starting at the specified index of the target array.\r
19083             </summary>\r
19084             <param name="array">The one-dimensional <see cref="T:log4net.Plugin.IPlugin"/> array to copy to.</param>\r
19085             <param name="start">The zero-based index in <paramref name="array"/> at which copying begins.</param>\r
19086         </member>\r
19087         <member name="M:log4net.Plugin.PluginCollection.Add(log4net.Plugin.IPlugin)">\r
19088             <summary>\r
19089             Adds a <see cref="T:log4net.Plugin.IPlugin"/> to the end of the <c>PluginCollection</c>.\r
19090             </summary>\r
19091             <param name="item">The <see cref="T:log4net.Plugin.IPlugin"/> to be added to the end of the <c>PluginCollection</c>.</param>\r
19092             <returns>The index at which the value has been added.</returns>\r
19093         </member>\r
19094         <member name="M:log4net.Plugin.PluginCollection.Clear">\r
19095             <summary>\r
19096             Removes all elements from the <c>PluginCollection</c>.\r
19097             </summary>\r
19098         </member>\r
19099         <member name="M:log4net.Plugin.PluginCollection.Clone">\r
19100             <summary>\r
19101             Creates a shallow copy of the <see cref="T:log4net.Plugin.PluginCollection"/>.\r
19102             </summary>\r
19103             <returns>A new <see cref="T:log4net.Plugin.PluginCollection"/> with a shallow copy of the collection data.</returns>\r
19104         </member>\r
19105         <member name="M:log4net.Plugin.PluginCollection.Contains(log4net.Plugin.IPlugin)">\r
19106             <summary>\r
19107             Determines whether a given <see cref="T:log4net.Plugin.IPlugin"/> is in the <c>PluginCollection</c>.\r
19108             </summary>\r
19109             <param name="item">The <see cref="T:log4net.Plugin.IPlugin"/> to check for.</param>\r
19110             <returns><c>true</c> if <paramref name="item"/> is found in the <c>PluginCollection</c>; otherwise, <c>false</c>.</returns>\r
19111         </member>\r
19112         <member name="M:log4net.Plugin.PluginCollection.IndexOf(log4net.Plugin.IPlugin)">\r
19113             <summary>\r
19114             Returns the zero-based index of the first occurrence of a <see cref="T:log4net.Plugin.IPlugin"/>\r
19115             in the <c>PluginCollection</c>.\r
19116             </summary>\r
19117             <param name="item">The <see cref="T:log4net.Plugin.IPlugin"/> to locate in the <c>PluginCollection</c>.</param>\r
19118             <returns>\r
19119             The zero-based index of the first occurrence of <paramref name="item"/> \r
19120             in the entire <c>PluginCollection</c>, if found; otherwise, -1.\r
19121             </returns>\r
19122         </member>\r
19123         <member name="M:log4net.Plugin.PluginCollection.Insert(System.Int32,log4net.Plugin.IPlugin)">\r
19124             <summary>\r
19125             Inserts an element into the <c>PluginCollection</c> at the specified index.\r
19126             </summary>\r
19127             <param name="index">The zero-based index at which <paramref name="item"/> should be inserted.</param>\r
19128             <param name="item">The <see cref="T:log4net.Plugin.IPlugin"/> to insert.</param>\r
19129             <exception cref="T:System.ArgumentOutOfRangeException">\r
19130             <para><paramref name="index"/> is less than zero</para>\r
19131             <para>-or-</para>\r
19132             <para><paramref name="index"/> is equal to or greater than <see cref="P:log4net.Plugin.PluginCollection.Count"/>.</para>\r
19133             </exception>\r
19134         </member>\r
19135         <member name="M:log4net.Plugin.PluginCollection.Remove(log4net.Plugin.IPlugin)">\r
19136             <summary>\r
19137             Removes the first occurrence of a specific <see cref="T:log4net.Plugin.IPlugin"/> from the <c>PluginCollection</c>.\r
19138             </summary>\r
19139             <param name="item">The <see cref="T:log4net.Plugin.IPlugin"/> to remove from the <c>PluginCollection</c>.</param>\r
19140             <exception cref="T:System.ArgumentException">\r
19141             The specified <see cref="T:log4net.Plugin.IPlugin"/> was not found in the <c>PluginCollection</c>.\r
19142             </exception>\r
19143         </member>\r
19144         <member name="M:log4net.Plugin.PluginCollection.RemoveAt(System.Int32)">\r
19145             <summary>\r
19146             Removes the element at the specified index of the <c>PluginCollection</c>.\r
19147             </summary>\r
19148             <param name="index">The zero-based index of the element to remove.</param>\r
19149             <exception cref="T:System.ArgumentOutOfRangeException">\r
19150             <para><paramref name="index"/> is less than zero.</para>\r
19151             <para>-or-</para>\r
19152             <para><paramref name="index"/> is equal to or greater than <see cref="P:log4net.Plugin.PluginCollection.Count"/>.</para>\r
19153             </exception>\r
19154         </member>\r
19155         <member name="M:log4net.Plugin.PluginCollection.GetEnumerator">\r
19156             <summary>\r
19157             Returns an enumerator that can iterate through the <c>PluginCollection</c>.\r
19158             </summary>\r
19159             <returns>An <see cref="T:log4net.Plugin.PluginCollection.Enumerator"/> for the entire <c>PluginCollection</c>.</returns>\r
19160         </member>\r
19161         <member name="M:log4net.Plugin.PluginCollection.AddRange(log4net.Plugin.PluginCollection)">\r
19162             <summary>\r
19163             Adds the elements of another <c>PluginCollection</c> to the current <c>PluginCollection</c>.\r
19164             </summary>\r
19165             <param name="x">The <c>PluginCollection</c> whose elements should be added to the end of the current <c>PluginCollection</c>.</param>\r
19166             <returns>The new <see cref="P:log4net.Plugin.PluginCollection.Count"/> of the <c>PluginCollection</c>.</returns>\r
19167         </member>\r
19168         <member name="M:log4net.Plugin.PluginCollection.AddRange(log4net.Plugin.IPlugin[])">\r
19169             <summary>\r
19170             Adds the elements of a <see cref="T:log4net.Plugin.IPlugin"/> array to the current <c>PluginCollection</c>.\r
19171             </summary>\r
19172             <param name="x">The <see cref="T:log4net.Plugin.IPlugin"/> array whose elements should be added to the end of the <c>PluginCollection</c>.</param>\r
19173             <returns>The new <see cref="P:log4net.Plugin.PluginCollection.Count"/> of the <c>PluginCollection</c>.</returns>\r
19174         </member>\r
19175         <member name="M:log4net.Plugin.PluginCollection.AddRange(System.Collections.ICollection)">\r
19176             <summary>\r
19177             Adds the elements of a <see cref="T:log4net.Plugin.IPlugin"/> collection to the current <c>PluginCollection</c>.\r
19178             </summary>\r
19179             <param name="col">The <see cref="T:log4net.Plugin.IPlugin"/> collection whose elements should be added to the end of the <c>PluginCollection</c>.</param>\r
19180             <returns>The new <see cref="P:log4net.Plugin.PluginCollection.Count"/> of the <c>PluginCollection</c>.</returns>\r
19181         </member>\r
19182         <member name="M:log4net.Plugin.PluginCollection.TrimToSize">\r
19183             <summary>\r
19184             Sets the capacity to the actual number of elements.\r
19185             </summary>\r
19186         </member>\r
19187         <member name="M:log4net.Plugin.PluginCollection.ValidateIndex(System.Int32)">\r
19188             <exception cref="T:System.ArgumentOutOfRangeException">\r
19189             <para><paramref name="index"/> is less than zero.</para>\r
19190             <para>-or-</para>\r
19191             <para><paramref name="index"/> is equal to or greater than <see cref="P:log4net.Plugin.PluginCollection.Count"/>.</para>\r
19192             </exception>\r
19193         </member>\r
19194         <member name="M:log4net.Plugin.PluginCollection.ValidateIndex(System.Int32,System.Boolean)">\r
19195             <exception cref="T:System.ArgumentOutOfRangeException">\r
19196             <para><paramref name="index"/> is less than zero.</para>\r
19197             <para>-or-</para>\r
19198             <para><paramref name="index"/> is equal to or greater than <see cref="P:log4net.Plugin.PluginCollection.Count"/>.</para>\r
19199             </exception>\r
19200         </member>\r
19201         <member name="P:log4net.Plugin.PluginCollection.Count">\r
19202             <summary>\r
19203             Gets the number of elements actually contained in the <c>PluginCollection</c>.\r
19204             </summary>\r
19205         </member>\r
19206         <member name="P:log4net.Plugin.PluginCollection.IsSynchronized">\r
19207             <summary>\r
19208             Gets a value indicating whether access to the collection is synchronized (thread-safe).\r
19209             </summary>\r
19210             <returns>true if access to the ICollection is synchronized (thread-safe); otherwise, false.</returns>\r
19211         </member>\r
19212         <member name="P:log4net.Plugin.PluginCollection.SyncRoot">\r
19213             <summary>\r
19214             Gets an object that can be used to synchronize access to the collection.\r
19215             </summary>\r
19216             <value>\r
19217             An object that can be used to synchronize access to the collection.\r
19218             </value>\r
19219         </member>\r
19220         <member name="P:log4net.Plugin.PluginCollection.Item(System.Int32)">\r
19221             <summary>\r
19222             Gets or sets the <see cref="T:log4net.Plugin.IPlugin"/> at the specified index.\r
19223             </summary>\r
19224             <value>\r
19225             The <see cref="T:log4net.Plugin.IPlugin"/> at the specified index.\r
19226             </value>\r
19227             <param name="index">The zero-based index of the element to get or set.</param>\r
19228             <exception cref="T:System.ArgumentOutOfRangeException">\r
19229             <para><paramref name="index"/> is less than zero.</para>\r
19230             <para>-or-</para>\r
19231             <para><paramref name="index"/> is equal to or greater than <see cref="P:log4net.Plugin.PluginCollection.Count"/>.</para>\r
19232             </exception>\r
19233         </member>\r
19234         <member name="P:log4net.Plugin.PluginCollection.IsFixedSize">\r
19235             <summary>\r
19236             Gets a value indicating whether the collection has a fixed size.\r
19237             </summary>\r
19238             <value><c>true</c> if the collection has a fixed size; otherwise, <c>false</c>. The default is <c>false</c>.</value>\r
19239         </member>\r
19240         <member name="P:log4net.Plugin.PluginCollection.IsReadOnly">\r
19241             <summary>\r
19242             Gets a value indicating whether the IList is read-only.\r
19243             </summary>\r
19244             <value><c>true</c> if the collection is read-only; otherwise, <c>false</c>. The default is <c>false</c>.</value>\r
19245         </member>\r
19246         <member name="P:log4net.Plugin.PluginCollection.Capacity">\r
19247             <summary>\r
19248             Gets or sets the number of elements the <c>PluginCollection</c> can contain.\r
19249             </summary>\r
19250             <value>\r
19251             The number of elements the <c>PluginCollection</c> can contain.\r
19252             </value>\r
19253         </member>\r
19254         <member name="T:log4net.Plugin.PluginCollection.IPluginCollectionEnumerator">\r
19255             <summary>\r
19256             Supports type-safe iteration over a <see cref="T:log4net.Plugin.PluginCollection"/>.\r
19257             </summary>\r
19258             <exclude/>\r
19259         </member>\r
19260         <member name="M:log4net.Plugin.PluginCollection.IPluginCollectionEnumerator.MoveNext">\r
19261             <summary>\r
19262             Advances the enumerator to the next element in the collection.\r
19263             </summary>\r
19264             <returns>\r
19265             <c>true</c> if the enumerator was successfully advanced to the next element; \r
19266             <c>false</c> if the enumerator has passed the end of the collection.\r
19267             </returns>\r
19268             <exception cref="T:System.InvalidOperationException">\r
19269             The collection was modified after the enumerator was created.\r
19270             </exception>\r
19271         </member>\r
19272         <member name="M:log4net.Plugin.PluginCollection.IPluginCollectionEnumerator.Reset">\r
19273             <summary>\r
19274             Sets the enumerator to its initial position, before the first element in the collection.\r
19275             </summary>\r
19276         </member>\r
19277         <member name="P:log4net.Plugin.PluginCollection.IPluginCollectionEnumerator.Current">\r
19278             <summary>\r
19279             Gets the current element in the collection.\r
19280             </summary>\r
19281         </member>\r
19282         <member name="T:log4net.Plugin.PluginCollection.Tag">\r
19283             <summary>\r
19284             Type visible only to our subclasses\r
19285             Used to access protected constructor\r
19286             </summary>\r
19287             <exclude/>\r
19288         </member>\r
19289         <member name="F:log4net.Plugin.PluginCollection.Tag.Default">\r
19290             <summary>\r
19291             A value\r
19292             </summary>\r
19293         </member>\r
19294         <member name="T:log4net.Plugin.PluginCollection.Enumerator">\r
19295             <summary>\r
19296             Supports simple iteration over a <see cref="T:log4net.Plugin.PluginCollection"/>.\r
19297             </summary>\r
19298             <exclude/>\r
19299         </member>\r
19300         <member name="M:log4net.Plugin.PluginCollection.Enumerator.#ctor(log4net.Plugin.PluginCollection)">\r
19301             <summary>\r
19302             Initializes a new instance of the <c>Enumerator</c> class.\r
19303             </summary>\r
19304             <param name="tc"></param>\r
19305         </member>\r
19306         <member name="M:log4net.Plugin.PluginCollection.Enumerator.MoveNext">\r
19307             <summary>\r
19308             Advances the enumerator to the next element in the collection.\r
19309             </summary>\r
19310             <returns>\r
19311             <c>true</c> if the enumerator was successfully advanced to the next element; \r
19312             <c>false</c> if the enumerator has passed the end of the collection.\r
19313             </returns>\r
19314             <exception cref="T:System.InvalidOperationException">\r
19315             The collection was modified after the enumerator was created.\r
19316             </exception>\r
19317         </member>\r
19318         <member name="M:log4net.Plugin.PluginCollection.Enumerator.Reset">\r
19319             <summary>\r
19320             Sets the enumerator to its initial position, before the first element in the collection.\r
19321             </summary>\r
19322         </member>\r
19323         <member name="P:log4net.Plugin.PluginCollection.Enumerator.Current">\r
19324             <summary>\r
19325             Gets the current element in the collection.\r
19326             </summary>\r
19327             <value>\r
19328             The current element in the collection.\r
19329             </value>\r
19330         </member>\r
19331         <member name="T:log4net.Plugin.PluginCollection.ReadOnlyPluginCollection">\r
19332             <exclude/>\r
19333         </member>\r
19334         <member name="T:log4net.Plugin.PluginMap">\r
19335             <summary>\r
19336             Map of repository plugins.\r
19337             </summary>\r
19338             <remarks>\r
19339             <para>\r
19340             This class is a name keyed map of the plugins that are\r
19341             attached to a repository.\r
19342             </para>\r
19343             </remarks>\r
19344             <author>Nicko Cadell</author>\r
19345             <author>Gert Driesen</author>\r
19346         </member>\r
19347         <member name="M:log4net.Plugin.PluginMap.#ctor(log4net.Repository.ILoggerRepository)">\r
19348             <summary>\r
19349             Constructor\r
19350             </summary>\r
19351             <param name="repository">The repository that the plugins should be attached to.</param>\r
19352             <remarks>\r
19353             <para>\r
19354             Initialize a new instance of the <see cref="T:log4net.Plugin.PluginMap"/> class with a \r
19355             repository that the plugins should be attached to.\r
19356             </para>\r
19357             </remarks>\r
19358         </member>\r
19359         <member name="M:log4net.Plugin.PluginMap.Add(log4net.Plugin.IPlugin)">\r
19360             <summary>\r
19361             Adds a <see cref="T:log4net.Plugin.IPlugin"/> to the map.\r
19362             </summary>\r
19363             <param name="plugin">The <see cref="T:log4net.Plugin.IPlugin"/> to add to the map.</param>\r
19364             <remarks>\r
19365             <para>\r
19366             The <see cref="T:log4net.Plugin.IPlugin"/> will be attached to the repository when added.\r
19367             </para>\r
19368             <para>\r
19369             If there already exists a plugin with the same name \r
19370             attached to the repository then the old plugin will\r
19371             be <see cref="M:log4net.Plugin.IPlugin.Shutdown"/> and replaced with\r
19372             the new plugin.\r
19373             </para>\r
19374             </remarks>\r
19375         </member>\r
19376         <member name="M:log4net.Plugin.PluginMap.Remove(log4net.Plugin.IPlugin)">\r
19377             <summary>\r
19378             Removes a <see cref="T:log4net.Plugin.IPlugin"/> from the map.\r
19379             </summary>\r
19380             <param name="plugin">The <see cref="T:log4net.Plugin.IPlugin"/> to remove from the map.</param>\r
19381             <remarks>\r
19382             <para>\r
19383             Remove a specific plugin from this map.\r
19384             </para>\r
19385             </remarks>\r
19386         </member>\r
19387         <member name="P:log4net.Plugin.PluginMap.Item(System.String)">\r
19388             <summary>\r
19389             Gets a <see cref="T:log4net.Plugin.IPlugin"/> by name.\r
19390             </summary>\r
19391             <param name="name">The name of the <see cref="T:log4net.Plugin.IPlugin"/> to lookup.</param>\r
19392             <returns>\r
19393             The <see cref="T:log4net.Plugin.IPlugin"/> from the map with the name specified, or \r
19394             <c>null</c> if no plugin is found.\r
19395             </returns>\r
19396             <remarks>\r
19397             <para>\r
19398             Lookup a plugin by name. If the plugin is not found <c>null</c>\r
19399             will be returned.\r
19400             </para>\r
19401             </remarks>\r
19402         </member>\r
19403         <member name="P:log4net.Plugin.PluginMap.AllPlugins">\r
19404             <summary>\r
19405             Gets all possible plugins as a list of <see cref="T:log4net.Plugin.IPlugin"/> objects.\r
19406             </summary>\r
19407             <value>All possible plugins as a list of <see cref="T:log4net.Plugin.IPlugin"/> objects.</value>\r
19408             <remarks>\r
19409             <para>\r
19410             Get a collection of all the plugins defined in this map.\r
19411             </para>\r
19412             </remarks>\r
19413         </member>\r
19414         <member name="T:log4net.Plugin.PluginSkeleton">\r
19415             <summary>\r
19416             Base implementation of <see cref="T:log4net.Plugin.IPlugin"/>\r
19417             </summary>\r
19418             <remarks>\r
19419             <para>\r
19420             Default abstract implementation of the <see cref="T:log4net.Plugin.IPlugin"/>\r
19421             interface. This base class can be used by implementors\r
19422             of the <see cref="T:log4net.Plugin.IPlugin"/> interface.\r
19423             </para>\r
19424             </remarks>\r
19425             <author>Nicko Cadell</author>\r
19426             <author>Gert Driesen</author>\r
19427         </member>\r
19428         <member name="M:log4net.Plugin.PluginSkeleton.#ctor(System.String)">\r
19429             <summary>\r
19430             Constructor\r
19431             </summary>\r
19432             <param name="name">the name of the plugin</param>\r
19433             <remarks>\r
19434             Initializes a new Plugin with the specified name.\r
19435             </remarks>\r
19436         </member>\r
19437         <member name="M:log4net.Plugin.PluginSkeleton.Attach(log4net.Repository.ILoggerRepository)">\r
19438             <summary>\r
19439             Attaches this plugin to a <see cref="T:log4net.Repository.ILoggerRepository"/>.\r
19440             </summary>\r
19441             <param name="repository">The <see cref="T:log4net.Repository.ILoggerRepository"/> that this plugin should be attached to.</param>\r
19442             <remarks>\r
19443             <para>\r
19444             A plugin may only be attached to a single repository.\r
19445             </para>\r
19446             <para>\r
19447             This method is called when the plugin is attached to the repository.\r
19448             </para>\r
19449             </remarks>\r
19450         </member>\r
19451         <member name="M:log4net.Plugin.PluginSkeleton.Shutdown">\r
19452             <summary>\r
19453             Is called when the plugin is to shutdown.\r
19454             </summary>\r
19455             <remarks>\r
19456             <para>\r
19457             This method is called to notify the plugin that \r
19458             it should stop operating and should detach from\r
19459             the repository.\r
19460             </para>\r
19461             </remarks>\r
19462         </member>\r
19463         <member name="F:log4net.Plugin.PluginSkeleton.m_name">\r
19464             <summary>\r
19465             The name of this plugin.\r
19466             </summary>\r
19467         </member>\r
19468         <member name="F:log4net.Plugin.PluginSkeleton.m_repository">\r
19469             <summary>\r
19470             The repository this plugin is attached to.\r
19471             </summary>\r
19472         </member>\r
19473         <member name="P:log4net.Plugin.PluginSkeleton.Name">\r
19474             <summary>\r
19475             Gets or sets the name of the plugin.\r
19476             </summary>\r
19477             <value>\r
19478             The name of the plugin.\r
19479             </value>\r
19480             <remarks>\r
19481             <para>\r
19482             Plugins are stored in the <see cref="T:log4net.Plugin.PluginMap"/>\r
19483             keyed by name. Each plugin instance attached to a\r
19484             repository must be a unique name.\r
19485             </para>\r
19486             <para>\r
19487             The name of the plugin must not change one the \r
19488             plugin has been attached to a repository.\r
19489             </para>\r
19490             </remarks>\r
19491         </member>\r
19492         <member name="P:log4net.Plugin.PluginSkeleton.LoggerRepository">\r
19493             <summary>\r
19494             The repository for this plugin\r
19495             </summary>\r
19496             <value>\r
19497             The <see cref="T:log4net.Repository.ILoggerRepository"/> that this plugin is attached to.\r
19498             </value>\r
19499             <remarks>\r
19500             <para>\r
19501             Gets or sets the <see cref="T:log4net.Repository.ILoggerRepository"/> that this plugin is \r
19502             attached to.\r
19503             </para>\r
19504             </remarks>\r
19505         </member>\r
19506         <member name="T:log4net.Plugin.RemoteLoggingServerPlugin">\r
19507             <summary>\r
19508             Plugin that listens for events from the <see cref="T:log4net.Appender.RemotingAppender"/>\r
19509             </summary>\r
19510             <remarks>\r
19511             <para>\r
19512             This plugin publishes an instance of <see cref="T:log4net.Appender.RemotingAppender.IRemoteLoggingSink"/> \r
19513             on a specified <see cref="P:log4net.Plugin.RemoteLoggingServerPlugin.SinkUri"/>. This listens for logging events delivered from\r
19514             a remote <see cref="T:log4net.Appender.RemotingAppender"/>.\r
19515             </para>\r
19516             <para>\r
19517             When an event is received it is relogged within the attached repository\r
19518             as if it had been raised locally.\r
19519             </para>\r
19520             </remarks>\r
19521             <author>Nicko Cadell</author>\r
19522             <author>Gert Driesen</author>\r
19523         </member>\r
19524         <member name="M:log4net.Plugin.RemoteLoggingServerPlugin.#ctor">\r
19525             <summary>\r
19526             Default constructor\r
19527             </summary>\r
19528             <remarks>\r
19529             <para>\r
19530             Initializes a new instance of the <see cref="T:log4net.Plugin.RemoteLoggingServerPlugin"/> class.\r
19531             </para>\r
19532             <para>\r
19533             The <see cref="P:log4net.Plugin.RemoteLoggingServerPlugin.SinkUri"/> property must be set.\r
19534             </para>\r
19535             </remarks>\r
19536         </member>\r
19537         <member name="M:log4net.Plugin.RemoteLoggingServerPlugin.#ctor(System.String)">\r
19538             <summary>\r
19539             Construct with sink Uri.\r
19540             </summary>\r
19541             <param name="sinkUri">The name to publish the sink under in the remoting infrastructure. \r
19542             See <see cref="P:log4net.Plugin.RemoteLoggingServerPlugin.SinkUri"/> for more details.</param>\r
19543             <remarks>\r
19544             <para>\r
19545             Initializes a new instance of the <see cref="T:log4net.Plugin.RemoteLoggingServerPlugin"/> class\r
19546             with specified name.\r
19547             </para>\r
19548             </remarks>\r
19549         </member>\r
19550         <member name="M:log4net.Plugin.RemoteLoggingServerPlugin.Attach(log4net.Repository.ILoggerRepository)">\r
19551             <summary>\r
19552             Attaches this plugin to a <see cref="T:log4net.Repository.ILoggerRepository"/>.\r
19553             </summary>\r
19554             <param name="repository">The <see cref="T:log4net.Repository.ILoggerRepository"/> that this plugin should be attached to.</param>\r
19555             <remarks>\r
19556             <para>\r
19557             A plugin may only be attached to a single repository.\r
19558             </para>\r
19559             <para>\r
19560             This method is called when the plugin is attached to the repository.\r
19561             </para>\r
19562             </remarks>\r
19563         </member>\r
19564         <member name="M:log4net.Plugin.RemoteLoggingServerPlugin.Shutdown">\r
19565             <summary>\r
19566             Is called when the plugin is to shutdown.\r
19567             </summary>\r
19568             <remarks>\r
19569             <para>\r
19570             When the plugin is shutdown the remote logging\r
19571             sink is disconnected.\r
19572             </para>\r
19573             </remarks>\r
19574         </member>\r
19575         <member name="P:log4net.Plugin.RemoteLoggingServerPlugin.SinkUri">\r
19576             <summary>\r
19577             Gets or sets the URI of this sink.\r
19578             </summary>\r
19579             <value>\r
19580             The URI of this sink.\r
19581             </value>\r
19582             <remarks>\r
19583             <para>\r
19584             This is the name under which the object is marshaled.\r
19585             <see cref="M:System.Runtime.Remoting.RemotingServices.Marshal(System.MarshalByRefObject,System.String,System.Type)"/>\r
19586             </para>\r
19587             </remarks>\r
19588         </member>\r
19589         <member name="T:log4net.Plugin.RemoteLoggingServerPlugin.RemoteLoggingSinkImpl">\r
19590             <summary>\r
19591             Delivers <see cref="T:log4net.Core.LoggingEvent"/> objects to a remote sink.\r
19592             </summary>\r
19593             <remarks>\r
19594             <para>\r
19595             Internal class used to listen for logging events\r
19596             and deliver them to the local repository.\r
19597             </para>\r
19598             </remarks>\r
19599         </member>\r
19600         <member name="M:log4net.Plugin.RemoteLoggingServerPlugin.RemoteLoggingSinkImpl.#ctor(log4net.Repository.ILoggerRepository)">\r
19601             <summary>\r
19602             Constructor\r
19603             </summary>\r
19604             <param name="repository">The repository to log to.</param>\r
19605             <remarks>\r
19606             <para>\r
19607             Initializes a new instance of the <see cref="T:log4net.Plugin.RemoteLoggingServerPlugin.RemoteLoggingSinkImpl"/> for the\r
19608             specified <see cref="T:log4net.Repository.ILoggerRepository"/>.\r
19609             </para>\r
19610             </remarks>\r
19611         </member>\r
19612         <member name="M:log4net.Plugin.RemoteLoggingServerPlugin.RemoteLoggingSinkImpl.LogEvents(log4net.Core.LoggingEvent[])">\r
19613             <summary>\r
19614             Logs the events to the repository.\r
19615             </summary>\r
19616             <param name="events">The events to log.</param>\r
19617             <remarks>\r
19618             <para>\r
19619             The events passed are logged to the <see cref="T:log4net.Repository.ILoggerRepository"/>\r
19620             </para>\r
19621             </remarks>\r
19622         </member>\r
19623         <member name="M:log4net.Plugin.RemoteLoggingServerPlugin.RemoteLoggingSinkImpl.InitializeLifetimeService">\r
19624             <summary>\r
19625             Obtains a lifetime service object to control the lifetime \r
19626             policy for this instance.\r
19627             </summary>\r
19628             <returns><c>null</c> to indicate that this instance should live forever.</returns>\r
19629             <remarks>\r
19630             <para>\r
19631             Obtains a lifetime service object to control the lifetime \r
19632             policy for this instance. This object should live forever\r
19633             therefore this implementation returns <c>null</c>.\r
19634             </para>\r
19635             </remarks>\r
19636         </member>\r
19637         <member name="F:log4net.Plugin.RemoteLoggingServerPlugin.RemoteLoggingSinkImpl.m_repository">\r
19638             <summary>\r
19639             The underlying <see cref="T:log4net.Repository.ILoggerRepository"/> that events should\r
19640             be logged to.\r
19641             </summary>\r
19642         </member>\r
19643         <member name="T:log4net.Repository.Hierarchy.DefaultLoggerFactory">\r
19644             <summary>\r
19645             Default implementation of <see cref="T:log4net.Repository.Hierarchy.ILoggerFactory"/>\r
19646             </summary>\r
19647             <remarks>\r
19648             <para>\r
19649             This default implementation of the <see cref="T:log4net.Repository.Hierarchy.ILoggerFactory"/>\r
19650             interface is used to create the default subclass\r
19651             of the <see cref="T:log4net.Repository.Hierarchy.Logger"/> object.\r
19652             </para>\r
19653             </remarks>\r
19654             <author>Nicko Cadell</author>\r
19655             <author>Gert Driesen</author>\r
19656         </member>\r
19657         <member name="T:log4net.Repository.Hierarchy.ILoggerFactory">\r
19658             <summary>\r
19659             Interface abstracts creation of <see cref="T:log4net.Repository.Hierarchy.Logger"/> instances\r
19660             </summary>\r
19661             <remarks>\r
19662             <para>\r
19663             This interface is used by the <see cref="T:log4net.Repository.Hierarchy.Hierarchy"/> to \r
19664             create new <see cref="T:log4net.Repository.Hierarchy.Logger"/> objects.\r
19665             </para>\r
19666             <para>\r
19667             The <see cref="M:log4net.Repository.Hierarchy.ILoggerFactory.CreateLogger(System.String)"/> method is called\r
19668             to create a named <see cref="T:log4net.Repository.Hierarchy.Logger"/>.\r
19669             </para>\r
19670             <para>\r
19671             Implement this interface to create new subclasses of <see cref="T:log4net.Repository.Hierarchy.Logger"/>.\r
19672             </para>\r
19673             </remarks>\r
19674             <author>Nicko Cadell</author>\r
19675             <author>Gert Driesen</author>\r
19676         </member>\r
19677         <member name="M:log4net.Repository.Hierarchy.ILoggerFactory.CreateLogger(System.String)">\r
19678             <summary>\r
19679             Create a new <see cref="T:log4net.Repository.Hierarchy.Logger"/> instance\r
19680             </summary>\r
19681             <param name="name">The name of the <see cref="T:log4net.Repository.Hierarchy.Logger"/>.</param>\r
19682             <returns>The <see cref="T:log4net.Repository.Hierarchy.Logger"/> instance for the specified name.</returns>\r
19683             <remarks>\r
19684             <para>\r
19685             Create a new <see cref="T:log4net.Repository.Hierarchy.Logger"/> instance with the \r
19686             specified name.\r
19687             </para>\r
19688             <para>\r
19689             Called by the <see cref="T:log4net.Repository.Hierarchy.Hierarchy"/> to create\r
19690             new named <see cref="T:log4net.Repository.Hierarchy.Logger"/> instances.\r
19691             </para>\r
19692             <para>\r
19693             If the <paramref name="name"/> is <c>null</c> then the root logger\r
19694             must be returned.\r
19695             </para>\r
19696             </remarks>\r
19697         </member>\r
19698         <member name="M:log4net.Repository.Hierarchy.DefaultLoggerFactory.#ctor">\r
19699             <summary>\r
19700             Default constructor\r
19701             </summary>\r
19702             <remarks>\r
19703             <para>\r
19704             Initializes a new instance of the <see cref="T:log4net.Repository.Hierarchy.DefaultLoggerFactory"/> class. \r
19705             </para>\r
19706             </remarks>\r
19707         </member>\r
19708         <member name="M:log4net.Repository.Hierarchy.DefaultLoggerFactory.CreateLogger(System.String)">\r
19709             <summary>\r
19710             Create a new <see cref="T:log4net.Repository.Hierarchy.Logger"/> instance\r
19711             </summary>\r
19712             <param name="name">The name of the <see cref="T:log4net.Repository.Hierarchy.Logger"/>.</param>\r
19713             <returns>The <see cref="T:log4net.Repository.Hierarchy.Logger"/> instance for the specified name.</returns>\r
19714             <remarks>\r
19715             <para>\r
19716             Create a new <see cref="T:log4net.Repository.Hierarchy.Logger"/> instance with the \r
19717             specified name.\r
19718             </para>\r
19719             <para>\r
19720             Called by the <see cref="T:log4net.Repository.Hierarchy.Hierarchy"/> to create\r
19721             new named <see cref="T:log4net.Repository.Hierarchy.Logger"/> instances.\r
19722             </para>\r
19723             <para>\r
19724             If the <paramref name="name"/> is <c>null</c> then the root logger\r
19725             must be returned.\r
19726             </para>\r
19727             </remarks>\r
19728         </member>\r
19729         <member name="T:log4net.Repository.Hierarchy.DefaultLoggerFactory.LoggerImpl">\r
19730             <summary>\r
19731             Default internal subclass of <see cref="T:log4net.Repository.Hierarchy.Logger"/>\r
19732             </summary>\r
19733             <remarks>\r
19734             <para>\r
19735             This subclass has no additional behavior over the\r
19736             <see cref="T:log4net.Repository.Hierarchy.Logger"/> class but does allow instances\r
19737             to be created.\r
19738             </para>\r
19739             </remarks>\r
19740         </member>\r
19741         <member name="T:log4net.Repository.Hierarchy.Logger">\r
19742             <summary>\r
19743             Implementation of <see cref="T:log4net.Core.ILogger"/> used by <see cref="P:log4net.Repository.Hierarchy.Logger.Hierarchy"/>\r
19744             </summary>\r
19745             <remarks>\r
19746             <para>\r
19747             Internal class used to provide implementation of <see cref="T:log4net.Core.ILogger"/>\r
19748             interface. Applications should use <see cref="T:log4net.LogManager"/> to get\r
19749             logger instances.\r
19750             </para>\r
19751             <para>\r
19752             This is one of the central classes in the log4net implementation. One of the\r
19753             distinctive features of log4net are hierarchical loggers and their\r
19754             evaluation. The <see cref="P:log4net.Repository.Hierarchy.Logger.Hierarchy"/> organizes the <see cref="T:log4net.Repository.Hierarchy.Logger"/>\r
19755             instances into a rooted tree hierarchy.\r
19756             </para>\r
19757             <para>\r
19758             The <see cref="T:log4net.Repository.Hierarchy.Logger"/> class is abstract. Only concrete subclasses of\r
19759             <see cref="T:log4net.Repository.Hierarchy.Logger"/> can be created. The <see cref="T:log4net.Repository.Hierarchy.ILoggerFactory"/>\r
19760             is used to create instances of this type for the <see cref="P:log4net.Repository.Hierarchy.Logger.Hierarchy"/>.\r
19761             </para>\r
19762             </remarks>\r
19763             <author>Nicko Cadell</author>\r
19764             <author>Gert Driesen</author>\r
19765             <author>Aspi Havewala</author>\r
19766             <author>Douglas de la Torre</author>\r
19767         </member>\r
19768         <member name="M:log4net.Repository.Hierarchy.Logger.#ctor(System.String)">\r
19769             <summary>\r
19770             This constructor created a new <see cref="T:log4net.Repository.Hierarchy.Logger"/> instance and\r
19771             sets its name.\r
19772             </summary>\r
19773             <param name="name">The name of the <see cref="T:log4net.Repository.Hierarchy.Logger"/>.</param>\r
19774             <remarks>\r
19775             <para>\r
19776             This constructor is protected and designed to be used by\r
19777             a subclass that is not abstract.\r
19778             </para>\r
19779             <para>\r
19780             Loggers are constructed by <see cref="T:log4net.Repository.Hierarchy.ILoggerFactory"/> \r
19781             objects. See <see cref="T:log4net.Repository.Hierarchy.DefaultLoggerFactory"/> for the default\r
19782             logger creator.\r
19783             </para>\r
19784             </remarks>\r
19785         </member>\r
19786         <member name="M:log4net.Repository.Hierarchy.Logger.AddAppender(log4net.Appender.IAppender)">\r
19787             <summary>\r
19788             Add <paramref name="newAppender"/> to the list of appenders of this\r
19789             Logger instance.\r
19790             </summary>\r
19791             <param name="newAppender">An appender to add to this logger</param>\r
19792             <remarks>\r
19793             <para>\r
19794             Add <paramref name="newAppender"/> to the list of appenders of this\r
19795             Logger instance.\r
19796             </para>\r
19797             <para>\r
19798             If <paramref name="newAppender"/> is already in the list of\r
19799             appenders, then it won't be added again.\r
19800             </para>\r
19801             </remarks>\r
19802         </member>\r
19803         <member name="M:log4net.Repository.Hierarchy.Logger.GetAppender(System.String)">\r
19804             <summary>\r
19805             Look for the appender named as <c>name</c>\r
19806             </summary>\r
19807             <param name="name">The name of the appender to lookup</param>\r
19808             <returns>The appender with the name specified, or <c>null</c>.</returns>\r
19809             <remarks>\r
19810             <para>\r
19811             Returns the named appender, or null if the appender is not found.\r
19812             </para>\r
19813             </remarks>\r
19814         </member>\r
19815         <member name="M:log4net.Repository.Hierarchy.Logger.RemoveAllAppenders">\r
19816             <summary>\r
19817             Remove all previously added appenders from this Logger instance.\r
19818             </summary>\r
19819             <remarks>\r
19820             <para>\r
19821             Remove all previously added appenders from this Logger instance.\r
19822             </para>\r
19823             <para>\r
19824             This is useful when re-reading configuration information.\r
19825             </para>\r
19826             </remarks>\r
19827         </member>\r
19828         <member name="M:log4net.Repository.Hierarchy.Logger.RemoveAppender(log4net.Appender.IAppender)">\r
19829             <summary>\r
19830             Remove the appender passed as parameter form the list of appenders.\r
19831             </summary>\r
19832             <param name="appender">The appender to remove</param>\r
19833             <returns>The appender removed from the list</returns>\r
19834             <remarks>\r
19835             <para>\r
19836             Remove the appender passed as parameter form the list of appenders.\r
19837             The appender removed is not closed.\r
19838             If you are discarding the appender you must call\r
19839             <see cref="M:log4net.Appender.IAppender.Close"/> on the appender removed.\r
19840             </para>\r
19841             </remarks>\r
19842         </member>\r
19843         <member name="M:log4net.Repository.Hierarchy.Logger.RemoveAppender(System.String)">\r
19844             <summary>\r
19845             Remove the appender passed as parameter form the list of appenders.\r
19846             </summary>\r
19847             <param name="name">The name of the appender to remove</param>\r
19848             <returns>The appender removed from the list</returns>\r
19849             <remarks>\r
19850             <para>\r
19851             Remove the named appender passed as parameter form the list of appenders.\r
19852             The appender removed is not closed.\r
19853             If you are discarding the appender you must call\r
19854             <see cref="M:log4net.Appender.IAppender.Close"/> on the appender removed.\r
19855             </para>\r
19856             </remarks>\r
19857         </member>\r
19858         <member name="M:log4net.Repository.Hierarchy.Logger.Log(System.Type,log4net.Core.Level,System.Object,System.Exception)">\r
19859             <summary>\r
19860             This generic form is intended to be used by wrappers.\r
19861             </summary>\r
19862             <param name="callerStackBoundaryDeclaringType">The declaring type of the method that is\r
19863             the stack boundary into the logging system for this call.</param>\r
19864             <param name="level">The level of the message to be logged.</param>\r
19865             <param name="message">The message object to log.</param>\r
19866             <param name="exception">The exception to log, including its stack trace.</param>\r
19867             <remarks>\r
19868             <para>\r
19869             Generate a logging event for the specified <paramref name="level"/> using\r
19870             the <paramref name="message"/> and <paramref name="exception"/>.\r
19871             </para>\r
19872             <para>\r
19873             This method must not throw any exception to the caller.\r
19874             </para>\r
19875             </remarks>\r
19876         </member>\r
19877         <member name="M:log4net.Repository.Hierarchy.Logger.Log(log4net.Core.LoggingEvent)">\r
19878             <summary>\r
19879             This is the most generic printing method that is intended to be used \r
19880             by wrappers.\r
19881             </summary>\r
19882             <param name="logEvent">The event being logged.</param>\r
19883             <remarks>\r
19884             <para>\r
19885             Logs the specified logging event through this logger.\r
19886             </para>\r
19887             <para>\r
19888             This method must not throw any exception to the caller.\r
19889             </para>\r
19890             </remarks>\r
19891         </member>\r
19892         <member name="M:log4net.Repository.Hierarchy.Logger.IsEnabledFor(log4net.Core.Level)">\r
19893             <summary>\r
19894             Checks if this logger is enabled for a given <see cref="P:log4net.Repository.Hierarchy.Logger.Level"/> passed as parameter.\r
19895             </summary>\r
19896             <param name="level">The level to check.</param>\r
19897             <returns>\r
19898             <c>true</c> if this logger is enabled for <c>level</c>, otherwise <c>false</c>.\r
19899             </returns>\r
19900             <remarks>\r
19901             <para>\r
19902             Test if this logger is going to log events of the specified <paramref name="level"/>.\r
19903             </para>\r
19904             <para>\r
19905             This method must not throw any exception to the caller.\r
19906             </para>\r
19907             </remarks>\r
19908         </member>\r
19909         <member name="M:log4net.Repository.Hierarchy.Logger.CallAppenders(log4net.Core.LoggingEvent)">\r
19910             <summary>\r
19911             Deliver the <see cref="T:log4net.Core.LoggingEvent"/> to the attached appenders.\r
19912             </summary>\r
19913             <param name="loggingEvent">The event to log.</param>\r
19914             <remarks>\r
19915             <para>\r
19916             Call the appenders in the hierarchy starting at\r
19917             <c>this</c>. If no appenders could be found, emit a\r
19918             warning.\r
19919             </para>\r
19920             <para>\r
19921             This method calls all the appenders inherited from the\r
19922             hierarchy circumventing any evaluation of whether to log or not\r
19923             to log the particular log request.\r
19924             </para>\r
19925             </remarks>\r
19926         </member>\r
19927         <member name="M:log4net.Repository.Hierarchy.Logger.CloseNestedAppenders">\r
19928             <summary>\r
19929             Closes all attached appenders implementing the <see cref="T:log4net.Core.IAppenderAttachable"/> interface.\r
19930             </summary>\r
19931             <remarks>\r
19932             <para>\r
19933             Used to ensure that the appenders are correctly shutdown.\r
19934             </para>\r
19935             </remarks>\r
19936         </member>\r
19937         <member name="M:log4net.Repository.Hierarchy.Logger.Log(log4net.Core.Level,System.Object,System.Exception)">\r
19938             <summary>\r
19939             This is the most generic printing method. This generic form is intended to be used by wrappers\r
19940             </summary>\r
19941             <param name="level">The level of the message to be logged.</param>\r
19942             <param name="message">The message object to log.</param>\r
19943             <param name="exception">The exception to log, including its stack trace.</param>\r
19944             <remarks>\r
19945             <para>\r
19946             Generate a logging event for the specified <paramref name="level"/> using\r
19947             the <paramref name="message"/>.\r
19948             </para>\r
19949             </remarks>\r
19950         </member>\r
19951         <member name="M:log4net.Repository.Hierarchy.Logger.ForcedLog(System.Type,log4net.Core.Level,System.Object,System.Exception)">\r
19952             <summary>\r
19953             Creates a new logging event and logs the event without further checks.\r
19954             </summary>\r
19955             <param name="callerStackBoundaryDeclaringType">The declaring type of the method that is\r
19956             the stack boundary into the logging system for this call.</param>\r
19957             <param name="level">The level of the message to be logged.</param>\r
19958             <param name="message">The message object to log.</param>\r
19959             <param name="exception">The exception to log, including its stack trace.</param>\r
19960             <remarks>\r
19961             <para>\r
19962             Generates a logging event and delivers it to the attached\r
19963             appenders.\r
19964             </para>\r
19965             </remarks>\r
19966         </member>\r
19967         <member name="M:log4net.Repository.Hierarchy.Logger.ForcedLog(log4net.Core.LoggingEvent)">\r
19968             <summary>\r
19969             Creates a new logging event and logs the event without further checks.\r
19970             </summary>\r
19971             <param name="logEvent">The event being logged.</param>\r
19972             <remarks>\r
19973             <para>\r
19974             Delivers the logging event to the attached appenders.\r
19975             </para>\r
19976             </remarks>\r
19977         </member>\r
19978         <member name="F:log4net.Repository.Hierarchy.Logger.ThisDeclaringType">\r
19979             <summary>\r
19980             The fully qualified type of the Logger class.\r
19981             </summary>\r
19982         </member>\r
19983         <member name="F:log4net.Repository.Hierarchy.Logger.m_name">\r
19984             <summary>\r
19985             The name of this logger.\r
19986             </summary>\r
19987         </member>\r
19988         <member name="F:log4net.Repository.Hierarchy.Logger.m_level">\r
19989             <summary>\r
19990             The assigned level of this logger. \r
19991             </summary>\r
19992             <remarks>\r
19993             <para>\r
19994             The <c>level</c> variable need not be \r
19995             assigned a value in which case it is inherited \r
19996             form the hierarchy.\r
19997             </para>\r
19998             </remarks>\r
19999         </member>\r
20000         <member name="F:log4net.Repository.Hierarchy.Logger.m_parent">\r
20001             <summary>\r
20002             The parent of this logger.\r
20003             </summary>\r
20004             <remarks>\r
20005             <para>\r
20006             The parent of this logger. \r
20007             All loggers have at least one ancestor which is the root logger.\r
20008             </para>\r
20009             </remarks>\r
20010         </member>\r
20011         <member name="F:log4net.Repository.Hierarchy.Logger.m_hierarchy">\r
20012             <summary>\r
20013             Loggers need to know what Hierarchy they are in.\r
20014             </summary>\r
20015             <remarks>\r
20016             <para>\r
20017             Loggers need to know what Hierarchy they are in.\r
20018             The hierarchy that this logger is a member of is stored\r
20019             here.\r
20020             </para>\r
20021             </remarks>\r
20022         </member>\r
20023         <member name="F:log4net.Repository.Hierarchy.Logger.m_appenderAttachedImpl">\r
20024             <summary>\r
20025             Helper implementation of the <see cref="T:log4net.Core.IAppenderAttachable"/> interface\r
20026             </summary>\r
20027         </member>\r
20028         <member name="F:log4net.Repository.Hierarchy.Logger.m_additive">\r
20029             <summary>\r
20030             Flag indicating if child loggers inherit their parents appenders\r
20031             </summary>\r
20032             <remarks>\r
20033             <para>\r
20034             Additivity is set to true by default, that is children inherit\r
20035             the appenders of their ancestors by default. If this variable is\r
20036             set to <c>false</c> then the appenders found in the\r
20037             ancestors of this logger are not used. However, the children\r
20038             of this logger will inherit its appenders, unless the children\r
20039             have their additivity flag set to <c>false</c> too. See\r
20040             the user manual for more details.\r
20041             </para>\r
20042             </remarks>\r
20043         </member>\r
20044         <member name="F:log4net.Repository.Hierarchy.Logger.m_appenderLock">\r
20045             <summary>\r
20046             Lock to protect AppenderAttachedImpl variable m_appenderAttachedImpl\r
20047             </summary>\r
20048         </member>\r
20049         <member name="P:log4net.Repository.Hierarchy.Logger.Parent">\r
20050             <summary>\r
20051             Gets or sets the parent logger in the hierarchy.\r
20052             </summary>\r
20053             <value>\r
20054             The parent logger in the hierarchy.\r
20055             </value>\r
20056             <remarks>\r
20057             <para>\r
20058             Part of the Composite pattern that makes the hierarchy.\r
20059             The hierarchy is parent linked rather than child linked.\r
20060             </para>\r
20061             </remarks>\r
20062         </member>\r
20063         <member name="P:log4net.Repository.Hierarchy.Logger.Additivity">\r
20064             <summary>\r
20065             Gets or sets a value indicating if child loggers inherit their parent's appenders.\r
20066             </summary>\r
20067             <value>\r
20068             <c>true</c> if child loggers inherit their parent's appenders.\r
20069             </value>\r
20070             <remarks>\r
20071             <para>\r
20072             Additivity is set to <c>true</c> by default, that is children inherit\r
20073             the appenders of their ancestors by default. If this variable is\r
20074             set to <c>false</c> then the appenders found in the\r
20075             ancestors of this logger are not used. However, the children\r
20076             of this logger will inherit its appenders, unless the children\r
20077             have their additivity flag set to <c>false</c> too. See\r
20078             the user manual for more details.\r
20079             </para>\r
20080             </remarks>\r
20081         </member>\r
20082         <member name="P:log4net.Repository.Hierarchy.Logger.EffectiveLevel">\r
20083             <summary>\r
20084             Gets the effective level for this logger.\r
20085             </summary>\r
20086             <returns>The nearest level in the logger hierarchy.</returns>\r
20087             <remarks>\r
20088             <para>\r
20089             Starting from this logger, searches the logger hierarchy for a\r
20090             non-null level and returns it. Otherwise, returns the level of the\r
20091             root logger.\r
20092             </para>\r
20093             <para>The Logger class is designed so that this method executes as\r
20094             quickly as possible.</para>\r
20095             </remarks>\r
20096         </member>\r
20097         <member name="P:log4net.Repository.Hierarchy.Logger.Hierarchy">\r
20098             <summary>\r
20099             Gets or sets the <see cref="P:log4net.Repository.Hierarchy.Logger.Hierarchy"/> where this \r
20100             <c>Logger</c> instance is attached to.\r
20101             </summary>\r
20102             <value>The hierarchy that this logger belongs to.</value>\r
20103             <remarks>\r
20104             <para>\r
20105             This logger must be attached to a single <see cref="P:log4net.Repository.Hierarchy.Logger.Hierarchy"/>.\r
20106             </para>\r
20107             </remarks>\r
20108         </member>\r
20109         <member name="P:log4net.Repository.Hierarchy.Logger.Level">\r
20110             <summary>\r
20111             Gets or sets the assigned <see cref="P:log4net.Repository.Hierarchy.Logger.Level"/>, if any, for this Logger.  \r
20112             </summary>\r
20113             <value>\r
20114             The <see cref="P:log4net.Repository.Hierarchy.Logger.Level"/> of this logger.\r
20115             </value>\r
20116             <remarks>\r
20117             <para>\r
20118             The assigned <see cref="P:log4net.Repository.Hierarchy.Logger.Level"/> can be <c>null</c>.\r
20119             </para>\r
20120             </remarks>\r
20121         </member>\r
20122         <member name="P:log4net.Repository.Hierarchy.Logger.Appenders">\r
20123             <summary>\r
20124             Get the appenders contained in this logger as an \r
20125             <see cref="T:System.Collections.ICollection"/>.\r
20126             </summary>\r
20127             <returns>A collection of the appenders in this logger</returns>\r
20128             <remarks>\r
20129             <para>\r
20130             Get the appenders contained in this logger as an \r
20131             <see cref="T:System.Collections.ICollection"/>. If no appenders \r
20132             can be found, then a <see cref="T:log4net.Util.EmptyCollection"/> is returned.\r
20133             </para>\r
20134             </remarks>\r
20135         </member>\r
20136         <member name="P:log4net.Repository.Hierarchy.Logger.Name">\r
20137             <summary>\r
20138             Gets the logger name.\r
20139             </summary>\r
20140             <value>\r
20141             The name of the logger.\r
20142             </value>\r
20143             <remarks>\r
20144             <para>\r
20145             The name of this logger\r
20146             </para>\r
20147             </remarks>\r
20148         </member>\r
20149         <member name="P:log4net.Repository.Hierarchy.Logger.Repository">\r
20150             <summary>\r
20151             Gets the <see cref="T:log4net.Repository.ILoggerRepository"/> where this \r
20152             <c>Logger</c> instance is attached to.\r
20153             </summary>\r
20154             <value>\r
20155             The <see cref="T:log4net.Repository.ILoggerRepository"/> that this logger belongs to.\r
20156             </value>\r
20157             <remarks>\r
20158             <para>\r
20159             Gets the <see cref="T:log4net.Repository.ILoggerRepository"/> where this \r
20160             <c>Logger</c> instance is attached to.\r
20161             </para>\r
20162             </remarks>\r
20163         </member>\r
20164         <member name="M:log4net.Repository.Hierarchy.DefaultLoggerFactory.LoggerImpl.#ctor(System.String)">\r
20165             <summary>\r
20166             Construct a new Logger\r
20167             </summary>\r
20168             <param name="name">the name of the logger</param>\r
20169             <remarks>\r
20170             <para>\r
20171             Initializes a new instance of the <see cref="T:log4net.Repository.Hierarchy.DefaultLoggerFactory.LoggerImpl"/> class\r
20172             with the specified name. \r
20173             </para>\r
20174             </remarks>\r
20175         </member>\r
20176         <member name="T:log4net.Repository.Hierarchy.LoggerCreationEventHandler">\r
20177             <summary>\r
20178             Delegate used to handle logger creation event notifications.\r
20179             </summary>\r
20180             <param name="sender">The <see cref="T:log4net.Repository.Hierarchy.Hierarchy"/> in which the <see cref="T:log4net.Repository.Hierarchy.Logger"/> has been created.</param>\r
20181             <param name="e">The <see cref="T:log4net.Repository.Hierarchy.LoggerCreationEventArgs"/> event args that hold the <see cref="T:log4net.Repository.Hierarchy.Logger"/> instance that has been created.</param>\r
20182             <remarks>\r
20183             <para>\r
20184             Delegate used to handle logger creation event notifications.\r
20185             </para>\r
20186             </remarks>\r
20187         </member>\r
20188         <member name="T:log4net.Repository.Hierarchy.LoggerCreationEventArgs">\r
20189             <summary>\r
20190             Provides data for the <see cref="E:log4net.Repository.Hierarchy.Hierarchy.LoggerCreatedEvent"/> event.\r
20191             </summary>\r
20192             <remarks>\r
20193             <para>\r
20194             A <see cref="E:log4net.Repository.Hierarchy.Hierarchy.LoggerCreatedEvent"/> event is raised every time a\r
20195             <see cref="P:log4net.Repository.Hierarchy.LoggerCreationEventArgs.Logger"/> is created.\r
20196             </para>\r
20197             </remarks>\r
20198         </member>\r
20199         <member name="F:log4net.Repository.Hierarchy.LoggerCreationEventArgs.m_log">\r
20200             <summary>\r
20201             The <see cref="P:log4net.Repository.Hierarchy.LoggerCreationEventArgs.Logger"/> created\r
20202             </summary>\r
20203         </member>\r
20204         <member name="M:log4net.Repository.Hierarchy.LoggerCreationEventArgs.#ctor(log4net.Repository.Hierarchy.Logger)">\r
20205             <summary>\r
20206             Constructor\r
20207             </summary>\r
20208             <param name="log">The <see cref="P:log4net.Repository.Hierarchy.LoggerCreationEventArgs.Logger"/> that has been created.</param>\r
20209             <remarks>\r
20210             <para>\r
20211             Initializes a new instance of the <see cref="T:log4net.Repository.Hierarchy.LoggerCreationEventArgs"/> event argument \r
20212             class,with the specified <see cref="P:log4net.Repository.Hierarchy.LoggerCreationEventArgs.Logger"/>.\r
20213             </para>\r
20214             </remarks>\r
20215         </member>\r
20216         <member name="P:log4net.Repository.Hierarchy.LoggerCreationEventArgs.Logger">\r
20217             <summary>\r
20218             Gets the <see cref="P:log4net.Repository.Hierarchy.LoggerCreationEventArgs.Logger"/> that has been created.\r
20219             </summary>\r
20220             <value>\r
20221             The <see cref="P:log4net.Repository.Hierarchy.LoggerCreationEventArgs.Logger"/> that has been created.\r
20222             </value>\r
20223             <remarks>\r
20224             <para>\r
20225             The <see cref="P:log4net.Repository.Hierarchy.LoggerCreationEventArgs.Logger"/> that has been created.\r
20226             </para>\r
20227             </remarks>\r
20228         </member>\r
20229         <member name="T:log4net.Repository.Hierarchy.Hierarchy">\r
20230             <summary>\r
20231             Hierarchical organization of loggers\r
20232             </summary>\r
20233             <remarks>\r
20234             <para>\r
20235             <i>The casual user should not have to deal with this class\r
20236             directly.</i>\r
20237             </para>\r
20238             <para>\r
20239             This class is specialized in retrieving loggers by name and\r
20240             also maintaining the logger hierarchy. Implements the \r
20241             <see cref="T:log4net.Repository.ILoggerRepository"/> interface.\r
20242             </para>\r
20243             <para>\r
20244             The structure of the logger hierarchy is maintained by the\r
20245             <see cref="M:log4net.Repository.Hierarchy.Hierarchy.GetLogger(System.String)"/> method. The hierarchy is such that children\r
20246             link to their parent but parents do not have any references to their\r
20247             children. Moreover, loggers can be instantiated in any order, in\r
20248             particular descendant before ancestor.\r
20249             </para>\r
20250             <para>\r
20251             In case a descendant is created before a particular ancestor,\r
20252             then it creates a provision node for the ancestor and adds itself\r
20253             to the provision node. Other descendants of the same ancestor add\r
20254             themselves to the previously created provision node.\r
20255             </para>\r
20256             </remarks>\r
20257             <author>Nicko Cadell</author>\r
20258             <author>Gert Driesen</author>\r
20259         </member>\r
20260         <member name="T:log4net.Repository.LoggerRepositorySkeleton">\r
20261             <summary>\r
20262             Base implementation of <see cref="T:log4net.Repository.ILoggerRepository"/>\r
20263             </summary>\r
20264             <remarks>\r
20265             <para>\r
20266             Default abstract implementation of the <see cref="T:log4net.Repository.ILoggerRepository"/> interface.\r
20267             </para>\r
20268             <para>\r
20269             Skeleton implementation of the <see cref="T:log4net.Repository.ILoggerRepository"/> interface.\r
20270             All <see cref="T:log4net.Repository.ILoggerRepository"/> types can extend this type.\r
20271             </para>\r
20272             </remarks>\r
20273             <author>Nicko Cadell</author>\r
20274             <author>Gert Driesen</author>\r
20275         </member>\r
20276         <member name="T:log4net.Repository.ILoggerRepository">\r
20277             <summary>\r
20278             Interface implemented by logger repositories.\r
20279             </summary>\r
20280             <remarks>\r
20281             <para>\r
20282             This interface is implemented by logger repositories. e.g. \r
20283             <see cref="T:log4net.Repository.Hierarchy.Hierarchy"/>.\r
20284             </para>\r
20285             <para>\r
20286             This interface is used by the <see cref="T:log4net.LogManager"/>\r
20287             to obtain <see cref="T:log4net.ILog"/> interfaces.\r
20288             </para>\r
20289             </remarks>\r
20290             <author>Nicko Cadell</author>\r
20291             <author>Gert Driesen</author>\r
20292         </member>\r
20293         <member name="M:log4net.Repository.ILoggerRepository.Exists(System.String)">\r
20294             <summary>\r
20295             Check if the named logger exists in the repository. If so return\r
20296             its reference, otherwise returns <c>null</c>.\r
20297             </summary>\r
20298             <param name="name">The name of the logger to lookup</param>\r
20299             <returns>The Logger object with the name specified</returns>\r
20300             <remarks>\r
20301             <para>\r
20302             If the names logger exists it is returned, otherwise\r
20303             <c>null</c> is returned.\r
20304             </para>\r
20305             </remarks>\r
20306         </member>\r
20307         <member name="M:log4net.Repository.ILoggerRepository.GetCurrentLoggers">\r
20308             <summary>\r
20309             Returns all the currently defined loggers as an Array.\r
20310             </summary>\r
20311             <returns>All the defined loggers</returns>\r
20312             <remarks>\r
20313             <para>\r
20314             Returns all the currently defined loggers as an Array.\r
20315             </para>\r
20316             </remarks>\r
20317         </member>\r
20318         <member name="M:log4net.Repository.ILoggerRepository.GetLogger(System.String)">\r
20319             <summary>\r
20320             Returns a named logger instance\r
20321             </summary>\r
20322             <param name="name">The name of the logger to retrieve</param>\r
20323             <returns>The logger object with the name specified</returns>\r
20324             <remarks>\r
20325             <para>\r
20326             Returns a named logger instance.\r
20327             </para>\r
20328             <para>\r
20329             If a logger of that name already exists, then it will be\r
20330             returned.  Otherwise, a new logger will be instantiated and\r
20331             then linked with its existing ancestors as well as children.\r
20332             </para>\r
20333             </remarks>\r
20334         </member>\r
20335         <member name="M:log4net.Repository.ILoggerRepository.Shutdown">\r
20336             <summary>Shutdown the repository</summary>\r
20337             <remarks>\r
20338             <para>\r
20339             Shutting down a repository will <i>safely</i> close and remove\r
20340             all appenders in all loggers including the root logger.\r
20341             </para>\r
20342             <para>\r
20343             Some appenders need to be closed before the\r
20344             application exists. Otherwise, pending logging events might be\r
20345             lost.\r
20346             </para>\r
20347             <para>\r
20348             The <see cref="M:log4net.Repository.ILoggerRepository.Shutdown"/> method is careful to close nested\r
20349             appenders before closing regular appenders. This is allows\r
20350             configurations where a regular appender is attached to a logger\r
20351             and again to a nested appender.\r
20352             </para>\r
20353             </remarks>\r
20354         </member>\r
20355         <member name="M:log4net.Repository.ILoggerRepository.ResetConfiguration">\r
20356             <summary>\r
20357             Reset the repositories configuration to a default state\r
20358             </summary>\r
20359             <remarks>\r
20360             <para>\r
20361             Reset all values contained in this instance to their\r
20362             default state.\r
20363             </para>\r
20364             <para>\r
20365             Existing loggers are not removed. They are just reset.\r
20366             </para>\r
20367             <para>\r
20368             This method should be used sparingly and with care as it will\r
20369             block all logging until it is completed.\r
20370             </para>\r
20371             </remarks>\r
20372         </member>\r
20373         <member name="M:log4net.Repository.ILoggerRepository.Log(log4net.Core.LoggingEvent)">\r
20374             <summary>\r
20375             Log the <see cref="T:log4net.Core.LoggingEvent"/> through this repository.\r
20376             </summary>\r
20377             <param name="logEvent">the event to log</param>\r
20378             <remarks>\r
20379             <para>\r
20380             This method should not normally be used to log.\r
20381             The <see cref="T:log4net.ILog"/> interface should be used \r
20382             for routine logging. This interface can be obtained\r
20383             using the <see cref="M:log4net.LogManager.GetLogger(System.String)"/> method.\r
20384             </para>\r
20385             <para>\r
20386             The <c>logEvent</c> is delivered to the appropriate logger and\r
20387             that logger is then responsible for logging the event.\r
20388             </para>\r
20389             </remarks>\r
20390         </member>\r
20391         <member name="M:log4net.Repository.ILoggerRepository.GetAppenders">\r
20392             <summary>\r
20393             Returns all the Appenders that are configured as an Array.\r
20394             </summary>\r
20395             <returns>All the Appenders</returns>\r
20396             <remarks>\r
20397             <para>\r
20398             Returns all the Appenders that are configured as an Array.\r
20399             </para>\r
20400             </remarks>\r
20401         </member>\r
20402         <member name="P:log4net.Repository.ILoggerRepository.Name">\r
20403             <summary>\r
20404             The name of the repository\r
20405             </summary>\r
20406             <value>\r
20407             The name of the repository\r
20408             </value>\r
20409             <remarks>\r
20410             <para>\r
20411             The name of the repository.\r
20412             </para>\r
20413             </remarks>\r
20414         </member>\r
20415         <member name="P:log4net.Repository.ILoggerRepository.RendererMap">\r
20416             <summary>\r
20417             RendererMap accesses the object renderer map for this repository.\r
20418             </summary>\r
20419             <value>\r
20420             RendererMap accesses the object renderer map for this repository.\r
20421             </value>\r
20422             <remarks>\r
20423             <para>\r
20424             RendererMap accesses the object renderer map for this repository.\r
20425             </para>\r
20426             <para>\r
20427             The RendererMap holds a mapping between types and\r
20428             <see cref="T:log4net.ObjectRenderer.IObjectRenderer"/> objects.\r
20429             </para>\r
20430             </remarks>\r
20431         </member>\r
20432         <member name="P:log4net.Repository.ILoggerRepository.PluginMap">\r
20433             <summary>\r
20434             The plugin map for this repository.\r
20435             </summary>\r
20436             <value>\r
20437             The plugin map for this repository.\r
20438             </value>\r
20439             <remarks>\r
20440             <para>\r
20441             The plugin map holds the <see cref="T:log4net.Plugin.IPlugin"/> instances\r
20442             that have been attached to this repository.\r
20443             </para>\r
20444             </remarks>\r
20445         </member>\r
20446         <member name="P:log4net.Repository.ILoggerRepository.LevelMap">\r
20447             <summary>\r
20448             Get the level map for the Repository.\r
20449             </summary>\r
20450             <remarks>\r
20451             <para>\r
20452             Get the level map for the Repository.\r
20453             </para>\r
20454             <para>\r
20455             The level map defines the mappings between\r
20456             level names and <see cref="T:log4net.Core.Level"/> objects in\r
20457             this repository.\r
20458             </para>\r
20459             </remarks>\r
20460         </member>\r
20461         <member name="P:log4net.Repository.ILoggerRepository.Threshold">\r
20462             <summary>\r
20463             The threshold for all events in this repository\r
20464             </summary>\r
20465             <value>\r
20466             The threshold for all events in this repository\r
20467             </value>\r
20468             <remarks>\r
20469             <para>\r
20470             The threshold for all events in this repository.\r
20471             </para>\r
20472             </remarks>\r
20473         </member>\r
20474         <member name="P:log4net.Repository.ILoggerRepository.Configured">\r
20475             <summary>\r
20476             Flag indicates if this repository has been configured.\r
20477             </summary>\r
20478             <value>\r
20479             Flag indicates if this repository has been configured.\r
20480             </value>\r
20481             <remarks>\r
20482             <para>\r
20483             Flag indicates if this repository has been configured.\r
20484             </para>\r
20485             </remarks>\r
20486         </member>\r
20487         <member name="E:log4net.Repository.ILoggerRepository.ShutdownEvent">\r
20488             <summary>\r
20489             Event to notify that the repository has been shutdown.\r
20490             </summary>\r
20491             <value>\r
20492             Event to notify that the repository has been shutdown.\r
20493             </value>\r
20494             <remarks>\r
20495             <para>\r
20496             Event raised when the repository has been shutdown.\r
20497             </para>\r
20498             </remarks>\r
20499         </member>\r
20500         <member name="E:log4net.Repository.ILoggerRepository.ConfigurationReset">\r
20501             <summary>\r
20502             Event to notify that the repository has had its configuration reset.\r
20503             </summary>\r
20504             <value>\r
20505             Event to notify that the repository has had its configuration reset.\r
20506             </value>\r
20507             <remarks>\r
20508             <para>\r
20509             Event raised when the repository's configuration has been\r
20510             reset to default.\r
20511             </para>\r
20512             </remarks>\r
20513         </member>\r
20514         <member name="E:log4net.Repository.ILoggerRepository.ConfigurationChanged">\r
20515             <summary>\r
20516             Event to notify that the repository has had its configuration changed.\r
20517             </summary>\r
20518             <value>\r
20519             Event to notify that the repository has had its configuration changed.\r
20520             </value>\r
20521             <remarks>\r
20522             <para>\r
20523             Event raised when the repository's configuration has been changed.\r
20524             </para>\r
20525             </remarks>\r
20526         </member>\r
20527         <member name="P:log4net.Repository.ILoggerRepository.Properties">\r
20528             <summary>\r
20529             Repository specific properties\r
20530             </summary>\r
20531             <value>\r
20532             Repository specific properties\r
20533             </value>\r
20534             <remarks>\r
20535             <para>\r
20536             These properties can be specified on a repository specific basis.\r
20537             </para>\r
20538             </remarks>\r
20539         </member>\r
20540         <member name="M:log4net.Repository.LoggerRepositorySkeleton.#ctor">\r
20541             <summary>\r
20542             Default Constructor\r
20543             </summary>\r
20544             <remarks>\r
20545             <para>\r
20546             Initializes the repository with default (empty) properties.\r
20547             </para>\r
20548             </remarks>\r
20549         </member>\r
20550         <member name="M:log4net.Repository.LoggerRepositorySkeleton.#ctor(log4net.Util.PropertiesDictionary)">\r
20551             <summary>\r
20552             Construct the repository using specific properties\r
20553             </summary>\r
20554             <param name="properties">the properties to set for this repository</param>\r
20555             <remarks>\r
20556             <para>\r
20557             Initializes the repository with specified properties.\r
20558             </para>\r
20559             </remarks>\r
20560         </member>\r
20561         <member name="M:log4net.Repository.LoggerRepositorySkeleton.Exists(System.String)">\r
20562             <summary>\r
20563             Test if logger exists\r
20564             </summary>\r
20565             <param name="name">The name of the logger to lookup</param>\r
20566             <returns>The Logger object with the name specified</returns>\r
20567             <remarks>\r
20568             <para>\r
20569             Check if the named logger exists in the repository. If so return\r
20570             its reference, otherwise returns <c>null</c>.\r
20571             </para>\r
20572             </remarks>\r
20573         </member>\r
20574         <member name="M:log4net.Repository.LoggerRepositorySkeleton.GetCurrentLoggers">\r
20575             <summary>\r
20576             Returns all the currently defined loggers in the repository\r
20577             </summary>\r
20578             <returns>All the defined loggers</returns>\r
20579             <remarks>\r
20580             <para>\r
20581             Returns all the currently defined loggers in the repository as an Array.\r
20582             </para>\r
20583             </remarks>\r
20584         </member>\r
20585         <member name="M:log4net.Repository.LoggerRepositorySkeleton.GetLogger(System.String)">\r
20586             <summary>\r
20587             Return a new logger instance\r
20588             </summary>\r
20589             <param name="name">The name of the logger to retrieve</param>\r
20590             <returns>The logger object with the name specified</returns>\r
20591             <remarks>\r
20592             <para>\r
20593             Return a new logger instance.\r
20594             </para>\r
20595             <para>\r
20596             If a logger of that name already exists, then it will be\r
20597             returned. Otherwise, a new logger will be instantiated and\r
20598             then linked with its existing ancestors as well as children.\r
20599             </para>\r
20600             </remarks>\r
20601         </member>\r
20602         <member name="M:log4net.Repository.LoggerRepositorySkeleton.Shutdown">\r
20603             <summary>\r
20604             Shutdown the repository\r
20605             </summary>\r
20606             <remarks>\r
20607             <para>\r
20608             Shutdown the repository. Can be overridden in a subclass.\r
20609             This base class implementation notifies the <see cref="E:log4net.Repository.LoggerRepositorySkeleton.ShutdownEvent"/>\r
20610             listeners and all attached plugins of the shutdown event.\r
20611             </para>\r
20612             </remarks>\r
20613         </member>\r
20614         <member name="M:log4net.Repository.LoggerRepositorySkeleton.ResetConfiguration">\r
20615             <summary>\r
20616             Reset the repositories configuration to a default state\r
20617             </summary>\r
20618             <remarks>\r
20619             <para>\r
20620             Reset all values contained in this instance to their\r
20621             default state.\r
20622             </para>\r
20623             <para>\r
20624             Existing loggers are not removed. They are just reset.\r
20625             </para>\r
20626             <para>\r
20627             This method should be used sparingly and with care as it will\r
20628             block all logging until it is completed.\r
20629             </para>\r
20630             </remarks>\r
20631         </member>\r
20632         <member name="M:log4net.Repository.LoggerRepositorySkeleton.Log(log4net.Core.LoggingEvent)">\r
20633             <summary>\r
20634             Log the logEvent through this repository.\r
20635             </summary>\r
20636             <param name="logEvent">the event to log</param>\r
20637             <remarks>\r
20638             <para>\r
20639             This method should not normally be used to log.\r
20640             The <see cref="T:log4net.ILog"/> interface should be used \r
20641             for routine logging. This interface can be obtained\r
20642             using the <see cref="M:log4net.LogManager.GetLogger(System.String)"/> method.\r
20643             </para>\r
20644             <para>\r
20645             The <c>logEvent</c> is delivered to the appropriate logger and\r
20646             that logger is then responsible for logging the event.\r
20647             </para>\r
20648             </remarks>\r
20649         </member>\r
20650         <member name="M:log4net.Repository.LoggerRepositorySkeleton.GetAppenders">\r
20651             <summary>\r
20652             Returns all the Appenders that are configured as an Array.\r
20653             </summary>\r
20654             <returns>All the Appenders</returns>\r
20655             <remarks>\r
20656             <para>\r
20657             Returns all the Appenders that are configured as an Array.\r
20658             </para>\r
20659             </remarks>\r
20660         </member>\r
20661         <member name="M:log4net.Repository.LoggerRepositorySkeleton.AddRenderer(System.Type,log4net.ObjectRenderer.IObjectRenderer)">\r
20662             <summary>\r
20663             Adds an object renderer for a specific class. \r
20664             </summary>\r
20665             <param name="typeToRender">The type that will be rendered by the renderer supplied.</param>\r
20666             <param name="rendererInstance">The object renderer used to render the object.</param>\r
20667             <remarks>\r
20668             <para>\r
20669             Adds an object renderer for a specific class. \r
20670             </para>\r
20671             </remarks>\r
20672         </member>\r
20673         <member name="M:log4net.Repository.LoggerRepositorySkeleton.OnShutdown(System.EventArgs)">\r
20674             <summary>\r
20675             Notify the registered listeners that the repository is shutting down\r
20676             </summary>\r
20677             <param name="e">Empty EventArgs</param>\r
20678             <remarks>\r
20679             <para>\r
20680             Notify any listeners that this repository is shutting down.\r
20681             </para>\r
20682             </remarks>\r
20683         </member>\r
20684         <member name="M:log4net.Repository.LoggerRepositorySkeleton.OnConfigurationReset(System.EventArgs)">\r
20685             <summary>\r
20686             Notify the registered listeners that the repository has had its configuration reset\r
20687             </summary>\r
20688             <param name="e">Empty EventArgs</param>\r
20689             <remarks>\r
20690             <para>\r
20691             Notify any listeners that this repository's configuration has been reset.\r
20692             </para>\r
20693             </remarks>\r
20694         </member>\r
20695         <member name="M:log4net.Repository.LoggerRepositorySkeleton.OnConfigurationChanged(System.EventArgs)">\r
20696             <summary>\r
20697             Notify the registered listeners that the repository has had its configuration changed\r
20698             </summary>\r
20699             <param name="e">Empty EventArgs</param>\r
20700             <remarks>\r
20701             <para>\r
20702             Notify any listeners that this repository's configuration has changed.\r
20703             </para>\r
20704             </remarks>\r
20705         </member>\r
20706         <member name="M:log4net.Repository.LoggerRepositorySkeleton.RaiseConfigurationChanged(System.EventArgs)">\r
20707             <summary>\r
20708             Raise a configuration changed event on this repository\r
20709             </summary>\r
20710             <param name="e">EventArgs.Empty</param>\r
20711             <remarks>\r
20712             <para>\r
20713             Applications that programmatically change the configuration of the repository should\r
20714             raise this event notification to notify listeners.\r
20715             </para>\r
20716             </remarks>\r
20717         </member>\r
20718         <member name="P:log4net.Repository.LoggerRepositorySkeleton.Name">\r
20719             <summary>\r
20720             The name of the repository\r
20721             </summary>\r
20722             <value>\r
20723             The string name of the repository\r
20724             </value>\r
20725             <remarks>\r
20726             <para>\r
20727             The name of this repository. The name is\r
20728             used to store and lookup the repositories \r
20729             stored by the <see cref="T:log4net.Core.IRepositorySelector"/>.\r
20730             </para>\r
20731             </remarks>\r
20732         </member>\r
20733         <member name="P:log4net.Repository.LoggerRepositorySkeleton.Threshold">\r
20734             <summary>\r
20735             The threshold for all events in this repository\r
20736             </summary>\r
20737             <value>\r
20738             The threshold for all events in this repository\r
20739             </value>\r
20740             <remarks>\r
20741             <para>\r
20742             The threshold for all events in this repository\r
20743             </para>\r
20744             </remarks>\r
20745         </member>\r
20746         <member name="P:log4net.Repository.LoggerRepositorySkeleton.RendererMap">\r
20747             <summary>\r
20748             RendererMap accesses the object renderer map for this repository.\r
20749             </summary>\r
20750             <value>\r
20751             RendererMap accesses the object renderer map for this repository.\r
20752             </value>\r
20753             <remarks>\r
20754             <para>\r
20755             RendererMap accesses the object renderer map for this repository.\r
20756             </para>\r
20757             <para>\r
20758             The RendererMap holds a mapping between types and\r
20759             <see cref="T:log4net.ObjectRenderer.IObjectRenderer"/> objects.\r
20760             </para>\r
20761             </remarks>\r
20762         </member>\r
20763         <member name="P:log4net.Repository.LoggerRepositorySkeleton.PluginMap">\r
20764             <summary>\r
20765             The plugin map for this repository.\r
20766             </summary>\r
20767             <value>\r
20768             The plugin map for this repository.\r
20769             </value>\r
20770             <remarks>\r
20771             <para>\r
20772             The plugin map holds the <see cref="T:log4net.Plugin.IPlugin"/> instances\r
20773             that have been attached to this repository.\r
20774             </para>\r
20775             </remarks>\r
20776         </member>\r
20777         <member name="P:log4net.Repository.LoggerRepositorySkeleton.LevelMap">\r
20778             <summary>\r
20779             Get the level map for the Repository.\r
20780             </summary>\r
20781             <remarks>\r
20782             <para>\r
20783             Get the level map for the Repository.\r
20784             </para>\r
20785             <para>\r
20786             The level map defines the mappings between\r
20787             level names and <see cref="T:log4net.Core.Level"/> objects in\r
20788             this repository.\r
20789             </para>\r
20790             </remarks>\r
20791         </member>\r
20792         <member name="P:log4net.Repository.LoggerRepositorySkeleton.Configured">\r
20793             <summary>\r
20794             Flag indicates if this repository has been configured.\r
20795             </summary>\r
20796             <value>\r
20797             Flag indicates if this repository has been configured.\r
20798             </value>\r
20799             <remarks>\r
20800             <para>\r
20801             Flag indicates if this repository has been configured.\r
20802             </para>\r
20803             </remarks>\r
20804         </member>\r
20805         <member name="E:log4net.Repository.LoggerRepositorySkeleton.ShutdownEvent">\r
20806             <summary>\r
20807             Event to notify that the repository has been shutdown.\r
20808             </summary>\r
20809             <value>\r
20810             Event to notify that the repository has been shutdown.\r
20811             </value>\r
20812             <remarks>\r
20813             <para>\r
20814             Event raised when the repository has been shutdown.\r
20815             </para>\r
20816             </remarks>\r
20817         </member>\r
20818         <member name="E:log4net.Repository.LoggerRepositorySkeleton.ConfigurationReset">\r
20819             <summary>\r
20820             Event to notify that the repository has had its configuration reset.\r
20821             </summary>\r
20822             <value>\r
20823             Event to notify that the repository has had its configuration reset.\r
20824             </value>\r
20825             <remarks>\r
20826             <para>\r
20827             Event raised when the repository's configuration has been\r
20828             reset to default.\r
20829             </para>\r
20830             </remarks>\r
20831         </member>\r
20832         <member name="E:log4net.Repository.LoggerRepositorySkeleton.ConfigurationChanged">\r
20833             <summary>\r
20834             Event to notify that the repository has had its configuration changed.\r
20835             </summary>\r
20836             <value>\r
20837             Event to notify that the repository has had its configuration changed.\r
20838             </value>\r
20839             <remarks>\r
20840             <para>\r
20841             Event raised when the repository's configuration has been changed.\r
20842             </para>\r
20843             </remarks>\r
20844         </member>\r
20845         <member name="P:log4net.Repository.LoggerRepositorySkeleton.Properties">\r
20846             <summary>\r
20847             Repository specific properties\r
20848             </summary>\r
20849             <value>\r
20850             Repository specific properties\r
20851             </value>\r
20852             <remarks>\r
20853             These properties can be specified on a repository specific basis\r
20854             </remarks>\r
20855         </member>\r
20856         <member name="T:log4net.Repository.IBasicRepositoryConfigurator">\r
20857             <summary>\r
20858             Basic Configurator interface for repositories\r
20859             </summary>\r
20860             <remarks>\r
20861             <para>\r
20862             Interface used by basic configurator to configure a <see cref="T:log4net.Repository.ILoggerRepository"/>\r
20863             with a default <see cref="T:log4net.Appender.IAppender"/>.\r
20864             </para>\r
20865             <para>\r
20866             A <see cref="T:log4net.Repository.ILoggerRepository"/> should implement this interface to support\r
20867             configuration by the <see cref="T:log4net.Config.BasicConfigurator"/>.\r
20868             </para>\r
20869             </remarks>\r
20870             <author>Nicko Cadell</author>\r
20871             <author>Gert Driesen</author>\r
20872         </member>\r
20873         <member name="M:log4net.Repository.IBasicRepositoryConfigurator.Configure(log4net.Appender.IAppender)">\r
20874             <summary>\r
20875             Initialize the repository using the specified appender\r
20876             </summary>\r
20877             <param name="appender">the appender to use to log all logging events</param>\r
20878             <remarks>\r
20879             <para>\r
20880             Configure the repository to route all logging events to the\r
20881             specified appender.\r
20882             </para>\r
20883             </remarks>\r
20884         </member>\r
20885         <member name="T:log4net.Repository.IXmlRepositoryConfigurator">\r
20886             <summary>\r
20887             Configure repository using XML\r
20888             </summary>\r
20889             <remarks>\r
20890             <para>\r
20891             Interface used by Xml configurator to configure a <see cref="T:log4net.Repository.ILoggerRepository"/>.\r
20892             </para>\r
20893             <para>\r
20894             A <see cref="T:log4net.Repository.ILoggerRepository"/> should implement this interface to support\r
20895             configuration by the <see cref="T:log4net.Config.XmlConfigurator"/>.\r
20896             </para>\r
20897             </remarks>\r
20898             <author>Nicko Cadell</author>\r
20899             <author>Gert Driesen</author>\r
20900         </member>\r
20901         <member name="M:log4net.Repository.IXmlRepositoryConfigurator.Configure(System.Xml.XmlElement)">\r
20902             <summary>\r
20903             Initialize the repository using the specified config\r
20904             </summary>\r
20905             <param name="element">the element containing the root of the config</param>\r
20906             <remarks>\r
20907             <para>\r
20908             The schema for the XML configuration data is defined by\r
20909             the implementation.\r
20910             </para>\r
20911             </remarks>\r
20912         </member>\r
20913         <member name="M:log4net.Repository.Hierarchy.Hierarchy.#ctor">\r
20914             <summary>\r
20915             Default constructor\r
20916             </summary>\r
20917             <remarks>\r
20918             <para>\r
20919             Initializes a new instance of the <see cref="T:log4net.Repository.Hierarchy.Hierarchy"/> class.\r
20920             </para>\r
20921             </remarks>\r
20922         </member>\r
20923         <member name="M:log4net.Repository.Hierarchy.Hierarchy.#ctor(log4net.Util.PropertiesDictionary)">\r
20924             <summary>\r
20925             Construct with properties\r
20926             </summary>\r
20927             <param name="properties">The properties to pass to this repository.</param>\r
20928             <remarks>\r
20929             <para>\r
20930             Initializes a new instance of the <see cref="T:log4net.Repository.Hierarchy.Hierarchy"/> class.\r
20931             </para>\r
20932             </remarks>\r
20933         </member>\r
20934         <member name="M:log4net.Repository.Hierarchy.Hierarchy.#ctor(log4net.Repository.Hierarchy.ILoggerFactory)">\r
20935             <summary>\r
20936             Construct with a logger factory\r
20937             </summary>\r
20938             <param name="loggerFactory">The factory to use to create new logger instances.</param>\r
20939             <remarks>\r
20940             <para>\r
20941             Initializes a new instance of the <see cref="T:log4net.Repository.Hierarchy.Hierarchy"/> class with \r
20942             the specified <see cref="T:log4net.Repository.Hierarchy.ILoggerFactory"/>.\r
20943             </para>\r
20944             </remarks>\r
20945         </member>\r
20946         <member name="M:log4net.Repository.Hierarchy.Hierarchy.#ctor(log4net.Util.PropertiesDictionary,log4net.Repository.Hierarchy.ILoggerFactory)">\r
20947             <summary>\r
20948             Construct with properties and a logger factory\r
20949             </summary>\r
20950             <param name="properties">The properties to pass to this repository.</param>\r
20951             <param name="loggerFactory">The factory to use to create new logger instances.</param>\r
20952             <remarks>\r
20953             <para>\r
20954             Initializes a new instance of the <see cref="T:log4net.Repository.Hierarchy.Hierarchy"/> class with \r
20955             the specified <see cref="T:log4net.Repository.Hierarchy.ILoggerFactory"/>.\r
20956             </para>\r
20957             </remarks>\r
20958         </member>\r
20959         <member name="M:log4net.Repository.Hierarchy.Hierarchy.Exists(System.String)">\r
20960             <summary>\r
20961             Test if a logger exists\r
20962             </summary>\r
20963             <param name="name">The name of the logger to lookup</param>\r
20964             <returns>The Logger object with the name specified</returns>\r
20965             <remarks>\r
20966             <para>\r
20967             Check if the named logger exists in the hierarchy. If so return\r
20968             its reference, otherwise returns <c>null</c>.\r
20969             </para>\r
20970             </remarks>\r
20971         </member>\r
20972         <member name="M:log4net.Repository.Hierarchy.Hierarchy.GetCurrentLoggers">\r
20973             <summary>\r
20974             Returns all the currently defined loggers in the hierarchy as an Array\r
20975             </summary>\r
20976             <returns>All the defined loggers</returns>\r
20977             <remarks>\r
20978             <para>\r
20979             Returns all the currently defined loggers in the hierarchy as an Array.\r
20980             The root logger is <b>not</b> included in the returned\r
20981             enumeration.\r
20982             </para>\r
20983             </remarks>\r
20984         </member>\r
20985         <member name="M:log4net.Repository.Hierarchy.Hierarchy.GetLogger(System.String)">\r
20986             <summary>\r
20987             Return a new logger instance named as the first parameter using\r
20988             the default factory.\r
20989             </summary>\r
20990             <remarks>\r
20991             <para>\r
20992             Return a new logger instance named as the first parameter using\r
20993             the default factory.\r
20994             </para>\r
20995             <para>\r
20996             If a logger of that name already exists, then it will be\r
20997             returned.  Otherwise, a new logger will be instantiated and\r
20998             then linked with its existing ancestors as well as children.\r
20999             </para>\r
21000             </remarks>\r
21001             <param name="name">The name of the logger to retrieve</param>\r
21002             <returns>The logger object with the name specified</returns>\r
21003         </member>\r
21004         <member name="M:log4net.Repository.Hierarchy.Hierarchy.Shutdown">\r
21005             <summary>\r
21006             Shutting down a hierarchy will <i>safely</i> close and remove\r
21007             all appenders in all loggers including the root logger.\r
21008             </summary>\r
21009             <remarks>\r
21010             <para>\r
21011             Shutting down a hierarchy will <i>safely</i> close and remove\r
21012             all appenders in all loggers including the root logger.\r
21013             </para>\r
21014             <para>\r
21015             Some appenders need to be closed before the\r
21016             application exists. Otherwise, pending logging events might be\r
21017             lost.\r
21018             </para>\r
21019             <para>\r
21020             The <c>Shutdown</c> method is careful to close nested\r
21021             appenders before closing regular appenders. This is allows\r
21022             configurations where a regular appender is attached to a logger\r
21023             and again to a nested appender.\r
21024             </para>\r
21025             </remarks>\r
21026         </member>\r
21027         <member name="M:log4net.Repository.Hierarchy.Hierarchy.ResetConfiguration">\r
21028             <summary>\r
21029             Reset all values contained in this hierarchy instance to their default.\r
21030             </summary>\r
21031             <remarks>\r
21032             <para>\r
21033             Reset all values contained in this hierarchy instance to their\r
21034             default.  This removes all appenders from all loggers, sets\r
21035             the level of all non-root loggers to <c>null</c>,\r
21036             sets their additivity flag to <c>true</c> and sets the level\r
21037             of the root logger to <see cref="F:log4net.Core.Level.Debug"/>. Moreover,\r
21038             message disabling is set its default "off" value.\r
21039             </para>\r
21040             <para>\r
21041             Existing loggers are not removed. They are just reset.\r
21042             </para>\r
21043             <para>\r
21044             This method should be used sparingly and with care as it will\r
21045             block all logging until it is completed.\r
21046             </para>\r
21047             </remarks>\r
21048         </member>\r
21049         <member name="M:log4net.Repository.Hierarchy.Hierarchy.Log(log4net.Core.LoggingEvent)">\r
21050             <summary>\r
21051             Log the logEvent through this hierarchy.\r
21052             </summary>\r
21053             <param name="logEvent">the event to log</param>\r
21054             <remarks>\r
21055             <para>\r
21056             This method should not normally be used to log.\r
21057             The <see cref="T:log4net.ILog"/> interface should be used \r
21058             for routine logging. This interface can be obtained\r
21059             using the <see cref="M:log4net.LogManager.GetLogger(System.String)"/> method.\r
21060             </para>\r
21061             <para>\r
21062             The <c>logEvent</c> is delivered to the appropriate logger and\r
21063             that logger is then responsible for logging the event.\r
21064             </para>\r
21065             </remarks>\r
21066         </member>\r
21067         <member name="M:log4net.Repository.Hierarchy.Hierarchy.GetAppenders">\r
21068             <summary>\r
21069             Returns all the Appenders that are currently configured\r
21070             </summary>\r
21071             <returns>An array containing all the currently configured appenders</returns>\r
21072             <remarks>\r
21073             <para>\r
21074             Returns all the <see cref="T:log4net.Appender.IAppender"/> instances that are currently configured.\r
21075             All the loggers are searched for appenders. The appenders may also be containers\r
21076             for appenders and these are also searched for additional loggers.\r
21077             </para>\r
21078             <para>\r
21079             The list returned is unordered but does not contain duplicates.\r
21080             </para>\r
21081             </remarks>\r
21082         </member>\r
21083         <member name="M:log4net.Repository.Hierarchy.Hierarchy.CollectAppender(System.Collections.ArrayList,log4net.Appender.IAppender)">\r
21084             <summary>\r
21085             Collect the appenders from an <see cref="T:log4net.Core.IAppenderAttachable"/>.\r
21086             The appender may also be a container.\r
21087             </summary>\r
21088             <param name="appenderList"></param>\r
21089             <param name="appender"></param>\r
21090         </member>\r
21091         <member name="M:log4net.Repository.Hierarchy.Hierarchy.CollectAppenders(System.Collections.ArrayList,log4net.Core.IAppenderAttachable)">\r
21092             <summary>\r
21093             Collect the appenders from an <see cref="T:log4net.Core.IAppenderAttachable"/> container\r
21094             </summary>\r
21095             <param name="appenderList"></param>\r
21096             <param name="container"></param>\r
21097         </member>\r
21098         <member name="M:log4net.Repository.Hierarchy.Hierarchy.log4net#Repository#IBasicRepositoryConfigurator#Configure(log4net.Appender.IAppender)">\r
21099             <summary>\r
21100             Initialize the log4net system using the specified appender\r
21101             </summary>\r
21102             <param name="appender">the appender to use to log all logging events</param>\r
21103         </member>\r
21104         <member name="M:log4net.Repository.Hierarchy.Hierarchy.BasicRepositoryConfigure(log4net.Appender.IAppender)">\r
21105             <summary>\r
21106             Initialize the log4net system using the specified appender\r
21107             </summary>\r
21108             <param name="appender">the appender to use to log all logging events</param>\r
21109             <remarks>\r
21110             <para>\r
21111             This method provides the same functionality as the \r
21112             <see cref="M:log4net.Repository.IBasicRepositoryConfigurator.Configure(log4net.Appender.IAppender)"/> method implemented\r
21113             on this object, but it is protected and therefore can be called by subclasses.\r
21114             </para>\r
21115             </remarks>\r
21116         </member>\r
21117         <member name="M:log4net.Repository.Hierarchy.Hierarchy.log4net#Repository#IXmlRepositoryConfigurator#Configure(System.Xml.XmlElement)">\r
21118             <summary>\r
21119             Initialize the log4net system using the specified config\r
21120             </summary>\r
21121             <param name="element">the element containing the root of the config</param>\r
21122         </member>\r
21123         <member name="M:log4net.Repository.Hierarchy.Hierarchy.XmlRepositoryConfigure(System.Xml.XmlElement)">\r
21124             <summary>\r
21125             Initialize the log4net system using the specified config\r
21126             </summary>\r
21127             <param name="element">the element containing the root of the config</param>\r
21128             <remarks>\r
21129             <para>\r
21130             This method provides the same functionality as the \r
21131             <see cref="M:log4net.Repository.IBasicRepositoryConfigurator.Configure(log4net.Appender.IAppender)"/> method implemented\r
21132             on this object, but it is protected and therefore can be called by subclasses.\r
21133             </para>\r
21134             </remarks>\r
21135         </member>\r
21136         <member name="M:log4net.Repository.Hierarchy.Hierarchy.IsDisabled(log4net.Core.Level)">\r
21137             <summary>\r
21138             Test if this hierarchy is disabled for the specified <see cref="T:log4net.Core.Level"/>.\r
21139             </summary>\r
21140             <param name="level">The level to check against.</param>\r
21141             <returns>\r
21142             <c>true</c> if the repository is disabled for the level argument, <c>false</c> otherwise.\r
21143             </returns>\r
21144             <remarks>\r
21145             <para>\r
21146             If this hierarchy has not been configured then this method will\r
21147             always return <c>true</c>.\r
21148             </para>\r
21149             <para>\r
21150             This method will return <c>true</c> if this repository is\r
21151             disabled for <c>level</c> object passed as parameter and\r
21152             <c>false</c> otherwise.\r
21153             </para>\r
21154             <para>\r
21155             See also the <see cref="P:log4net.Repository.ILoggerRepository.Threshold"/> property.\r
21156             </para>\r
21157             </remarks>\r
21158         </member>\r
21159         <member name="M:log4net.Repository.Hierarchy.Hierarchy.Clear">\r
21160             <summary>\r
21161             Clear all logger definitions from the internal hashtable\r
21162             </summary>\r
21163             <remarks>\r
21164             <para>\r
21165             This call will clear all logger definitions from the internal\r
21166             hashtable. Invoking this method will irrevocably mess up the\r
21167             logger hierarchy.\r
21168             </para>\r
21169             <para>\r
21170             You should <b>really</b> know what you are doing before\r
21171             invoking this method.\r
21172             </para>\r
21173             </remarks>\r
21174         </member>\r
21175         <member name="M:log4net.Repository.Hierarchy.Hierarchy.GetLogger(System.String,log4net.Repository.Hierarchy.ILoggerFactory)">\r
21176             <summary>\r
21177             Return a new logger instance named as the first parameter using\r
21178             <paramref name="factory"/>.\r
21179             </summary>\r
21180             <param name="name">The name of the logger to retrieve</param>\r
21181             <param name="factory">The factory that will make the new logger instance</param>\r
21182             <returns>The logger object with the name specified</returns>\r
21183             <remarks>\r
21184             <para>\r
21185             If a logger of that name already exists, then it will be\r
21186             returned. Otherwise, a new logger will be instantiated by the\r
21187             <paramref name="factory"/> parameter and linked with its existing\r
21188             ancestors as well as children.\r
21189             </para>\r
21190             </remarks>\r
21191         </member>\r
21192         <member name="M:log4net.Repository.Hierarchy.Hierarchy.OnLoggerCreationEvent(log4net.Repository.Hierarchy.Logger)">\r
21193             <summary>\r
21194             Sends a logger creation event to all registered listeners\r
21195             </summary>\r
21196             <param name="logger">The newly created logger</param>\r
21197             <remarks>\r
21198             Raises the logger creation event.\r
21199             </remarks>\r
21200         </member>\r
21201         <member name="M:log4net.Repository.Hierarchy.Hierarchy.UpdateParents(log4net.Repository.Hierarchy.Logger)">\r
21202             <summary>\r
21203             Updates all the parents of the specified logger\r
21204             </summary>\r
21205             <param name="log">The logger to update the parents for</param>\r
21206             <remarks>\r
21207             <para>\r
21208             This method loops through all the <i>potential</i> parents of\r
21209             <paramref name="log"/>. There 3 possible cases:\r
21210             </para>\r
21211             <list type="number">\r
21212                 <item>\r
21213                         <term>No entry for the potential parent of <paramref name="log"/> exists</term>\r
21214                         <description>\r
21215                         We create a ProvisionNode for this potential \r
21216                         parent and insert <paramref name="log"/> in that provision node.\r
21217                         </description>\r
21218                 </item>\r
21219                 <item>\r
21220                         <term>The entry is of type Logger for the potential parent.</term>\r
21221                         <description>\r
21222                         The entry is <paramref name="log"/>'s nearest existing parent. We \r
21223                         update <paramref name="log"/>'s parent field with this entry. We also break from \r
21224                         he loop because updating our parent's parent is our parent's \r
21225                         responsibility.\r
21226                         </description>\r
21227                 </item>\r
21228                 <item>\r
21229                         <term>The entry is of type ProvisionNode for this potential parent.</term>\r
21230                         <description>\r
21231                         We add <paramref name="log"/> to the list of children for this \r
21232                         potential parent.\r
21233                         </description>\r
21234                 </item>\r
21235             </list>\r
21236             </remarks>\r
21237         </member>\r
21238         <member name="M:log4net.Repository.Hierarchy.Hierarchy.UpdateChildren(log4net.Repository.Hierarchy.ProvisionNode,log4net.Repository.Hierarchy.Logger)">\r
21239             <summary>\r
21240             Replace a <see cref="T:log4net.Repository.Hierarchy.ProvisionNode"/> with a <see cref="T:log4net.Repository.Hierarchy.Logger"/> in the hierarchy.\r
21241             </summary>\r
21242             <param name="pn"></param>\r
21243             <param name="log"></param>\r
21244             <remarks>\r
21245             <para>\r
21246             We update the links for all the children that placed themselves\r
21247             in the provision node 'pn'. The second argument 'log' is a\r
21248             reference for the newly created Logger, parent of all the\r
21249             children in 'pn'.\r
21250             </para>\r
21251             <para>\r
21252             We loop on all the children 'c' in 'pn'.\r
21253             </para>\r
21254             <para>\r
21255             If the child 'c' has been already linked to a child of\r
21256             'log' then there is no need to update 'c'.\r
21257             </para>\r
21258             <para>\r
21259             Otherwise, we set log's parent field to c's parent and set\r
21260             c's parent field to log.\r
21261             </para>\r
21262             </remarks>\r
21263         </member>\r
21264         <member name="M:log4net.Repository.Hierarchy.Hierarchy.AddLevel(log4net.Repository.Hierarchy.Hierarchy.LevelEntry)">\r
21265             <summary>\r
21266             Define or redefine a Level using the values in the <see cref="T:log4net.Repository.Hierarchy.Hierarchy.LevelEntry"/> argument\r
21267             </summary>\r
21268             <param name="levelEntry">the level values</param>\r
21269             <remarks>\r
21270             <para>\r
21271             Define or redefine a Level using the values in the <see cref="T:log4net.Repository.Hierarchy.Hierarchy.LevelEntry"/> argument\r
21272             </para>\r
21273             <para>\r
21274             Supports setting levels via the configuration file.\r
21275             </para>\r
21276             </remarks>\r
21277         </member>\r
21278         <member name="M:log4net.Repository.Hierarchy.Hierarchy.AddProperty(log4net.Repository.Hierarchy.Hierarchy.PropertyEntry)">\r
21279             <summary>\r
21280             Set a Property using the values in the <see cref="T:log4net.Repository.Hierarchy.Hierarchy.LevelEntry"/> argument\r
21281             </summary>\r
21282             <param name="propertyEntry">the property value</param>\r
21283             <remarks>\r
21284             <para>\r
21285             Set a Property using the values in the <see cref="T:log4net.Repository.Hierarchy.Hierarchy.LevelEntry"/> argument.\r
21286             </para>\r
21287             <para>\r
21288             Supports setting property values via the configuration file.\r
21289             </para>\r
21290             </remarks>\r
21291         </member>\r
21292         <member name="E:log4net.Repository.Hierarchy.Hierarchy.LoggerCreatedEvent">\r
21293             <summary>\r
21294             Event used to notify that a logger has been created.\r
21295             </summary>\r
21296             <remarks>\r
21297             <para>\r
21298             Event raised when a logger is created.\r
21299             </para>\r
21300             </remarks>\r
21301         </member>\r
21302         <member name="P:log4net.Repository.Hierarchy.Hierarchy.EmittedNoAppenderWarning">\r
21303             <summary>\r
21304             Has no appender warning been emitted\r
21305             </summary>\r
21306             <remarks>\r
21307             <para>\r
21308             Flag to indicate if we have already issued a warning\r
21309             about not having an appender warning.\r
21310             </para>\r
21311             </remarks>\r
21312         </member>\r
21313         <member name="P:log4net.Repository.Hierarchy.Hierarchy.Root">\r
21314             <summary>\r
21315             Get the root of this hierarchy\r
21316             </summary>\r
21317             <remarks>\r
21318             <para>\r
21319             Get the root of this hierarchy.\r
21320             </para>\r
21321             </remarks>\r
21322         </member>\r
21323         <member name="P:log4net.Repository.Hierarchy.Hierarchy.LoggerFactory">\r
21324             <summary>\r
21325             Gets or sets the default <see cref="T:log4net.Repository.Hierarchy.ILoggerFactory"/> instance.\r
21326             </summary>\r
21327             <value>The default <see cref="T:log4net.Repository.Hierarchy.ILoggerFactory"/></value>\r
21328             <remarks>\r
21329             <para>\r
21330             The logger factory is used to create logger instances.\r
21331             </para>\r
21332             </remarks>\r
21333         </member>\r
21334         <member name="T:log4net.Repository.Hierarchy.Hierarchy.LevelEntry">\r
21335             <summary>\r
21336             A class to hold the value, name and display name for a level\r
21337             </summary>\r
21338             <remarks>\r
21339             <para>\r
21340             A class to hold the value, name and display name for a level\r
21341             </para>\r
21342             </remarks>\r
21343         </member>\r
21344         <member name="M:log4net.Repository.Hierarchy.Hierarchy.LevelEntry.ToString">\r
21345             <summary>\r
21346             Override <c>Object.ToString</c> to return sensible debug info\r
21347             </summary>\r
21348             <returns>string info about this object</returns>\r
21349         </member>\r
21350         <member name="P:log4net.Repository.Hierarchy.Hierarchy.LevelEntry.Value">\r
21351             <summary>\r
21352             Value of the level\r
21353             </summary>\r
21354             <remarks>\r
21355             <para>\r
21356             If the value is not set (defaults to -1) the value will be looked\r
21357             up for the current level with the same name.\r
21358             </para>\r
21359             </remarks>\r
21360         </member>\r
21361         <member name="P:log4net.Repository.Hierarchy.Hierarchy.LevelEntry.Name">\r
21362             <summary>\r
21363             Name of the level\r
21364             </summary>\r
21365             <value>\r
21366             The name of the level\r
21367             </value>\r
21368             <remarks>\r
21369             <para>\r
21370             The name of the level.\r
21371             </para>\r
21372             </remarks>\r
21373         </member>\r
21374         <member name="P:log4net.Repository.Hierarchy.Hierarchy.LevelEntry.DisplayName">\r
21375             <summary>\r
21376             Display name for the level\r
21377             </summary>\r
21378             <value>\r
21379             The display name of the level\r
21380             </value>\r
21381             <remarks>\r
21382             <para>\r
21383             The display name of the level.\r
21384             </para>\r
21385             </remarks>\r
21386         </member>\r
21387         <member name="T:log4net.Repository.Hierarchy.Hierarchy.PropertyEntry">\r
21388             <summary>\r
21389             A class to hold the key and data for a property set in the config file\r
21390             </summary>\r
21391             <remarks>\r
21392             <para>\r
21393             A class to hold the key and data for a property set in the config file\r
21394             </para>\r
21395             </remarks>\r
21396         </member>\r
21397         <member name="M:log4net.Repository.Hierarchy.Hierarchy.PropertyEntry.ToString">\r
21398             <summary>\r
21399             Override <c>Object.ToString</c> to return sensible debug info\r
21400             </summary>\r
21401             <returns>string info about this object</returns>\r
21402         </member>\r
21403         <member name="P:log4net.Repository.Hierarchy.Hierarchy.PropertyEntry.Key">\r
21404             <summary>\r
21405             Property Key\r
21406             </summary>\r
21407             <value>\r
21408             Property Key\r
21409             </value>\r
21410             <remarks>\r
21411             <para>\r
21412             Property Key.\r
21413             </para>\r
21414             </remarks>\r
21415         </member>\r
21416         <member name="P:log4net.Repository.Hierarchy.Hierarchy.PropertyEntry.Value">\r
21417             <summary>\r
21418             Property Value\r
21419             </summary>\r
21420             <value>\r
21421             Property Value\r
21422             </value>\r
21423             <remarks>\r
21424             <para>\r
21425             Property Value.\r
21426             </para>\r
21427             </remarks>\r
21428         </member>\r
21429         <member name="T:log4net.Repository.Hierarchy.LoggerKey">\r
21430             <summary>\r
21431             Used internally to accelerate hash table searches.\r
21432             </summary>\r
21433             <remarks>\r
21434             <para>\r
21435             Internal class used to improve performance of \r
21436             string keyed hashtables.\r
21437             </para>\r
21438             <para>\r
21439             The hashcode of the string is cached for reuse.\r
21440             The string is stored as an interned value.\r
21441             When comparing two <see cref="T:log4net.Repository.Hierarchy.LoggerKey"/> objects for equality \r
21442             the reference equality of the interned strings is compared.\r
21443             </para>\r
21444             </remarks>\r
21445             <author>Nicko Cadell</author>\r
21446             <author>Gert Driesen</author>\r
21447         </member>\r
21448         <member name="M:log4net.Repository.Hierarchy.LoggerKey.#ctor(System.String)">\r
21449             <summary>\r
21450             Construct key with string name\r
21451             </summary>\r
21452             <remarks>\r
21453             <para>\r
21454             Initializes a new instance of the <see cref="T:log4net.Repository.Hierarchy.LoggerKey"/> class \r
21455             with the specified name.\r
21456             </para>\r
21457             <para>\r
21458             Stores the hashcode of the string and interns\r
21459             the string key to optimize comparisons.\r
21460             </para>\r
21461             <note>\r
21462             The Compact Framework 1.0 the <see cref="M:System.String.Intern(System.String)"/>\r
21463             method does not work. On the Compact Framework\r
21464             the string keys are not interned nor are they\r
21465             compared by reference.\r
21466             </note>\r
21467             </remarks>\r
21468             <param name="name">The name of the logger.</param>\r
21469         </member>\r
21470         <member name="M:log4net.Repository.Hierarchy.LoggerKey.GetHashCode">\r
21471             <summary>\r
21472             Returns a hash code for the current instance.\r
21473             </summary>\r
21474             <returns>A hash code for the current instance.</returns>\r
21475             <remarks>\r
21476             <para>\r
21477             Returns the cached hashcode.\r
21478             </para>\r
21479             </remarks>\r
21480         </member>\r
21481         <member name="M:log4net.Repository.Hierarchy.LoggerKey.Equals(System.Object)">\r
21482             <summary>\r
21483             Determines whether two <see cref="T:log4net.Repository.Hierarchy.LoggerKey"/> instances \r
21484             are equal.\r
21485             </summary>\r
21486             <param name="obj">The <see cref="T:System.Object"/> to compare with the current <see cref="T:log4net.Repository.Hierarchy.LoggerKey"/>.</param>\r
21487             <returns>\r
21488             <c>true</c> if the specified <see cref="T:System.Object"/> is equal to the current <see cref="T:log4net.Repository.Hierarchy.LoggerKey"/>; otherwise, <c>false</c>.\r
21489             </returns>\r
21490             <remarks>\r
21491             <para>\r
21492             Compares the references of the interned strings.\r
21493             </para>\r
21494             </remarks>\r
21495         </member>\r
21496         <member name="T:log4net.Repository.Hierarchy.ProvisionNode">\r
21497             <summary>\r
21498             Provision nodes are used where no logger instance has been specified\r
21499             </summary>\r
21500             <remarks>\r
21501             <para>\r
21502             <see cref="T:log4net.Repository.Hierarchy.ProvisionNode"/> instances are used in the \r
21503             <see cref="T:log4net.Repository.Hierarchy.Hierarchy"/> when there is no specified \r
21504             <see cref="T:log4net.Repository.Hierarchy.Logger"/> for that node.\r
21505             </para>\r
21506             <para>\r
21507             A provision node holds a list of child loggers on behalf of\r
21508             a logger that does not exist.\r
21509             </para>\r
21510             </remarks>\r
21511             <author>Nicko Cadell</author>\r
21512             <author>Gert Driesen</author>\r
21513         </member>\r
21514         <member name="M:log4net.Repository.Hierarchy.ProvisionNode.#ctor(log4net.Repository.Hierarchy.Logger)">\r
21515             <summary>\r
21516             Create a new provision node with child node\r
21517             </summary>\r
21518             <param name="log">A child logger to add to this node.</param>\r
21519             <remarks>\r
21520             <para>\r
21521             Initializes a new instance of the <see cref="T:log4net.Repository.Hierarchy.ProvisionNode"/> class \r
21522             with the specified child logger.\r
21523             </para>\r
21524             </remarks>\r
21525         </member>\r
21526         <member name="T:log4net.Repository.Hierarchy.RootLogger">\r
21527             <summary>\r
21528             The <see cref="T:log4net.Repository.Hierarchy.RootLogger"/> sits at the root of the logger hierarchy tree. \r
21529             </summary>\r
21530             <remarks>\r
21531             <para>\r
21532             The <see cref="T:log4net.Repository.Hierarchy.RootLogger"/> is a regular <see cref="T:log4net.Repository.Hierarchy.Logger"/> except \r
21533             that it provides several guarantees.\r
21534             </para>\r
21535             <para>\r
21536             First, it cannot be assigned a <c>null</c>\r
21537             level. Second, since the root logger cannot have a parent, the\r
21538             <see cref="P:log4net.Repository.Hierarchy.RootLogger.EffectiveLevel"/> property always returns the value of the\r
21539             level field without walking the hierarchy.\r
21540             </para>\r
21541             </remarks>\r
21542             <author>Nicko Cadell</author>\r
21543             <author>Gert Driesen</author>\r
21544         </member>\r
21545         <member name="M:log4net.Repository.Hierarchy.RootLogger.#ctor(log4net.Core.Level)">\r
21546             <summary>\r
21547             Construct a <see cref="T:log4net.Repository.Hierarchy.RootLogger"/>\r
21548             </summary>\r
21549             <param name="level">The level to assign to the root logger.</param>\r
21550             <remarks>\r
21551             <para>\r
21552             Initializes a new instance of the <see cref="T:log4net.Repository.Hierarchy.RootLogger"/> class with\r
21553             the specified logging level.\r
21554             </para>\r
21555             <para>\r
21556             The root logger names itself as "root". However, the root\r
21557             logger cannot be retrieved by name.\r
21558             </para>\r
21559             </remarks>\r
21560         </member>\r
21561         <member name="P:log4net.Repository.Hierarchy.RootLogger.EffectiveLevel">\r
21562             <summary>\r
21563             Gets the assigned level value without walking the logger hierarchy.\r
21564             </summary>\r
21565             <value>The assigned level value without walking the logger hierarchy.</value>\r
21566             <remarks>\r
21567             <para>\r
21568             Because the root logger cannot have a parent and its level\r
21569             must not be <c>null</c> this property just returns the\r
21570             value of <see cref="P:log4net.Repository.Hierarchy.Logger.Level"/>.\r
21571             </para>\r
21572             </remarks>\r
21573         </member>\r
21574         <member name="P:log4net.Repository.Hierarchy.RootLogger.Level">\r
21575             <summary>\r
21576             Gets or sets the assigned <see cref="P:log4net.Repository.Hierarchy.RootLogger.Level"/> for the root logger.  \r
21577             </summary>\r
21578             <value>\r
21579             The <see cref="P:log4net.Repository.Hierarchy.RootLogger.Level"/> of the root logger.\r
21580             </value>\r
21581             <remarks>\r
21582             <para>\r
21583             Setting the level of the root logger to a <c>null</c> reference\r
21584             may have catastrophic results. We prevent this here.\r
21585             </para>\r
21586             </remarks>\r
21587         </member>\r
21588         <member name="T:log4net.Repository.Hierarchy.XmlHierarchyConfigurator">\r
21589             <summary>\r
21590             Initializes the log4net environment using an XML DOM.\r
21591             </summary>\r
21592             <remarks>\r
21593             <para>\r
21594             Configures a <see cref="T:log4net.Repository.Hierarchy.Hierarchy"/> using an XML DOM.\r
21595             </para>\r
21596             </remarks>\r
21597             <author>Nicko Cadell</author>\r
21598             <author>Gert Driesen</author>\r
21599         </member>\r
21600         <member name="M:log4net.Repository.Hierarchy.XmlHierarchyConfigurator.#ctor(log4net.Repository.Hierarchy.Hierarchy)">\r
21601             <summary>\r
21602             Construct the configurator for a hierarchy\r
21603             </summary>\r
21604             <param name="hierarchy">The hierarchy to build.</param>\r
21605             <remarks>\r
21606             <para>\r
21607             Initializes a new instance of the <see cref="T:log4net.Repository.Hierarchy.XmlHierarchyConfigurator"/> class\r
21608             with the specified <see cref="T:log4net.Repository.Hierarchy.Hierarchy"/>.\r
21609             </para>\r
21610             </remarks>\r
21611         </member>\r
21612         <member name="M:log4net.Repository.Hierarchy.XmlHierarchyConfigurator.Configure(System.Xml.XmlElement)">\r
21613             <summary>\r
21614             Configure the hierarchy by parsing a DOM tree of XML elements.\r
21615             </summary>\r
21616             <param name="element">The root element to parse.</param>\r
21617             <remarks>\r
21618             <para>\r
21619             Configure the hierarchy by parsing a DOM tree of XML elements.\r
21620             </para>\r
21621             </remarks>\r
21622         </member>\r
21623         <member name="M:log4net.Repository.Hierarchy.XmlHierarchyConfigurator.FindAppenderByReference(System.Xml.XmlElement)">\r
21624             <summary>\r
21625             Parse appenders by IDREF.\r
21626             </summary>\r
21627             <param name="appenderRef">The appender ref element.</param>\r
21628             <returns>The instance of the appender that the ref refers to.</returns>\r
21629             <remarks>\r
21630             <para>\r
21631             Parse an XML element that represents an appender and return \r
21632             the appender.\r
21633             </para>\r
21634             </remarks>\r
21635         </member>\r
21636         <member name="M:log4net.Repository.Hierarchy.XmlHierarchyConfigurator.ParseAppender(System.Xml.XmlElement)">\r
21637             <summary>\r
21638             Parses an appender element.\r
21639             </summary>\r
21640             <param name="appenderElement">The appender element.</param>\r
21641             <returns>The appender instance or <c>null</c> when parsing failed.</returns>\r
21642             <remarks>\r
21643             <para>\r
21644             Parse an XML element that represents an appender and return\r
21645             the appender instance.\r
21646             </para>\r
21647             </remarks>\r
21648         </member>\r
21649         <member name="M:log4net.Repository.Hierarchy.XmlHierarchyConfigurator.ParseLogger(System.Xml.XmlElement)">\r
21650             <summary>\r
21651             Parses a logger element.\r
21652             </summary>\r
21653             <param name="loggerElement">The logger element.</param>\r
21654             <remarks>\r
21655             <para>\r
21656             Parse an XML element that represents a logger.\r
21657             </para>\r
21658             </remarks>\r
21659         </member>\r
21660         <member name="M:log4net.Repository.Hierarchy.XmlHierarchyConfigurator.ParseRoot(System.Xml.XmlElement)">\r
21661             <summary>\r
21662             Parses the root logger element.\r
21663             </summary>\r
21664             <param name="rootElement">The root element.</param>\r
21665             <remarks>\r
21666             <para>\r
21667             Parse an XML element that represents the root logger.\r
21668             </para>\r
21669             </remarks>\r
21670         </member>\r
21671         <member name="M:log4net.Repository.Hierarchy.XmlHierarchyConfigurator.ParseChildrenOfLoggerElement(System.Xml.XmlElement,log4net.Repository.Hierarchy.Logger,System.Boolean)">\r
21672             <summary>\r
21673             Parses the children of a logger element.\r
21674             </summary>\r
21675             <param name="catElement">The category element.</param>\r
21676             <param name="log">The logger instance.</param>\r
21677             <param name="isRoot">Flag to indicate if the logger is the root logger.</param>\r
21678             <remarks>\r
21679             <para>\r
21680             Parse the child elements of a &lt;logger&gt; element.\r
21681             </para>\r
21682             </remarks>\r
21683         </member>\r
21684         <member name="M:log4net.Repository.Hierarchy.XmlHierarchyConfigurator.ParseRenderer(System.Xml.XmlElement)">\r
21685             <summary>\r
21686             Parses an object renderer.\r
21687             </summary>\r
21688             <param name="element">The renderer element.</param>\r
21689             <remarks>\r
21690             <para>\r
21691             Parse an XML element that represents a renderer.\r
21692             </para>\r
21693             </remarks>\r
21694         </member>\r
21695         <member name="M:log4net.Repository.Hierarchy.XmlHierarchyConfigurator.ParseLevel(System.Xml.XmlElement,log4net.Repository.Hierarchy.Logger,System.Boolean)">\r
21696             <summary>\r
21697             Parses a level element.\r
21698             </summary>\r
21699             <param name="element">The level element.</param>\r
21700             <param name="log">The logger object to set the level on.</param>\r
21701             <param name="isRoot">Flag to indicate if the logger is the root logger.</param>\r
21702             <remarks>\r
21703             <para>\r
21704             Parse an XML element that represents a level.\r
21705             </para>\r
21706             </remarks>\r
21707         </member>\r
21708         <member name="M:log4net.Repository.Hierarchy.XmlHierarchyConfigurator.SetParameter(System.Xml.XmlElement,System.Object)">\r
21709             <summary>\r
21710             Sets a parameter on an object.\r
21711             </summary>\r
21712             <param name="element">The parameter element.</param>\r
21713             <param name="target">The object to set the parameter on.</param>\r
21714             <remarks>\r
21715             The parameter name must correspond to a writable property\r
21716             on the object. The value of the parameter is a string,\r
21717             therefore this function will attempt to set a string\r
21718             property first. If unable to set a string property it\r
21719             will inspect the property and its argument type. It will\r
21720             attempt to call a static method called <c>Parse</c> on the\r
21721             type of the property. This method will take a single\r
21722             string argument and return a value that can be used to\r
21723             set the property.\r
21724             </remarks>\r
21725         </member>\r
21726         <member name="M:log4net.Repository.Hierarchy.XmlHierarchyConfigurator.HasAttributesOrElements(System.Xml.XmlElement)">\r
21727             <summary>\r
21728             Test if an element has no attributes or child elements\r
21729             </summary>\r
21730             <param name="element">the element to inspect</param>\r
21731             <returns><c>true</c> if the element has any attributes or child elements, <c>false</c> otherwise</returns>\r
21732         </member>\r
21733         <member name="M:log4net.Repository.Hierarchy.XmlHierarchyConfigurator.IsTypeConstructible(System.Type)">\r
21734             <summary>\r
21735             Test if a <see cref="T:System.Type"/> is constructible with <c>Activator.CreateInstance</c>.\r
21736             </summary>\r
21737             <param name="type">the type to inspect</param>\r
21738             <returns><c>true</c> if the type is creatable using a default constructor, <c>false</c> otherwise</returns>\r
21739         </member>\r
21740         <member name="M:log4net.Repository.Hierarchy.XmlHierarchyConfigurator.FindMethodInfo(System.Type,System.String)">\r
21741             <summary>\r
21742             Look for a method on the <paramref name="targetType"/> that matches the <paramref name="name"/> supplied\r
21743             </summary>\r
21744             <param name="targetType">the type that has the method</param>\r
21745             <param name="name">the name of the method</param>\r
21746             <returns>the method info found</returns>\r
21747             <remarks>\r
21748             <para>\r
21749             The method must be a public instance method on the <paramref name="targetType"/>.\r
21750             The method must be named <paramref name="name"/> or "Add" followed by <paramref name="name"/>.\r
21751             The method must take a single parameter.\r
21752             </para>\r
21753             </remarks>\r
21754         </member>\r
21755         <member name="M:log4net.Repository.Hierarchy.XmlHierarchyConfigurator.ConvertStringTo(System.Type,System.String)">\r
21756             <summary>\r
21757             Converts a string value to a target type.\r
21758             </summary>\r
21759             <param name="type">The type of object to convert the string to.</param>\r
21760             <param name="value">The string value to use as the value of the object.</param>\r
21761             <returns>\r
21762             <para>\r
21763             An object of type <paramref name="type"/> with value <paramref name="value"/> or \r
21764             <c>null</c> when the conversion could not be performed.\r
21765             </para>\r
21766             </returns>\r
21767         </member>\r
21768         <member name="M:log4net.Repository.Hierarchy.XmlHierarchyConfigurator.CreateObjectFromXml(System.Xml.XmlElement,System.Type,System.Type)">\r
21769             <summary>\r
21770             Creates an object as specified in XML.\r
21771             </summary>\r
21772             <param name="element">The XML element that contains the definition of the object.</param>\r
21773             <param name="defaultTargetType">The object type to use if not explicitly specified.</param>\r
21774             <param name="typeConstraint">The type that the returned object must be or must inherit from.</param>\r
21775             <returns>The object or <c>null</c></returns>\r
21776             <remarks>\r
21777             <para>\r
21778             Parse an XML element and create an object instance based on the configuration\r
21779             data.\r
21780             </para>\r
21781             <para>\r
21782             The type of the instance may be specified in the XML. If not\r
21783             specified then the <paramref name="defaultTargetType"/> is used\r
21784             as the type. However the type is specified it must support the\r
21785             <paramref name="typeConstraint"/> type.\r
21786             </para>\r
21787             </remarks>\r
21788         </member>\r
21789         <member name="F:log4net.Repository.Hierarchy.XmlHierarchyConfigurator.m_appenderBag">\r
21790             <summary>\r
21791             key: appenderName, value: appender.\r
21792             </summary>\r
21793         </member>\r
21794         <member name="F:log4net.Repository.Hierarchy.XmlHierarchyConfigurator.m_hierarchy">\r
21795             <summary>\r
21796             The Hierarchy being configured.\r
21797             </summary>\r
21798         </member>\r
21799         <member name="T:log4net.Repository.LoggerRepositoryShutdownEventHandler">\r
21800             <summary>\r
21801             Delegate used to handle logger repository shutdown event notifications\r
21802             </summary>\r
21803             <param name="sender">The <see cref="T:log4net.Repository.ILoggerRepository"/> that is shutting down.</param>\r
21804             <param name="e">Empty event args</param>\r
21805             <remarks>\r
21806             <para>\r
21807             Delegate used to handle logger repository shutdown event notifications.\r
21808             </para>\r
21809             </remarks>\r
21810         </member>\r
21811         <member name="T:log4net.Repository.LoggerRepositoryConfigurationResetEventHandler">\r
21812             <summary>\r
21813             Delegate used to handle logger repository configuration reset event notifications\r
21814             </summary>\r
21815             <param name="sender">The <see cref="T:log4net.Repository.ILoggerRepository"/> that has had its configuration reset.</param>\r
21816             <param name="e">Empty event args</param>\r
21817             <remarks>\r
21818             <para>\r
21819             Delegate used to handle logger repository configuration reset event notifications.\r
21820             </para>\r
21821             </remarks>\r
21822         </member>\r
21823         <member name="T:log4net.Repository.LoggerRepositoryConfigurationChangedEventHandler">\r
21824             <summary>\r
21825             Delegate used to handle event notifications for logger repository configuration changes.\r
21826             </summary>\r
21827             <param name="sender">The <see cref="T:log4net.Repository.ILoggerRepository"/> that has had its configuration changed.</param>\r
21828             <param name="e">Empty event arguments.</param>\r
21829             <remarks>\r
21830             <para>\r
21831             Delegate used to handle event notifications for logger repository configuration changes.\r
21832             </para>\r
21833             </remarks>\r
21834         </member>\r
21835         <member name="T:log4net.Util.PatternStringConverters.AppDomainPatternConverter">\r
21836             <summary>\r
21837             Write the name of the current AppDomain to the output\r
21838             </summary>\r
21839             <remarks>\r
21840             <para>\r
21841             Write the name of the current AppDomain to the output writer\r
21842             </para>\r
21843             </remarks>\r
21844             <author>Nicko Cadell</author>\r
21845         </member>\r
21846         <member name="M:log4net.Util.PatternStringConverters.AppDomainPatternConverter.Convert(System.IO.TextWriter,System.Object)">\r
21847             <summary>\r
21848             Write the name of the current AppDomain to the output\r
21849             </summary>\r
21850             <param name="writer">the writer to write to</param>\r
21851             <param name="state">null, state is not set</param>\r
21852             <remarks>\r
21853             <para>\r
21854             Writes name of the current AppDomain to the output <paramref name="writer"/>.\r
21855             </para>\r
21856             </remarks>\r
21857         </member>\r
21858         <member name="T:log4net.Util.PatternStringConverters.DatePatternConverter">\r
21859             <summary>\r
21860             Write the current date to the output\r
21861             </summary>\r
21862             <remarks>\r
21863             <para>\r
21864             Date pattern converter, uses a <see cref="T:log4net.DateFormatter.IDateFormatter"/> to format \r
21865             the current date and time to the writer as a string.\r
21866             </para>\r
21867             <para>\r
21868             The value of the <see cref="P:log4net.Util.PatternConverter.Option"/> determines \r
21869             the formatting of the date. The following values are allowed:\r
21870             <list type="definition">\r
21871                 <listheader>\r
21872                         <term>Option value</term>\r
21873                         <description>Output</description>\r
21874                 </listheader>\r
21875                 <item>\r
21876                         <term>ISO8601</term>\r
21877                         <description>\r
21878                         Uses the <see cref="T:log4net.DateFormatter.Iso8601DateFormatter"/> formatter. \r
21879                         Formats using the <c>"yyyy-MM-dd HH:mm:ss,fff"</c> pattern.\r
21880                         </description>\r
21881                 </item>\r
21882                 <item>\r
21883                         <term>DATE</term>\r
21884                         <description>\r
21885                         Uses the <see cref="T:log4net.DateFormatter.DateTimeDateFormatter"/> formatter. \r
21886                         Formats using the <c>"dd MMM yyyy HH:mm:ss,fff"</c> for example, <c>"06 Nov 1994 15:49:37,459"</c>.\r
21887                         </description>\r
21888                 </item>\r
21889                 <item>\r
21890                         <term>ABSOLUTE</term>\r
21891                         <description>\r
21892                         Uses the <see cref="T:log4net.DateFormatter.AbsoluteTimeDateFormatter"/> formatter. \r
21893                         Formats using the <c>"HH:mm:ss,fff"</c> for example, <c>"15:49:37,459"</c>.\r
21894                         </description>\r
21895                 </item>\r
21896                 <item>\r
21897                         <term>other</term>\r
21898                         <description>\r
21899                         Any other pattern string uses the <see cref="T:log4net.DateFormatter.SimpleDateFormatter"/> formatter. \r
21900                         This formatter passes the pattern string to the <see cref="T:System.DateTime"/> \r
21901                         <see cref="M:System.DateTime.ToString(System.String)"/> method.\r
21902                         For details on valid patterns see \r
21903                         <a href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfsystemglobalizationdatetimeformatinfoclasstopic.asp">DateTimeFormatInfo Class</a>.\r
21904                         </description>\r
21905                 </item>\r
21906             </list>\r
21907             </para>\r
21908             <para>\r
21909             The date and time is in the local time zone and is rendered in that zone.\r
21910             To output the time in Universal time see <see cref="T:log4net.Util.PatternStringConverters.UtcDatePatternConverter"/>.\r
21911             </para>\r
21912             </remarks>\r
21913             <author>Nicko Cadell</author>\r
21914         </member>\r
21915         <member name="F:log4net.Util.PatternStringConverters.DatePatternConverter.m_dateFormatter">\r
21916             <summary>\r
21917             The <see cref="T:log4net.DateFormatter.IDateFormatter"/> used to render the date to a string\r
21918             </summary>\r
21919             <remarks>\r
21920             <para>\r
21921             The <see cref="T:log4net.DateFormatter.IDateFormatter"/> used to render the date to a string\r
21922             </para>\r
21923             </remarks>\r
21924         </member>\r
21925         <member name="M:log4net.Util.PatternStringConverters.DatePatternConverter.ActivateOptions">\r
21926             <summary>\r
21927             Initialize the converter options\r
21928             </summary>\r
21929             <remarks>\r
21930             <para>\r
21931             This is part of the <see cref="T:log4net.Core.IOptionHandler"/> delayed object\r
21932             activation scheme. The <see cref="M:log4net.Util.PatternStringConverters.DatePatternConverter.ActivateOptions"/> method must \r
21933             be called on this object after the configuration properties have\r
21934             been set. Until <see cref="M:log4net.Util.PatternStringConverters.DatePatternConverter.ActivateOptions"/> is called this\r
21935             object is in an undefined state and must not be used. \r
21936             </para>\r
21937             <para>\r
21938             If any of the configuration properties are modified then \r
21939             <see cref="M:log4net.Util.PatternStringConverters.DatePatternConverter.ActivateOptions"/> must be called again.\r
21940             </para>\r
21941             </remarks>\r
21942         </member>\r
21943         <member name="M:log4net.Util.PatternStringConverters.DatePatternConverter.Convert(System.IO.TextWriter,System.Object)">\r
21944             <summary>\r
21945             Write the current date to the output\r
21946             </summary>\r
21947             <param name="writer"><see cref="T:System.IO.TextWriter"/> that will receive the formatted result.</param>\r
21948             <param name="state">null, state is not set</param>\r
21949             <remarks>\r
21950             <para>\r
21951             Pass the current date and time to the <see cref="T:log4net.DateFormatter.IDateFormatter"/>\r
21952             for it to render it to the writer.\r
21953             </para>\r
21954             <para>\r
21955             The date and time passed is in the local time zone.\r
21956             </para>\r
21957             </remarks>\r
21958         </member>\r
21959         <member name="T:log4net.Util.PatternStringConverters.EnvironmentPatternConverter">\r
21960             <summary>\r
21961             Write an environment variable to the output\r
21962             </summary>\r
21963             <remarks>\r
21964             <para>\r
21965             Write an environment variable to the output writer.\r
21966             The value of the <see cref="P:log4net.Util.PatternConverter.Option"/> determines \r
21967             the name of the variable to output.\r
21968             </para>\r
21969             </remarks>\r
21970             <author>Nicko Cadell</author>\r
21971         </member>\r
21972         <member name="M:log4net.Util.PatternStringConverters.EnvironmentPatternConverter.Convert(System.IO.TextWriter,System.Object)">\r
21973             <summary>\r
21974             Write an environment variable to the output\r
21975             </summary>\r
21976             <param name="writer">the writer to write to</param>\r
21977             <param name="state">null, state is not set</param>\r
21978             <remarks>\r
21979             <para>\r
21980             Writes the environment variable to the output <paramref name="writer"/>.\r
21981             The name of the environment variable to output must be set\r
21982             using the <see cref="P:log4net.Util.PatternConverter.Option"/>\r
21983             property.\r
21984             </para>\r
21985             </remarks>\r
21986         </member>\r
21987         <member name="T:log4net.Util.PatternStringConverters.IdentityPatternConverter">\r
21988             <summary>\r
21989             Write the current thread identity to the output\r
21990             </summary>\r
21991             <remarks>\r
21992             <para>\r
21993             Write the current thread identity to the output writer\r
21994             </para>\r
21995             </remarks>\r
21996             <author>Nicko Cadell</author>\r
21997         </member>\r
21998         <member name="M:log4net.Util.PatternStringConverters.IdentityPatternConverter.Convert(System.IO.TextWriter,System.Object)">\r
21999             <summary>\r
22000             Write the current thread identity to the output\r
22001             </summary>\r
22002             <param name="writer">the writer to write to</param>\r
22003             <param name="state">null, state is not set</param>\r
22004             <remarks>\r
22005             <para>\r
22006             Writes the current thread identity to the output <paramref name="writer"/>.\r
22007             </para>\r
22008             </remarks>\r
22009         </member>\r
22010         <member name="T:log4net.Util.PatternStringConverters.LiteralPatternConverter">\r
22011             <summary>\r
22012             Pattern converter for literal string instances in the pattern\r
22013             </summary>\r
22014             <remarks>\r
22015             <para>\r
22016             Writes the literal string value specified in the \r
22017             <see cref="P:log4net.Util.PatternConverter.Option"/> property to \r
22018             the output.\r
22019             </para>\r
22020             </remarks>\r
22021             <author>Nicko Cadell</author>\r
22022         </member>\r
22023         <member name="M:log4net.Util.PatternStringConverters.LiteralPatternConverter.SetNext(log4net.Util.PatternConverter)">\r
22024             <summary>\r
22025             Set the next converter in the chain\r
22026             </summary>\r
22027             <param name="pc">The next pattern converter in the chain</param>\r
22028             <returns>The next pattern converter</returns>\r
22029             <remarks>\r
22030             <para>\r
22031             Special case the building of the pattern converter chain\r
22032             for <see cref="T:log4net.Util.PatternStringConverters.LiteralPatternConverter"/> instances. Two adjacent\r
22033             literals in the pattern can be represented by a single combined\r
22034             pattern converter. This implementation detects when a \r
22035             <see cref="T:log4net.Util.PatternStringConverters.LiteralPatternConverter"/> is added to the chain\r
22036             after this converter and combines its value with this converter's\r
22037             literal value.\r
22038             </para>\r
22039             </remarks>\r
22040         </member>\r
22041         <member name="M:log4net.Util.PatternStringConverters.LiteralPatternConverter.Format(System.IO.TextWriter,System.Object)">\r
22042             <summary>\r
22043             Write the literal to the output\r
22044             </summary>\r
22045             <param name="writer">the writer to write to</param>\r
22046             <param name="state">null, not set</param>\r
22047             <remarks>\r
22048             <para>\r
22049             Override the formatting behavior to ignore the FormattingInfo\r
22050             because we have a literal instead.\r
22051             </para>\r
22052             <para>\r
22053             Writes the value of <see cref="P:log4net.Util.PatternConverter.Option"/>\r
22054             to the output <paramref name="writer"/>.\r
22055             </para>\r
22056             </remarks>\r
22057         </member>\r
22058         <member name="M:log4net.Util.PatternStringConverters.LiteralPatternConverter.Convert(System.IO.TextWriter,System.Object)">\r
22059             <summary>\r
22060             Convert this pattern into the rendered message\r
22061             </summary>\r
22062             <param name="writer"><see cref="T:System.IO.TextWriter"/> that will receive the formatted result.</param>\r
22063             <param name="state">null, not set</param>\r
22064             <remarks>\r
22065             <para>\r
22066             This method is not used.\r
22067             </para>\r
22068             </remarks>\r
22069         </member>\r
22070         <member name="T:log4net.Util.PatternStringConverters.NewLinePatternConverter">\r
22071             <summary>\r
22072             Writes a newline to the output\r
22073             </summary>\r
22074             <remarks>\r
22075             <para>\r
22076             Writes the system dependent line terminator to the output.\r
22077             This behavior can be overridden by setting the <see cref="P:log4net.Util.PatternConverter.Option"/>:\r
22078             </para>\r
22079             <list type="definition">\r
22080               <listheader>\r
22081                 <term>Option Value</term>\r
22082                 <description>Output</description>\r
22083               </listheader>\r
22084               <item>\r
22085                 <term>DOS</term>\r
22086                 <description>DOS or Windows line terminator <c>"\r\n"</c></description>\r
22087               </item>\r
22088               <item>\r
22089                 <term>UNIX</term>\r
22090                 <description>UNIX line terminator <c>"\n"</c></description>\r
22091               </item>\r
22092             </list>\r
22093             </remarks>\r
22094             <author>Nicko Cadell</author>\r
22095         </member>\r
22096         <member name="M:log4net.Util.PatternStringConverters.NewLinePatternConverter.ActivateOptions">\r
22097             <summary>\r
22098             Initialize the converter\r
22099             </summary>\r
22100             <remarks>\r
22101             <para>\r
22102             This is part of the <see cref="T:log4net.Core.IOptionHandler"/> delayed object\r
22103             activation scheme. The <see cref="M:log4net.Util.PatternStringConverters.NewLinePatternConverter.ActivateOptions"/> method must \r
22104             be called on this object after the configuration properties have\r
22105             been set. Until <see cref="M:log4net.Util.PatternStringConverters.NewLinePatternConverter.ActivateOptions"/> is called this\r
22106             object is in an undefined state and must not be used. \r
22107             </para>\r
22108             <para>\r
22109             If any of the configuration properties are modified then \r
22110             <see cref="M:log4net.Util.PatternStringConverters.NewLinePatternConverter.ActivateOptions"/> must be called again.\r
22111             </para>\r
22112             </remarks>\r
22113         </member>\r
22114         <member name="T:log4net.Util.PatternStringConverters.ProcessIdPatternConverter">\r
22115             <summary>\r
22116             Write the current process ID to the output\r
22117             </summary>\r
22118             <remarks>\r
22119             <para>\r
22120             Write the current process ID to the output writer\r
22121             </para>\r
22122             </remarks>\r
22123             <author>Nicko Cadell</author>\r
22124         </member>\r
22125         <member name="M:log4net.Util.PatternStringConverters.ProcessIdPatternConverter.Convert(System.IO.TextWriter,System.Object)">\r
22126             <summary>\r
22127             Write the current process ID to the output\r
22128             </summary>\r
22129             <param name="writer">the writer to write to</param>\r
22130             <param name="state">null, state is not set</param>\r
22131             <remarks>\r
22132             <para>\r
22133             Write the current process ID to the output <paramref name="writer"/>.\r
22134             </para>\r
22135             </remarks>\r
22136         </member>\r
22137         <member name="T:log4net.Util.PatternStringConverters.PropertyPatternConverter">\r
22138             <summary>\r
22139             Property pattern converter\r
22140             </summary>\r
22141             <remarks>\r
22142             <para>\r
22143             This pattern converter reads the thread and global properties.\r
22144             The thread properties take priority over global properties.\r
22145             See <see cref="P:log4net.ThreadContext.Properties"/> for details of the \r
22146             thread properties. See <see cref="P:log4net.GlobalContext.Properties"/> for\r
22147             details of the global properties.\r
22148             </para>\r
22149             <para>\r
22150             If the <see cref="P:log4net.Util.PatternConverter.Option"/> is specified then that will be used to\r
22151             lookup a single property. If no <see cref="P:log4net.Util.PatternConverter.Option"/> is specified\r
22152             then all properties will be dumped as a list of key value pairs.\r
22153             </para>\r
22154             </remarks>\r
22155             <author>Nicko Cadell</author>\r
22156         </member>\r
22157         <member name="M:log4net.Util.PatternStringConverters.PropertyPatternConverter.Convert(System.IO.TextWriter,System.Object)">\r
22158             <summary>\r
22159             Write the property value to the output\r
22160             </summary>\r
22161             <param name="writer"><see cref="T:System.IO.TextWriter"/> that will receive the formatted result.</param>\r
22162             <param name="state">null, state is not set</param>\r
22163             <remarks>\r
22164             <para>\r
22165             Writes out the value of a named property. The property name\r
22166             should be set in the <see cref="P:log4net.Util.PatternConverter.Option"/>\r
22167             property.\r
22168             </para>\r
22169             <para>\r
22170             If the <see cref="P:log4net.Util.PatternConverter.Option"/> is set to <c>null</c>\r
22171             then all the properties are written as key value pairs.\r
22172             </para>\r
22173             </remarks>\r
22174         </member>\r
22175         <member name="T:log4net.Util.PatternStringConverters.RandomStringPatternConverter">\r
22176             <summary>\r
22177             A Pattern converter that generates a string of random characters\r
22178             </summary>\r
22179             <remarks>\r
22180             <para>\r
22181             The converter generates a string of random characters. By default\r
22182             the string is length 4. This can be changed by setting the <see cref="P:log4net.Util.PatternConverter.Option"/>\r
22183             to the string value of the length required.\r
22184             </para>\r
22185             <para>\r
22186             The random characters in the string are limited to uppercase letters\r
22187             and numbers only.\r
22188             </para>\r
22189             <para>\r
22190             The random number generator used by this class is not cryptographically secure.\r
22191             </para>\r
22192             </remarks>\r
22193             <author>Nicko Cadell</author>\r
22194         </member>\r
22195         <member name="F:log4net.Util.PatternStringConverters.RandomStringPatternConverter.s_random">\r
22196             <summary>\r
22197             Shared random number generator\r
22198             </summary>\r
22199         </member>\r
22200         <member name="F:log4net.Util.PatternStringConverters.RandomStringPatternConverter.m_length">\r
22201             <summary>\r
22202             Length of random string to generate. Default length 4.\r
22203             </summary>\r
22204         </member>\r
22205         <member name="M:log4net.Util.PatternStringConverters.RandomStringPatternConverter.ActivateOptions">\r
22206             <summary>\r
22207             Initialize the converter options\r
22208             </summary>\r
22209             <remarks>\r
22210             <para>\r
22211             This is part of the <see cref="T:log4net.Core.IOptionHandler"/> delayed object\r
22212             activation scheme. The <see cref="M:log4net.Util.PatternStringConverters.RandomStringPatternConverter.ActivateOptions"/> method must \r
22213             be called on this object after the configuration properties have\r
22214             been set. Until <see cref="M:log4net.Util.PatternStringConverters.RandomStringPatternConverter.ActivateOptions"/> is called this\r
22215             object is in an undefined state and must not be used. \r
22216             </para>\r
22217             <para>\r
22218             If any of the configuration properties are modified then \r
22219             <see cref="M:log4net.Util.PatternStringConverters.RandomStringPatternConverter.ActivateOptions"/> must be called again.\r
22220             </para>\r
22221             </remarks>\r
22222         </member>\r
22223         <member name="M:log4net.Util.PatternStringConverters.RandomStringPatternConverter.Convert(System.IO.TextWriter,System.Object)">\r
22224             <summary>\r
22225             Write a randoim string to the output\r
22226             </summary>\r
22227             <param name="writer">the writer to write to</param>\r
22228             <param name="state">null, state is not set</param>\r
22229             <remarks>\r
22230             <para>\r
22231             Write a randoim string to the output <paramref name="writer"/>.\r
22232             </para>\r
22233             </remarks>\r
22234         </member>\r
22235         <member name="T:log4net.Util.PatternStringConverters.UserNamePatternConverter">\r
22236             <summary>\r
22237             Write the current threads username to the output\r
22238             </summary>\r
22239             <remarks>\r
22240             <para>\r
22241             Write the current threads username to the output writer\r
22242             </para>\r
22243             </remarks>\r
22244             <author>Nicko Cadell</author>\r
22245         </member>\r
22246         <member name="M:log4net.Util.PatternStringConverters.UserNamePatternConverter.Convert(System.IO.TextWriter,System.Object)">\r
22247             <summary>\r
22248             Write the current threads username to the output\r
22249             </summary>\r
22250             <param name="writer">the writer to write to</param>\r
22251             <param name="state">null, state is not set</param>\r
22252             <remarks>\r
22253             <para>\r
22254             Write the current threads username to the output <paramref name="writer"/>.\r
22255             </para>\r
22256             </remarks>\r
22257         </member>\r
22258         <member name="T:log4net.Util.PatternStringConverters.UtcDatePatternConverter">\r
22259             <summary>\r
22260             Write the UTC date time to the output\r
22261             </summary>\r
22262             <remarks>\r
22263             <para>\r
22264             Date pattern converter, uses a <see cref="T:log4net.DateFormatter.IDateFormatter"/> to format \r
22265             the current date and time in Universal time.\r
22266             </para>\r
22267             <para>\r
22268             See the <see cref="T:log4net.Util.PatternStringConverters.DatePatternConverter"/> for details on the date pattern syntax.\r
22269             </para>\r
22270             </remarks>\r
22271             <seealso cref="T:log4net.Util.PatternStringConverters.DatePatternConverter"/>\r
22272             <author>Nicko Cadell</author>\r
22273         </member>\r
22274         <member name="M:log4net.Util.PatternStringConverters.UtcDatePatternConverter.Convert(System.IO.TextWriter,System.Object)">\r
22275             <summary>\r
22276             Write the current date and time to the output\r
22277             </summary>\r
22278             <param name="writer"><see cref="T:System.IO.TextWriter"/> that will receive the formatted result.</param>\r
22279             <param name="state">null, state is not set</param>\r
22280             <remarks>\r
22281             <para>\r
22282             Pass the current date and time to the <see cref="T:log4net.DateFormatter.IDateFormatter"/>\r
22283             for it to render it to the writer.\r
22284             </para>\r
22285             <para>\r
22286             The date is in Universal time when it is rendered.\r
22287             </para>\r
22288             </remarks>\r
22289             <seealso cref="T:log4net.Util.PatternStringConverters.DatePatternConverter"/>\r
22290         </member>\r
22291         <member name="T:log4net.Util.TypeConverters.BooleanConverter">\r
22292             <summary>\r
22293             Type converter for Boolean.\r
22294             </summary>\r
22295             <remarks>\r
22296             <para>\r
22297             Supports conversion from string to <c>bool</c> type.\r
22298             </para>\r
22299             </remarks>\r
22300             <seealso cref="T:log4net.Util.TypeConverters.ConverterRegistry"/>\r
22301             <seealso cref="T:log4net.Util.TypeConverters.IConvertFrom"/>\r
22302             <seealso cref="T:log4net.Util.TypeConverters.IConvertTo"/>\r
22303             <author>Nicko Cadell</author>\r
22304             <author>Gert Driesen</author>\r
22305         </member>\r
22306         <member name="M:log4net.Util.TypeConverters.BooleanConverter.CanConvertFrom(System.Type)">\r
22307             <summary>\r
22308             Can the source type be converted to the type supported by this object\r
22309             </summary>\r
22310             <param name="sourceType">the type to convert</param>\r
22311             <returns>true if the conversion is possible</returns>\r
22312             <remarks>\r
22313             <para>\r
22314             Returns <c>true</c> if the <paramref name="sourceType"/> is\r
22315             the <see cref="T:System.String"/> type.\r
22316             </para>\r
22317             </remarks>\r
22318         </member>\r
22319         <member name="M:log4net.Util.TypeConverters.BooleanConverter.ConvertFrom(System.Object)">\r
22320             <summary>\r
22321             Convert the source object to the type supported by this object\r
22322             </summary>\r
22323             <param name="source">the object to convert</param>\r
22324             <returns>the converted object</returns>\r
22325             <remarks>\r
22326             <para>\r
22327             Uses the <see cref="M:System.Boolean.Parse(System.String)"/> method to convert the\r
22328             <see cref="T:System.String"/> argument to a <see cref="T:System.Boolean"/>.\r
22329             </para>\r
22330             </remarks>\r
22331             <exception cref="T:log4net.Util.TypeConverters.ConversionNotSupportedException">\r
22332             The <paramref name="source"/> object cannot be converted to the\r
22333             target type. To check for this condition use the <see cref="M:log4net.Util.TypeConverters.BooleanConverter.CanConvertFrom(System.Type)"/>\r
22334             method.\r
22335             </exception>\r
22336         </member>\r
22337         <member name="T:log4net.Util.TypeConverters.ConversionNotSupportedException">\r
22338             <summary>\r
22339             Exception base type for conversion errors.\r
22340             </summary>\r
22341             <remarks>\r
22342             <para>\r
22343             This type extends <see cref="T:System.ApplicationException"/>. It\r
22344             does not add any new functionality but does differentiate the\r
22345             type of exception being thrown.\r
22346             </para>\r
22347             </remarks>\r
22348             <author>Nicko Cadell</author>\r
22349             <author>Gert Driesen</author>\r
22350         </member>\r
22351         <member name="M:log4net.Util.TypeConverters.ConversionNotSupportedException.#ctor">\r
22352             <summary>\r
22353             Constructor\r
22354             </summary>\r
22355             <remarks>\r
22356             <para>\r
22357             Initializes a new instance of the <see cref="T:log4net.Util.TypeConverters.ConversionNotSupportedException"/> class.\r
22358             </para>\r
22359             </remarks>\r
22360         </member>\r
22361         <member name="M:log4net.Util.TypeConverters.ConversionNotSupportedException.#ctor(System.String)">\r
22362             <summary>\r
22363             Constructor\r
22364             </summary>\r
22365             <param name="message">A message to include with the exception.</param>\r
22366             <remarks>\r
22367             <para>\r
22368             Initializes a new instance of the <see cref="T:log4net.Util.TypeConverters.ConversionNotSupportedException"/> class\r
22369             with the specified message.\r
22370             </para>\r
22371             </remarks>\r
22372         </member>\r
22373         <member name="M:log4net.Util.TypeConverters.ConversionNotSupportedException.#ctor(System.String,System.Exception)">\r
22374             <summary>\r
22375             Constructor\r
22376             </summary>\r
22377             <param name="message">A message to include with the exception.</param>\r
22378             <param name="innerException">A nested exception to include.</param>\r
22379             <remarks>\r
22380             <para>\r
22381             Initializes a new instance of the <see cref="T:log4net.Util.TypeConverters.ConversionNotSupportedException"/> class\r
22382             with the specified message and inner exception.\r
22383             </para>\r
22384             </remarks>\r
22385         </member>\r
22386         <member name="M:log4net.Util.TypeConverters.ConversionNotSupportedException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">\r
22387             <summary>\r
22388             Serialization constructor\r
22389             </summary>\r
22390             <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the exception being thrown.</param>\r
22391             <param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the source or destination.</param>\r
22392             <remarks>\r
22393             <para>\r
22394             Initializes a new instance of the <see cref="T:log4net.Util.TypeConverters.ConversionNotSupportedException"/> class \r
22395             with serialized data.\r
22396             </para>\r
22397             </remarks>\r
22398         </member>\r
22399         <member name="M:log4net.Util.TypeConverters.ConversionNotSupportedException.Create(System.Type,System.Object)">\r
22400             <summary>\r
22401             Creates a new instance of the <see cref="T:log4net.Util.TypeConverters.ConversionNotSupportedException"/> class.\r
22402             </summary>\r
22403             <param name="destinationType">The conversion destination type.</param>\r
22404             <param name="sourceValue">The value to convert.</param>\r
22405             <returns>An instance of the <see cref="T:log4net.Util.TypeConverters.ConversionNotSupportedException"/>.</returns>\r
22406             <remarks>\r
22407             <para>\r
22408             Creates a new instance of the <see cref="T:log4net.Util.TypeConverters.ConversionNotSupportedException"/> class.\r
22409             </para>\r
22410             </remarks>\r
22411         </member>\r
22412         <member name="M:log4net.Util.TypeConverters.ConversionNotSupportedException.Create(System.Type,System.Object,System.Exception)">\r
22413             <summary>\r
22414             Creates a new instance of the <see cref="T:log4net.Util.TypeConverters.ConversionNotSupportedException"/> class.\r
22415             </summary>\r
22416             <param name="destinationType">The conversion destination type.</param>\r
22417             <param name="sourceValue">The value to convert.</param>\r
22418             <param name="innerException">A nested exception to include.</param>\r
22419             <returns>An instance of the <see cref="T:log4net.Util.TypeConverters.ConversionNotSupportedException"/>.</returns>\r
22420             <remarks>\r
22421             <para>\r
22422             Creates a new instance of the <see cref="T:log4net.Util.TypeConverters.ConversionNotSupportedException"/> class.\r
22423             </para>\r
22424             </remarks>\r
22425         </member>\r
22426         <member name="T:log4net.Util.TypeConverters.ConverterRegistry">\r
22427             <summary>\r
22428             Register of type converters for specific types.\r
22429             </summary>\r
22430             <remarks>\r
22431             <para>\r
22432             Maintains a registry of type converters used to convert between\r
22433             types.\r
22434             </para>\r
22435             <para>\r
22436             Use the <see cref="M:log4net.Util.TypeConverters.ConverterRegistry.AddConverter(System.Type,System.Object)"/> and \r
22437             <see cref="M:log4net.Util.TypeConverters.ConverterRegistry.AddConverter(System.Type,System.Type)"/> methods to register new converters.\r
22438             The <see cref="M:log4net.Util.TypeConverters.ConverterRegistry.GetConvertTo(System.Type,System.Type)"/> and <see cref="M:log4net.Util.TypeConverters.ConverterRegistry.GetConvertFrom(System.Type)"/> methods\r
22439             lookup appropriate converters to use.\r
22440             </para>\r
22441             </remarks>\r
22442             <seealso cref="T:log4net.Util.TypeConverters.IConvertFrom"/>\r
22443             <seealso cref="T:log4net.Util.TypeConverters.IConvertTo"/>\r
22444             <author>Nicko Cadell</author>\r
22445             <author>Gert Driesen</author>\r
22446         </member>\r
22447         <member name="M:log4net.Util.TypeConverters.ConverterRegistry.#ctor">\r
22448             <summary>\r
22449             Private constructor\r
22450             </summary>\r
22451             <remarks>\r
22452             Initializes a new instance of the <see cref="T:log4net.Util.TypeConverters.ConverterRegistry"/> class.\r
22453             </remarks>\r
22454         </member>\r
22455         <member name="M:log4net.Util.TypeConverters.ConverterRegistry.#cctor">\r
22456             <summary>\r
22457             Static constructor.\r
22458             </summary>\r
22459             <remarks>\r
22460             <para>\r
22461             This constructor defines the intrinsic type converters.\r
22462             </para>\r
22463             </remarks>\r
22464         </member>\r
22465         <member name="M:log4net.Util.TypeConverters.ConverterRegistry.AddConverter(System.Type,System.Object)">\r
22466             <summary>\r
22467             Adds a converter for a specific type.\r
22468             </summary>\r
22469             <param name="destinationType">The type being converted to.</param>\r
22470             <param name="converter">The type converter to use to convert to the destination type.</param>\r
22471             <remarks>\r
22472             <para>\r
22473             Adds a converter instance for a specific type.\r
22474             </para>\r
22475             </remarks>\r
22476         </member>\r
22477         <member name="M:log4net.Util.TypeConverters.ConverterRegistry.AddConverter(System.Type,System.Type)">\r
22478             <summary>\r
22479             Adds a converter for a specific type.\r
22480             </summary>\r
22481             <param name="destinationType">The type being converted to.</param>\r
22482             <param name="converterType">The type of the type converter to use to convert to the destination type.</param>\r
22483             <remarks>\r
22484             <para>\r
22485             Adds a converter <see cref="T:System.Type"/> for a specific type.\r
22486             </para>\r
22487             </remarks>\r
22488         </member>\r
22489         <member name="M:log4net.Util.TypeConverters.ConverterRegistry.GetConvertTo(System.Type,System.Type)">\r
22490             <summary>\r
22491             Gets the type converter to use to convert values to the destination type.\r
22492             </summary>\r
22493             <param name="sourceType">The type being converted from.</param>\r
22494             <param name="destinationType">The type being converted to.</param>\r
22495             <returns>\r
22496             The type converter instance to use for type conversions or <c>null</c> \r
22497             if no type converter is found.\r
22498             </returns>\r
22499             <remarks>\r
22500             <para>\r
22501             Gets the type converter to use to convert values to the destination type.\r
22502             </para>\r
22503             </remarks>\r
22504         </member>\r
22505         <member name="M:log4net.Util.TypeConverters.ConverterRegistry.GetConvertFrom(System.Type)">\r
22506             <summary>\r
22507             Gets the type converter to use to convert values to the destination type.\r
22508             </summary>\r
22509             <param name="destinationType">The type being converted to.</param>\r
22510             <returns>\r
22511             The type converter instance to use for type conversions or <c>null</c> \r
22512             if no type converter is found.\r
22513             </returns>\r
22514             <remarks>\r
22515             <para>\r
22516             Gets the type converter to use to convert values to the destination type.\r
22517             </para>\r
22518             </remarks>\r
22519         </member>\r
22520         <member name="M:log4net.Util.TypeConverters.ConverterRegistry.GetConverterFromAttribute(System.Type)">\r
22521             <summary>\r
22522             Lookups the type converter to use as specified by the attributes on the \r
22523             destination type.\r
22524             </summary>\r
22525             <param name="destinationType">The type being converted to.</param>\r
22526             <returns>\r
22527             The type converter instance to use for type conversions or <c>null</c> \r
22528             if no type converter is found.\r
22529             </returns>\r
22530         </member>\r
22531         <member name="M:log4net.Util.TypeConverters.ConverterRegistry.CreateConverterInstance(System.Type)">\r
22532             <summary>\r
22533             Creates the instance of the type converter.\r
22534             </summary>\r
22535             <param name="converterType">The type of the type converter.</param>\r
22536             <returns>\r
22537             The type converter instance to use for type conversions or <c>null</c> \r
22538             if no type converter is found.\r
22539             </returns>\r
22540             <remarks>\r
22541             <para>\r
22542             The type specified for the type converter must implement \r
22543             the <see cref="T:log4net.Util.TypeConverters.IConvertFrom"/> or <see cref="T:log4net.Util.TypeConverters.IConvertTo"/> interfaces \r
22544             and must have a public default (no argument) constructor.\r
22545             </para>\r
22546             </remarks>\r
22547         </member>\r
22548         <member name="F:log4net.Util.TypeConverters.ConverterRegistry.s_type2converter">\r
22549             <summary>\r
22550             Mapping from <see cref="T:System.Type"/> to type converter.\r
22551             </summary>\r
22552         </member>\r
22553         <member name="T:log4net.Util.TypeConverters.EncodingConverter">\r
22554             <summary>\r
22555             Supports conversion from string to <see cref="T:System.Text.Encoding"/> type.\r
22556             </summary>\r
22557             <remarks>\r
22558             <para>\r
22559             Supports conversion from string to <see cref="T:System.Text.Encoding"/> type.\r
22560             </para>\r
22561             </remarks>\r
22562             <seealso cref="T:log4net.Util.TypeConverters.ConverterRegistry"/>\r
22563             <seealso cref="T:log4net.Util.TypeConverters.IConvertFrom"/>\r
22564             <seealso cref="T:log4net.Util.TypeConverters.IConvertTo"/>\r
22565             <author>Nicko Cadell</author>\r
22566             <author>Gert Driesen</author>\r
22567         </member>\r
22568         <member name="M:log4net.Util.TypeConverters.EncodingConverter.CanConvertFrom(System.Type)">\r
22569             <summary>\r
22570             Can the source type be converted to the type supported by this object\r
22571             </summary>\r
22572             <param name="sourceType">the type to convert</param>\r
22573             <returns>true if the conversion is possible</returns>\r
22574             <remarks>\r
22575             <para>\r
22576             Returns <c>true</c> if the <paramref name="sourceType"/> is\r
22577             the <see cref="T:System.String"/> type.\r
22578             </para>\r
22579             </remarks>\r
22580         </member>\r
22581         <member name="M:log4net.Util.TypeConverters.EncodingConverter.ConvertFrom(System.Object)">\r
22582             <summary>\r
22583             Overrides the ConvertFrom method of IConvertFrom.\r
22584             </summary>\r
22585             <param name="source">the object to convert to an encoding</param>\r
22586             <returns>the encoding</returns>\r
22587             <remarks>\r
22588             <para>\r
22589             Uses the <see cref="M:System.Text.Encoding.GetEncoding(System.String)"/> method to \r
22590             convert the <see cref="T:System.String"/> argument to an <see cref="T:System.Text.Encoding"/>.\r
22591             </para>\r
22592             </remarks>\r
22593             <exception cref="T:log4net.Util.TypeConverters.ConversionNotSupportedException">\r
22594             The <paramref name="source"/> object cannot be converted to the\r
22595             target type. To check for this condition use the <see cref="M:log4net.Util.TypeConverters.EncodingConverter.CanConvertFrom(System.Type)"/>\r
22596             method.\r
22597             </exception>\r
22598         </member>\r
22599         <member name="T:log4net.Util.TypeConverters.IConvertTo">\r
22600             <summary>\r
22601             Interface supported by type converters\r
22602             </summary>\r
22603             <remarks>\r
22604             <para>\r
22605             This interface supports conversion from a single type to arbitrary types.\r
22606             See <see cref="T:log4net.Util.TypeConverters.TypeConverterAttribute"/>.\r
22607             </para>\r
22608             </remarks>\r
22609             <author>Nicko Cadell</author>\r
22610         </member>\r
22611         <member name="M:log4net.Util.TypeConverters.IConvertTo.CanConvertTo(System.Type)">\r
22612             <summary>\r
22613             Returns whether this converter can convert the object to the specified type\r
22614             </summary>\r
22615             <param name="targetType">A Type that represents the type you want to convert to</param>\r
22616             <returns>true if the conversion is possible</returns>\r
22617             <remarks>\r
22618             <para>\r
22619             Test if the type supported by this converter can be converted to the\r
22620             <paramref name="targetType"/>.\r
22621             </para>\r
22622             </remarks>\r
22623         </member>\r
22624         <member name="M:log4net.Util.TypeConverters.IConvertTo.ConvertTo(System.Object,System.Type)">\r
22625             <summary>\r
22626             Converts the given value object to the specified type, using the arguments\r
22627             </summary>\r
22628             <param name="source">the object to convert</param>\r
22629             <param name="targetType">The Type to convert the value parameter to</param>\r
22630             <returns>the converted object</returns>\r
22631             <remarks>\r
22632             <para>\r
22633             Converts the <paramref name="source"/> (which must be of the type supported\r
22634             by this converter) to the <paramref name="targetType"/> specified..\r
22635             </para>\r
22636             </remarks>\r
22637         </member>\r
22638         <member name="T:log4net.Util.TypeConverters.IPAddressConverter">\r
22639             <summary>\r
22640             Supports conversion from string to <see cref="T:System.Net.IPAddress"/> type.\r
22641             </summary>\r
22642             <remarks>\r
22643             <para>\r
22644             Supports conversion from string to <see cref="T:System.Net.IPAddress"/> type.\r
22645             </para>\r
22646             </remarks>\r
22647             <seealso cref="T:log4net.Util.TypeConverters.ConverterRegistry"/>\r
22648             <seealso cref="T:log4net.Util.TypeConverters.IConvertFrom"/>\r
22649             <author>Nicko Cadell</author>\r
22650         </member>\r
22651         <member name="M:log4net.Util.TypeConverters.IPAddressConverter.CanConvertFrom(System.Type)">\r
22652             <summary>\r
22653             Can the source type be converted to the type supported by this object\r
22654             </summary>\r
22655             <param name="sourceType">the type to convert</param>\r
22656             <returns>true if the conversion is possible</returns>\r
22657             <remarks>\r
22658             <para>\r
22659             Returns <c>true</c> if the <paramref name="sourceType"/> is\r
22660             the <see cref="T:System.String"/> type.\r
22661             </para>\r
22662             </remarks>\r
22663         </member>\r
22664         <member name="M:log4net.Util.TypeConverters.IPAddressConverter.ConvertFrom(System.Object)">\r
22665             <summary>\r
22666             Overrides the ConvertFrom method of IConvertFrom.\r
22667             </summary>\r
22668             <param name="source">the object to convert to an IPAddress</param>\r
22669             <returns>the IPAddress</returns>\r
22670             <remarks>\r
22671             <para>\r
22672             Uses the <see cref="M:System.Net.IPAddress.Parse(System.String)"/> method to convert the\r
22673             <see cref="T:System.String"/> argument to an <see cref="T:System.Net.IPAddress"/>.\r
22674             If that fails then the string is resolved as a DNS hostname.\r
22675             </para>\r
22676             </remarks>\r
22677             <exception cref="T:log4net.Util.TypeConverters.ConversionNotSupportedException">\r
22678             The <paramref name="source"/> object cannot be converted to the\r
22679             target type. To check for this condition use the <see cref="M:log4net.Util.TypeConverters.IPAddressConverter.CanConvertFrom(System.Type)"/>\r
22680             method.\r
22681             </exception>\r
22682         </member>\r
22683         <member name="F:log4net.Util.TypeConverters.IPAddressConverter.validIpAddressChars">\r
22684             <summary>\r
22685             Valid characters in an IPv4 or IPv6 address string. (Does not support subnets)\r
22686             </summary>\r
22687         </member>\r
22688         <member name="T:log4net.Util.TypeConverters.PatternLayoutConverter">\r
22689             <summary>\r
22690             Supports conversion from string to <see cref="T:log4net.Layout.PatternLayout"/> type.\r
22691             </summary>\r
22692             <remarks>\r
22693             <para>\r
22694             Supports conversion from string to <see cref="T:log4net.Layout.PatternLayout"/> type.\r
22695             </para>\r
22696             <para>\r
22697             The string is used as the <see cref="P:log4net.Layout.PatternLayout.ConversionPattern"/> \r
22698             of the <see cref="T:log4net.Layout.PatternLayout"/>.\r
22699             </para>\r
22700             </remarks>\r
22701             <seealso cref="T:log4net.Util.TypeConverters.ConverterRegistry"/>\r
22702             <seealso cref="T:log4net.Util.TypeConverters.IConvertFrom"/>\r
22703             <seealso cref="T:log4net.Util.TypeConverters.IConvertTo"/>\r
22704             <author>Nicko Cadell</author>\r
22705         </member>\r
22706         <member name="M:log4net.Util.TypeConverters.PatternLayoutConverter.CanConvertFrom(System.Type)">\r
22707             <summary>\r
22708             Can the source type be converted to the type supported by this object\r
22709             </summary>\r
22710             <param name="sourceType">the type to convert</param>\r
22711             <returns>true if the conversion is possible</returns>\r
22712             <remarks>\r
22713             <para>\r
22714             Returns <c>true</c> if the <paramref name="sourceType"/> is\r
22715             the <see cref="T:System.String"/> type.\r
22716             </para>\r
22717             </remarks>\r
22718         </member>\r
22719         <member name="M:log4net.Util.TypeConverters.PatternLayoutConverter.ConvertFrom(System.Object)">\r
22720             <summary>\r
22721             Overrides the ConvertFrom method of IConvertFrom.\r
22722             </summary>\r
22723             <param name="source">the object to convert to a PatternLayout</param>\r
22724             <returns>the PatternLayout</returns>\r
22725             <remarks>\r
22726             <para>\r
22727             Creates and returns a new <see cref="T:log4net.Layout.PatternLayout"/> using\r
22728             the <paramref name="source"/> <see cref="T:System.String"/> as the\r
22729             <see cref="P:log4net.Layout.PatternLayout.ConversionPattern"/>.\r
22730             </para>\r
22731             </remarks>\r
22732             <exception cref="T:log4net.Util.TypeConverters.ConversionNotSupportedException">\r
22733             The <paramref name="source"/> object cannot be converted to the\r
22734             target type. To check for this condition use the <see cref="M:log4net.Util.TypeConverters.PatternLayoutConverter.CanConvertFrom(System.Type)"/>\r
22735             method.\r
22736             </exception>\r
22737         </member>\r
22738         <member name="T:log4net.Util.TypeConverters.PatternStringConverter">\r
22739             <summary>\r
22740             Convert between string and <see cref="T:log4net.Util.PatternString"/>\r
22741             </summary>\r
22742             <remarks>\r
22743             <para>\r
22744             Supports conversion from string to <see cref="T:log4net.Util.PatternString"/> type, \r
22745             and from a <see cref="T:log4net.Util.PatternString"/> type to a string.\r
22746             </para>\r
22747             <para>\r
22748             The string is used as the <see cref="P:log4net.Util.PatternString.ConversionPattern"/> \r
22749             of the <see cref="T:log4net.Util.PatternString"/>.\r
22750             </para>\r
22751             </remarks>\r
22752             <seealso cref="T:log4net.Util.TypeConverters.ConverterRegistry"/>\r
22753             <seealso cref="T:log4net.Util.TypeConverters.IConvertFrom"/>\r
22754             <seealso cref="T:log4net.Util.TypeConverters.IConvertTo"/>\r
22755             <author>Nicko Cadell</author>\r
22756         </member>\r
22757         <member name="M:log4net.Util.TypeConverters.PatternStringConverter.CanConvertTo(System.Type)">\r
22758             <summary>\r
22759             Can the target type be converted to the type supported by this object\r
22760             </summary>\r
22761             <param name="targetType">A <see cref="T:System.Type"/> that represents the type you want to convert to</param>\r
22762             <returns>true if the conversion is possible</returns>\r
22763             <remarks>\r
22764             <para>\r
22765             Returns <c>true</c> if the <paramref name="targetType"/> is\r
22766             assignable from a <see cref="T:System.String"/> type.\r
22767             </para>\r
22768             </remarks>\r
22769         </member>\r
22770         <member name="M:log4net.Util.TypeConverters.PatternStringConverter.ConvertTo(System.Object,System.Type)">\r
22771             <summary>\r
22772             Converts the given value object to the specified type, using the arguments\r
22773             </summary>\r
22774             <param name="source">the object to convert</param>\r
22775             <param name="targetType">The Type to convert the value parameter to</param>\r
22776             <returns>the converted object</returns>\r
22777             <remarks>\r
22778             <para>\r
22779             Uses the <see cref="M:log4net.Util.PatternString.Format"/> method to convert the\r
22780             <see cref="T:log4net.Util.PatternString"/> argument to a <see cref="T:System.String"/>.\r
22781             </para>\r
22782             </remarks>\r
22783             <exception cref="T:log4net.Util.TypeConverters.ConversionNotSupportedException">\r
22784             The <paramref name="source"/> object cannot be converted to the\r
22785             <paramref name="targetType"/>. To check for this condition use the \r
22786             <see cref="M:log4net.Util.TypeConverters.PatternStringConverter.CanConvertTo(System.Type)"/> method.\r
22787             </exception>\r
22788         </member>\r
22789         <member name="M:log4net.Util.TypeConverters.PatternStringConverter.CanConvertFrom(System.Type)">\r
22790             <summary>\r
22791             Can the source type be converted to the type supported by this object\r
22792             </summary>\r
22793             <param name="sourceType">the type to convert</param>\r
22794             <returns>true if the conversion is possible</returns>\r
22795             <remarks>\r
22796             <para>\r
22797             Returns <c>true</c> if the <paramref name="sourceType"/> is\r
22798             the <see cref="T:System.String"/> type.\r
22799             </para>\r
22800             </remarks>\r
22801         </member>\r
22802         <member name="M:log4net.Util.TypeConverters.PatternStringConverter.ConvertFrom(System.Object)">\r
22803             <summary>\r
22804             Overrides the ConvertFrom method of IConvertFrom.\r
22805             </summary>\r
22806             <param name="source">the object to convert to a PatternString</param>\r
22807             <returns>the PatternString</returns>\r
22808             <remarks>\r
22809             <para>\r
22810             Creates and returns a new <see cref="T:log4net.Util.PatternString"/> using\r
22811             the <paramref name="source"/> <see cref="T:System.String"/> as the\r
22812             <see cref="P:log4net.Util.PatternString.ConversionPattern"/>.\r
22813             </para>\r
22814             </remarks>\r
22815             <exception cref="T:log4net.Util.TypeConverters.ConversionNotSupportedException">\r
22816             The <paramref name="source"/> object cannot be converted to the\r
22817             target type. To check for this condition use the <see cref="M:log4net.Util.TypeConverters.PatternStringConverter.CanConvertFrom(System.Type)"/>\r
22818             method.\r
22819             </exception>\r
22820         </member>\r
22821         <member name="T:log4net.Util.TypeConverters.TypeConverter">\r
22822             <summary>\r
22823             Supports conversion from string to <see cref="T:System.Type"/> type.\r
22824             </summary>\r
22825             <remarks>\r
22826             <para>\r
22827             Supports conversion from string to <see cref="T:System.Type"/> type.\r
22828             </para>\r
22829             </remarks>\r
22830             <seealso cref="T:log4net.Util.TypeConverters.ConverterRegistry"/>\r
22831             <seealso cref="T:log4net.Util.TypeConverters.IConvertFrom"/>\r
22832             <seealso cref="T:log4net.Util.TypeConverters.IConvertTo"/>\r
22833             <author>Nicko Cadell</author>\r
22834         </member>\r
22835         <member name="M:log4net.Util.TypeConverters.TypeConverter.CanConvertFrom(System.Type)">\r
22836             <summary>\r
22837             Can the source type be converted to the type supported by this object\r
22838             </summary>\r
22839             <param name="sourceType">the type to convert</param>\r
22840             <returns>true if the conversion is possible</returns>\r
22841             <remarks>\r
22842             <para>\r
22843             Returns <c>true</c> if the <paramref name="sourceType"/> is\r
22844             the <see cref="T:System.String"/> type.\r
22845             </para>\r
22846             </remarks>\r
22847         </member>\r
22848         <member name="M:log4net.Util.TypeConverters.TypeConverter.ConvertFrom(System.Object)">\r
22849             <summary>\r
22850             Overrides the ConvertFrom method of IConvertFrom.\r
22851             </summary>\r
22852             <param name="source">the object to convert to a Type</param>\r
22853             <returns>the Type</returns>\r
22854             <remarks>\r
22855             <para>\r
22856             Uses the <see cref="M:System.Type.GetType(System.String,System.Boolean)"/> method to convert the\r
22857             <see cref="T:System.String"/> argument to a <see cref="T:System.Type"/>.\r
22858             Additional effort is made to locate partially specified types\r
22859             by searching the loaded assemblies.\r
22860             </para>\r
22861             </remarks>\r
22862             <exception cref="T:log4net.Util.TypeConverters.ConversionNotSupportedException">\r
22863             The <paramref name="source"/> object cannot be converted to the\r
22864             target type. To check for this condition use the <see cref="M:log4net.Util.TypeConverters.TypeConverter.CanConvertFrom(System.Type)"/>\r
22865             method.\r
22866             </exception>\r
22867         </member>\r
22868         <member name="T:log4net.Util.TypeConverters.TypeConverterAttribute">\r
22869             <summary>\r
22870             Attribute used to associate a type converter\r
22871             </summary>\r
22872             <remarks>\r
22873             <para>\r
22874             Class and Interface level attribute that specifies a type converter\r
22875             to use with the associated type.\r
22876             </para>\r
22877             <para>\r
22878             To associate a type converter with a target type apply a\r
22879             <c>TypeConverterAttribute</c> to the target type. Specify the\r
22880             type of the type converter on the attribute.\r
22881             </para>\r
22882             </remarks>\r
22883             <author>Nicko Cadell</author>\r
22884             <author>Gert Driesen</author>\r
22885         </member>\r
22886         <member name="F:log4net.Util.TypeConverters.TypeConverterAttribute.m_typeName">\r
22887             <summary>\r
22888             The string type name of the type converter\r
22889             </summary>\r
22890         </member>\r
22891         <member name="M:log4net.Util.TypeConverters.TypeConverterAttribute.#ctor">\r
22892             <summary>\r
22893             Default constructor\r
22894             </summary>\r
22895             <remarks>\r
22896             <para>\r
22897             Default constructor\r
22898             </para>\r
22899             </remarks>\r
22900         </member>\r
22901         <member name="M:log4net.Util.TypeConverters.TypeConverterAttribute.#ctor(System.String)">\r
22902             <summary>\r
22903             Create a new type converter attribute for the specified type name\r
22904             </summary>\r
22905             <param name="typeName">The string type name of the type converter</param>\r
22906             <remarks>\r
22907             <para>\r
22908             The type specified must implement the <see cref="T:log4net.Util.TypeConverters.IConvertFrom"/> \r
22909             or the <see cref="T:log4net.Util.TypeConverters.IConvertTo"/> interfaces.\r
22910             </para>\r
22911             </remarks>\r
22912         </member>\r
22913         <member name="M:log4net.Util.TypeConverters.TypeConverterAttribute.#ctor(System.Type)">\r
22914             <summary>\r
22915             Create a new type converter attribute for the specified type\r
22916             </summary>\r
22917             <param name="converterType">The type of the type converter</param>\r
22918             <remarks>\r
22919             <para>\r
22920             The type specified must implement the <see cref="T:log4net.Util.TypeConverters.IConvertFrom"/> \r
22921             or the <see cref="T:log4net.Util.TypeConverters.IConvertTo"/> interfaces.\r
22922             </para>\r
22923             </remarks>\r
22924         </member>\r
22925         <member name="P:log4net.Util.TypeConverters.TypeConverterAttribute.ConverterTypeName">\r
22926             <summary>\r
22927             The string type name of the type converter \r
22928             </summary>\r
22929             <value>\r
22930             The string type name of the type converter \r
22931             </value>\r
22932             <remarks>\r
22933             <para>\r
22934             The type specified must implement the <see cref="T:log4net.Util.TypeConverters.IConvertFrom"/> \r
22935             or the <see cref="T:log4net.Util.TypeConverters.IConvertTo"/> interfaces.\r
22936             </para>\r
22937             </remarks>\r
22938         </member>\r
22939         <member name="T:log4net.Util.AppenderAttachedImpl">\r
22940             <summary>\r
22941             A straightforward implementation of the <see cref="T:log4net.Core.IAppenderAttachable"/> interface.\r
22942             </summary>\r
22943             <remarks>\r
22944             <para>\r
22945             This is the default implementation of the <see cref="T:log4net.Core.IAppenderAttachable"/>\r
22946             interface. Implementors of the <see cref="T:log4net.Core.IAppenderAttachable"/> interface\r
22947             should aggregate an instance of this type.\r
22948             </para>\r
22949             </remarks>\r
22950             <author>Nicko Cadell</author>\r
22951             <author>Gert Driesen</author>\r
22952         </member>\r
22953         <member name="M:log4net.Util.AppenderAttachedImpl.#ctor">\r
22954             <summary>\r
22955             Constructor\r
22956             </summary>\r
22957             <remarks>\r
22958             <para>\r
22959             Initializes a new instance of the <see cref="T:log4net.Util.AppenderAttachedImpl"/> class.\r
22960             </para>\r
22961             </remarks>\r
22962         </member>\r
22963         <member name="M:log4net.Util.AppenderAttachedImpl.AppendLoopOnAppenders(log4net.Core.LoggingEvent)">\r
22964             <summary>\r
22965             Append on on all attached appenders.\r
22966             </summary>\r
22967             <param name="loggingEvent">The event being logged.</param>\r
22968             <returns>The number of appenders called.</returns>\r
22969             <remarks>\r
22970             <para>\r
22971             Calls the <see cref="M:log4net.Appender.IAppender.DoAppend(log4net.Core.LoggingEvent)"/> method on all \r
22972             attached appenders.\r
22973             </para>\r
22974             </remarks>\r
22975         </member>\r
22976         <member name="M:log4net.Util.AppenderAttachedImpl.AppendLoopOnAppenders(log4net.Core.LoggingEvent[])">\r
22977             <summary>\r
22978             Append on on all attached appenders.\r
22979             </summary>\r
22980             <param name="loggingEvents">The array of events being logged.</param>\r
22981             <returns>The number of appenders called.</returns>\r
22982             <remarks>\r
22983             <para>\r
22984             Calls the <see cref="M:log4net.Appender.IAppender.DoAppend(log4net.Core.LoggingEvent)"/> method on all \r
22985             attached appenders.\r
22986             </para>\r
22987             </remarks>\r
22988         </member>\r
22989         <member name="M:log4net.Util.AppenderAttachedImpl.CallAppend(log4net.Appender.IAppender,log4net.Core.LoggingEvent[])">\r
22990             <summary>\r
22991             Calls the DoAppende method on the <see cref="T:log4net.Appender.IAppender"/> with \r
22992             the <see cref="T:log4net.Core.LoggingEvent"/> objects supplied.\r
22993             </summary>\r
22994             <param name="appender">The appender</param>\r
22995             <param name="loggingEvents">The events</param>\r
22996             <remarks>\r
22997             <para>\r
22998             If the <paramref name="appender"/> supports the <see cref="T:log4net.Appender.IBulkAppender"/>\r
22999             interface then the <paramref name="loggingEvents"/> will be passed \r
23000             through using that interface. Otherwise the <see cref="T:log4net.Core.LoggingEvent"/>\r
23001             objects in the array will be passed one at a time.\r
23002             </para>\r
23003             </remarks>\r
23004         </member>\r
23005         <member name="M:log4net.Util.AppenderAttachedImpl.AddAppender(log4net.Appender.IAppender)">\r
23006             <summary>\r
23007             Attaches an appender.\r
23008             </summary>\r
23009             <param name="newAppender">The appender to add.</param>\r
23010             <remarks>\r
23011             <para>\r
23012             If the appender is already in the list it won't be added again.\r
23013             </para>\r
23014             </remarks>\r
23015         </member>\r
23016         <member name="M:log4net.Util.AppenderAttachedImpl.GetAppender(System.String)">\r
23017             <summary>\r
23018             Gets an attached appender with the specified name.\r
23019             </summary>\r
23020             <param name="name">The name of the appender to get.</param>\r
23021             <returns>\r
23022             The appender with the name specified, or <c>null</c> if no appender with the\r
23023             specified name is found.\r
23024             </returns>\r
23025             <remarks>\r
23026             <para>\r
23027             Lookup an attached appender by name.\r
23028             </para>\r
23029             </remarks>\r
23030         </member>\r
23031         <member name="M:log4net.Util.AppenderAttachedImpl.RemoveAllAppenders">\r
23032             <summary>\r
23033             Removes all attached appenders.\r
23034             </summary>\r
23035             <remarks>\r
23036             <para>\r
23037             Removes and closes all attached appenders\r
23038             </para>\r
23039             </remarks>\r
23040         </member>\r
23041         <member name="M:log4net.Util.AppenderAttachedImpl.RemoveAppender(log4net.Appender.IAppender)">\r
23042             <summary>\r
23043             Removes the specified appender from the list of attached appenders.\r
23044             </summary>\r
23045             <param name="appender">The appender to remove.</param>\r
23046             <returns>The appender removed from the list</returns>\r
23047             <remarks>\r
23048             <para>\r
23049             The appender removed is not closed.\r
23050             If you are discarding the appender you must call\r
23051             <see cref="M:log4net.Appender.IAppender.Close"/> on the appender removed.\r
23052             </para>\r
23053             </remarks>\r
23054         </member>\r
23055         <member name="M:log4net.Util.AppenderAttachedImpl.RemoveAppender(System.String)">\r
23056             <summary>\r
23057             Removes the appender with the specified name from the list of appenders.\r
23058             </summary>\r
23059             <param name="name">The name of the appender to remove.</param>\r
23060             <returns>The appender removed from the list</returns>\r
23061             <remarks>\r
23062             <para>\r
23063             The appender removed is not closed.\r
23064             If you are discarding the appender you must call\r
23065             <see cref="M:log4net.Appender.IAppender.Close"/> on the appender removed.\r
23066             </para>\r
23067             </remarks>\r
23068         </member>\r
23069         <member name="F:log4net.Util.AppenderAttachedImpl.m_appenderList">\r
23070             <summary>\r
23071             List of appenders\r
23072             </summary>\r
23073         </member>\r
23074         <member name="F:log4net.Util.AppenderAttachedImpl.m_appenderArray">\r
23075             <summary>\r
23076             Array of appenders, used to cache the m_appenderList\r
23077             </summary>\r
23078         </member>\r
23079         <member name="P:log4net.Util.AppenderAttachedImpl.Appenders">\r
23080             <summary>\r
23081             Gets all attached appenders.\r
23082             </summary>\r
23083             <returns>\r
23084             A collection of attached appenders, or <c>null</c> if there\r
23085             are no attached appenders.\r
23086             </returns>\r
23087             <remarks>\r
23088             <para>\r
23089             The read only collection of all currently attached appenders.\r
23090             </para>\r
23091             </remarks>\r
23092         </member>\r
23093         <member name="T:log4net.Util.CompositeProperties">\r
23094             <summary>\r
23095             This class aggregates several PropertiesDictionary collections together.\r
23096             </summary>\r
23097             <remarks>\r
23098             <para>\r
23099             Provides a dictionary style lookup over an ordered list of\r
23100             <see cref="T:log4net.Util.PropertiesDictionary"/> collections.\r
23101             </para>\r
23102             </remarks>\r
23103             <author>Nicko Cadell</author>\r
23104         </member>\r
23105         <member name="M:log4net.Util.CompositeProperties.#ctor">\r
23106             <summary>\r
23107             Constructor\r
23108             </summary>\r
23109             <remarks>\r
23110             <para>\r
23111             Initializes a new instance of the <see cref="T:log4net.Util.CompositeProperties"/> class.\r
23112             </para>\r
23113             </remarks>\r
23114         </member>\r
23115         <member name="M:log4net.Util.CompositeProperties.Add(log4net.Util.ReadOnlyPropertiesDictionary)">\r
23116             <summary>\r
23117             Add a Properties Dictionary to this composite collection\r
23118             </summary>\r
23119             <param name="properties">the properties to add</param>\r
23120             <remarks>\r
23121             <para>\r
23122             Properties dictionaries added first take precedence over dictionaries added\r
23123             later.\r
23124             </para>\r
23125             </remarks>\r
23126         </member>\r
23127         <member name="M:log4net.Util.CompositeProperties.Flatten">\r
23128             <summary>\r
23129             Flatten this composite collection into a single properties dictionary\r
23130             </summary>\r
23131             <returns>the flattened dictionary</returns>\r
23132             <remarks>\r
23133             <para>\r
23134             Reduces the collection of ordered dictionaries to a single dictionary\r
23135             containing the resultant values for the keys.\r
23136             </para>\r
23137             </remarks>\r
23138         </member>\r
23139         <member name="P:log4net.Util.CompositeProperties.Item(System.String)">\r
23140             <summary>\r
23141             Gets the value of a property\r
23142             </summary>\r
23143             <value>\r
23144             The value for the property with the specified key\r
23145             </value>\r
23146             <remarks>\r
23147             <para>\r
23148             Looks up the value for the <paramref name="key"/> specified.\r
23149             The <see cref="T:log4net.Util.PropertiesDictionary"/> collections are searched\r
23150             in the order in which they were added to this collection. The value\r
23151             returned is the value held by the first collection that contains\r
23152             the specified key.\r
23153             </para>\r
23154             <para>\r
23155             If none of the collections contain the specified key then\r
23156             <c>null</c> is returned.\r
23157             </para>\r
23158             </remarks>\r
23159         </member>\r
23160         <member name="T:log4net.Util.ContextPropertiesBase">\r
23161             <summary>\r
23162             Base class for Context Properties implementations\r
23163             </summary>\r
23164             <remarks>\r
23165             <para>\r
23166             This class defines a basic property get set accessor\r
23167             </para>\r
23168             </remarks>\r
23169             <author>Nicko Cadell</author>\r
23170         </member>\r
23171         <member name="P:log4net.Util.ContextPropertiesBase.Item(System.String)">\r
23172             <summary>\r
23173             Gets or sets the value of a property\r
23174             </summary>\r
23175             <value>\r
23176             The value for the property with the specified key\r
23177             </value>\r
23178             <remarks>\r
23179             <para>\r
23180             Gets or sets the value of a property\r
23181             </para>\r
23182             </remarks>\r
23183         </member>\r
23184         <member name="T:log4net.Util.CountingQuietTextWriter">\r
23185             <summary>\r
23186             Subclass of <see cref="T:log4net.Util.QuietTextWriter"/> that maintains a count of \r
23187             the number of bytes written.\r
23188             </summary>\r
23189             <remarks>\r
23190             <para>\r
23191             This writer counts the number of bytes written.\r
23192             </para>\r
23193             </remarks>\r
23194             <author>Nicko Cadell</author>\r
23195             <author>Gert Driesen</author>\r
23196         </member>\r
23197         <member name="T:log4net.Util.QuietTextWriter">\r
23198             <summary>\r
23199             <see cref="T:System.IO.TextWriter"/> that does not leak exceptions\r
23200             </summary>\r
23201             <remarks>\r
23202             <para>\r
23203             <see cref="T:log4net.Util.QuietTextWriter"/> does not throw exceptions when things go wrong. \r
23204             Instead, it delegates error handling to its <see cref="T:log4net.Core.IErrorHandler"/>.\r
23205             </para>\r
23206             </remarks>\r
23207             <author>Nicko Cadell</author>\r
23208             <author>Gert Driesen</author>\r
23209         </member>\r
23210         <member name="T:log4net.Util.TextWriterAdapter">\r
23211             <summary>\r
23212             Adapter that extends <see cref="T:System.IO.TextWriter"/> and forwards all\r
23213             messages to an instance of <see cref="T:System.IO.TextWriter"/>.\r
23214             </summary>\r
23215             <remarks>\r
23216             <para>\r
23217             Adapter that extends <see cref="T:System.IO.TextWriter"/> and forwards all\r
23218             messages to an instance of <see cref="T:System.IO.TextWriter"/>.\r
23219             </para>\r
23220             </remarks>\r
23221             <author>Nicko Cadell</author>\r
23222         </member>\r
23223         <member name="F:log4net.Util.TextWriterAdapter.m_writer">\r
23224             <summary>\r
23225             The writer to forward messages to\r
23226             </summary>\r
23227         </member>\r
23228         <member name="M:log4net.Util.TextWriterAdapter.#ctor(System.IO.TextWriter)">\r
23229             <summary>\r
23230             Create an instance of <see cref="T:log4net.Util.TextWriterAdapter"/> that forwards all\r
23231             messages to a <see cref="T:System.IO.TextWriter"/>.\r
23232             </summary>\r
23233             <param name="writer">The <see cref="T:System.IO.TextWriter"/> to forward to</param>\r
23234             <remarks>\r
23235             <para>\r
23236             Create an instance of <see cref="T:log4net.Util.TextWriterAdapter"/> that forwards all\r
23237             messages to a <see cref="T:System.IO.TextWriter"/>.\r
23238             </para>\r
23239             </remarks>\r
23240         </member>\r
23241         <member name="M:log4net.Util.TextWriterAdapter.Close">\r
23242             <summary>\r
23243             Closes the writer and releases any system resources associated with the writer\r
23244             </summary>\r
23245             <remarks>\r
23246             <para>\r
23247             </para>\r
23248             </remarks>\r
23249         </member>\r
23250         <member name="M:log4net.Util.TextWriterAdapter.Dispose(System.Boolean)">\r
23251             <summary>\r
23252             Dispose this writer\r
23253             </summary>\r
23254             <param name="disposing">flag indicating if we are being disposed</param>\r
23255             <remarks>\r
23256             <para>\r
23257             Dispose this writer\r
23258             </para>\r
23259             </remarks>\r
23260         </member>\r
23261         <member name="M:log4net.Util.TextWriterAdapter.Flush">\r
23262             <summary>\r
23263             Flushes any buffered output\r
23264             </summary>\r
23265             <remarks>\r
23266             <para>\r
23267             Clears all buffers for the writer and causes any buffered data to be written \r
23268             to the underlying device\r
23269             </para>\r
23270             </remarks>\r
23271         </member>\r
23272         <member name="M:log4net.Util.TextWriterAdapter.Write(System.Char)">\r
23273             <summary>\r
23274             Writes a character to the wrapped TextWriter\r
23275             </summary>\r
23276             <param name="value">the value to write to the TextWriter</param>\r
23277             <remarks>\r
23278             <para>\r
23279             Writes a character to the wrapped TextWriter\r
23280             </para>\r
23281             </remarks>\r
23282         </member>\r
23283         <member name="M:log4net.Util.TextWriterAdapter.Write(System.Char[],System.Int32,System.Int32)">\r
23284             <summary>\r
23285             Writes a character buffer to the wrapped TextWriter\r
23286             </summary>\r
23287             <param name="buffer">the data buffer</param>\r
23288             <param name="index">the start index</param>\r
23289             <param name="count">the number of characters to write</param>\r
23290             <remarks>\r
23291             <para>\r
23292             Writes a character buffer to the wrapped TextWriter\r
23293             </para>\r
23294             </remarks>\r
23295         </member>\r
23296         <member name="M:log4net.Util.TextWriterAdapter.Write(System.String)">\r
23297             <summary>\r
23298             Writes a string to the wrapped TextWriter\r
23299             </summary>\r
23300             <param name="value">the value to write to the TextWriter</param>\r
23301             <remarks>\r
23302             <para>\r
23303             Writes a string to the wrapped TextWriter\r
23304             </para>\r
23305             </remarks>\r
23306         </member>\r
23307         <member name="P:log4net.Util.TextWriterAdapter.Writer">\r
23308             <summary>\r
23309             Gets or sets the underlying <see cref="T:System.IO.TextWriter"/>.\r
23310             </summary>\r
23311             <value>\r
23312             The underlying <see cref="T:System.IO.TextWriter"/>.\r
23313             </value>\r
23314             <remarks>\r
23315             <para>\r
23316             Gets or sets the underlying <see cref="T:System.IO.TextWriter"/>.\r
23317             </para>\r
23318             </remarks>\r
23319         </member>\r
23320         <member name="P:log4net.Util.TextWriterAdapter.Encoding">\r
23321             <summary>\r
23322             The Encoding in which the output is written\r
23323             </summary>\r
23324             <value>\r
23325             The <see cref="P:log4net.Util.TextWriterAdapter.Encoding"/>\r
23326             </value>\r
23327             <remarks>\r
23328             <para>\r
23329             The Encoding in which the output is written\r
23330             </para>\r
23331             </remarks>\r
23332         </member>\r
23333         <member name="P:log4net.Util.TextWriterAdapter.FormatProvider">\r
23334             <summary>\r
23335             Gets an object that controls formatting\r
23336             </summary>\r
23337             <value>\r
23338             The format provider\r
23339             </value>\r
23340             <remarks>\r
23341             <para>\r
23342             Gets an object that controls formatting\r
23343             </para>\r
23344             </remarks>\r
23345         </member>\r
23346         <member name="P:log4net.Util.TextWriterAdapter.NewLine">\r
23347             <summary>\r
23348             Gets or sets the line terminator string used by the TextWriter\r
23349             </summary>\r
23350             <value>\r
23351             The line terminator to use\r
23352             </value>\r
23353             <remarks>\r
23354             <para>\r
23355             Gets or sets the line terminator string used by the TextWriter\r
23356             </para>\r
23357             </remarks>\r
23358         </member>\r
23359         <member name="M:log4net.Util.QuietTextWriter.#ctor(System.IO.TextWriter,log4net.Core.IErrorHandler)">\r
23360             <summary>\r
23361             Constructor\r
23362             </summary>\r
23363             <param name="writer">the writer to actually write to</param>\r
23364             <param name="errorHandler">the error handler to report error to</param>\r
23365             <remarks>\r
23366             <para>\r
23367             Create a new QuietTextWriter using a writer and error handler\r
23368             </para>\r
23369             </remarks>\r
23370         </member>\r
23371         <member name="M:log4net.Util.QuietTextWriter.Write(System.Char)">\r
23372             <summary>\r
23373             Writes a character to the underlying writer\r
23374             </summary>\r
23375             <param name="value">the char to write</param>\r
23376             <remarks>\r
23377             <para>\r
23378             Writes a character to the underlying writer\r
23379             </para>\r
23380             </remarks>\r
23381         </member>\r
23382         <member name="M:log4net.Util.QuietTextWriter.Write(System.Char[],System.Int32,System.Int32)">\r
23383             <summary>\r
23384             Writes a buffer to the underlying writer\r
23385             </summary>\r
23386             <param name="buffer">the buffer to write</param>\r
23387             <param name="index">the start index to write from</param>\r
23388             <param name="count">the number of characters to write</param>\r
23389             <remarks>\r
23390             <para>\r
23391             Writes a buffer to the underlying writer\r
23392             </para>\r
23393             </remarks>\r
23394         </member>\r
23395         <member name="M:log4net.Util.QuietTextWriter.Write(System.String)">\r
23396             <summary>\r
23397             Writes a string to the output.\r
23398             </summary>\r
23399             <param name="value">The string data to write to the output.</param>\r
23400             <remarks>\r
23401             <para>\r
23402             Writes a string to the output.\r
23403             </para>\r
23404             </remarks>\r
23405         </member>\r
23406         <member name="M:log4net.Util.QuietTextWriter.Close">\r
23407             <summary>\r
23408             Closes the underlying output writer.\r
23409             </summary>\r
23410             <remarks>\r
23411             <para>\r
23412             Closes the underlying output writer.\r
23413             </para>\r
23414             </remarks>\r
23415         </member>\r
23416         <member name="F:log4net.Util.QuietTextWriter.m_errorHandler">\r
23417             <summary>\r
23418             The error handler instance to pass all errors to\r
23419             </summary>\r
23420         </member>\r
23421         <member name="F:log4net.Util.QuietTextWriter.m_closed">\r
23422             <summary>\r
23423             Flag to indicate if this writer is closed\r
23424             </summary>\r
23425         </member>\r
23426         <member name="P:log4net.Util.QuietTextWriter.ErrorHandler">\r
23427             <summary>\r
23428             Gets or sets the error handler that all errors are passed to.\r
23429             </summary>\r
23430             <value>\r
23431             The error handler that all errors are passed to.\r
23432             </value>\r
23433             <remarks>\r
23434             <para>\r
23435             Gets or sets the error handler that all errors are passed to.\r
23436             </para>\r
23437             </remarks>\r
23438         </member>\r
23439         <member name="P:log4net.Util.QuietTextWriter.Closed">\r
23440             <summary>\r
23441             Gets a value indicating whether this writer is closed.\r
23442             </summary>\r
23443             <value>\r
23444             <c>true</c> if this writer is closed, otherwise <c>false</c>.\r
23445             </value>\r
23446             <remarks>\r
23447             <para>\r
23448             Gets a value indicating whether this writer is closed.\r
23449             </para>\r
23450             </remarks>\r
23451         </member>\r
23452         <member name="M:log4net.Util.CountingQuietTextWriter.#ctor(System.IO.TextWriter,log4net.Core.IErrorHandler)">\r
23453             <summary>\r
23454             Constructor\r
23455             </summary>\r
23456             <param name="writer">The <see cref="T:System.IO.TextWriter"/> to actually write to.</param>\r
23457             <param name="errorHandler">The <see cref="T:log4net.Core.IErrorHandler"/> to report errors to.</param>\r
23458             <remarks>\r
23459             <para>\r
23460             Creates a new instance of the <see cref="T:log4net.Util.CountingQuietTextWriter"/> class \r
23461             with the specified <see cref="T:System.IO.TextWriter"/> and <see cref="T:log4net.Core.IErrorHandler"/>.\r
23462             </para>\r
23463             </remarks>\r
23464         </member>\r
23465         <member name="M:log4net.Util.CountingQuietTextWriter.Write(System.Char)">\r
23466             <summary>\r
23467             Writes a character to the underlying writer and counts the number of bytes written.\r
23468             </summary>\r
23469             <param name="value">the char to write</param>\r
23470             <remarks>\r
23471             <para>\r
23472             Overrides implementation of <see cref="T:log4net.Util.QuietTextWriter"/>. Counts\r
23473             the number of bytes written.\r
23474             </para>\r
23475             </remarks>\r
23476         </member>\r
23477         <member name="M:log4net.Util.CountingQuietTextWriter.Write(System.Char[],System.Int32,System.Int32)">\r
23478             <summary>\r
23479             Writes a buffer to the underlying writer and counts the number of bytes written.\r
23480             </summary>\r
23481             <param name="buffer">the buffer to write</param>\r
23482             <param name="index">the start index to write from</param>\r
23483             <param name="count">the number of characters to write</param>\r
23484             <remarks>\r
23485             <para>\r
23486             Overrides implementation of <see cref="T:log4net.Util.QuietTextWriter"/>. Counts\r
23487             the number of bytes written.\r
23488             </para>\r
23489             </remarks>\r
23490         </member>\r
23491         <member name="M:log4net.Util.CountingQuietTextWriter.Write(System.String)">\r
23492             <summary>\r
23493             Writes a string to the output and counts the number of bytes written.\r
23494             </summary>\r
23495             <param name="str">The string data to write to the output.</param>\r
23496             <remarks>\r
23497             <para>\r
23498             Overrides implementation of <see cref="T:log4net.Util.QuietTextWriter"/>. Counts\r
23499             the number of bytes written.\r
23500             </para>\r
23501             </remarks>\r
23502         </member>\r
23503         <member name="F:log4net.Util.CountingQuietTextWriter.m_countBytes">\r
23504             <summary>\r
23505             Total number of bytes written.\r
23506             </summary>\r
23507         </member>\r
23508         <member name="P:log4net.Util.CountingQuietTextWriter.Count">\r
23509             <summary>\r
23510             Gets or sets the total number of bytes written.\r
23511             </summary>\r
23512             <value>\r
23513             The total number of bytes written.\r
23514             </value>\r
23515             <remarks>\r
23516             <para>\r
23517             Gets or sets the total number of bytes written.\r
23518             </para>\r
23519             </remarks>\r
23520         </member>\r
23521         <member name="T:log4net.Util.CyclicBuffer">\r
23522             <summary>\r
23523             A fixed size rolling buffer of logging events.\r
23524             </summary>\r
23525             <remarks>\r
23526             <para>\r
23527             An array backed fixed size leaky bucket.\r
23528             </para>\r
23529             </remarks>\r
23530             <author>Nicko Cadell</author>\r
23531             <author>Gert Driesen</author>\r
23532         </member>\r
23533         <member name="M:log4net.Util.CyclicBuffer.#ctor(System.Int32)">\r
23534             <summary>\r
23535             Constructor\r
23536             </summary>\r
23537             <param name="maxSize">The maximum number of logging events in the buffer.</param>\r
23538             <remarks>\r
23539             <para>\r
23540             Initializes a new instance of the <see cref="T:log4net.Util.CyclicBuffer"/> class with \r
23541             the specified maximum number of buffered logging events.\r
23542             </para>\r
23543             </remarks>\r
23544             <exception cref="T:System.ArgumentOutOfRangeException">The <paramref name="maxSize"/> argument is not a positive integer.</exception>\r
23545         </member>\r
23546         <member name="M:log4net.Util.CyclicBuffer.Append(log4net.Core.LoggingEvent)">\r
23547             <summary>\r
23548             Appends a <paramref name="loggingEvent"/> to the buffer.\r
23549             </summary>\r
23550             <param name="loggingEvent">The event to append to the buffer.</param>\r
23551             <returns>The event discarded from the buffer, if the buffer is full, otherwise <c>null</c>.</returns>\r
23552             <remarks>\r
23553             <para>\r
23554             Append an event to the buffer. If the buffer still contains free space then\r
23555             <c>null</c> is returned. If the buffer is full then an event will be dropped\r
23556             to make space for the new event, the event dropped is returned.\r
23557             </para>\r
23558             </remarks>\r
23559         </member>\r
23560         <member name="M:log4net.Util.CyclicBuffer.PopOldest">\r
23561             <summary>\r
23562             Get and remove the oldest event in the buffer.\r
23563             </summary>\r
23564             <returns>The oldest logging event in the buffer</returns>\r
23565             <remarks>\r
23566             <para>\r
23567             Gets the oldest (first) logging event in the buffer and removes it \r
23568             from the buffer.\r
23569             </para>\r
23570             </remarks>\r
23571         </member>\r
23572         <member name="M:log4net.Util.CyclicBuffer.PopAll">\r
23573             <summary>\r
23574             Pops all the logging events from the buffer into an array.\r
23575             </summary>\r
23576             <returns>An array of all the logging events in the buffer.</returns>\r
23577             <remarks>\r
23578             <para>\r
23579             Get all the events in the buffer and clear the buffer.\r
23580             </para>\r
23581             </remarks>\r
23582         </member>\r
23583         <member name="M:log4net.Util.CyclicBuffer.Clear">\r
23584             <summary>\r
23585             Clear the buffer\r
23586             </summary>\r
23587             <remarks>\r
23588             <para>\r
23589             Clear the buffer of all events. The events in the buffer are lost.\r
23590             </para>\r
23591             </remarks>\r
23592         </member>\r
23593         <member name="P:log4net.Util.CyclicBuffer.Item(System.Int32)">\r
23594             <summary>\r
23595             Gets the <paramref name="i"/>th oldest event currently in the buffer.\r
23596             </summary>\r
23597             <value>The <paramref name="i"/>th oldest event currently in the buffer.</value>\r
23598             <remarks>\r
23599             <para>\r
23600             If <paramref name="i"/> is outside the range 0 to the number of events\r
23601             currently in the buffer, then <c>null</c> is returned.\r
23602             </para>\r
23603             </remarks>\r
23604         </member>\r
23605         <member name="P:log4net.Util.CyclicBuffer.MaxSize">\r
23606             <summary>\r
23607             Gets the maximum size of the buffer.\r
23608             </summary>\r
23609             <value>The maximum size of the buffer.</value>\r
23610             <remarks>\r
23611             <para>\r
23612             Gets the maximum size of the buffer\r
23613             </para>\r
23614             </remarks>\r
23615         </member>\r
23616         <member name="P:log4net.Util.CyclicBuffer.Length">\r
23617             <summary>\r
23618             Gets the number of logging events in the buffer.\r
23619             </summary>\r
23620             <value>The number of logging events in the buffer.</value>\r
23621             <remarks>\r
23622             <para>\r
23623             This number is guaranteed to be in the range 0 to <see cref="P:log4net.Util.CyclicBuffer.MaxSize"/>\r
23624             (inclusive).\r
23625             </para>\r
23626             </remarks>\r
23627         </member>\r
23628         <member name="T:log4net.Util.EmptyCollection">\r
23629             <summary>\r
23630             An always empty <see cref="T:System.Collections.ICollection"/>.\r
23631             </summary>\r
23632             <remarks>\r
23633             <para>\r
23634             A singleton implementation of the <see cref="T:System.Collections.ICollection"/>\r
23635             interface that always represents an empty collection.\r
23636             </para>\r
23637             </remarks>\r
23638             <author>Nicko Cadell</author>\r
23639             <author>Gert Driesen</author>\r
23640         </member>\r
23641         <member name="M:log4net.Util.EmptyCollection.#ctor">\r
23642             <summary>\r
23643             Initializes a new instance of the <see cref="T:log4net.Util.EmptyCollection"/> class. \r
23644             </summary>\r
23645             <remarks>\r
23646             <para>\r
23647             Uses a private access modifier to enforce the singleton pattern.\r
23648             </para>\r
23649             </remarks>\r
23650         </member>\r
23651         <member name="M:log4net.Util.EmptyCollection.CopyTo(System.Array,System.Int32)">\r
23652             <summary>\r
23653             Copies the elements of the <see cref="T:System.Collections.ICollection"/> to an \r
23654             <see cref="T:System.Array"/>, starting at a particular Array index.\r
23655             </summary>\r
23656             <param name="array">The one-dimensional <see cref="T:System.Array"/> \r
23657             that is the destination of the elements copied from \r
23658             <see cref="T:System.Collections.ICollection"/>. The Array must have zero-based \r
23659             indexing.</param>\r
23660             <param name="index">The zero-based index in array at which \r
23661             copying begins.</param>\r
23662             <remarks>\r
23663             <para>\r
23664             As the collection is empty no values are copied into the array.\r
23665             </para>\r
23666             </remarks>\r
23667         </member>\r
23668         <member name="M:log4net.Util.EmptyCollection.GetEnumerator">\r
23669             <summary>\r
23670             Returns an enumerator that can iterate through a collection.\r
23671             </summary>\r
23672             <returns>\r
23673             An <see cref="T:System.Collections.IEnumerator"/> that can be used to \r
23674             iterate through the collection.\r
23675             </returns>\r
23676             <remarks>\r
23677             <para>\r
23678             As the collection is empty a <see cref="T:log4net.Util.NullEnumerator"/> is returned.\r
23679             </para>\r
23680             </remarks>\r
23681         </member>\r
23682         <member name="F:log4net.Util.EmptyCollection.s_instance">\r
23683             <summary>\r
23684             The singleton instance of the empty collection.\r
23685             </summary>\r
23686         </member>\r
23687         <member name="P:log4net.Util.EmptyCollection.Instance">\r
23688             <summary>\r
23689             Gets the singleton instance of the empty collection.\r
23690             </summary>\r
23691             <returns>The singleton instance of the empty collection.</returns>\r
23692             <remarks>\r
23693             <para>\r
23694             Gets the singleton instance of the empty collection.\r
23695             </para>\r
23696             </remarks>\r
23697         </member>\r
23698         <member name="P:log4net.Util.EmptyCollection.IsSynchronized">\r
23699             <summary>\r
23700             Gets a value indicating if access to the <see cref="T:System.Collections.ICollection"/> is synchronized (thread-safe).\r
23701             </summary>\r
23702             <value>\r
23703             <b>true</b> if access to the <see cref="T:System.Collections.ICollection"/> is synchronized (thread-safe); otherwise, <b>false</b>.\r
23704             </value>\r
23705             <remarks>\r
23706             <para>\r
23707             For the <see cref="T:log4net.Util.EmptyCollection"/> this property is always <c>true</c>.\r
23708             </para>\r
23709             </remarks>\r
23710         </member>\r
23711         <member name="P:log4net.Util.EmptyCollection.Count">\r
23712             <summary>\r
23713             Gets the number of elements contained in the <see cref="T:System.Collections.ICollection"/>.\r
23714             </summary>\r
23715             <value>\r
23716             The number of elements contained in the <see cref="T:System.Collections.ICollection"/>.\r
23717             </value>\r
23718             <remarks>\r
23719             <para>\r
23720             As the collection is empty the <see cref="P:log4net.Util.EmptyCollection.Count"/> is always <c>0</c>.\r
23721             </para>\r
23722             </remarks>\r
23723         </member>\r
23724         <member name="P:log4net.Util.EmptyCollection.SyncRoot">\r
23725             <summary>\r
23726             Gets an object that can be used to synchronize access to the <see cref="T:System.Collections.ICollection"/>.\r
23727             </summary>\r
23728             <value>\r
23729             An object that can be used to synchronize access to the <see cref="T:System.Collections.ICollection"/>.\r
23730             </value>\r
23731             <remarks>\r
23732             <para>\r
23733             As the collection is empty and thread safe and synchronized this instance is also\r
23734             the <see cref="P:log4net.Util.EmptyCollection.SyncRoot"/> object.\r
23735             </para>\r
23736             </remarks>\r
23737         </member>\r
23738         <member name="T:log4net.Util.EmptyDictionary">\r
23739             <summary>\r
23740             An always empty <see cref="T:System.Collections.IDictionary"/>.\r
23741             </summary>\r
23742             <remarks>\r
23743             <para>\r
23744             A singleton implementation of the <see cref="T:System.Collections.IDictionary"/>\r
23745             interface that always represents an empty collection.\r
23746             </para>\r
23747             </remarks>\r
23748             <author>Nicko Cadell</author>\r
23749             <author>Gert Driesen</author>\r
23750         </member>\r
23751         <member name="M:log4net.Util.EmptyDictionary.#ctor">\r
23752             <summary>\r
23753             Initializes a new instance of the <see cref="T:log4net.Util.EmptyDictionary"/> class. \r
23754             </summary>\r
23755             <remarks>\r
23756             <para>\r
23757             Uses a private access modifier to enforce the singleton pattern.\r
23758             </para>\r
23759             </remarks>\r
23760         </member>\r
23761         <member name="M:log4net.Util.EmptyDictionary.CopyTo(System.Array,System.Int32)">\r
23762             <summary>\r
23763             Copies the elements of the <see cref="T:System.Collections.ICollection"/> to an \r
23764             <see cref="T:System.Array"/>, starting at a particular Array index.\r
23765             </summary>\r
23766             <param name="array">The one-dimensional <see cref="T:System.Array"/> \r
23767             that is the destination of the elements copied from \r
23768             <see cref="T:System.Collections.ICollection"/>. The Array must have zero-based \r
23769             indexing.</param>\r
23770             <param name="index">The zero-based index in array at which \r
23771             copying begins.</param>\r
23772             <remarks>\r
23773             <para>\r
23774             As the collection is empty no values are copied into the array.\r
23775             </para>\r
23776             </remarks>\r
23777         </member>\r
23778         <member name="M:log4net.Util.EmptyDictionary.System#Collections#IEnumerable#GetEnumerator">\r
23779             <summary>\r
23780             Returns an enumerator that can iterate through a collection.\r
23781             </summary>\r
23782             <returns>\r
23783             An <see cref="T:System.Collections.IEnumerator"/> that can be used to \r
23784             iterate through the collection.\r
23785             </returns>\r
23786             <remarks>\r
23787             <para>\r
23788             As the collection is empty a <see cref="T:log4net.Util.NullEnumerator"/> is returned.\r
23789             </para>\r
23790             </remarks>\r
23791         </member>\r
23792         <member name="M:log4net.Util.EmptyDictionary.Add(System.Object,System.Object)">\r
23793             <summary>\r
23794             Adds an element with the provided key and value to the \r
23795             <see cref="T:log4net.Util.EmptyDictionary"/>.\r
23796             </summary>\r
23797             <param name="key">The <see cref="T:System.Object"/> to use as the key of the element to add.</param>\r
23798             <param name="value">The <see cref="T:System.Object"/> to use as the value of the element to add.</param>\r
23799             <remarks>\r
23800             <para>\r
23801             As the collection is empty no new values can be added. A <see cref="T:System.InvalidOperationException"/>\r
23802             is thrown if this method is called.\r
23803             </para>\r
23804             </remarks>\r
23805             <exception cref="T:System.InvalidOperationException">This dictionary is always empty and cannot be modified.</exception>\r
23806         </member>\r
23807         <member name="M:log4net.Util.EmptyDictionary.Clear">\r
23808             <summary>\r
23809             Removes all elements from the <see cref="T:log4net.Util.EmptyDictionary"/>.\r
23810             </summary>\r
23811             <remarks>\r
23812             <para>\r
23813             As the collection is empty no values can be removed. A <see cref="T:System.InvalidOperationException"/>\r
23814             is thrown if this method is called.\r
23815             </para>\r
23816             </remarks>\r
23817             <exception cref="T:System.InvalidOperationException">This dictionary is always empty and cannot be modified.</exception>\r
23818         </member>\r
23819         <member name="M:log4net.Util.EmptyDictionary.Contains(System.Object)">\r
23820             <summary>\r
23821             Determines whether the <see cref="T:log4net.Util.EmptyDictionary"/> contains an element \r
23822             with the specified key.\r
23823             </summary>\r
23824             <param name="key">The key to locate in the <see cref="T:log4net.Util.EmptyDictionary"/>.</param>\r
23825             <returns><c>false</c></returns>\r
23826             <remarks>\r
23827             <para>\r
23828             As the collection is empty the <see cref="M:log4net.Util.EmptyDictionary.Contains(System.Object)"/> method always returns <c>false</c>.\r
23829             </para>\r
23830             </remarks>\r
23831         </member>\r
23832         <member name="M:log4net.Util.EmptyDictionary.GetEnumerator">\r
23833             <summary>\r
23834             Returns an enumerator that can iterate through a collection.\r
23835             </summary>\r
23836             <returns>\r
23837             An <see cref="T:System.Collections.IEnumerator"/> that can be used to \r
23838             iterate through the collection.\r
23839             </returns>\r
23840             <remarks>\r
23841             <para>\r
23842             As the collection is empty a <see cref="T:log4net.Util.NullEnumerator"/> is returned.\r
23843             </para>\r
23844             </remarks>\r
23845         </member>\r
23846         <member name="M:log4net.Util.EmptyDictionary.Remove(System.Object)">\r
23847             <summary>\r
23848             Removes the element with the specified key from the <see cref="T:log4net.Util.EmptyDictionary"/>.\r
23849             </summary>\r
23850             <param name="key">The key of the element to remove.</param>\r
23851             <remarks>\r
23852             <para>\r
23853             As the collection is empty no values can be removed. A <see cref="T:System.InvalidOperationException"/>\r
23854             is thrown if this method is called.\r
23855             </para>\r
23856             </remarks>\r
23857             <exception cref="T:System.InvalidOperationException">This dictionary is always empty and cannot be modified.</exception>\r
23858         </member>\r
23859         <member name="F:log4net.Util.EmptyDictionary.s_instance">\r
23860             <summary>\r
23861             The singleton instance of the empty dictionary.\r
23862             </summary>\r
23863         </member>\r
23864         <member name="P:log4net.Util.EmptyDictionary.Instance">\r
23865             <summary>\r
23866             Gets the singleton instance of the <see cref="T:log4net.Util.EmptyDictionary"/>.\r
23867             </summary>\r
23868             <returns>The singleton instance of the <see cref="T:log4net.Util.EmptyDictionary"/>.</returns>\r
23869             <remarks>\r
23870             <para>\r
23871             Gets the singleton instance of the <see cref="T:log4net.Util.EmptyDictionary"/>.\r
23872             </para>\r
23873             </remarks>\r
23874         </member>\r
23875         <member name="P:log4net.Util.EmptyDictionary.IsSynchronized">\r
23876             <summary>\r
23877             Gets a value indicating if access to the <see cref="T:System.Collections.ICollection"/> is synchronized (thread-safe).\r
23878             </summary>\r
23879             <value>\r
23880             <b>true</b> if access to the <see cref="T:System.Collections.ICollection"/> is synchronized (thread-safe); otherwise, <b>false</b>.\r
23881             </value>\r
23882             <remarks>\r
23883             <para>\r
23884             For the <see cref="T:log4net.Util.EmptyCollection"/> this property is always <b>true</b>.\r
23885             </para>\r
23886             </remarks>\r
23887         </member>\r
23888         <member name="P:log4net.Util.EmptyDictionary.Count">\r
23889             <summary>\r
23890             Gets the number of elements contained in the <see cref="T:System.Collections.ICollection"/>\r
23891             </summary>\r
23892             <value>\r
23893             The number of elements contained in the <see cref="T:System.Collections.ICollection"/>.\r
23894             </value>\r
23895             <remarks>\r
23896             <para>\r
23897             As the collection is empty the <see cref="P:log4net.Util.EmptyDictionary.Count"/> is always <c>0</c>.\r
23898             </para>\r
23899             </remarks>\r
23900         </member>\r
23901         <member name="P:log4net.Util.EmptyDictionary.SyncRoot">\r
23902             <summary>\r
23903             Gets an object that can be used to synchronize access to the <see cref="T:System.Collections.ICollection"/>.\r
23904             </summary>\r
23905             <value>\r
23906             An object that can be used to synchronize access to the <see cref="T:System.Collections.ICollection"/>.\r
23907             </value>\r
23908             <remarks>\r
23909             <para>\r
23910             As the collection is empty and thread safe and synchronized this instance is also\r
23911             the <see cref="P:log4net.Util.EmptyDictionary.SyncRoot"/> object.\r
23912             </para>\r
23913             </remarks>\r
23914         </member>\r
23915         <member name="P:log4net.Util.EmptyDictionary.IsFixedSize">\r
23916             <summary>\r
23917             Gets a value indicating whether the <see cref="T:log4net.Util.EmptyDictionary"/> has a fixed size.\r
23918             </summary>\r
23919             <value><c>true</c></value>\r
23920             <remarks>\r
23921             <para>\r
23922             As the collection is empty <see cref="P:log4net.Util.EmptyDictionary.IsFixedSize"/> always returns <c>true</c>.\r
23923             </para>\r
23924             </remarks>\r
23925         </member>\r
23926         <member name="P:log4net.Util.EmptyDictionary.IsReadOnly">\r
23927             <summary>\r
23928             Gets a value indicating whether the <see cref="T:log4net.Util.EmptyDictionary"/> is read-only.\r
23929             </summary>\r
23930             <value><c>true</c></value>\r
23931             <remarks>\r
23932             <para>\r
23933             As the collection is empty <see cref="P:log4net.Util.EmptyDictionary.IsReadOnly"/> always returns <c>true</c>.\r
23934             </para>\r
23935             </remarks>\r
23936         </member>\r
23937         <member name="P:log4net.Util.EmptyDictionary.Keys">\r
23938             <summary>\r
23939             Gets an <see cref="T:System.Collections.ICollection"/> containing the keys of the <see cref="T:log4net.Util.EmptyDictionary"/>.\r
23940             </summary>\r
23941             <value>An <see cref="T:System.Collections.ICollection"/> containing the keys of the <see cref="T:log4net.Util.EmptyDictionary"/>.</value>\r
23942             <remarks>\r
23943             <para>\r
23944             As the collection is empty a <see cref="T:log4net.Util.EmptyCollection"/> is returned.\r
23945             </para>\r
23946             </remarks>\r
23947         </member>\r
23948         <member name="P:log4net.Util.EmptyDictionary.Values">\r
23949             <summary>\r
23950             Gets an <see cref="T:System.Collections.ICollection"/> containing the values of the <see cref="T:log4net.Util.EmptyDictionary"/>.\r
23951             </summary>\r
23952             <value>An <see cref="T:System.Collections.ICollection"/> containing the values of the <see cref="T:log4net.Util.EmptyDictionary"/>.</value>\r
23953             <remarks>\r
23954             <para>\r
23955             As the collection is empty a <see cref="T:log4net.Util.EmptyCollection"/> is returned.\r
23956             </para>\r
23957             </remarks>\r
23958         </member>\r
23959         <member name="P:log4net.Util.EmptyDictionary.Item(System.Object)">\r
23960             <summary>\r
23961             Gets or sets the element with the specified key.\r
23962             </summary>\r
23963             <param name="key">The key of the element to get or set.</param>\r
23964             <value><c>null</c></value>\r
23965             <remarks>\r
23966             <para>\r
23967             As the collection is empty no values can be looked up or stored. \r
23968             If the index getter is called then <c>null</c> is returned.\r
23969             A <see cref="T:System.InvalidOperationException"/> is thrown if the setter is called.\r
23970             </para>\r
23971             </remarks>\r
23972             <exception cref="T:System.InvalidOperationException">This dictionary is always empty and cannot be modified.</exception>\r
23973         </member>\r
23974         <member name="T:log4net.Util.FormattingInfo">\r
23975             <summary>\r
23976             Contain the information obtained when parsing formatting modifiers \r
23977             in conversion modifiers.\r
23978             </summary>\r
23979             <remarks>\r
23980             <para>\r
23981             Holds the formatting information extracted from the format string by\r
23982             the <see cref="T:log4net.Util.PatternParser"/>. This is used by the <see cref="T:log4net.Util.PatternConverter"/>\r
23983             objects when rendering the output.\r
23984             </para>\r
23985             </remarks>\r
23986             <author>Nicko Cadell</author>\r
23987             <author>Gert Driesen</author>\r
23988         </member>\r
23989         <member name="M:log4net.Util.FormattingInfo.#ctor">\r
23990             <summary>\r
23991             Defaut Constructor\r
23992             </summary>\r
23993             <remarks>\r
23994             <para>\r
23995             Initializes a new instance of the <see cref="T:log4net.Util.FormattingInfo"/> class.\r
23996             </para>\r
23997             </remarks>\r
23998         </member>\r
23999         <member name="M:log4net.Util.FormattingInfo.#ctor(System.Int32,System.Int32,System.Boolean)">\r
24000             <summary>\r
24001             Constructor\r
24002             </summary>\r
24003             <remarks>\r
24004             <para>\r
24005             Initializes a new instance of the <see cref="T:log4net.Util.FormattingInfo"/> class\r
24006             with the specified parameters.\r
24007             </para>\r
24008             </remarks>\r
24009         </member>\r
24010         <member name="P:log4net.Util.FormattingInfo.Min">\r
24011             <summary>\r
24012             Gets or sets the minimum value.\r
24013             </summary>\r
24014             <value>\r
24015             The minimum value.\r
24016             </value>\r
24017             <remarks>\r
24018             <para>\r
24019             Gets or sets the minimum value.\r
24020             </para>\r
24021             </remarks>\r
24022         </member>\r
24023         <member name="P:log4net.Util.FormattingInfo.Max">\r
24024             <summary>\r
24025             Gets or sets the maximum value.\r
24026             </summary>\r
24027             <value>\r
24028             The maximum value.\r
24029             </value>\r
24030             <remarks>\r
24031             <para>\r
24032             Gets or sets the maximum value.\r
24033             </para>\r
24034             </remarks>\r
24035         </member>\r
24036         <member name="P:log4net.Util.FormattingInfo.LeftAlign">\r
24037             <summary>\r
24038             Gets or sets a flag indicating whether left align is enabled\r
24039             or not.\r
24040             </summary>\r
24041             <value>\r
24042             A flag indicating whether left align is enabled or not.\r
24043             </value>\r
24044             <remarks>\r
24045             <para>\r
24046             Gets or sets a flag indicating whether left align is enabled or not.\r
24047             </para>\r
24048             </remarks>\r
24049         </member>\r
24050         <member name="T:log4net.Util.GlobalContextProperties">\r
24051             <summary>\r
24052             Implementation of Properties collection for the <see cref="T:log4net.GlobalContext"/>\r
24053             </summary>\r
24054             <remarks>\r
24055             <para>\r
24056             This class implements a properties collection that is thread safe and supports both\r
24057             storing properties and capturing a read only copy of the current propertied.\r
24058             </para>\r
24059             <para>\r
24060             This class is optimized to the scenario where the properties are read frequently\r
24061             and are modified infrequently.\r
24062             </para>\r
24063             </remarks>\r
24064             <author>Nicko Cadell</author>\r
24065         </member>\r
24066         <member name="F:log4net.Util.GlobalContextProperties.m_readOnlyProperties">\r
24067             <summary>\r
24068             The read only copy of the properties.\r
24069             </summary>\r
24070             <remarks>\r
24071             <para>\r
24072             This variable is declared <c>volatile</c> to prevent the compiler and JIT from\r
24073             reordering reads and writes of this thread performed on different threads.\r
24074             </para>\r
24075             </remarks>\r
24076         </member>\r
24077         <member name="F:log4net.Util.GlobalContextProperties.m_syncRoot">\r
24078             <summary>\r
24079             Lock object used to synchronize updates within this instance\r
24080             </summary>\r
24081         </member>\r
24082         <member name="M:log4net.Util.GlobalContextProperties.#ctor">\r
24083             <summary>\r
24084             Constructor\r
24085             </summary>\r
24086             <remarks>\r
24087             <para>\r
24088             Initializes a new instance of the <see cref="T:log4net.Util.GlobalContextProperties"/> class.\r
24089             </para>\r
24090             </remarks>\r
24091         </member>\r
24092         <member name="M:log4net.Util.GlobalContextProperties.Remove(System.String)">\r
24093             <summary>\r
24094             Remove a property from the global context\r
24095             </summary>\r
24096             <param name="key">the key for the entry to remove</param>\r
24097             <remarks>\r
24098             <para>\r
24099             Removing an entry from the global context properties is relatively expensive compared\r
24100             with reading a value. \r
24101             </para>\r
24102             </remarks>\r
24103         </member>\r
24104         <member name="M:log4net.Util.GlobalContextProperties.Clear">\r
24105             <summary>\r
24106             Clear the global context properties\r
24107             </summary>\r
24108         </member>\r
24109         <member name="M:log4net.Util.GlobalContextProperties.GetReadOnlyProperties">\r
24110             <summary>\r
24111             Get a readonly immutable copy of the properties\r
24112             </summary>\r
24113             <returns>the current global context properties</returns>\r
24114             <remarks>\r
24115             <para>\r
24116             This implementation is fast because the GlobalContextProperties class\r
24117             stores a readonly copy of the properties.\r
24118             </para>\r
24119             </remarks>\r
24120         </member>\r
24121         <member name="P:log4net.Util.GlobalContextProperties.Item(System.String)">\r
24122             <summary>\r
24123             Gets or sets the value of a property\r
24124             </summary>\r
24125             <value>\r
24126             The value for the property with the specified key\r
24127             </value>\r
24128             <remarks>\r
24129             <para>\r
24130             Reading the value for a key is faster than setting the value.\r
24131             When the value is written a new read only copy of \r
24132             the properties is created.\r
24133             </para>\r
24134             </remarks>\r
24135         </member>\r
24136         <member name="T:log4net.Util.LevelMapping">\r
24137             <summary>\r
24138             Manages a mapping from levels to <see cref="T:log4net.Util.LevelMappingEntry"/>\r
24139             </summary>\r
24140             <remarks>\r
24141             <para>\r
24142             Manages an ordered mapping from <see cref="T:log4net.Core.Level"/> instances \r
24143             to <see cref="T:log4net.Util.LevelMappingEntry"/> subclasses.\r
24144             </para>\r
24145             </remarks>\r
24146             <author>Nicko Cadell</author>\r
24147         </member>\r
24148         <member name="M:log4net.Util.LevelMapping.#ctor">\r
24149             <summary>\r
24150             Default constructor\r
24151             </summary>\r
24152             <remarks>\r
24153             <para>\r
24154             Initialise a new instance of <see cref="T:log4net.Util.LevelMapping"/>.\r
24155             </para>\r
24156             </remarks>\r
24157         </member>\r
24158         <member name="M:log4net.Util.LevelMapping.Add(log4net.Util.LevelMappingEntry)">\r
24159             <summary>\r
24160             Add a <see cref="T:log4net.Util.LevelMappingEntry"/> to this mapping\r
24161             </summary>\r
24162             <param name="entry">the entry to add</param>\r
24163             <remarks>\r
24164             <para>\r
24165             If a <see cref="T:log4net.Util.LevelMappingEntry"/> has previously been added\r
24166             for the same <see cref="T:log4net.Core.Level"/> then that entry will be \r
24167             overwritten.\r
24168             </para>\r
24169             </remarks>\r
24170         </member>\r
24171         <member name="M:log4net.Util.LevelMapping.Lookup(log4net.Core.Level)">\r
24172             <summary>\r
24173             Lookup the mapping for the specified level\r
24174             </summary>\r
24175             <param name="level">the level to lookup</param>\r
24176             <returns>the <see cref="T:log4net.Util.LevelMappingEntry"/> for the level or <c>null</c> if no mapping found</returns>\r
24177             <remarks>\r
24178             <para>\r
24179             Lookup the value for the specified level. Finds the nearest\r
24180             mapping value for the level that is equal to or less than the\r
24181             <paramref name="level"/> specified.\r
24182             </para>\r
24183             <para>\r
24184             If no mapping could be found then <c>null</c> is returned.\r
24185             </para>\r
24186             </remarks>\r
24187         </member>\r
24188         <member name="M:log4net.Util.LevelMapping.ActivateOptions">\r
24189             <summary>\r
24190             Initialize options\r
24191             </summary>\r
24192             <remarks>\r
24193             <para>\r
24194             Caches the sorted list of <see cref="T:log4net.Util.LevelMappingEntry"/> in an array\r
24195             </para>\r
24196             </remarks>\r
24197         </member>\r
24198         <member name="T:log4net.Util.LogicalThreadContextProperties">\r
24199             <summary>\r
24200             Implementation of Properties collection for the <see cref="T:log4net.LogicalThreadContext"/>\r
24201             </summary>\r
24202             <remarks>\r
24203             <para>\r
24204             Class implements a collection of properties that is specific to each thread.\r
24205             The class is not synchronized as each thread has its own <see cref="T:log4net.Util.PropertiesDictionary"/>.\r
24206             </para>\r
24207             </remarks>\r
24208             <author>Nicko Cadell</author>\r
24209         </member>\r
24210         <member name="M:log4net.Util.LogicalThreadContextProperties.#ctor">\r
24211             <summary>\r
24212             Constructor\r
24213             </summary>\r
24214             <remarks>\r
24215             <para>\r
24216             Initializes a new instance of the <see cref="T:log4net.Util.LogicalThreadContextProperties"/> class.\r
24217             </para>\r
24218             </remarks>\r
24219         </member>\r
24220         <member name="M:log4net.Util.LogicalThreadContextProperties.Remove(System.String)">\r
24221             <summary>\r
24222             Remove a property\r
24223             </summary>\r
24224             <param name="key">the key for the entry to remove</param>\r
24225             <remarks>\r
24226             <para>\r
24227             Remove the value for the specified <paramref name="key"/> from the context.\r
24228             </para>\r
24229             </remarks>\r
24230         </member>\r
24231         <member name="M:log4net.Util.LogicalThreadContextProperties.Clear">\r
24232             <summary>\r
24233             Clear all the context properties\r
24234             </summary>\r
24235             <remarks>\r
24236             <para>\r
24237             Clear all the context properties\r
24238             </para>\r
24239             </remarks>\r
24240         </member>\r
24241         <member name="M:log4net.Util.LogicalThreadContextProperties.GetProperties(System.Boolean)">\r
24242             <summary>\r
24243             Get the PropertiesDictionary stored in the LocalDataStoreSlot for this thread.\r
24244             </summary>\r
24245             <param name="create">create the dictionary if it does not exist, otherwise return null if is does not exist</param>\r
24246             <returns>the properties for this thread</returns>\r
24247             <remarks>\r
24248             <para>\r
24249             The collection returned is only to be used on the calling thread. If the\r
24250             caller needs to share the collection between different threads then the \r
24251             caller must clone the collection before doings so.\r
24252             </para>\r
24253             </remarks>\r
24254         </member>\r
24255         <member name="P:log4net.Util.LogicalThreadContextProperties.Item(System.String)">\r
24256             <summary>\r
24257             Gets or sets the value of a property\r
24258             </summary>\r
24259             <value>\r
24260             The value for the property with the specified key\r
24261             </value>\r
24262             <remarks>\r
24263             <para>\r
24264             Get or set the property value for the <paramref name="key"/> specified.\r
24265             </para>\r
24266             </remarks>\r
24267         </member>\r
24268         <member name="T:log4net.Util.LogLog">\r
24269             <summary>\r
24270             Outputs log statements from within the log4net assembly.\r
24271             </summary>\r
24272             <remarks>\r
24273             <para>\r
24274             Log4net components cannot make log4net logging calls. However, it is\r
24275             sometimes useful for the user to learn about what log4net is\r
24276             doing.\r
24277             </para>\r
24278             <para>\r
24279             All log4net internal debug calls go to the standard output stream\r
24280             whereas internal error messages are sent to the standard error output \r
24281             stream.\r
24282             </para>\r
24283             </remarks>\r
24284             <author>Nicko Cadell</author>\r
24285             <author>Gert Driesen</author>\r
24286         </member>\r
24287         <member name="M:log4net.Util.LogLog.#ctor">\r
24288             <summary>\r
24289             Initializes a new instance of the <see cref="T:log4net.Util.LogLog"/> class. \r
24290             </summary>\r
24291             <remarks>\r
24292             <para>\r
24293             Uses a private access modifier to prevent instantiation of this class.\r
24294             </para>\r
24295             </remarks>\r
24296         </member>\r
24297         <member name="M:log4net.Util.LogLog.#cctor">\r
24298             <summary>\r
24299             Static constructor that initializes logging by reading \r
24300             settings from the application configuration file.\r
24301             </summary>\r
24302             <remarks>\r
24303             <para>\r
24304             The <c>log4net.Internal.Debug</c> application setting\r
24305             controls internal debugging. This setting should be set\r
24306             to <c>true</c> to enable debugging.\r
24307             </para>\r
24308             <para>\r
24309             The <c>log4net.Internal.Quiet</c> application setting\r
24310             suppresses all internal logging including error messages. \r
24311             This setting should be set to <c>true</c> to enable message\r
24312             suppression.\r
24313             </para>\r
24314             </remarks>\r
24315         </member>\r
24316         <member name="M:log4net.Util.LogLog.Debug(System.String)">\r
24317             <summary>\r
24318             Writes log4net internal debug messages to the \r
24319             standard output stream.\r
24320             </summary>\r
24321             <param name="message">The message to log.</param>\r
24322             <remarks>\r
24323             <para>\r
24324             All internal debug messages are prepended with \r
24325             the string "log4net: ".\r
24326             </para>\r
24327             </remarks>\r
24328         </member>\r
24329         <member name="M:log4net.Util.LogLog.Debug(System.String,System.Exception)">\r
24330             <summary>\r
24331             Writes log4net internal debug messages to the \r
24332             standard output stream.\r
24333             </summary>\r
24334             <param name="message">The message to log.</param>\r
24335             <param name="exception">An exception to log.</param>\r
24336             <remarks>\r
24337             <para>\r
24338             All internal debug messages are prepended with \r
24339             the string "log4net: ".\r
24340             </para>\r
24341             </remarks>\r
24342         </member>\r
24343         <member name="M:log4net.Util.LogLog.Warn(System.String)">\r
24344             <summary>\r
24345             Writes log4net internal warning messages to the \r
24346             standard error stream.\r
24347             </summary>\r
24348             <param name="message">The message to log.</param>\r
24349             <remarks>\r
24350             <para>\r
24351             All internal warning messages are prepended with \r
24352             the string "log4net:WARN ".\r
24353             </para>\r
24354             </remarks>\r
24355         </member>\r
24356         <member name="M:log4net.Util.LogLog.Warn(System.String,System.Exception)">\r
24357             <summary>\r
24358             Writes log4net internal warning messages to the \r
24359             standard error stream.\r
24360             </summary>\r
24361             <param name="message">The message to log.</param>\r
24362             <param name="exception">An exception to log.</param>\r
24363             <remarks>\r
24364             <para>\r
24365             All internal warning messages are prepended with \r
24366             the string "log4net:WARN ".\r
24367             </para>\r
24368             </remarks>\r
24369         </member>\r
24370         <member name="M:log4net.Util.LogLog.Error(System.String)">\r
24371             <summary>\r
24372             Writes log4net internal error messages to the \r
24373             standard error stream.\r
24374             </summary>\r
24375             <param name="message">The message to log.</param>\r
24376             <remarks>\r
24377             <para>\r
24378             All internal error messages are prepended with \r
24379             the string "log4net:ERROR ".\r
24380             </para>\r
24381             </remarks>\r
24382         </member>\r
24383         <member name="M:log4net.Util.LogLog.Error(System.String,System.Exception)">\r
24384             <summary>\r
24385             Writes log4net internal error messages to the \r
24386             standard error stream.\r
24387             </summary>\r
24388             <param name="message">The message to log.</param>\r
24389             <param name="exception">An exception to log.</param>\r
24390             <remarks>\r
24391             <para>\r
24392             All internal debug messages are prepended with \r
24393             the string "log4net:ERROR ".\r
24394             </para>\r
24395             </remarks>\r
24396         </member>\r
24397         <member name="M:log4net.Util.LogLog.EmitOutLine(System.String)">\r
24398             <summary>\r
24399             Writes output to the standard output stream.  \r
24400             </summary>\r
24401             <param name="message">The message to log.</param>\r
24402             <remarks>\r
24403             <para>\r
24404             Writes to both Console.Out and System.Diagnostics.Trace.\r
24405             Note that the System.Diagnostics.Trace is not supported\r
24406             on the Compact Framework.\r
24407             </para>\r
24408             <para>\r
24409             If the AppDomain is not configured with a config file then\r
24410             the call to System.Diagnostics.Trace may fail. This is only\r
24411             an issue if you are programmatically creating your own AppDomains.\r
24412             </para>\r
24413             </remarks>\r
24414         </member>\r
24415         <member name="M:log4net.Util.LogLog.EmitErrorLine(System.String)">\r
24416             <summary>\r
24417             Writes output to the standard error stream.  \r
24418             </summary>\r
24419             <param name="message">The message to log.</param>\r
24420             <remarks>\r
24421             <para>\r
24422             Writes to both Console.Error and System.Diagnostics.Trace.\r
24423             Note that the System.Diagnostics.Trace is not supported\r
24424             on the Compact Framework.\r
24425             </para>\r
24426             <para>\r
24427             If the AppDomain is not configured with a config file then\r
24428             the call to System.Diagnostics.Trace may fail. This is only\r
24429             an issue if you are programmatically creating your own AppDomains.\r
24430             </para>\r
24431             </remarks>\r
24432         </member>\r
24433         <member name="F:log4net.Util.LogLog.s_debugEnabled">\r
24434             <summary>\r
24435              Default debug level\r
24436             </summary>\r
24437         </member>\r
24438         <member name="F:log4net.Util.LogLog.s_quietMode">\r
24439             <summary>\r
24440             In quietMode not even errors generate any output.\r
24441             </summary>\r
24442         </member>\r
24443         <member name="P:log4net.Util.LogLog.InternalDebugging">\r
24444             <summary>\r
24445             Gets or sets a value indicating whether log4net internal logging\r
24446             is enabled or disabled.\r
24447             </summary>\r
24448             <value>\r
24449             <c>true</c> if log4net internal logging is enabled, otherwise \r
24450             <c>false</c>.\r
24451             </value>\r
24452             <remarks>\r
24453             <para>\r
24454             When set to <c>true</c>, internal debug level logging will be \r
24455             displayed.\r
24456             </para>\r
24457             <para>\r
24458             This value can be set by setting the application setting \r
24459             <c>log4net.Internal.Debug</c> in the application configuration\r
24460             file.\r
24461             </para>\r
24462             <para>\r
24463             The default value is <c>false</c>, i.e. debugging is\r
24464             disabled.\r
24465             </para>\r
24466             </remarks>\r
24467             <example>\r
24468             <para>\r
24469             The following example enables internal debugging using the \r
24470             application configuration file :\r
24471             </para>\r
24472             <code lang="XML" escaped="true">\r
24473             <configuration>\r
24474                 <appSettings>\r
24475                         <add key="log4net.Internal.Debug" value="true" />\r
24476                 </appSettings>\r
24477             </configuration>\r
24478             </code>\r
24479             </example>\r
24480         </member>\r
24481         <member name="P:log4net.Util.LogLog.QuietMode">\r
24482             <summary>\r
24483             Gets or sets a value indicating whether log4net should generate no output\r
24484             from internal logging, not even for errors. \r
24485             </summary>\r
24486             <value>\r
24487             <c>true</c> if log4net should generate no output at all from internal \r
24488             logging, otherwise <c>false</c>.\r
24489             </value>\r
24490             <remarks>\r
24491             <para>\r
24492             When set to <c>true</c> will cause internal logging at all levels to be \r
24493             suppressed. This means that no warning or error reports will be logged. \r
24494             This option overrides the <see cref="P:log4net.Util.LogLog.InternalDebugging"/> setting and \r
24495             disables all debug also.\r
24496             </para>\r
24497             <para>This value can be set by setting the application setting\r
24498             <c>log4net.Internal.Quiet</c> in the application configuration file.\r
24499             </para>\r
24500             <para>\r
24501             The default value is <c>false</c>, i.e. internal logging is not\r
24502             disabled.\r
24503             </para>\r
24504             </remarks>\r
24505             <example>\r
24506             The following example disables internal logging using the \r
24507             application configuration file :\r
24508             <code lang="XML" escaped="true">\r
24509             <configuration>\r
24510                 <appSettings>\r
24511                         <add key="log4net.Internal.Quiet" value="true"/>\r
24512                 </appSettings>\r
24513             </configuration>\r
24514             </code>\r
24515             </example>\r
24516         </member>\r
24517         <member name="P:log4net.Util.LogLog.IsDebugEnabled">\r
24518             <summary>\r
24519             Test if LogLog.Debug is enabled for output.\r
24520             </summary>\r
24521             <value>\r
24522             <c>true</c> if Debug is enabled\r
24523             </value>\r
24524             <remarks>\r
24525             <para>\r
24526             Test if LogLog.Debug is enabled for output.\r
24527             </para>\r
24528             </remarks>\r
24529         </member>\r
24530         <member name="P:log4net.Util.LogLog.IsWarnEnabled">\r
24531             <summary>\r
24532             Test if LogLog.Warn is enabled for output.\r
24533             </summary>\r
24534             <value>\r
24535             <c>true</c> if Warn is enabled\r
24536             </value>\r
24537             <remarks>\r
24538             <para>\r
24539             Test if LogLog.Warn is enabled for output.\r
24540             </para>\r
24541             </remarks>\r
24542         </member>\r
24543         <member name="P:log4net.Util.LogLog.IsErrorEnabled">\r
24544             <summary>\r
24545             Test if LogLog.Error is enabled for output.\r
24546             </summary>\r
24547             <value>\r
24548             <c>true</c> if Error is enabled\r
24549             </value>\r
24550             <remarks>\r
24551             <para>\r
24552             Test if LogLog.Error is enabled for output.\r
24553             </para>\r
24554             </remarks>\r
24555         </member>\r
24556         <member name="T:log4net.Util.NativeError">\r
24557             <summary>\r
24558             Represents a native error code and message.\r
24559             </summary>\r
24560             <remarks>\r
24561             <para>\r
24562             Represents a Win32 platform native error.\r
24563             </para>\r
24564             </remarks>\r
24565             <author>Nicko Cadell</author>\r
24566             <author>Gert Driesen</author>\r
24567         </member>\r
24568         <member name="M:log4net.Util.NativeError.#ctor(System.Int32,System.String)">\r
24569             <summary>\r
24570             Create an instance of the <see cref="T:log4net.Util.NativeError"/> class with the specified \r
24571             error number and message.\r
24572             </summary>\r
24573             <param name="number">The number of the native error.</param>\r
24574             <param name="message">The message of the native error.</param>\r
24575             <remarks>\r
24576             <para>\r
24577             Create an instance of the <see cref="T:log4net.Util.NativeError"/> class with the specified \r
24578             error number and message.\r
24579             </para>\r
24580             </remarks>\r
24581         </member>\r
24582         <member name="M:log4net.Util.NativeError.GetLastError">\r
24583             <summary>\r
24584             Create a new instance of the <see cref="T:log4net.Util.NativeError"/> class for the last Windows error.\r
24585             </summary>\r
24586             <returns>\r
24587             An instance of the <see cref="T:log4net.Util.NativeError"/> class for the last windows error.\r
24588             </returns>\r
24589             <remarks>\r
24590             <para>\r
24591             The message for the <see cref="M:System.Runtime.InteropServices.Marshal.GetLastWin32Error"/> error number is lookup up using the \r
24592             native Win32 <c>FormatMessage</c> function.\r
24593             </para>\r
24594             </remarks>\r
24595         </member>\r
24596         <member name="M:log4net.Util.NativeError.GetError(System.Int32)">\r
24597             <summary>\r
24598             Create a new instance of the <see cref="T:log4net.Util.NativeError"/> class.\r
24599             </summary>\r
24600             <param name="number">the error number for the native error</param>\r
24601             <returns>\r
24602             An instance of the <see cref="T:log4net.Util.NativeError"/> class for the specified \r
24603             error number.\r
24604             </returns>\r
24605             <remarks>\r
24606             <para>\r
24607             The message for the specified error number is lookup up using the \r
24608             native Win32 <c>FormatMessage</c> function.\r
24609             </para>\r
24610             </remarks>\r
24611         </member>\r
24612         <member name="M:log4net.Util.NativeError.GetErrorMessage(System.Int32)">\r
24613             <summary>\r
24614             Retrieves the message corresponding with a Win32 message identifier.\r
24615             </summary>\r
24616             <param name="messageId">Message identifier for the requested message.</param>\r
24617             <returns>\r
24618             The message corresponding with the specified message identifier.\r
24619             </returns>\r
24620             <remarks>\r
24621             <para>\r
24622             The message will be searched for in system message-table resource(s)\r
24623             using the native <c>FormatMessage</c> function.\r
24624             </para>\r
24625             </remarks>\r
24626         </member>\r
24627         <member name="M:log4net.Util.NativeError.ToString">\r
24628             <summary>\r
24629             Return error information string\r
24630             </summary>\r
24631             <returns>error information string</returns>\r
24632             <remarks>\r
24633             <para>\r
24634             Return error information string\r
24635             </para>\r
24636             </remarks>\r
24637         </member>\r
24638         <member name="M:log4net.Util.NativeError.FormatMessage(System.Int32,System.IntPtr@,System.Int32,System.Int32,System.String@,System.Int32,System.IntPtr)">\r
24639             <summary>\r
24640             Formats a message string.\r
24641             </summary>\r
24642             <param name="dwFlags">Formatting options, and how to interpret the <paramref name="lpSource"/> parameter.</param>\r
24643             <param name="lpSource">Location of the message definition.</param>\r
24644             <param name="dwMessageId">Message identifier for the requested message.</param>\r
24645             <param name="dwLanguageId">Language identifier for the requested message.</param>\r
24646             <param name="lpBuffer">If <paramref name="dwFlags"/> includes FORMAT_MESSAGE_ALLOCATE_BUFFER, the function allocates a buffer using the <c>LocalAlloc</c> function, and places the pointer to the buffer at the address specified in <paramref name="lpBuffer"/>.</param>\r
24647             <param name="nSize">If the FORMAT_MESSAGE_ALLOCATE_BUFFER flag is not set, this parameter specifies the maximum number of TCHARs that can be stored in the output buffer. If FORMAT_MESSAGE_ALLOCATE_BUFFER is set, this parameter specifies the minimum number of TCHARs to allocate for an output buffer.</param>\r
24648             <param name="Arguments">Pointer to an array of values that are used as insert values in the formatted message.</param>\r
24649             <remarks>\r
24650             <para>\r
24651             The function requires a message definition as input. The message definition can come from a \r
24652             buffer passed into the function. It can come from a message table resource in an \r
24653             already-loaded module. Or the caller can ask the function to search the system's message \r
24654             table resource(s) for the message definition. The function finds the message definition \r
24655             in a message table resource based on a message identifier and a language identifier. \r
24656             The function copies the formatted message text to an output buffer, processing any embedded \r
24657             insert sequences if requested.\r
24658             </para>\r
24659             <para>\r
24660             To prevent the usage of unsafe code, this stub does not support inserting values in the formatted message.\r
24661             </para>\r
24662             </remarks>\r
24663             <returns>\r
24664             <para>\r
24665             If the function succeeds, the return value is the number of TCHARs stored in the output \r
24666             buffer, excluding the terminating null character.\r
24667             </para>\r
24668             <para>\r
24669             If the function fails, the return value is zero. To get extended error information, \r
24670             call <see cref="M:System.Runtime.InteropServices.Marshal.GetLastWin32Error"/>.\r
24671             </para>\r
24672             </returns>\r
24673         </member>\r
24674         <member name="P:log4net.Util.NativeError.Number">\r
24675             <summary>\r
24676             Gets the number of the native error.\r
24677             </summary>\r
24678             <value>\r
24679             The number of the native error.\r
24680             </value>\r
24681             <remarks>\r
24682             <para>\r
24683             Gets the number of the native error.\r
24684             </para>\r
24685             </remarks>\r
24686         </member>\r
24687         <member name="P:log4net.Util.NativeError.Message">\r
24688             <summary>\r
24689             Gets the message of the native error.\r
24690             </summary>\r
24691             <value>\r
24692             The message of the native error.\r
24693             </value>\r
24694             <remarks>\r
24695             <para>\r
24696             </para>\r
24697             Gets the message of the native error.\r
24698             </remarks>\r
24699         </member>\r
24700         <member name="T:log4net.Util.NullDictionaryEnumerator">\r
24701             <summary>\r
24702             An always empty <see cref="T:System.Collections.IDictionaryEnumerator"/>.\r
24703             </summary>\r
24704             <remarks>\r
24705             <para>\r
24706             A singleton implementation of the <see cref="T:System.Collections.IDictionaryEnumerator"/> over a collection\r
24707             that is empty and not modifiable.\r
24708             </para>\r
24709             </remarks>\r
24710             <author>Nicko Cadell</author>\r
24711             <author>Gert Driesen</author>\r
24712         </member>\r
24713         <member name="M:log4net.Util.NullDictionaryEnumerator.#ctor">\r
24714             <summary>\r
24715             Initializes a new instance of the <see cref="T:log4net.Util.NullDictionaryEnumerator"/> class. \r
24716             </summary>\r
24717             <remarks>\r
24718             <para>\r
24719             Uses a private access modifier to enforce the singleton pattern.\r
24720             </para>\r
24721             </remarks>\r
24722         </member>\r
24723         <member name="M:log4net.Util.NullDictionaryEnumerator.MoveNext">\r
24724             <summary>\r
24725             Test if the enumerator can advance, if so advance.\r
24726             </summary>\r
24727             <returns><c>false</c> as the <see cref="T:log4net.Util.NullDictionaryEnumerator"/> cannot advance.</returns>\r
24728             <remarks>\r
24729             <para>\r
24730             As the enumerator is over an empty collection its <see cref="P:log4net.Util.NullDictionaryEnumerator.Current"/>\r
24731             value cannot be moved over a valid position, therefore <see cref="M:log4net.Util.NullDictionaryEnumerator.MoveNext"/>\r
24732             will always return <c>false</c>.\r
24733             </para>\r
24734             </remarks>\r
24735         </member>\r
24736         <member name="M:log4net.Util.NullDictionaryEnumerator.Reset">\r
24737             <summary>\r
24738             Resets the enumerator back to the start.\r
24739             </summary>\r
24740             <remarks>\r
24741             <para>\r
24742             As the enumerator is over an empty collection <see cref="M:log4net.Util.NullDictionaryEnumerator.Reset"/> does nothing.\r
24743             </para>\r
24744             </remarks>\r
24745         </member>\r
24746         <member name="F:log4net.Util.NullDictionaryEnumerator.s_instance">\r
24747             <summary>\r
24748             The singleton instance of the <see cref="T:log4net.Util.NullDictionaryEnumerator"/>.\r
24749             </summary>\r
24750         </member>\r
24751         <member name="P:log4net.Util.NullDictionaryEnumerator.Instance">\r
24752             <summary>\r
24753             Gets the singleton instance of the <see cref="T:log4net.Util.NullDictionaryEnumerator"/>.\r
24754             </summary>\r
24755             <returns>The singleton instance of the <see cref="T:log4net.Util.NullDictionaryEnumerator"/>.</returns>\r
24756             <remarks>\r
24757             <para>\r
24758             Gets the singleton instance of the <see cref="T:log4net.Util.NullDictionaryEnumerator"/>.\r
24759             </para>\r
24760             </remarks>\r
24761         </member>\r
24762         <member name="P:log4net.Util.NullDictionaryEnumerator.Current">\r
24763             <summary>\r
24764             Gets the current object from the enumerator.\r
24765             </summary>\r
24766             <remarks>\r
24767             Throws an <see cref="T:System.InvalidOperationException"/> because the \r
24768             <see cref="T:log4net.Util.NullDictionaryEnumerator"/> never has a current value.\r
24769             </remarks>\r
24770             <remarks>\r
24771             <para>\r
24772             As the enumerator is over an empty collection its <see cref="P:log4net.Util.NullDictionaryEnumerator.Current"/>\r
24773             value cannot be moved over a valid position, therefore <see cref="P:log4net.Util.NullDictionaryEnumerator.Current"/>\r
24774             will throw an <see cref="T:System.InvalidOperationException"/>.\r
24775             </para>\r
24776             </remarks>\r
24777             <exception cref="T:System.InvalidOperationException">The collection is empty and <see cref="P:log4net.Util.NullDictionaryEnumerator.Current"/> \r
24778             cannot be positioned over a valid location.</exception>\r
24779         </member>\r
24780         <member name="P:log4net.Util.NullDictionaryEnumerator.Key">\r
24781             <summary>\r
24782             Gets the current key from the enumerator.\r
24783             </summary>\r
24784             <remarks>\r
24785             Throws an exception because the <see cref="T:log4net.Util.NullDictionaryEnumerator"/>\r
24786             never has a current value.\r
24787             </remarks>\r
24788             <remarks>\r
24789             <para>\r
24790             As the enumerator is over an empty collection its <see cref="P:log4net.Util.NullDictionaryEnumerator.Current"/>\r
24791             value cannot be moved over a valid position, therefore <see cref="P:log4net.Util.NullDictionaryEnumerator.Key"/>\r
24792             will throw an <see cref="T:System.InvalidOperationException"/>.\r
24793             </para>\r
24794             </remarks>\r
24795             <exception cref="T:System.InvalidOperationException">The collection is empty and <see cref="P:log4net.Util.NullDictionaryEnumerator.Current"/> \r
24796             cannot be positioned over a valid location.</exception>\r
24797         </member>\r
24798         <member name="P:log4net.Util.NullDictionaryEnumerator.Value">\r
24799             <summary>\r
24800             Gets the current value from the enumerator.\r
24801             </summary>\r
24802             <value>The current value from the enumerator.</value>\r
24803             <remarks>\r
24804             Throws an <see cref="T:System.InvalidOperationException"/> because the \r
24805             <see cref="T:log4net.Util.NullDictionaryEnumerator"/> never has a current value.\r
24806             </remarks>\r
24807             <remarks>\r
24808             <para>\r
24809             As the enumerator is over an empty collection its <see cref="P:log4net.Util.NullDictionaryEnumerator.Current"/>\r
24810             value cannot be moved over a valid position, therefore <see cref="P:log4net.Util.NullDictionaryEnumerator.Value"/>\r
24811             will throw an <see cref="T:System.InvalidOperationException"/>.\r
24812             </para>\r
24813             </remarks>\r
24814             <exception cref="T:System.InvalidOperationException">The collection is empty and <see cref="P:log4net.Util.NullDictionaryEnumerator.Current"/> \r
24815             cannot be positioned over a valid location.</exception>\r
24816         </member>\r
24817         <member name="P:log4net.Util.NullDictionaryEnumerator.Entry">\r
24818             <summary>\r
24819             Gets the current entry from the enumerator.\r
24820             </summary>\r
24821             <remarks>\r
24822             Throws an <see cref="T:System.InvalidOperationException"/> because the \r
24823             <see cref="T:log4net.Util.NullDictionaryEnumerator"/> never has a current entry.\r
24824             </remarks>\r
24825             <remarks>\r
24826             <para>\r
24827             As the enumerator is over an empty collection its <see cref="P:log4net.Util.NullDictionaryEnumerator.Current"/>\r
24828             value cannot be moved over a valid position, therefore <see cref="P:log4net.Util.NullDictionaryEnumerator.Entry"/>\r
24829             will throw an <see cref="T:System.InvalidOperationException"/>.\r
24830             </para>\r
24831             </remarks>\r
24832             <exception cref="T:System.InvalidOperationException">The collection is empty and <see cref="P:log4net.Util.NullDictionaryEnumerator.Current"/> \r
24833             cannot be positioned over a valid location.</exception>\r
24834         </member>\r
24835         <member name="T:log4net.Util.NullEnumerator">\r
24836             <summary>\r
24837             An always empty <see cref="T:System.Collections.IEnumerator"/>.\r
24838             </summary>\r
24839             <remarks>\r
24840             <para>\r
24841             A singleton implementation of the <see cref="T:System.Collections.IEnumerator"/> over a collection\r
24842             that is empty and not modifiable.\r
24843             </para>\r
24844             </remarks>\r
24845             <author>Nicko Cadell</author>\r
24846             <author>Gert Driesen</author>\r
24847         </member>\r
24848         <member name="M:log4net.Util.NullEnumerator.#ctor">\r
24849             <summary>\r
24850             Initializes a new instance of the <see cref="T:log4net.Util.NullEnumerator"/> class. \r
24851             </summary>\r
24852             <remarks>\r
24853             <para>\r
24854             Uses a private access modifier to enforce the singleton pattern.\r
24855             </para>\r
24856             </remarks>\r
24857         </member>\r
24858         <member name="M:log4net.Util.NullEnumerator.MoveNext">\r
24859             <summary>\r
24860             Test if the enumerator can advance, if so advance\r
24861             </summary>\r
24862             <returns><c>false</c> as the <see cref="T:log4net.Util.NullEnumerator"/> cannot advance.</returns>\r
24863             <remarks>\r
24864             <para>\r
24865             As the enumerator is over an empty collection its <see cref="P:log4net.Util.NullEnumerator.Current"/>\r
24866             value cannot be moved over a valid position, therefore <see cref="M:log4net.Util.NullEnumerator.MoveNext"/>\r
24867             will always return <c>false</c>.\r
24868             </para>\r
24869             </remarks>\r
24870         </member>\r
24871         <member name="M:log4net.Util.NullEnumerator.Reset">\r
24872             <summary>\r
24873             Resets the enumerator back to the start.\r
24874             </summary>\r
24875             <remarks>\r
24876             <para>\r
24877             As the enumerator is over an empty collection <see cref="M:log4net.Util.NullEnumerator.Reset"/> does nothing.\r
24878             </para>\r
24879             </remarks>\r
24880         </member>\r
24881         <member name="F:log4net.Util.NullEnumerator.s_instance">\r
24882             <summary>\r
24883             The singleton instance of the <see cref="T:log4net.Util.NullEnumerator"/>.\r
24884             </summary>\r
24885         </member>\r
24886         <member name="P:log4net.Util.NullEnumerator.Instance">\r
24887             <summary>\r
24888             Get the singleton instance of the <see cref="T:log4net.Util.NullEnumerator"/>.\r
24889             </summary>\r
24890             <returns>The singleton instance of the <see cref="T:log4net.Util.NullEnumerator"/>.</returns>\r
24891             <remarks>\r
24892             <para>\r
24893             Gets the singleton instance of the <see cref="T:log4net.Util.NullEnumerator"/>.\r
24894             </para>\r
24895             </remarks>\r
24896         </member>\r
24897         <member name="P:log4net.Util.NullEnumerator.Current">\r
24898             <summary>\r
24899             Gets the current object from the enumerator.\r
24900             </summary>\r
24901             <remarks>\r
24902             Throws an <see cref="T:System.InvalidOperationException"/> because the \r
24903             <see cref="T:log4net.Util.NullDictionaryEnumerator"/> never has a current value.\r
24904             </remarks>\r
24905             <remarks>\r
24906             <para>\r
24907             As the enumerator is over an empty collection its <see cref="P:log4net.Util.NullEnumerator.Current"/>\r
24908             value cannot be moved over a valid position, therefore <see cref="P:log4net.Util.NullEnumerator.Current"/>\r
24909             will throw an <see cref="T:System.InvalidOperationException"/>.\r
24910             </para>\r
24911             </remarks>\r
24912             <exception cref="T:System.InvalidOperationException">The collection is empty and <see cref="P:log4net.Util.NullEnumerator.Current"/> \r
24913             cannot be positioned over a valid location.</exception>\r
24914         </member>\r
24915         <member name="T:log4net.Util.NullSecurityContext">\r
24916             <summary>\r
24917             A SecurityContext used when a SecurityContext is not required\r
24918             </summary>\r
24919             <remarks>\r
24920             <para>\r
24921             The <see cref="T:log4net.Util.NullSecurityContext"/> is a no-op implementation of the\r
24922             <see cref="T:log4net.Core.SecurityContext"/> base class. It is used where a <see cref="T:log4net.Core.SecurityContext"/>\r
24923             is required but one has not been provided.\r
24924             </para>\r
24925             </remarks>\r
24926             <author>Nicko Cadell</author>\r
24927         </member>\r
24928         <member name="F:log4net.Util.NullSecurityContext.Instance">\r
24929             <summary>\r
24930             Singleton instance of <see cref="T:log4net.Util.NullSecurityContext"/>\r
24931             </summary>\r
24932             <remarks>\r
24933             <para>\r
24934             Singleton instance of <see cref="T:log4net.Util.NullSecurityContext"/>\r
24935             </para>\r
24936             </remarks>\r
24937         </member>\r
24938         <member name="M:log4net.Util.NullSecurityContext.#ctor">\r
24939             <summary>\r
24940             Private constructor\r
24941             </summary>\r
24942             <remarks>\r
24943             <para>\r
24944             Private constructor for singleton pattern.\r
24945             </para>\r
24946             </remarks>\r
24947         </member>\r
24948         <member name="M:log4net.Util.NullSecurityContext.Impersonate(System.Object)">\r
24949             <summary>\r
24950             Impersonate this SecurityContext\r
24951             </summary>\r
24952             <param name="state">State supplied by the caller</param>\r
24953             <returns><c>null</c></returns>\r
24954             <remarks>\r
24955             <para>\r
24956             No impersonation is done and <c>null</c> is always returned.\r
24957             </para>\r
24958             </remarks>\r
24959         </member>\r
24960         <member name="T:log4net.Util.OnlyOnceErrorHandler">\r
24961             <summary>\r
24962             Implements log4net's default error handling policy which consists \r
24963             of emitting a message for the first error in an appender and \r
24964             ignoring all subsequent errors.\r
24965             </summary>\r
24966             <remarks>\r
24967             <para>\r
24968             The error message is printed on the standard error output stream.\r
24969             </para>\r
24970             <para>\r
24971             This policy aims at protecting an otherwise working application\r
24972             from being flooded with error messages when logging fails.\r
24973             </para>\r
24974             </remarks>\r
24975             <author>Nicko Cadell</author>\r
24976             <author>Gert Driesen</author>\r
24977         </member>\r
24978         <member name="M:log4net.Util.OnlyOnceErrorHandler.#ctor">\r
24979             <summary>\r
24980             Default Constructor\r
24981             </summary>\r
24982             <remarks>\r
24983             <para>\r
24984             Initializes a new instance of the <see cref="T:log4net.Util.OnlyOnceErrorHandler"/> class.\r
24985             </para>\r
24986             </remarks>\r
24987         </member>\r
24988         <member name="M:log4net.Util.OnlyOnceErrorHandler.#ctor(System.String)">\r
24989             <summary>\r
24990             Constructor\r
24991             </summary>\r
24992             <param name="prefix">The prefix to use for each message.</param>\r
24993             <remarks>\r
24994             <para>\r
24995             Initializes a new instance of the <see cref="T:log4net.Util.OnlyOnceErrorHandler"/> class\r
24996             with the specified prefix.\r
24997             </para>\r
24998             </remarks>\r
24999         </member>\r
25000         <member name="M:log4net.Util.OnlyOnceErrorHandler.Error(System.String,System.Exception,log4net.Core.ErrorCode)">\r
25001             <summary>\r
25002             Log an Error\r
25003             </summary>\r
25004             <param name="message">The error message.</param>\r
25005             <param name="e">The exception.</param>\r
25006             <param name="errorCode">The internal error code.</param>\r
25007             <remarks>\r
25008             <para>\r
25009             Prints the message and the stack trace of the exception on the standard\r
25010             error output stream.\r
25011             </para>\r
25012             </remarks>\r
25013         </member>\r
25014         <member name="M:log4net.Util.OnlyOnceErrorHandler.Error(System.String,System.Exception)">\r
25015             <summary>\r
25016             Log an Error\r
25017             </summary>\r
25018             <param name="message">The error message.</param>\r
25019             <param name="e">The exception.</param>\r
25020             <remarks>\r
25021             <para>\r
25022             Prints the message and the stack trace of the exception on the standard\r
25023             error output stream.\r
25024             </para>\r
25025             </remarks>\r
25026         </member>\r
25027         <member name="M:log4net.Util.OnlyOnceErrorHandler.Error(System.String)">\r
25028             <summary>\r
25029             Log an error\r
25030             </summary>\r
25031             <param name="message">The error message.</param>\r
25032             <remarks>\r
25033             <para>\r
25034             Print a the error message passed as parameter on the standard\r
25035             error output stream.\r
25036             </para>\r
25037             </remarks>\r
25038         </member>\r
25039         <member name="F:log4net.Util.OnlyOnceErrorHandler.m_firstTime">\r
25040             <summary>\r
25041             Flag to indicate if it is the first error\r
25042             </summary>\r
25043         </member>\r
25044         <member name="F:log4net.Util.OnlyOnceErrorHandler.m_prefix">\r
25045             <summary>\r
25046             String to prefix each message with\r
25047             </summary>\r
25048         </member>\r
25049         <member name="P:log4net.Util.OnlyOnceErrorHandler.IsEnabled">\r
25050             <summary>\r
25051             Is error logging enabled\r
25052             </summary>\r
25053             <remarks>\r
25054             <para>\r
25055             Is error logging enabled. Logging is only enabled for the\r
25056             first error delivered to the <see cref="T:log4net.Util.OnlyOnceErrorHandler"/>.\r
25057             </para>\r
25058             </remarks>\r
25059         </member>\r
25060         <member name="T:log4net.Util.OptionConverter">\r
25061             <summary>\r
25062             A convenience class to convert property values to specific types.\r
25063             </summary>\r
25064             <remarks>\r
25065             <para>\r
25066             Utility functions for converting types and parsing values.\r
25067             </para>\r
25068             </remarks>\r
25069             <author>Nicko Cadell</author>\r
25070             <author>Gert Driesen</author>\r
25071         </member>\r
25072         <member name="M:log4net.Util.OptionConverter.#ctor">\r
25073             <summary>\r
25074             Initializes a new instance of the <see cref="T:log4net.Util.OptionConverter"/> class. \r
25075             </summary>\r
25076             <remarks>\r
25077             <para>\r
25078             Uses a private access modifier to prevent instantiation of this class.\r
25079             </para>\r
25080             </remarks>\r
25081         </member>\r
25082         <member name="M:log4net.Util.OptionConverter.ToBoolean(System.String,System.Boolean)">\r
25083             <summary>\r
25084             Converts a string to a <see cref="T:System.Boolean"/> value.\r
25085             </summary>\r
25086             <param name="argValue">String to convert.</param>\r
25087             <param name="defaultValue">The default value.</param>\r
25088             <returns>The <see cref="T:System.Boolean"/> value of <paramref name="argValue"/>.</returns>\r
25089             <remarks>\r
25090             <para>\r
25091             If <paramref name="argValue"/> is "true", then <c>true</c> is returned. \r
25092             If <paramref name="argValue"/> is "false", then <c>false</c> is returned. \r
25093             Otherwise, <paramref name="defaultValue"/> is returned.\r
25094             </para>\r
25095             </remarks>\r
25096         </member>\r
25097         <member name="M:log4net.Util.OptionConverter.ToFileSize(System.String,System.Int64)">\r
25098             <summary>\r
25099             Parses a file size into a number.\r
25100             </summary>\r
25101             <param name="argValue">String to parse.</param>\r
25102             <param name="defaultValue">The default value.</param>\r
25103             <returns>The <see cref="T:System.Int64"/> value of <paramref name="argValue"/>.</returns>\r
25104             <remarks>\r
25105             <para>\r
25106             Parses a file size of the form: number[KB|MB|GB] into a\r
25107             long value. It is scaled with the appropriate multiplier.\r
25108             </para>\r
25109             <para>\r
25110             <paramref name="defaultValue"/> is returned when <paramref name="argValue"/>\r
25111             cannot be converted to a <see cref="T:System.Int64"/> value.\r
25112             </para>\r
25113             </remarks>\r
25114         </member>\r
25115         <member name="M:log4net.Util.OptionConverter.ConvertStringTo(System.Type,System.String)">\r
25116             <summary>\r
25117             Converts a string to an object.\r
25118             </summary>\r
25119             <param name="target">The target type to convert to.</param>\r
25120             <param name="txt">The string to convert to an object.</param>\r
25121             <returns>\r
25122             The object converted from a string or <c>null</c> when the \r
25123             conversion failed.\r
25124             </returns>\r
25125             <remarks>\r
25126             <para>\r
25127             Converts a string to an object. Uses the converter registry to try\r
25128             to convert the string value into the specified target type.\r
25129             </para>\r
25130             </remarks>\r
25131         </member>\r
25132         <member name="M:log4net.Util.OptionConverter.CanConvertTypeTo(System.Type,System.Type)">\r
25133             <summary>\r
25134             Checks if there is an appropriate type conversion from the source type to the target type.\r
25135             </summary>\r
25136             <param name="sourceType">The type to convert from.</param>\r
25137             <param name="targetType">The type to convert to.</param>\r
25138             <returns><c>true</c> if there is a conversion from the source type to the target type.</returns>\r
25139             <remarks>\r
25140             Checks if there is an appropriate type conversion from the source type to the target type.\r
25141             <para>\r
25142             </para>\r
25143             </remarks>\r
25144         </member>\r
25145         <member name="M:log4net.Util.OptionConverter.ConvertTypeTo(System.Object,System.Type)">\r
25146             <summary>\r
25147             Converts an object to the target type.\r
25148             </summary>\r
25149             <param name="sourceInstance">The object to convert to the target type.</param>\r
25150             <param name="targetType">The type to convert to.</param>\r
25151             <returns>The converted object.</returns>\r
25152             <remarks>\r
25153             <para>\r
25154             Converts an object to the target type.\r
25155             </para>\r
25156             </remarks>\r
25157         </member>\r
25158         <member name="M:log4net.Util.OptionConverter.InstantiateByClassName(System.String,System.Type,System.Object)">\r
25159             <summary>\r
25160             Instantiates an object given a class name.\r
25161             </summary>\r
25162             <param name="className">The fully qualified class name of the object to instantiate.</param>\r
25163             <param name="superClass">The class to which the new object should belong.</param>\r
25164             <param name="defaultValue">The object to return in case of non-fulfillment.</param>\r
25165             <returns>\r
25166             An instance of the <paramref name="className"/> or <paramref name="defaultValue"/>\r
25167             if the object could not be instantiated.\r
25168             </returns>\r
25169             <remarks>\r
25170             <para>\r
25171             Checks that the <paramref name="className"/> is a subclass of\r
25172             <paramref name="superClass"/>. If that test fails or the object could\r
25173             not be instantiated, then <paramref name="defaultValue"/> is returned.\r
25174             </para>\r
25175             </remarks>\r
25176         </member>\r
25177         <member name="M:log4net.Util.OptionConverter.SubstituteVariables(System.String,System.Collections.IDictionary)">\r
25178             <summary>\r
25179             Performs variable substitution in string <paramref name="val"/> from the \r
25180             values of keys found in <paramref name="props"/>.\r
25181             </summary>\r
25182             <param name="value">The string on which variable substitution is performed.</param>\r
25183             <param name="props">The dictionary to use to lookup variables.</param>\r
25184             <returns>The result of the substitutions.</returns>\r
25185             <remarks>\r
25186             <para>\r
25187             The variable substitution delimiters are <b>${</b> and <b>}</b>.\r
25188             </para>\r
25189             <para>\r
25190             For example, if props contains <c>key=value</c>, then the call\r
25191             </para>\r
25192             <para>\r
25193             <code lang="C#">\r
25194             string s = OptionConverter.SubstituteVariables("Value of key is ${key}.");\r
25195             </code>\r
25196             </para>\r
25197             <para>\r
25198             will set the variable <c>s</c> to "Value of key is value.".\r
25199             </para>\r
25200             <para>\r
25201             If no value could be found for the specified key, then substitution \r
25202             defaults to an empty string.\r
25203             </para>\r
25204             <para>\r
25205             For example, if system properties contains no value for the key\r
25206             "nonExistentKey", then the call\r
25207             </para>\r
25208             <para>\r
25209             <code lang="C#">\r
25210             string s = OptionConverter.SubstituteVariables("Value of nonExistentKey is [${nonExistentKey}]");\r
25211             </code>\r
25212             </para>\r
25213             <para>\r
25214             will set <s>s</s> to "Value of nonExistentKey is []".        \r
25215             </para>\r
25216             <para>\r
25217             An Exception is thrown if <paramref name="value"/> contains a start \r
25218             delimiter "${" which is not balanced by a stop delimiter "}". \r
25219             </para>\r
25220             </remarks>\r
25221         </member>\r
25222         <member name="M:log4net.Util.OptionConverter.ParseEnum(System.Type,System.String,System.Boolean)">\r
25223             <summary>\r
25224             Converts the string representation of the name or numeric value of one or \r
25225             more enumerated constants to an equivalent enumerated object.\r
25226             </summary>\r
25227             <param name="enumType">The type to convert to.</param>\r
25228             <param name="value">The enum string value.</param>\r
25229             <param name="ignoreCase">If <c>true</c>, ignore case; otherwise, regard case.</param>\r
25230             <returns>An object of type <paramref name="enumType" /> whose value is represented by <paramref name="value" />.</returns>\r
25231         </member>\r
25232         <member name="T:log4net.Util.PatternParser">\r
25233             <summary>\r
25234             Most of the work of the <see cref="T:log4net.Layout.PatternLayout"/> class\r
25235             is delegated to the PatternParser class.\r
25236             </summary>\r
25237             <remarks>\r
25238             <para>\r
25239             The <c>PatternParser</c> processes a pattern string and\r
25240             returns a chain of <see cref="T:log4net.Util.PatternConverter"/> objects.\r
25241             </para>\r
25242             </remarks>\r
25243             <author>Nicko Cadell</author>\r
25244             <author>Gert Driesen</author>\r
25245         </member>\r
25246         <member name="M:log4net.Util.PatternParser.#ctor(System.String)">\r
25247             <summary>\r
25248             Constructor\r
25249             </summary>\r
25250             <param name="pattern">The pattern to parse.</param>\r
25251             <remarks>\r
25252             <para>\r
25253             Initializes a new instance of the <see cref="T:log4net.Util.PatternParser"/> class \r
25254             with the specified pattern string.\r
25255             </para>\r
25256             </remarks>\r
25257         </member>\r
25258         <member name="M:log4net.Util.PatternParser.Parse">\r
25259             <summary>\r
25260             Parses the pattern into a chain of pattern converters.\r
25261             </summary>\r
25262             <returns>The head of a chain of pattern converters.</returns>\r
25263             <remarks>\r
25264             <para>\r
25265             Parses the pattern into a chain of pattern converters.\r
25266             </para>\r
25267             </remarks>\r
25268         </member>\r
25269         <member name="M:log4net.Util.PatternParser.BuildCache">\r
25270             <summary>\r
25271             Build the unified cache of converters from the static and instance maps\r
25272             </summary>\r
25273             <returns>the list of all the converter names</returns>\r
25274             <remarks>\r
25275             <para>\r
25276             Build the unified cache of converters from the static and instance maps\r
25277             </para>\r
25278             </remarks>\r
25279         </member>\r
25280         <member name="M:log4net.Util.PatternParser.ParseInternal(System.String,System.String[])">\r
25281             <summary>\r
25282             Internal method to parse the specified pattern to find specified matches\r
25283             </summary>\r
25284             <param name="pattern">the pattern to parse</param>\r
25285             <param name="matches">the converter names to match in the pattern</param>\r
25286             <remarks>\r
25287             <para>\r
25288             The matches param must be sorted such that longer strings come before shorter ones.\r
25289             </para>\r
25290             </remarks>\r
25291         </member>\r
25292         <member name="M:log4net.Util.PatternParser.ProcessLiteral(System.String)">\r
25293             <summary>\r
25294             Process a parsed literal\r
25295             </summary>\r
25296             <param name="text">the literal text</param>\r
25297         </member>\r
25298         <member name="M:log4net.Util.PatternParser.ProcessConverter(System.String,System.String,log4net.Util.FormattingInfo)">\r
25299             <summary>\r
25300             Process a parsed converter pattern\r
25301             </summary>\r
25302             <param name="converterName">the name of the converter</param>\r
25303             <param name="option">the optional option for the converter</param>\r
25304             <param name="formattingInfo">the formatting info for the converter</param>\r
25305         </member>\r
25306         <member name="M:log4net.Util.PatternParser.AddConverter(log4net.Util.PatternConverter)">\r
25307             <summary>\r
25308             Resets the internal state of the parser and adds the specified pattern converter \r
25309             to the chain.\r
25310             </summary>\r
25311             <param name="pc">The pattern converter to add.</param>\r
25312         </member>\r
25313         <member name="F:log4net.Util.PatternParser.m_head">\r
25314             <summary>\r
25315             The first pattern converter in the chain\r
25316             </summary>\r
25317         </member>\r
25318         <member name="F:log4net.Util.PatternParser.m_tail">\r
25319             <summary>\r
25320              the last pattern converter in the chain\r
25321             </summary>\r
25322         </member>\r
25323         <member name="F:log4net.Util.PatternParser.m_pattern">\r
25324             <summary>\r
25325             The pattern\r
25326             </summary>\r
25327         </member>\r
25328         <member name="F:log4net.Util.PatternParser.m_patternConverters">\r
25329             <summary>\r
25330             Internal map of converter identifiers to converter types\r
25331             </summary>\r
25332             <remarks>\r
25333             <para>\r
25334             This map overrides the static s_globalRulesRegistry map.\r
25335             </para>\r
25336             </remarks>\r
25337         </member>\r
25338         <member name="P:log4net.Util.PatternParser.PatternConverters">\r
25339             <summary>\r
25340             Get the converter registry used by this parser\r
25341             </summary>\r
25342             <value>\r
25343             The converter registry used by this parser\r
25344             </value>\r
25345             <remarks>\r
25346             <para>\r
25347             Get the converter registry used by this parser\r
25348             </para>\r
25349             </remarks>\r
25350         </member>\r
25351         <member name="T:log4net.Util.PatternParser.StringLengthComparer">\r
25352             <summary>\r
25353             Sort strings by length\r
25354             </summary>\r
25355             <remarks>\r
25356             <para>\r
25357             <see cref="T:System.Collections.IComparer"/> that orders strings by string length.\r
25358             The longest strings are placed first\r
25359             </para>\r
25360             </remarks>\r
25361         </member>\r
25362         <member name="T:log4net.Util.PatternString">\r
25363             <summary>\r
25364             This class implements a patterned string.\r
25365             </summary>\r
25366             <remarks>\r
25367             <para>\r
25368             This string has embedded patterns that are resolved and expanded\r
25369             when the string is formatted.\r
25370             </para>\r
25371             <para>\r
25372             This class functions similarly to the <see cref="T:log4net.Layout.PatternLayout"/>\r
25373             in that it accepts a pattern and renders it to a string. Unlike the \r
25374             <see cref="T:log4net.Layout.PatternLayout"/> however the <c>PatternString</c>\r
25375             does not render the properties of a specific <see cref="T:log4net.Core.LoggingEvent"/> but\r
25376             of the process in general.\r
25377             </para>\r
25378             <para>\r
25379             The recognized conversion pattern names are:\r
25380             </para>\r
25381             <list type="table">\r
25382                 <listheader>\r
25383                     <term>Conversion Pattern Name</term>\r
25384                     <description>Effect</description>\r
25385                 </listheader>\r
25386                 <item>\r
25387                     <term>appdomain</term>\r
25388                     <description>\r
25389                         <para>\r
25390                         Used to output the friendly name of the current AppDomain.\r
25391                         </para>\r
25392                     </description>\r
25393                 </item>\r
25394                 <item>\r
25395                     <term>date</term>\r
25396                     <description>\r
25397                                 <para>\r
25398                                 Used to output the date of the logging event in the local time zone. \r
25399                                 To output the date in universal time use the <c>%utcdate</c> pattern.\r
25400                                 The date conversion \r
25401                                 specifier may be followed by a <i>date format specifier</i> enclosed \r
25402                                 between braces. For example, <b>%date{HH:mm:ss,fff}</b> or\r
25403                                 <b>%date{dd MMM yyyy HH:mm:ss,fff}</b>.  If no date format specifier is \r
25404                                 given then ISO8601 format is\r
25405                                 assumed (<see cref="T:log4net.DateFormatter.Iso8601DateFormatter"/>).\r
25406                                 </para>\r
25407                                 <para>\r
25408                                 The date format specifier admits the same syntax as the\r
25409                                 time pattern string of the <see cref="M:System.DateTime.ToString(System.String)"/>.\r
25410                                 </para>\r
25411                                 <para>\r
25412                                 For better results it is recommended to use the log4net date\r
25413                                 formatters. These can be specified using one of the strings\r
25414                                 "ABSOLUTE", "DATE" and "ISO8601" for specifying \r
25415                                 <see cref="T:log4net.DateFormatter.AbsoluteTimeDateFormatter"/>, \r
25416                                 <see cref="T:log4net.DateFormatter.DateTimeDateFormatter"/> and respectively \r
25417                                 <see cref="T:log4net.DateFormatter.Iso8601DateFormatter"/>. For example, \r
25418                                 <b>%date{ISO8601}</b> or <b>%date{ABSOLUTE}</b>.\r
25419                                 </para>\r
25420                                 <para>\r
25421                                 These dedicated date formatters perform significantly\r
25422                                 better than <see cref="M:System.DateTime.ToString(System.String)"/>.\r
25423                                 </para>\r
25424                     </description>\r
25425                 </item>\r
25426                 <item>\r
25427                     <term>env</term>\r
25428                     <description>\r
25429                         <para>\r
25430                                 Used to output the a specific environment variable. The key to \r
25431                                 lookup must be specified within braces and directly following the\r
25432                                 pattern specifier, e.g. <b>%env{COMPUTERNAME}</b> would include the value\r
25433                                 of the <c>COMPUTERNAME</c> environment variable.\r
25434                         </para>\r
25435                         <para>\r
25436                         The <c>env</c> pattern is not supported on the .NET Compact Framework.\r
25437                         </para>\r
25438                     </description>\r
25439                 </item>\r
25440                 <item>\r
25441                     <term>identity</term>\r
25442                     <description>\r
25443                                 <para>\r
25444                                 Used to output the user name for the currently active user\r
25445                                 (Principal.Identity.Name).\r
25446                                 </para>\r
25447                     </description>\r
25448                 </item>\r
25449                 <item>\r
25450                     <term>newline</term>\r
25451                     <description>\r
25452                                 <para>\r
25453                                 Outputs the platform dependent line separator character or\r
25454                                 characters.\r
25455                                 </para>\r
25456                                 <para>\r
25457                                 This conversion pattern name offers the same performance as using \r
25458                                 non-portable line separator strings such as     "\n", or "\r\n". \r
25459                                 Thus, it is the preferred way of specifying a line separator.\r
25460                                 </para> \r
25461                     </description>\r
25462                 </item>\r
25463                 <item>\r
25464                     <term>processid</term>\r
25465                     <description>\r
25466                         <para>\r
25467                                 Used to output the system process ID for the current process.\r
25468                         </para>\r
25469                     </description>\r
25470                 </item>\r
25471                 <item>\r
25472                     <term>property</term>\r
25473                     <description>\r
25474                                 <para>\r
25475                                 Used to output a specific context property. The key to \r
25476                                 lookup must be specified within braces and directly following the\r
25477                                 pattern specifier, e.g. <b>%property{user}</b> would include the value\r
25478                                 from the property that is keyed by the string 'user'. Each property value\r
25479                                 that is to be included in the log must be specified separately.\r
25480                                 Properties are stored in logging contexts. By default \r
25481                                 the <c>log4net:HostName</c> property is set to the name of machine on \r
25482                                 which the event was originally logged.\r
25483                                 </para>\r
25484                                 <para>\r
25485                                 If no key is specified, e.g. <b>%property</b> then all the keys and their\r
25486                                 values are printed in a comma separated list.\r
25487                                 </para>\r
25488                                 <para>\r
25489                                 The properties of an event are combined from a number of different\r
25490                                 contexts. These are listed below in the order in which they are searched.\r
25491                                 </para>\r
25492                                 <list type="definition">\r
25493                                         <item>\r
25494                                                 <term>the thread properties</term>\r
25495                                                 <description>\r
25496                                                 The <see cref="P:log4net.ThreadContext.Properties"/> that are set on the current\r
25497                                                 thread. These properties are shared by all events logged on this thread.\r
25498                                                 </description>\r
25499                                         </item>\r
25500                                         <item>\r
25501                                                 <term>the global properties</term>\r
25502                                                 <description>\r
25503                                                 The <see cref="P:log4net.GlobalContext.Properties"/> that are set globally. These \r
25504                                                 properties are shared by all the threads in the AppDomain.\r
25505                                                 </description>\r
25506                                         </item>\r
25507                                 </list>\r
25508                     </description>\r
25509                 </item>\r
25510                 <item>\r
25511                     <term>random</term>\r
25512                     <description>\r
25513                         <para>\r
25514                         Used to output a random string of characters. The string is made up of\r
25515                         uppercase letters and numbers. By default the string is 4 characters long.\r
25516                         The length of the string can be specified within braces directly following the\r
25517                                 pattern specifier, e.g. <b>%random{8}</b> would output an 8 character string.\r
25518                         </para>\r
25519                     </description>\r
25520                 </item>\r
25521                 <item>\r
25522                     <term>username</term>\r
25523                     <description>\r
25524                                 <para>\r
25525                                 Used to output the WindowsIdentity for the currently\r
25526                                 active user.\r
25527                                 </para>\r
25528                     </description>\r
25529                 </item>\r
25530                 <item>\r
25531                     <term>utcdate</term>\r
25532                     <description>\r
25533                                 <para>\r
25534                                 Used to output the date of the logging event in universal time. \r
25535                                 The date conversion \r
25536                                 specifier may be followed by a <i>date format specifier</i> enclosed \r
25537                                 between braces. For example, <b>%utcdate{HH:mm:ss,fff}</b> or\r
25538                                 <b>%utcdate{dd MMM yyyy HH:mm:ss,fff}</b>.  If no date format specifier is \r
25539                                 given then ISO8601 format is\r
25540                                 assumed (<see cref="T:log4net.DateFormatter.Iso8601DateFormatter"/>).\r
25541                                 </para>\r
25542                                 <para>\r
25543                                 The date format specifier admits the same syntax as the\r
25544                                 time pattern string of the <see cref="M:System.DateTime.ToString(System.String)"/>.\r
25545                                 </para>\r
25546                                 <para>\r
25547                                 For better results it is recommended to use the log4net date\r
25548                                 formatters. These can be specified using one of the strings\r
25549                                 "ABSOLUTE", "DATE" and "ISO8601" for specifying \r
25550                                 <see cref="T:log4net.DateFormatter.AbsoluteTimeDateFormatter"/>, \r
25551                                 <see cref="T:log4net.DateFormatter.DateTimeDateFormatter"/> and respectively \r
25552                                 <see cref="T:log4net.DateFormatter.Iso8601DateFormatter"/>. For example, \r
25553                                 <b>%utcdate{ISO8601}</b> or <b>%utcdate{ABSOLUTE}</b>.\r
25554                                 </para>\r
25555                                 <para>\r
25556                                 These dedicated date formatters perform significantly\r
25557                                 better than <see cref="M:System.DateTime.ToString(System.String)"/>.\r
25558                                 </para>\r
25559                     </description>\r
25560                 </item>\r
25561                 <item>\r
25562                         <term>%</term>\r
25563                         <description>\r
25564                                 <para>\r
25565                                 The sequence %% outputs a single percent sign.\r
25566                                 </para>\r
25567                         </description>\r
25568                 </item>\r
25569             </list>\r
25570             <para>\r
25571             Additional pattern converters may be registered with a specific <see cref="T:log4net.Util.PatternString"/>\r
25572             instance using <see cref="M:log4net.Util.PatternString.AddConverter(log4net.Util.PatternString.ConverterInfo)"/> or\r
25573             <see cref="M:log4net.Util.PatternString.AddConverter(System.String,System.Type)"/>.\r
25574             </para>\r
25575             <para>\r
25576             See the <see cref="T:log4net.Layout.PatternLayout"/> for details on the \r
25577             <i>format modifiers</i> supported by the patterns.\r
25578             </para>\r
25579             </remarks>\r
25580             <author>Nicko Cadell</author>\r
25581         </member>\r
25582         <member name="F:log4net.Util.PatternString.s_globalRulesRegistry">\r
25583             <summary>\r
25584             Internal map of converter identifiers to converter types.\r
25585             </summary>\r
25586         </member>\r
25587         <member name="F:log4net.Util.PatternString.m_pattern">\r
25588             <summary>\r
25589             the pattern\r
25590             </summary>\r
25591         </member>\r
25592         <member name="F:log4net.Util.PatternString.m_head">\r
25593             <summary>\r
25594             the head of the pattern converter chain\r
25595             </summary>\r
25596         </member>\r
25597         <member name="F:log4net.Util.PatternString.m_instanceRulesRegistry">\r
25598             <summary>\r
25599             patterns defined on this PatternString only\r
25600             </summary>\r
25601         </member>\r
25602         <member name="M:log4net.Util.PatternString.#cctor">\r
25603             <summary>\r
25604             Initialize the global registry\r
25605             </summary>\r
25606         </member>\r
25607         <member name="M:log4net.Util.PatternString.#ctor">\r
25608             <summary>\r
25609             Default constructor\r
25610             </summary>\r
25611             <remarks>\r
25612             <para>\r
25613             Initialize a new instance of <see cref="T:log4net.Util.PatternString"/>\r
25614             </para>\r
25615             </remarks>\r
25616         </member>\r
25617         <member name="M:log4net.Util.PatternString.#ctor(System.String)">\r
25618             <summary>\r
25619             Constructs a PatternString\r
25620             </summary>\r
25621             <param name="pattern">The pattern to use with this PatternString</param>\r
25622             <remarks>\r
25623             <para>\r
25624             Initialize a new instance of <see cref="T:log4net.Util.PatternString"/> with the pattern specified.\r
25625             </para>\r
25626             </remarks>\r
25627         </member>\r
25628         <member name="M:log4net.Util.PatternString.ActivateOptions">\r
25629             <summary>\r
25630             Initialize object options\r
25631             </summary>\r
25632             <remarks>\r
25633             <para>\r
25634             This is part of the <see cref="T:log4net.Core.IOptionHandler"/> delayed object\r
25635             activation scheme. The <see cref="M:log4net.Util.PatternString.ActivateOptions"/> method must \r
25636             be called on this object after the configuration properties have\r
25637             been set. Until <see cref="M:log4net.Util.PatternString.ActivateOptions"/> is called this\r
25638             object is in an undefined state and must not be used. \r
25639             </para>\r
25640             <para>\r
25641             If any of the configuration properties are modified then \r
25642             <see cref="M:log4net.Util.PatternString.ActivateOptions"/> must be called again.\r
25643             </para>\r
25644             </remarks>\r
25645         </member>\r
25646         <member name="M:log4net.Util.PatternString.CreatePatternParser(System.String)">\r
25647             <summary>\r
25648             Create the <see cref="T:log4net.Util.PatternParser"/> used to parse the pattern\r
25649             </summary>\r
25650             <param name="pattern">the pattern to parse</param>\r
25651             <returns>The <see cref="T:log4net.Util.PatternParser"/></returns>\r
25652             <remarks>\r
25653             <para>\r
25654             Returns PatternParser used to parse the conversion string. Subclasses\r
25655             may override this to return a subclass of PatternParser which recognize\r
25656             custom conversion pattern name.\r
25657             </para>\r
25658             </remarks>\r
25659         </member>\r
25660         <member name="M:log4net.Util.PatternString.Format(System.IO.TextWriter)">\r
25661             <summary>\r
25662             Produces a formatted string as specified by the conversion pattern.\r
25663             </summary>\r
25664             <param name="writer">The TextWriter to write the formatted event to</param>\r
25665             <remarks>\r
25666             <para>\r
25667             Format the pattern to the <paramref name="writer"/>.\r
25668             </para>\r
25669             </remarks>\r
25670         </member>\r
25671         <member name="M:log4net.Util.PatternString.Format">\r
25672             <summary>\r
25673             Format the pattern as a string\r
25674             </summary>\r
25675             <returns>the pattern formatted as a string</returns>\r
25676             <remarks>\r
25677             <para>\r
25678             Format the pattern to a string.\r
25679             </para>\r
25680             </remarks>\r
25681         </member>\r
25682         <member name="M:log4net.Util.PatternString.AddConverter(log4net.Util.PatternString.ConverterInfo)">\r
25683             <summary>\r
25684             Add a converter to this PatternString\r
25685             </summary>\r
25686             <param name="converterInfo">the converter info</param>\r
25687             <remarks>\r
25688             <para>\r
25689             This version of the method is used by the configurator.\r
25690             Programmatic users should use the alternative <see cref="M:log4net.Util.PatternString.AddConverter(System.String,System.Type)"/> method.\r
25691             </para>\r
25692             </remarks>\r
25693         </member>\r
25694         <member name="M:log4net.Util.PatternString.AddConverter(System.String,System.Type)">\r
25695             <summary>\r
25696             Add a converter to this PatternString\r
25697             </summary>\r
25698             <param name="name">the name of the conversion pattern for this converter</param>\r
25699             <param name="type">the type of the converter</param>\r
25700             <remarks>\r
25701             <para>\r
25702             Add a converter to this PatternString\r
25703             </para>\r
25704             </remarks>\r
25705         </member>\r
25706         <member name="P:log4net.Util.PatternString.ConversionPattern">\r
25707             <summary>\r
25708             Gets or sets the pattern formatting string\r
25709             </summary>\r
25710             <value>\r
25711             The pattern formatting string\r
25712             </value>\r
25713             <remarks>\r
25714             <para>\r
25715             The <b>ConversionPattern</b> option. This is the string which\r
25716             controls formatting and consists of a mix of literal content and\r
25717             conversion specifiers.\r
25718             </para>\r
25719             </remarks>\r
25720         </member>\r
25721         <member name="T:log4net.Util.PatternString.ConverterInfo">\r
25722             <summary>\r
25723             Wrapper class used to map converter names to converter types\r
25724             </summary>\r
25725             <remarks>\r
25726             <para>\r
25727             Wrapper class used to map converter names to converter types\r
25728             </para>\r
25729             </remarks>\r
25730         </member>\r
25731         <member name="M:log4net.Util.PatternString.ConverterInfo.#ctor">\r
25732             <summary>\r
25733             default constructor\r
25734             </summary>\r
25735         </member>\r
25736         <member name="P:log4net.Util.PatternString.ConverterInfo.Name">\r
25737             <summary>\r
25738             Gets or sets the name of the conversion pattern\r
25739             </summary>\r
25740             <value>\r
25741             The name of the conversion pattern\r
25742             </value>\r
25743             <remarks>\r
25744             <para>\r
25745             Gets or sets the name of the conversion pattern\r
25746             </para>\r
25747             </remarks>\r
25748         </member>\r
25749         <member name="P:log4net.Util.PatternString.ConverterInfo.Type">\r
25750             <summary>\r
25751             Gets or sets the type of the converter\r
25752             </summary>\r
25753             <value>\r
25754             The type of the converter\r
25755             </value>\r
25756             <remarks>\r
25757             <para>\r
25758             Gets or sets the type of the converter\r
25759             </para>\r
25760             </remarks>\r
25761         </member>\r
25762         <member name="T:log4net.Util.PropertiesDictionary">\r
25763             <summary>\r
25764             String keyed object map.\r
25765             </summary>\r
25766             <remarks>\r
25767             <para>\r
25768             While this collection is serializable only member \r
25769             objects that are serializable will\r
25770             be serialized along with this collection.\r
25771             </para>\r
25772             </remarks>\r
25773             <author>Nicko Cadell</author>\r
25774             <author>Gert Driesen</author>\r
25775         </member>\r
25776         <member name="T:log4net.Util.ReadOnlyPropertiesDictionary">\r
25777             <summary>\r
25778             String keyed object map that is read only.\r
25779             </summary>\r
25780             <remarks>\r
25781             <para>\r
25782             This collection is readonly and cannot be modified.\r
25783             </para>\r
25784             <para>\r
25785             While this collection is serializable only member \r
25786             objects that are serializable will\r
25787             be serialized along with this collection.\r
25788             </para>\r
25789             </remarks>\r
25790             <author>Nicko Cadell</author>\r
25791             <author>Gert Driesen</author>\r
25792         </member>\r
25793         <member name="F:log4net.Util.ReadOnlyPropertiesDictionary.m_hashtable">\r
25794             <summary>\r
25795             The Hashtable used to store the properties data\r
25796             </summary>\r
25797         </member>\r
25798         <member name="M:log4net.Util.ReadOnlyPropertiesDictionary.#ctor">\r
25799             <summary>\r
25800             Constructor\r
25801             </summary>\r
25802             <remarks>\r
25803             <para>\r
25804             Initializes a new instance of the <see cref="T:log4net.Util.ReadOnlyPropertiesDictionary"/> class.\r
25805             </para>\r
25806             </remarks>\r
25807         </member>\r
25808         <member name="M:log4net.Util.ReadOnlyPropertiesDictionary.#ctor(log4net.Util.ReadOnlyPropertiesDictionary)">\r
25809             <summary>\r
25810             Copy Constructor\r
25811             </summary>\r
25812             <param name="propertiesDictionary">properties to copy</param>\r
25813             <remarks>\r
25814             <para>\r
25815             Initializes a new instance of the <see cref="T:log4net.Util.ReadOnlyPropertiesDictionary"/> class.\r
25816             </para>\r
25817             </remarks>\r
25818         </member>\r
25819         <member name="M:log4net.Util.ReadOnlyPropertiesDictionary.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">\r
25820             <summary>\r
25821             Deserialization constructor\r
25822             </summary>\r
25823             <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data.</param>\r
25824             <param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the source or destination.</param>\r
25825             <remarks>\r
25826             <para>\r
25827             Initializes a new instance of the <see cref="T:log4net.Util.ReadOnlyPropertiesDictionary"/> class \r
25828             with serialized data.\r
25829             </para>\r
25830             </remarks>\r
25831         </member>\r
25832         <member name="M:log4net.Util.ReadOnlyPropertiesDictionary.GetKeys">\r
25833             <summary>\r
25834             Gets the key names.\r
25835             </summary>\r
25836             <returns>An array of all the keys.</returns>\r
25837             <remarks>\r
25838             <para>\r
25839             Gets the key names.\r
25840             </para>\r
25841             </remarks>\r
25842         </member>\r
25843         <member name="M:log4net.Util.ReadOnlyPropertiesDictionary.Contains(System.String)">\r
25844             <summary>\r
25845             Test if the dictionary contains a specified key\r
25846             </summary>\r
25847             <param name="key">the key to look for</param>\r
25848             <returns>true if the dictionary contains the specified key</returns>\r
25849             <remarks>\r
25850             <para>\r
25851             Test if the dictionary contains a specified key\r
25852             </para>\r
25853             </remarks>\r
25854         </member>\r
25855         <member name="M:log4net.Util.ReadOnlyPropertiesDictionary.GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">\r
25856             <summary>\r
25857             Serializes this object into the <see cref="T:System.Runtime.Serialization.SerializationInfo"/> provided.\r
25858             </summary>\r
25859             <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> to populate with data.</param>\r
25860             <param name="context">The destination for this serialization.</param>\r
25861             <remarks>\r
25862             <para>\r
25863             Serializes this object into the <see cref="T:System.Runtime.Serialization.SerializationInfo"/> provided.\r
25864             </para>\r
25865             </remarks>\r
25866         </member>\r
25867         <member name="M:log4net.Util.ReadOnlyPropertiesDictionary.System#Collections#IDictionary#GetEnumerator">\r
25868             <summary>\r
25869             See <see cref="M:System.Collections.IDictionary.GetEnumerator"/>\r
25870             </summary>\r
25871         </member>\r
25872         <member name="M:log4net.Util.ReadOnlyPropertiesDictionary.System#Collections#IDictionary#Remove(System.Object)">\r
25873             <summary>\r
25874             See <see cref="M:System.Collections.IDictionary.Remove(System.Object)"/>\r
25875             </summary>\r
25876             <param name="key"></param>\r
25877         </member>\r
25878         <member name="M:log4net.Util.ReadOnlyPropertiesDictionary.System#Collections#IDictionary#Contains(System.Object)">\r
25879             <summary>\r
25880             See <see cref="M:System.Collections.IDictionary.Contains(System.Object)"/>\r
25881             </summary>\r
25882             <param name="key"></param>\r
25883             <returns></returns>\r
25884         </member>\r
25885         <member name="M:log4net.Util.ReadOnlyPropertiesDictionary.Clear">\r
25886             <summary>\r
25887             Remove all properties from the properties collection\r
25888             </summary>\r
25889         </member>\r
25890         <member name="M:log4net.Util.ReadOnlyPropertiesDictionary.System#Collections#IDictionary#Add(System.Object,System.Object)">\r
25891             <summary>\r
25892             See <see cref="M:System.Collections.IDictionary.Add(System.Object,System.Object)"/>\r
25893             </summary>\r
25894             <param name="key"></param>\r
25895             <param name="value"></param>\r
25896         </member>\r
25897         <member name="M:log4net.Util.ReadOnlyPropertiesDictionary.System#Collections#ICollection#CopyTo(System.Array,System.Int32)">\r
25898             <summary>\r
25899             See <see cref="M:System.Collections.ICollection.CopyTo(System.Array,System.Int32)"/>\r
25900             </summary>\r
25901             <param name="array"></param>\r
25902             <param name="index"></param>\r
25903         </member>\r
25904         <member name="M:log4net.Util.ReadOnlyPropertiesDictionary.System#Collections#IEnumerable#GetEnumerator">\r
25905             <summary>\r
25906             See <see cref="M:System.Collections.IEnumerable.GetEnumerator"/>\r
25907             </summary>\r
25908         </member>\r
25909         <member name="P:log4net.Util.ReadOnlyPropertiesDictionary.Item(System.String)">\r
25910             <summary>\r
25911             Gets or sets the value of the  property with the specified key.\r
25912             </summary>\r
25913             <value>\r
25914             The value of the property with the specified key.\r
25915             </value>\r
25916             <param name="key">The key of the property to get or set.</param>\r
25917             <remarks>\r
25918             <para>\r
25919             The property value will only be serialized if it is serializable.\r
25920             If it cannot be serialized it will be silently ignored if\r
25921             a serialization operation is performed.\r
25922             </para>\r
25923             </remarks>\r
25924         </member>\r
25925         <member name="P:log4net.Util.ReadOnlyPropertiesDictionary.InnerHashtable">\r
25926             <summary>\r
25927             The hashtable used to store the properties\r
25928             </summary>\r
25929             <value>\r
25930             The internal collection used to store the properties\r
25931             </value>\r
25932             <remarks>\r
25933             <para>\r
25934             The hashtable used to store the properties\r
25935             </para>\r
25936             </remarks>\r
25937         </member>\r
25938         <member name="P:log4net.Util.ReadOnlyPropertiesDictionary.System#Collections#IDictionary#IsReadOnly">\r
25939             <summary>\r
25940             See <see cref="P:System.Collections.IDictionary.IsReadOnly"/>\r
25941             </summary>\r
25942         </member>\r
25943         <member name="P:log4net.Util.ReadOnlyPropertiesDictionary.System#Collections#IDictionary#Item(System.Object)">\r
25944             <summary>\r
25945             See <see cref="P:System.Collections.IDictionary.Item(System.Object)"/>\r
25946             </summary>\r
25947         </member>\r
25948         <member name="P:log4net.Util.ReadOnlyPropertiesDictionary.System#Collections#IDictionary#Values">\r
25949             <summary>\r
25950             See <see cref="P:System.Collections.IDictionary.Values"/>\r
25951             </summary>\r
25952         </member>\r
25953         <member name="P:log4net.Util.ReadOnlyPropertiesDictionary.System#Collections#IDictionary#Keys">\r
25954             <summary>\r
25955             See <see cref="P:System.Collections.IDictionary.Keys"/>\r
25956             </summary>\r
25957         </member>\r
25958         <member name="P:log4net.Util.ReadOnlyPropertiesDictionary.System#Collections#IDictionary#IsFixedSize">\r
25959             <summary>\r
25960             See <see cref="P:System.Collections.IDictionary.IsFixedSize"/>\r
25961             </summary>\r
25962         </member>\r
25963         <member name="P:log4net.Util.ReadOnlyPropertiesDictionary.System#Collections#ICollection#IsSynchronized">\r
25964             <summary>\r
25965             See <see cref="P:System.Collections.ICollection.IsSynchronized"/>\r
25966             </summary>\r
25967         </member>\r
25968         <member name="P:log4net.Util.ReadOnlyPropertiesDictionary.Count">\r
25969             <summary>\r
25970             The number of properties in this collection\r
25971             </summary>\r
25972         </member>\r
25973         <member name="P:log4net.Util.ReadOnlyPropertiesDictionary.System#Collections#ICollection#SyncRoot">\r
25974             <summary>\r
25975             See <see cref="P:System.Collections.ICollection.SyncRoot"/>\r
25976             </summary>\r
25977         </member>\r
25978         <member name="M:log4net.Util.PropertiesDictionary.#ctor">\r
25979             <summary>\r
25980             Constructor\r
25981             </summary>\r
25982             <remarks>\r
25983             <para>\r
25984             Initializes a new instance of the <see cref="T:log4net.Util.PropertiesDictionary"/> class.\r
25985             </para>\r
25986             </remarks>\r
25987         </member>\r
25988         <member name="M:log4net.Util.PropertiesDictionary.#ctor(log4net.Util.ReadOnlyPropertiesDictionary)">\r
25989             <summary>\r
25990             Constructor\r
25991             </summary>\r
25992             <param name="propertiesDictionary">properties to copy</param>\r
25993             <remarks>\r
25994             <para>\r
25995             Initializes a new instance of the <see cref="T:log4net.Util.PropertiesDictionary"/> class.\r
25996             </para>\r
25997             </remarks>\r
25998         </member>\r
25999         <member name="M:log4net.Util.PropertiesDictionary.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">\r
26000             <summary>\r
26001             Initializes a new instance of the <see cref="T:log4net.Util.PropertiesDictionary"/> class \r
26002             with serialized data.\r
26003             </summary>\r
26004             <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data.</param>\r
26005             <param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the source or destination.</param>\r
26006             <remarks>\r
26007             <para>\r
26008             Because this class is sealed the serialization constructor is private.\r
26009             </para>\r
26010             </remarks>\r
26011         </member>\r
26012         <member name="M:log4net.Util.PropertiesDictionary.Remove(System.String)">\r
26013             <summary>\r
26014             Remove the entry with the specified key from this dictionary\r
26015             </summary>\r
26016             <param name="key">the key for the entry to remove</param>\r
26017             <remarks>\r
26018             <para>\r
26019             Remove the entry with the specified key from this dictionary\r
26020             </para>\r
26021             </remarks>\r
26022         </member>\r
26023         <member name="M:log4net.Util.PropertiesDictionary.System#Collections#IDictionary#GetEnumerator">\r
26024             <summary>\r
26025             See <see cref="M:System.Collections.IDictionary.GetEnumerator"/>\r
26026             </summary>\r
26027             <returns>an enumerator</returns>\r
26028             <remarks>\r
26029             <para>\r
26030             Returns a <see cref="T:System.Collections.IDictionaryEnumerator"/> over the contest of this collection.\r
26031             </para>\r
26032             </remarks>\r
26033         </member>\r
26034         <member name="M:log4net.Util.PropertiesDictionary.System#Collections#IDictionary#Remove(System.Object)">\r
26035             <summary>\r
26036             See <see cref="M:System.Collections.IDictionary.Remove(System.Object)"/>\r
26037             </summary>\r
26038             <param name="key">the key to remove</param>\r
26039             <remarks>\r
26040             <para>\r
26041             Remove the entry with the specified key from this dictionary\r
26042             </para>\r
26043             </remarks>\r
26044         </member>\r
26045         <member name="M:log4net.Util.PropertiesDictionary.System#Collections#IDictionary#Contains(System.Object)">\r
26046             <summary>\r
26047             See <see cref="M:System.Collections.IDictionary.Contains(System.Object)"/>\r
26048             </summary>\r
26049             <param name="key">the key to lookup in the collection</param>\r
26050             <returns><c>true</c> if the collection contains the specified key</returns>\r
26051             <remarks>\r
26052             <para>\r
26053             Test if this collection contains a specified key.\r
26054             </para>\r
26055             </remarks>\r
26056         </member>\r
26057         <member name="M:log4net.Util.PropertiesDictionary.Clear">\r
26058             <summary>\r
26059             Remove all properties from the properties collection\r
26060             </summary>\r
26061             <remarks>\r
26062             <para>\r
26063             Remove all properties from the properties collection\r
26064             </para>\r
26065             </remarks>\r
26066         </member>\r
26067         <member name="M:log4net.Util.PropertiesDictionary.System#Collections#IDictionary#Add(System.Object,System.Object)">\r
26068             <summary>\r
26069             See <see cref="M:System.Collections.IDictionary.Add(System.Object,System.Object)"/>\r
26070             </summary>\r
26071             <param name="key">the key</param>\r
26072             <param name="value">the value to store for the key</param>\r
26073             <remarks>\r
26074             <para>\r
26075             Store a value for the specified <see cref="T:System.String"/> <paramref name="key"/>.\r
26076             </para>\r
26077             </remarks>\r
26078             <exception cref="T:System.ArgumentException">Thrown if the <paramref name="key"/> is not a string</exception>\r
26079         </member>\r
26080         <member name="M:log4net.Util.PropertiesDictionary.System#Collections#ICollection#CopyTo(System.Array,System.Int32)">\r
26081             <summary>\r
26082             See <see cref="M:System.Collections.ICollection.CopyTo(System.Array,System.Int32)"/>\r
26083             </summary>\r
26084             <param name="array"></param>\r
26085             <param name="index"></param>\r
26086         </member>\r
26087         <member name="M:log4net.Util.PropertiesDictionary.System#Collections#IEnumerable#GetEnumerator">\r
26088             <summary>\r
26089             See <see cref="M:System.Collections.IEnumerable.GetEnumerator"/>\r
26090             </summary>\r
26091         </member>\r
26092         <member name="P:log4net.Util.PropertiesDictionary.Item(System.String)">\r
26093             <summary>\r
26094             Gets or sets the value of the  property with the specified key.\r
26095             </summary>\r
26096             <value>\r
26097             The value of the property with the specified key.\r
26098             </value>\r
26099             <param name="key">The key of the property to get or set.</param>\r
26100             <remarks>\r
26101             <para>\r
26102             The property value will only be serialized if it is serializable.\r
26103             If it cannot be serialized it will be silently ignored if\r
26104             a serialization operation is performed.\r
26105             </para>\r
26106             </remarks>\r
26107         </member>\r
26108         <member name="P:log4net.Util.PropertiesDictionary.System#Collections#IDictionary#IsReadOnly">\r
26109             <summary>\r
26110             See <see cref="P:System.Collections.IDictionary.IsReadOnly"/>\r
26111             </summary>\r
26112             <value>\r
26113             <c>false</c>\r
26114             </value>\r
26115             <remarks>\r
26116             <para>\r
26117             This collection is modifiable. This property always\r
26118             returns <c>false</c>.\r
26119             </para>\r
26120             </remarks>\r
26121         </member>\r
26122         <member name="P:log4net.Util.PropertiesDictionary.System#Collections#IDictionary#Item(System.Object)">\r
26123             <summary>\r
26124             See <see cref="P:System.Collections.IDictionary.Item(System.Object)"/>\r
26125             </summary>\r
26126             <value>\r
26127             The value for the key specified.\r
26128             </value>\r
26129             <remarks>\r
26130             <para>\r
26131             Get or set a value for the specified <see cref="T:System.String"/> <paramref name="key"/>.\r
26132             </para>\r
26133             </remarks>\r
26134             <exception cref="T:System.ArgumentException">Thrown if the <paramref name="key"/> is not a string</exception>\r
26135         </member>\r
26136         <member name="P:log4net.Util.PropertiesDictionary.System#Collections#IDictionary#Values">\r
26137             <summary>\r
26138             See <see cref="P:System.Collections.IDictionary.Values"/>\r
26139             </summary>\r
26140         </member>\r
26141         <member name="P:log4net.Util.PropertiesDictionary.System#Collections#IDictionary#Keys">\r
26142             <summary>\r
26143             See <see cref="P:System.Collections.IDictionary.Keys"/>\r
26144             </summary>\r
26145         </member>\r
26146         <member name="P:log4net.Util.PropertiesDictionary.System#Collections#IDictionary#IsFixedSize">\r
26147             <summary>\r
26148             See <see cref="P:System.Collections.IDictionary.IsFixedSize"/>\r
26149             </summary>\r
26150         </member>\r
26151         <member name="P:log4net.Util.PropertiesDictionary.System#Collections#ICollection#IsSynchronized">\r
26152             <summary>\r
26153             See <see cref="P:System.Collections.ICollection.IsSynchronized"/>\r
26154             </summary>\r
26155         </member>\r
26156         <member name="P:log4net.Util.PropertiesDictionary.System#Collections#ICollection#SyncRoot">\r
26157             <summary>\r
26158             See <see cref="P:System.Collections.ICollection.SyncRoot"/>\r
26159             </summary>\r
26160         </member>\r
26161         <member name="T:log4net.Util.ProtectCloseTextWriter">\r
26162             <summary>\r
26163             A <see cref="T:System.IO.TextWriter"/> that ignores the <see cref="M:log4net.Util.ProtectCloseTextWriter.Close"/> message\r
26164             </summary>\r
26165             <remarks>\r
26166             <para>\r
26167             This writer is used in special cases where it is necessary \r
26168             to protect a writer from being closed by a client.\r
26169             </para>\r
26170             </remarks>\r
26171             <author>Nicko Cadell</author>\r
26172         </member>\r
26173         <member name="M:log4net.Util.ProtectCloseTextWriter.#ctor(System.IO.TextWriter)">\r
26174             <summary>\r
26175             Constructor\r
26176             </summary>\r
26177             <param name="writer">the writer to actually write to</param>\r
26178             <remarks>\r
26179             <para>\r
26180             Create a new ProtectCloseTextWriter using a writer\r
26181             </para>\r
26182             </remarks>\r
26183         </member>\r
26184         <member name="M:log4net.Util.ProtectCloseTextWriter.Attach(System.IO.TextWriter)">\r
26185             <summary>\r
26186             Attach this instance to a different underlying <see cref="T:System.IO.TextWriter"/>\r
26187             </summary>\r
26188             <param name="writer">the writer to attach to</param>\r
26189             <remarks>\r
26190             <para>\r
26191             Attach this instance to a different underlying <see cref="T:System.IO.TextWriter"/>\r
26192             </para>\r
26193             </remarks>\r
26194         </member>\r
26195         <member name="M:log4net.Util.ProtectCloseTextWriter.Close">\r
26196             <summary>\r
26197             Does not close the underlying output writer.\r
26198             </summary>\r
26199             <remarks>\r
26200             <para>\r
26201             Does not close the underlying output writer.\r
26202             This method does nothing.\r
26203             </para>\r
26204             </remarks>\r
26205         </member>\r
26206         <member name="T:log4net.Util.ReaderWriterLock">\r
26207             <summary>\r
26208             Defines a lock that supports single writers and multiple readers\r
26209             </summary>\r
26210             <remarks>\r
26211             <para>\r
26212             <c>ReaderWriterLock</c> is used to synchronize access to a resource. \r
26213             At any given time, it allows either concurrent read access for \r
26214             multiple threads, or write access for a single thread. In a \r
26215             situation where a resource is changed infrequently, a \r
26216             <c>ReaderWriterLock</c> provides better throughput than a simple \r
26217             one-at-a-time lock, such as <see cref="T:System.Threading.Monitor"/>.\r
26218             </para>\r
26219             <para>\r
26220             If a platform does not support a <c>System.Threading.ReaderWriterLock</c> \r
26221             implementation then all readers and writers are serialized. Therefore \r
26222             the caller must not rely on multiple simultaneous readers.\r
26223             </para>\r
26224             </remarks>\r
26225             <author>Nicko Cadell</author>\r
26226         </member>\r
26227         <member name="M:log4net.Util.ReaderWriterLock.#ctor">\r
26228             <summary>\r
26229             Constructor\r
26230             </summary>\r
26231             <remarks>\r
26232             <para>\r
26233             Initializes a new instance of the <see cref="T:log4net.Util.ReaderWriterLock"/> class.\r
26234             </para>\r
26235             </remarks>\r
26236         </member>\r
26237         <member name="M:log4net.Util.ReaderWriterLock.AcquireReaderLock">\r
26238             <summary>\r
26239             Acquires a reader lock\r
26240             </summary>\r
26241             <remarks>\r
26242             <para>\r
26243             <see cref="M:log4net.Util.ReaderWriterLock.AcquireReaderLock"/> blocks if a different thread has the writer \r
26244             lock, or if at least one thread is waiting for the writer lock.\r
26245             </para>\r
26246             </remarks>\r
26247         </member>\r
26248         <member name="M:log4net.Util.ReaderWriterLock.ReleaseReaderLock">\r
26249             <summary>\r
26250             Decrements the lock count\r
26251             </summary>\r
26252             <remarks>\r
26253             <para>\r
26254             <see cref="M:log4net.Util.ReaderWriterLock.ReleaseReaderLock"/> decrements the lock count. When the count \r
26255             reaches zero, the lock is released.\r
26256             </para>\r
26257             </remarks>\r
26258         </member>\r
26259         <member name="M:log4net.Util.ReaderWriterLock.AcquireWriterLock">\r
26260             <summary>\r
26261             Acquires the writer lock\r
26262             </summary>\r
26263             <remarks>\r
26264             <para>\r
26265             This method blocks if another thread has a reader lock or writer lock.\r
26266             </para>\r
26267             </remarks>\r
26268         </member>\r
26269         <member name="M:log4net.Util.ReaderWriterLock.ReleaseWriterLock">\r
26270             <summary>\r
26271             Decrements the lock count on the writer lock\r
26272             </summary>\r
26273             <remarks>\r
26274             <para>\r
26275             ReleaseWriterLock decrements the writer lock count. \r
26276             When the count reaches zero, the writer lock is released.\r
26277             </para>\r
26278             </remarks>\r
26279         </member>\r
26280         <member name="T:log4net.Util.ReusableStringWriter">\r
26281             <summary>\r
26282             A <see cref="T:System.IO.StringWriter"/> that can be <see cref="M:log4net.Util.ReusableStringWriter.Reset(System.Int32,System.Int32)"/> and reused\r
26283             </summary>\r
26284             <remarks>\r
26285             <para>\r
26286             A <see cref="T:System.IO.StringWriter"/> that can be <see cref="M:log4net.Util.ReusableStringWriter.Reset(System.Int32,System.Int32)"/> and reused.\r
26287             This uses a single buffer for string operations.\r
26288             </para>\r
26289             </remarks>\r
26290             <author>Nicko Cadell</author>\r
26291         </member>\r
26292         <member name="M:log4net.Util.ReusableStringWriter.#ctor(System.IFormatProvider)">\r
26293             <summary>\r
26294             Create an instance of <see cref="T:log4net.Util.ReusableStringWriter"/>\r
26295             </summary>\r
26296             <param name="formatProvider">the format provider to use</param>\r
26297             <remarks>\r
26298             <para>\r
26299             Create an instance of <see cref="T:log4net.Util.ReusableStringWriter"/>\r
26300             </para>\r
26301             </remarks>\r
26302         </member>\r
26303         <member name="M:log4net.Util.ReusableStringWriter.Dispose(System.Boolean)">\r
26304             <summary>\r
26305             Override Dispose to prevent closing of writer\r
26306             </summary>\r
26307             <param name="disposing">flag</param>\r
26308             <remarks>\r
26309             <para>\r
26310             Override Dispose to prevent closing of writer\r
26311             </para>\r
26312             </remarks>\r
26313         </member>\r
26314         <member name="M:log4net.Util.ReusableStringWriter.Reset(System.Int32,System.Int32)">\r
26315             <summary>\r
26316             Reset this string writer so that it can be reused.\r
26317             </summary>\r
26318             <param name="maxCapacity">the maximum buffer capacity before it is trimmed</param>\r
26319             <param name="defaultSize">the default size to make the buffer</param>\r
26320             <remarks>\r
26321             <para>\r
26322             Reset this string writer so that it can be reused.\r
26323             The internal buffers are cleared and reset.\r
26324             </para>\r
26325             </remarks>\r
26326         </member>\r
26327         <member name="T:log4net.Util.SystemInfo">\r
26328             <summary>\r
26329             Utility class for system specific information.\r
26330             </summary>\r
26331             <remarks>\r
26332             <para>\r
26333             Utility class of static methods for system specific information.\r
26334             </para>\r
26335             </remarks>\r
26336             <author>Nicko Cadell</author>\r
26337             <author>Gert Driesen</author>\r
26338             <author>Alexey Solofnenko</author>\r
26339         </member>\r
26340         <member name="M:log4net.Util.SystemInfo.#ctor">\r
26341             <summary>\r
26342             Private constructor to prevent instances.\r
26343             </summary>\r
26344             <remarks>\r
26345             <para>\r
26346             Only static methods are exposed from this type.\r
26347             </para>\r
26348             </remarks>\r
26349         </member>\r
26350         <member name="M:log4net.Util.SystemInfo.#cctor">\r
26351             <summary>\r
26352             Initialize default values for private static fields.\r
26353             </summary>\r
26354             <remarks>\r
26355             <para>\r
26356             Only static methods are exposed from this type.\r
26357             </para>\r
26358             </remarks>\r
26359         </member>\r
26360         <member name="M:log4net.Util.SystemInfo.AssemblyLocationInfo(System.Reflection.Assembly)">\r
26361             <summary>\r
26362             Gets the assembly location path for the specified assembly.\r
26363             </summary>\r
26364             <param name="myAssembly">The assembly to get the location for.</param>\r
26365             <returns>The location of the assembly.</returns>\r
26366             <remarks>\r
26367             <para>\r
26368             This method does not guarantee to return the correct path\r
26369             to the assembly. If only tries to give an indication as to\r
26370             where the assembly was loaded from.\r
26371             </para>\r
26372             </remarks>\r
26373         </member>\r
26374         <member name="M:log4net.Util.SystemInfo.AssemblyQualifiedName(System.Type)">\r
26375             <summary>\r
26376             Gets the fully qualified name of the <see cref="T:System.Type"/>, including \r
26377             the name of the assembly from which the <see cref="T:System.Type"/> was \r
26378             loaded.\r
26379             </summary>\r
26380             <param name="type">The <see cref="T:System.Type"/> to get the fully qualified name for.</param>\r
26381             <returns>The fully qualified name for the <see cref="T:System.Type"/>.</returns>\r
26382             <remarks>\r
26383             <para>\r
26384             This is equivalent to the <c>Type.AssemblyQualifiedName</c> property,\r
26385             but this method works on the .NET Compact Framework 1.0 as well as\r
26386             the full .NET runtime.\r
26387             </para>\r
26388             </remarks>\r
26389         </member>\r
26390         <member name="M:log4net.Util.SystemInfo.AssemblyShortName(System.Reflection.Assembly)">\r
26391             <summary>\r
26392             Gets the short name of the <see cref="T:System.Reflection.Assembly"/>.\r
26393             </summary>\r
26394             <param name="myAssembly">The <see cref="T:System.Reflection.Assembly"/> to get the name for.</param>\r
26395             <returns>The short name of the <see cref="T:System.Reflection.Assembly"/>.</returns>\r
26396             <remarks>\r
26397             <para>\r
26398             The short name of the assembly is the <see cref="P:System.Reflection.Assembly.FullName"/> \r
26399             without the version, culture, or public key. i.e. it is just the \r
26400             assembly's file name without the extension.\r
26401             </para>\r
26402             <para>\r
26403             Use this rather than <c>Assembly.GetName().Name</c> because that\r
26404             is not available on the Compact Framework.\r
26405             </para>\r
26406             <para>\r
26407             Because of a FileIOPermission security demand we cannot do\r
26408             the obvious Assembly.GetName().Name. We are allowed to get\r
26409             the <see cref="P:System.Reflection.Assembly.FullName"/> of the assembly so we \r
26410             start from there and strip out just the assembly name.\r
26411             </para>\r
26412             </remarks>\r
26413         </member>\r
26414         <member name="M:log4net.Util.SystemInfo.AssemblyFileName(System.Reflection.Assembly)">\r
26415             <summary>\r
26416             Gets the file name portion of the <see cref="T:System.Reflection.Assembly"/>, including the extension.\r
26417             </summary>\r
26418             <param name="myAssembly">The <see cref="T:System.Reflection.Assembly"/> to get the file name for.</param>\r
26419             <returns>The file name of the assembly.</returns>\r
26420             <remarks>\r
26421             <para>\r
26422             Gets the file name portion of the <see cref="T:System.Reflection.Assembly"/>, including the extension.\r
26423             </para>\r
26424             </remarks>\r
26425         </member>\r
26426         <member name="M:log4net.Util.SystemInfo.GetTypeFromString(System.Type,System.String,System.Boolean,System.Boolean)">\r
26427             <summary>\r
26428             Loads the type specified in the type string.\r
26429             </summary>\r
26430             <param name="relativeType">A sibling type to use to load the type.</param>\r
26431             <param name="typeName">The name of the type to load.</param>\r
26432             <param name="throwOnError">Flag set to <c>true</c> to throw an exception if the type cannot be loaded.</param>\r
26433             <param name="ignoreCase"><c>true</c> to ignore the case of the type name; otherwise, <c>false</c></param>\r
26434             <returns>The type loaded or <c>null</c> if it could not be loaded.</returns>\r
26435             <remarks>\r
26436             <para>\r
26437             If the type name is fully qualified, i.e. if contains an assembly name in \r
26438             the type name, the type will be loaded from the system using \r
26439             <see cref="M:System.Type.GetType(System.String,System.Boolean)"/>.\r
26440             </para>\r
26441             <para>\r
26442             If the type name is not fully qualified, it will be loaded from the assembly\r
26443             containing the specified relative type. If the type is not found in the assembly \r
26444             then all the loaded assemblies will be searched for the type.\r
26445             </para>\r
26446             </remarks>\r
26447         </member>\r
26448         <member name="M:log4net.Util.SystemInfo.GetTypeFromString(System.String,System.Boolean,System.Boolean)">\r
26449             <summary>\r
26450             Loads the type specified in the type string.\r
26451             </summary>\r
26452             <param name="typeName">The name of the type to load.</param>\r
26453             <param name="throwOnError">Flag set to <c>true</c> to throw an exception if the type cannot be loaded.</param>\r
26454             <param name="ignoreCase"><c>true</c> to ignore the case of the type name; otherwise, <c>false</c></param>\r
26455             <returns>The type loaded or <c>null</c> if it could not be loaded.</returns>                \r
26456             <remarks>\r
26457             <para>\r
26458             If the type name is fully qualified, i.e. if contains an assembly name in \r
26459             the type name, the type will be loaded from the system using \r
26460             <see cref="M:System.Type.GetType(System.String,System.Boolean)"/>.\r
26461             </para>\r
26462             <para>\r
26463             If the type name is not fully qualified it will be loaded from the\r
26464             assembly that is directly calling this method. If the type is not found \r
26465             in the assembly then all the loaded assemblies will be searched for the type.\r
26466             </para>\r
26467             </remarks>\r
26468         </member>\r
26469         <member name="M:log4net.Util.SystemInfo.GetTypeFromString(System.Reflection.Assembly,System.String,System.Boolean,System.Boolean)">\r
26470             <summary>\r
26471             Loads the type specified in the type string.\r
26472             </summary>\r
26473             <param name="relativeAssembly">An assembly to load the type from.</param>\r
26474             <param name="typeName">The name of the type to load.</param>\r
26475             <param name="throwOnError">Flag set to <c>true</c> to throw an exception if the type cannot be loaded.</param>\r
26476             <param name="ignoreCase"><c>true</c> to ignore the case of the type name; otherwise, <c>false</c></param>\r
26477             <returns>The type loaded or <c>null</c> if it could not be loaded.</returns>\r
26478             <remarks>\r
26479             <para>\r
26480             If the type name is fully qualified, i.e. if contains an assembly name in \r
26481             the type name, the type will be loaded from the system using \r
26482             <see cref="M:System.Type.GetType(System.String,System.Boolean)"/>.\r
26483             </para>\r
26484             <para>\r
26485             If the type name is not fully qualified it will be loaded from the specified\r
26486             assembly. If the type is not found in the assembly then all the loaded assemblies \r
26487             will be searched for the type.\r
26488             </para>\r
26489             </remarks>\r
26490         </member>\r
26491         <member name="M:log4net.Util.SystemInfo.NewGuid">\r
26492             <summary>\r
26493             Generate a new guid\r
26494             </summary>\r
26495             <returns>A new Guid</returns>\r
26496             <remarks>\r
26497             <para>\r
26498             Generate a new guid\r
26499             </para>\r
26500             </remarks>\r
26501         </member>\r
26502         <member name="M:log4net.Util.SystemInfo.CreateArgumentOutOfRangeException(System.String,System.Object,System.String)">\r
26503             <summary>\r
26504             Create an <see cref="T:System.ArgumentOutOfRangeException"/>\r
26505             </summary>\r
26506             <param name="parameterName">The name of the parameter that caused the exception</param>\r
26507             <param name="actualValue">The value of the argument that causes this exception</param>\r
26508             <param name="message">The message that describes the error</param>\r
26509             <returns>the ArgumentOutOfRangeException object</returns>\r
26510             <remarks>\r
26511             <para>\r
26512             Create a new instance of the <see cref="T:System.ArgumentOutOfRangeException"/> class \r
26513             with a specified error message, the parameter name, and the value \r
26514             of the argument.\r
26515             </para>\r
26516             <para>\r
26517             The Compact Framework does not support the 3 parameter constructor for the\r
26518             <see cref="T:System.ArgumentOutOfRangeException"/> type. This method provides an\r
26519             implementation that works for all platforms.\r
26520             </para>\r
26521             </remarks>\r
26522         </member>\r
26523         <member name="M:log4net.Util.SystemInfo.TryParse(System.String,System.Int32@)">\r
26524             <summary>\r
26525             Parse a string into an <see cref="T:System.Int32"/> value\r
26526             </summary>\r
26527             <param name="s">the string to parse</param>\r
26528             <param name="val">out param where the parsed value is placed</param>\r
26529             <returns><c>true</c> if the string was able to be parsed into an integer</returns>\r
26530             <remarks>\r
26531             <para>\r
26532             Attempts to parse the string into an integer. If the string cannot\r
26533             be parsed then this method returns <c>false</c>. The method does not throw an exception.\r
26534             </para>\r
26535             </remarks>\r
26536         </member>\r
26537         <member name="M:log4net.Util.SystemInfo.TryParse(System.String,System.Int64@)">\r
26538             <summary>\r
26539             Parse a string into an <see cref="T:System.Int64"/> value\r
26540             </summary>\r
26541             <param name="s">the string to parse</param>\r
26542             <param name="val">out param where the parsed value is placed</param>\r
26543             <returns><c>true</c> if the string was able to be parsed into an integer</returns>\r
26544             <remarks>\r
26545             <para>\r
26546             Attempts to parse the string into an integer. If the string cannot\r
26547             be parsed then this method returns <c>false</c>. The method does not throw an exception.\r
26548             </para>\r
26549             </remarks>\r
26550         </member>\r
26551         <member name="M:log4net.Util.SystemInfo.GetAppSetting(System.String)">\r
26552             <summary>\r
26553             Lookup an application setting\r
26554             </summary>\r
26555             <param name="key">the application settings key to lookup</param>\r
26556             <returns>the value for the key, or <c>null</c></returns>\r
26557             <remarks>\r
26558             <para>\r
26559             Configuration APIs are not supported under the Compact Framework\r
26560             </para>\r
26561             </remarks>\r
26562         </member>\r
26563         <member name="M:log4net.Util.SystemInfo.ConvertToFullPath(System.String)">\r
26564             <summary>\r
26565             Convert a path into a fully qualified local file path.\r
26566             </summary>\r
26567             <param name="path">The path to convert.</param>\r
26568             <returns>The fully qualified path.</returns>\r
26569             <remarks>\r
26570             <para>\r
26571             Converts the path specified to a fully\r
26572             qualified path. If the path is relative it is\r
26573             taken as relative from the application base \r
26574             directory.\r
26575             </para>\r
26576             <para>\r
26577             The path specified must be a local file path, a URI is not supported.\r
26578             </para>\r
26579             </remarks>\r
26580         </member>\r
26581         <member name="M:log4net.Util.SystemInfo.CreateCaseInsensitiveHashtable">\r
26582             <summary>\r
26583             Creates a new case-insensitive instance of the <see cref="T:System.Collections.Hashtable"/> class with the default initial capacity. \r
26584             </summary>\r
26585             <returns>A new case-insensitive instance of the <see cref="T:System.Collections.Hashtable"/> class with the default initial capacity</returns>\r
26586             <remarks>\r
26587             <para>\r
26588             The new Hashtable instance uses the default load factor, the CaseInsensitiveHashCodeProvider, and the CaseInsensitiveComparer.\r
26589             </para>\r
26590             </remarks>\r
26591         </member>\r
26592         <member name="F:log4net.Util.SystemInfo.EmptyTypes">\r
26593             <summary>\r
26594             Gets an empty array of types.\r
26595             </summary>\r
26596             <remarks>\r
26597             <para>\r
26598             The <c>Type.EmptyTypes</c> field is not available on\r
26599             the .NET Compact Framework 1.0.\r
26600             </para>\r
26601             </remarks>\r
26602         </member>\r
26603         <member name="F:log4net.Util.SystemInfo.s_hostName">\r
26604             <summary>\r
26605             Cache the host name for the current machine\r
26606             </summary>\r
26607         </member>\r
26608         <member name="F:log4net.Util.SystemInfo.s_appFriendlyName">\r
26609             <summary>\r
26610             Cache the application friendly name\r
26611             </summary>\r
26612         </member>\r
26613         <member name="F:log4net.Util.SystemInfo.s_nullText">\r
26614             <summary>\r
26615             Text to output when a <c>null</c> is encountered.\r
26616             </summary>\r
26617         </member>\r
26618         <member name="F:log4net.Util.SystemInfo.s_notAvailableText">\r
26619             <summary>\r
26620             Text to output when an unsupported feature is requested.\r
26621             </summary>\r
26622         </member>\r
26623         <member name="F:log4net.Util.SystemInfo.s_processStartTime">\r
26624             <summary>\r
26625             Start time for the current process.\r
26626             </summary>\r
26627         </member>\r
26628         <member name="P:log4net.Util.SystemInfo.NewLine">\r
26629             <summary>\r
26630             Gets the system dependent line terminator.\r
26631             </summary>\r
26632             <value>\r
26633             The system dependent line terminator.\r
26634             </value>\r
26635             <remarks>\r
26636             <para>\r
26637             Gets the system dependent line terminator.\r
26638             </para>\r
26639             </remarks>\r
26640         </member>\r
26641         <member name="P:log4net.Util.SystemInfo.ApplicationBaseDirectory">\r
26642             <summary>\r
26643             Gets the base directory for this <see cref="T:System.AppDomain"/>.\r
26644             </summary>\r
26645             <value>The base directory path for the current <see cref="T:System.AppDomain"/>.</value>\r
26646             <remarks>\r
26647             <para>\r
26648             Gets the base directory for this <see cref="T:System.AppDomain"/>.\r
26649             </para>\r
26650             <para>\r
26651             The value returned may be either a local file path or a URI.\r
26652             </para>\r
26653             </remarks>\r
26654         </member>\r
26655         <member name="P:log4net.Util.SystemInfo.ConfigurationFileLocation">\r
26656             <summary>\r
26657             Gets the path to the configuration file for the current <see cref="T:System.AppDomain"/>.\r
26658             </summary>\r
26659             <value>The path to the configuration file for the current <see cref="T:System.AppDomain"/>.</value>\r
26660             <remarks>\r
26661             <para>\r
26662             The .NET Compact Framework 1.0 does not have a concept of a configuration\r
26663             file. For this runtime, we use the entry assembly location as the root for\r
26664             the configuration file name.\r
26665             </para>\r
26666             <para>\r
26667             The value returned may be either a local file path or a URI.\r
26668             </para>\r
26669             </remarks>\r
26670         </member>\r
26671         <member name="P:log4net.Util.SystemInfo.EntryAssemblyLocation">\r
26672             <summary>\r
26673             Gets the path to the file that first executed in the current <see cref="T:System.AppDomain"/>.\r
26674             </summary>\r
26675             <value>The path to the entry assembly.</value>\r
26676             <remarks>\r
26677             <para>\r
26678             Gets the path to the file that first executed in the current <see cref="T:System.AppDomain"/>.\r
26679             </para>\r
26680             </remarks>\r
26681         </member>\r
26682         <member name="P:log4net.Util.SystemInfo.CurrentThreadId">\r
26683             <summary>\r
26684             Gets the ID of the current thread.\r
26685             </summary>\r
26686             <value>The ID of the current thread.</value>\r
26687             <remarks>\r
26688             <para>\r
26689             On the .NET framework, the <c>AppDomain.GetCurrentThreadId</c> method\r
26690             is used to obtain the thread ID for the current thread. This is the \r
26691             operating system ID for the thread.\r
26692             </para>\r
26693             <para>\r
26694             On the .NET Compact Framework 1.0 it is not possible to get the \r
26695             operating system thread ID for the current thread. The native method \r
26696             <c>GetCurrentThreadId</c> is implemented inline in a header file\r
26697             and cannot be called.\r
26698             </para>\r
26699             <para>\r
26700             On the .NET Framework 2.0 the <c>Thread.ManagedThreadId</c> is used as this\r
26701             gives a stable id unrelated to the operating system thread ID which may \r
26702             change if the runtime is using fibers.\r
26703             </para>\r
26704             </remarks>\r
26705         </member>\r
26706         <member name="P:log4net.Util.SystemInfo.HostName">\r
26707             <summary>\r
26708             Get the host name or machine name for the current machine\r
26709             </summary>\r
26710             <value>\r
26711             The hostname or machine name\r
26712             </value>\r
26713             <remarks>\r
26714             <para>\r
26715             Get the host name or machine name for the current machine\r
26716             </para>\r
26717             <para>\r
26718             The host name (<see cref="M:System.Net.Dns.GetHostName"/>) or\r
26719             the machine name (<c>Environment.MachineName</c>) for\r
26720             the current machine, or if neither of these are available\r
26721             then <c>NOT AVAILABLE</c> is returned.\r
26722             </para>\r
26723             </remarks>\r
26724         </member>\r
26725         <member name="P:log4net.Util.SystemInfo.ApplicationFriendlyName">\r
26726             <summary>\r
26727             Get this application's friendly name\r
26728             </summary>\r
26729             <value>\r
26730             The friendly name of this application as a string\r
26731             </value>\r
26732             <remarks>\r
26733             <para>\r
26734             If available the name of the application is retrieved from\r
26735             the <c>AppDomain</c> using <c>AppDomain.CurrentDomain.FriendlyName</c>.\r
26736             </para>\r
26737             <para>\r
26738             Otherwise the file name of the entry assembly is used.\r
26739             </para>\r
26740             </remarks>\r
26741         </member>\r
26742         <member name="P:log4net.Util.SystemInfo.ProcessStartTime">\r
26743             <summary>\r
26744             Get the start time for the current process.\r
26745             </summary>\r
26746             <remarks>\r
26747             <para>\r
26748             This is the time at which the log4net library was loaded into the\r
26749             AppDomain. Due to reports of a hang in the call to <c>System.Diagnostics.Process.StartTime</c>\r
26750             this is not the start time for the current process.\r
26751             </para>\r
26752             <para>\r
26753             The log4net library should be loaded by an application early during its\r
26754             startup, therefore this start time should be a good approximation for\r
26755             the actual start time.\r
26756             </para>\r
26757             <para>\r
26758             Note that AppDomains may be loaded and unloaded within the\r
26759             same process without the process terminating, however this start time\r
26760             will be set per AppDomain.\r
26761             </para>\r
26762             </remarks>\r
26763         </member>\r
26764         <member name="P:log4net.Util.SystemInfo.NullText">\r
26765             <summary>\r
26766             Text to output when a <c>null</c> is encountered.\r
26767             </summary>\r
26768             <remarks>\r
26769             <para>\r
26770             Use this value to indicate a <c>null</c> has been encountered while\r
26771             outputting a string representation of an item.\r
26772             </para>\r
26773             <para>\r
26774             The default value is <c>(null)</c>. This value can be overridden by specifying\r
26775             a value for the <c>log4net.NullText</c> appSetting in the application's\r
26776             .config file.\r
26777             </para>\r
26778             </remarks>\r
26779         </member>\r
26780         <member name="P:log4net.Util.SystemInfo.NotAvailableText">\r
26781             <summary>\r
26782             Text to output when an unsupported feature is requested.\r
26783             </summary>\r
26784             <remarks>\r
26785             <para>\r
26786             Use this value when an unsupported feature is requested.\r
26787             </para>\r
26788             <para>\r
26789             The default value is <c>NOT AVAILABLE</c>. This value can be overridden by specifying\r
26790             a value for the <c>log4net.NotAvailableText</c> appSetting in the application's\r
26791             .config file.\r
26792             </para>\r
26793             </remarks>\r
26794         </member>\r
26795         <member name="T:log4net.Util.SystemStringFormat">\r
26796             <summary>\r
26797             Utility class that represents a format string.\r
26798             </summary>\r
26799             <remarks>\r
26800             <para>\r
26801             Utility class that represents a format string.\r
26802             </para>\r
26803             </remarks>\r
26804             <author>Nicko Cadell</author>\r
26805         </member>\r
26806         <member name="M:log4net.Util.SystemStringFormat.#ctor(System.IFormatProvider,System.String,System.Object[])">\r
26807             <summary>\r
26808             Initialise the <see cref="T:log4net.Util.SystemStringFormat"/>\r
26809             </summary>\r
26810             <param name="provider">An <see cref="T:System.IFormatProvider"/> that supplies culture-specific formatting information.</param>\r
26811             <param name="format">A <see cref="T:System.String"/> containing zero or more format items.</param>\r
26812             <param name="args">An <see cref="T:System.Object"/> array containing zero or more objects to format.</param>\r
26813         </member>\r
26814         <member name="M:log4net.Util.SystemStringFormat.ToString">\r
26815             <summary>\r
26816             Format the string and arguments\r
26817             </summary>\r
26818             <returns>the formatted string</returns>\r
26819         </member>\r
26820         <member name="M:log4net.Util.SystemStringFormat.StringFormat(System.IFormatProvider,System.String,System.Object[])">\r
26821             <summary>\r
26822             Replaces the format item in a specified <see cref="T:System.String"/> with the text equivalent \r
26823             of the value of a corresponding <see cref="T:System.Object"/> instance in a specified array.\r
26824             A specified parameter supplies culture-specific formatting information.\r
26825             </summary>\r
26826             <param name="provider">An <see cref="T:System.IFormatProvider"/> that supplies culture-specific formatting information.</param>\r
26827             <param name="format">A <see cref="T:System.String"/> containing zero or more format items.</param>\r
26828             <param name="args">An <see cref="T:System.Object"/> array containing zero or more objects to format.</param>\r
26829             <returns>\r
26830             A copy of format in which the format items have been replaced by the <see cref="T:System.String"/> \r
26831             equivalent of the corresponding instances of <see cref="T:System.Object"/> in args.\r
26832             </returns>\r
26833             <remarks>\r
26834             <para>\r
26835             This method does not throw exceptions. If an exception thrown while formatting the result the\r
26836             exception and arguments are returned in the result string.\r
26837             </para>\r
26838             </remarks>\r
26839         </member>\r
26840         <member name="M:log4net.Util.SystemStringFormat.StringFormatError(System.Exception,System.String,System.Object[])">\r
26841             <summary>\r
26842             Process an error during StringFormat\r
26843             </summary>\r
26844         </member>\r
26845         <member name="M:log4net.Util.SystemStringFormat.RenderArray(System.Array,System.Text.StringBuilder)">\r
26846             <summary>\r
26847             Dump the contents of an array into a string builder\r
26848             </summary>\r
26849         </member>\r
26850         <member name="M:log4net.Util.SystemStringFormat.RenderObject(System.Object,System.Text.StringBuilder)">\r
26851             <summary>\r
26852             Dump an object to a string\r
26853             </summary>\r
26854         </member>\r
26855         <member name="T:log4net.Util.ThreadContextProperties">\r
26856             <summary>\r
26857             Implementation of Properties collection for the <see cref="T:log4net.ThreadContext"/>\r
26858             </summary>\r
26859             <remarks>\r
26860             <para>\r
26861             Class implements a collection of properties that is specific to each thread.\r
26862             The class is not synchronized as each thread has its own <see cref="T:log4net.Util.PropertiesDictionary"/>.\r
26863             </para>\r
26864             </remarks>\r
26865             <author>Nicko Cadell</author>\r
26866         </member>\r
26867         <member name="F:log4net.Util.ThreadContextProperties.s_threadLocalSlot">\r
26868             <summary>\r
26869             The thread local data slot to use to store a PropertiesDictionary.\r
26870             </summary>\r
26871         </member>\r
26872         <member name="M:log4net.Util.ThreadContextProperties.#ctor">\r
26873             <summary>\r
26874             Internal constructor\r
26875             </summary>\r
26876             <remarks>\r
26877             <para>\r
26878             Initializes a new instance of the <see cref="T:log4net.Util.ThreadContextProperties"/> class.\r
26879             </para>\r
26880             </remarks>\r
26881         </member>\r
26882         <member name="M:log4net.Util.ThreadContextProperties.Remove(System.String)">\r
26883             <summary>\r
26884             Remove a property\r
26885             </summary>\r
26886             <param name="key">the key for the entry to remove</param>\r
26887             <remarks>\r
26888             <para>\r
26889             Remove a property\r
26890             </para>\r
26891             </remarks>\r
26892         </member>\r
26893         <member name="M:log4net.Util.ThreadContextProperties.Clear">\r
26894             <summary>\r
26895             Clear all properties\r
26896             </summary>\r
26897             <remarks>\r
26898             <para>\r
26899             Clear all properties\r
26900             </para>\r
26901             </remarks>\r
26902         </member>\r
26903         <member name="M:log4net.Util.ThreadContextProperties.GetProperties(System.Boolean)">\r
26904             <summary>\r
26905             Get the <c>PropertiesDictionary</c> for this thread.\r
26906             </summary>\r
26907             <param name="create">create the dictionary if it does not exist, otherwise return null if is does not exist</param>\r
26908             <returns>the properties for this thread</returns>\r
26909             <remarks>\r
26910             <para>\r
26911             The collection returned is only to be used on the calling thread. If the\r
26912             caller needs to share the collection between different threads then the \r
26913             caller must clone the collection before doing so.\r
26914             </para>\r
26915             </remarks>\r
26916         </member>\r
26917         <member name="P:log4net.Util.ThreadContextProperties.Item(System.String)">\r
26918             <summary>\r
26919             Gets or sets the value of a property\r
26920             </summary>\r
26921             <value>\r
26922             The value for the property with the specified key\r
26923             </value>\r
26924             <remarks>\r
26925             <para>\r
26926             Gets or sets the value of a property\r
26927             </para>\r
26928             </remarks>\r
26929         </member>\r
26930         <member name="T:log4net.Util.ThreadContextStack">\r
26931             <summary>\r
26932             Implementation of Stack for the <see cref="T:log4net.ThreadContext"/>\r
26933             </summary>\r
26934             <remarks>\r
26935             <para>\r
26936             Implementation of Stack for the <see cref="T:log4net.ThreadContext"/>\r
26937             </para>\r
26938             </remarks>\r
26939             <author>Nicko Cadell</author>\r
26940         </member>\r
26941         <member name="F:log4net.Util.ThreadContextStack.m_stack">\r
26942             <summary>\r
26943             The stack store.\r
26944             </summary>\r
26945         </member>\r
26946         <member name="M:log4net.Util.ThreadContextStack.#ctor">\r
26947             <summary>\r
26948             Internal constructor\r
26949             </summary>\r
26950             <remarks>\r
26951             <para>\r
26952             Initializes a new instance of the <see cref="T:log4net.Util.ThreadContextStack"/> class. \r
26953             </para>\r
26954             </remarks>\r
26955         </member>\r
26956         <member name="M:log4net.Util.ThreadContextStack.Clear">\r
26957             <summary>\r
26958             Clears all the contextual information held in this stack.\r
26959             </summary>\r
26960             <remarks>\r
26961             <para>\r
26962             Clears all the contextual information held in this stack.\r
26963             Only call this if you think that this tread is being reused after\r
26964             a previous call execution which may not have completed correctly.\r
26965             You do not need to use this method if you always guarantee to call\r
26966             the <see cref="M:System.IDisposable.Dispose"/> method of the <see cref="T:System.IDisposable"/>\r
26967             returned from <see cref="M:log4net.Util.ThreadContextStack.Push(System.String)"/> even in exceptional circumstances,\r
26968             for example by using the <c>using(log4net.ThreadContext.Stacks["NDC"].Push("Stack_Message"))</c> \r
26969             syntax.\r
26970             </para>\r
26971             </remarks>\r
26972         </member>\r
26973         <member name="M:log4net.Util.ThreadContextStack.Pop">\r
26974             <summary>\r
26975             Removes the top context from this stack.\r
26976             </summary>\r
26977             <returns>The message in the context that was removed from the top of this stack.</returns>\r
26978             <remarks>\r
26979             <para>\r
26980             Remove the top context from this stack, and return\r
26981             it to the caller. If this stack is empty then an\r
26982             empty string (not <see langword="null"/>) is returned.\r
26983             </para>\r
26984             </remarks>\r
26985         </member>\r
26986         <member name="M:log4net.Util.ThreadContextStack.Push(System.String)">\r
26987             <summary>\r
26988             Pushes a new context message into this stack.\r
26989             </summary>\r
26990             <param name="message">The new context message.</param>\r
26991             <returns>\r
26992             An <see cref="T:System.IDisposable"/> that can be used to clean up the context stack.\r
26993             </returns>\r
26994             <remarks>\r
26995             <para>\r
26996             Pushes a new context onto this stack. An <see cref="T:System.IDisposable"/>\r
26997             is returned that can be used to clean up this stack. This\r
26998             can be easily combined with the <c>using</c> keyword to scope the\r
26999             context.\r
27000             </para>\r
27001             </remarks>\r
27002             <example>Simple example of using the <c>Push</c> method with the <c>using</c> keyword.\r
27003             <code lang="C#">\r
27004             using(log4net.ThreadContext.Stacks["NDC"].Push("Stack_Message"))\r
27005             {\r
27006                 log.Warn("This should have an ThreadContext Stack message");\r
27007             }\r
27008             </code>\r
27009             </example>\r
27010         </member>\r
27011         <member name="M:log4net.Util.ThreadContextStack.GetFullMessage">\r
27012             <summary>\r
27013             Gets the current context information for this stack.\r
27014             </summary>\r
27015             <returns>The current context information.</returns>\r
27016         </member>\r
27017         <member name="M:log4net.Util.ThreadContextStack.ToString">\r
27018             <summary>\r
27019             Gets the current context information for this stack.\r
27020             </summary>\r
27021             <returns>Gets the current context information</returns>\r
27022             <remarks>\r
27023             <para>\r
27024             Gets the current context information for this stack.\r
27025             </para>\r
27026             </remarks>\r
27027         </member>\r
27028         <member name="M:log4net.Util.ThreadContextStack.log4net#Core#IFixingRequired#GetFixedObject">\r
27029             <summary>\r
27030             Get a portable version of this object\r
27031             </summary>\r
27032             <returns>the portable instance of this object</returns>\r
27033             <remarks>\r
27034             <para>\r
27035             Get a cross thread portable version of this object\r
27036             </para>\r
27037             </remarks>\r
27038         </member>\r
27039         <member name="P:log4net.Util.ThreadContextStack.Count">\r
27040             <summary>\r
27041             The number of messages in the stack\r
27042             </summary>\r
27043             <value>\r
27044             The current number of messages in the stack\r
27045             </value>\r
27046             <remarks>\r
27047             <para>\r
27048             The current number of messages in the stack. That is\r
27049             the number of times <see cref="M:log4net.Util.ThreadContextStack.Push(System.String)"/> has been called\r
27050             minus the number of times <see cref="M:log4net.Util.ThreadContextStack.Pop"/> has been called.\r
27051             </para>\r
27052             </remarks>\r
27053         </member>\r
27054         <member name="P:log4net.Util.ThreadContextStack.InternalStack">\r
27055             <summary>\r
27056             Gets and sets the internal stack used by this <see cref="T:log4net.Util.ThreadContextStack"/>\r
27057             </summary>\r
27058             <value>The internal storage stack</value>\r
27059             <remarks>\r
27060             <para>\r
27061             This property is provided only to support backward compatability \r
27062             of the <see cref="T:log4net.NDC"/>. Tytpically the internal stack should not\r
27063             be modified.\r
27064             </para>\r
27065             </remarks>\r
27066         </member>\r
27067         <member name="T:log4net.Util.ThreadContextStack.StackFrame">\r
27068             <summary>\r
27069             Inner class used to represent a single context frame in the stack.\r
27070             </summary>\r
27071             <remarks>\r
27072             <para>\r
27073             Inner class used to represent a single context frame in the stack.\r
27074             </para>\r
27075             </remarks>\r
27076         </member>\r
27077         <member name="M:log4net.Util.ThreadContextStack.StackFrame.#ctor(System.String,log4net.Util.ThreadContextStack.StackFrame)">\r
27078             <summary>\r
27079             Constructor\r
27080             </summary>\r
27081             <param name="message">The message for this context.</param>\r
27082             <param name="parent">The parent context in the chain.</param>\r
27083             <remarks>\r
27084             <para>\r
27085             Initializes a new instance of the <see cref="T:log4net.Util.ThreadContextStack.StackFrame"/> class\r
27086             with the specified message and parent context.\r
27087             </para>\r
27088             </remarks>\r
27089         </member>\r
27090         <member name="P:log4net.Util.ThreadContextStack.StackFrame.Message">\r
27091             <summary>\r
27092             Get the message.\r
27093             </summary>\r
27094             <value>The message.</value>\r
27095             <remarks>\r
27096             <para>\r
27097             Get the message.\r
27098             </para>\r
27099             </remarks>\r
27100         </member>\r
27101         <member name="P:log4net.Util.ThreadContextStack.StackFrame.FullMessage">\r
27102             <summary>\r
27103             Gets the full text of the context down to the root level.\r
27104             </summary>\r
27105             <value>\r
27106             The full text of the context down to the root level.\r
27107             </value>\r
27108             <remarks>\r
27109             <para>\r
27110             Gets the full text of the context down to the root level.\r
27111             </para>\r
27112             </remarks>\r
27113         </member>\r
27114         <member name="T:log4net.Util.ThreadContextStack.AutoPopStackFrame">\r
27115             <summary>\r
27116             Struct returned from the <see cref="M:log4net.Util.ThreadContextStack.Push(System.String)"/> method.\r
27117             </summary>\r
27118             <remarks>\r
27119             <para>\r
27120             This struct implements the <see cref="T:System.IDisposable"/> and is designed to be used\r
27121             with the <see langword="using"/> pattern to remove the stack frame at the end of the scope.\r
27122             </para>\r
27123             </remarks>\r
27124         </member>\r
27125         <member name="F:log4net.Util.ThreadContextStack.AutoPopStackFrame.m_frameStack">\r
27126             <summary>\r
27127             The ThreadContextStack internal stack\r
27128             </summary>\r
27129         </member>\r
27130         <member name="F:log4net.Util.ThreadContextStack.AutoPopStackFrame.m_frameDepth">\r
27131             <summary>\r
27132             The depth to trim the stack to when this instance is disposed\r
27133             </summary>\r
27134         </member>\r
27135         <member name="M:log4net.Util.ThreadContextStack.AutoPopStackFrame.#ctor(System.Collections.Stack,System.Int32)">\r
27136             <summary>\r
27137             Constructor\r
27138             </summary>\r
27139             <param name="frameStack">The internal stack used by the ThreadContextStack.</param>\r
27140             <param name="frameDepth">The depth to return the stack to when this object is disposed.</param>\r
27141             <remarks>\r
27142             <para>\r
27143             Initializes a new instance of the <see cref="T:log4net.Util.ThreadContextStack.AutoPopStackFrame"/> class with\r
27144             the specified stack and return depth.\r
27145             </para>\r
27146             </remarks>\r
27147         </member>\r
27148         <member name="M:log4net.Util.ThreadContextStack.AutoPopStackFrame.Dispose">\r
27149             <summary>\r
27150             Returns the stack to the correct depth.\r
27151             </summary>\r
27152             <remarks>\r
27153             <para>\r
27154             Returns the stack to the correct depth.\r
27155             </para>\r
27156             </remarks>\r
27157         </member>\r
27158         <member name="T:log4net.Util.ThreadContextStacks">\r
27159             <summary>\r
27160             Implementation of Stacks collection for the <see cref="T:log4net.ThreadContext"/>\r
27161             </summary>\r
27162             <remarks>\r
27163             <para>\r
27164             Implementation of Stacks collection for the <see cref="T:log4net.ThreadContext"/>\r
27165             </para>\r
27166             </remarks>\r
27167             <author>Nicko Cadell</author>\r
27168         </member>\r
27169         <member name="M:log4net.Util.ThreadContextStacks.#ctor(log4net.Util.ContextPropertiesBase)">\r
27170             <summary>\r
27171             Internal constructor\r
27172             </summary>\r
27173             <remarks>\r
27174             <para>\r
27175             Initializes a new instance of the <see cref="T:log4net.Util.ThreadContextStacks"/> class.\r
27176             </para>\r
27177             </remarks>\r
27178         </member>\r
27179         <member name="P:log4net.Util.ThreadContextStacks.Item(System.String)">\r
27180             <summary>\r
27181             Gets the named thread context stack\r
27182             </summary>\r
27183             <value>\r
27184             The named stack\r
27185             </value>\r
27186             <remarks>\r
27187             <para>\r
27188             Gets the named thread context stack\r
27189             </para>\r
27190             </remarks>\r
27191         </member>\r
27192         <member name="T:log4net.Util.Transform">\r
27193             <summary>\r
27194             Utility class for transforming strings.\r
27195             </summary>\r
27196             <remarks>\r
27197             <para>\r
27198             Utility class for transforming strings.\r
27199             </para>\r
27200             </remarks>\r
27201             <author>Nicko Cadell</author>\r
27202             <author>Gert Driesen</author>\r
27203         </member>\r
27204         <member name="M:log4net.Util.Transform.#ctor">\r
27205             <summary>\r
27206             Initializes a new instance of the <see cref="T:log4net.Util.Transform"/> class. \r
27207             </summary>\r
27208             <remarks>\r
27209             <para>\r
27210             Uses a private access modifier to prevent instantiation of this class.\r
27211             </para>\r
27212             </remarks>\r
27213         </member>\r
27214         <member name="M:log4net.Util.Transform.WriteEscapedXmlString(System.Xml.XmlWriter,System.String,System.String)">\r
27215             <summary>\r
27216             Write a string to an <see cref="T:System.Xml.XmlWriter"/>\r
27217             </summary>\r
27218             <param name="writer">the writer to write to</param>\r
27219             <param name="textData">the string to write</param>\r
27220             <param name="invalidCharReplacement">The string to replace non XML compliant chars with</param>\r
27221             <remarks>\r
27222             <para>\r
27223             The test is escaped either using XML escape entities\r
27224             or using CDATA sections.\r
27225             </para>\r
27226             </remarks>\r
27227         </member>\r
27228         <member name="M:log4net.Util.Transform.MaskXmlInvalidCharacters(System.String,System.String)">\r
27229             <summary>\r
27230             Replace invalid XML characters in text string\r
27231             </summary>\r
27232             <param name="textData">the XML text input string</param>\r
27233             <param name="mask">the string to use in place of invalid characters</param>\r
27234             <returns>A string that does not contain invalid XML characters.</returns>\r
27235             <remarks>\r
27236             <para>\r
27237             Certain Unicode code points are not allowed in the XML InfoSet, for\r
27238             details see: <a href="http://www.w3.org/TR/REC-xml/#charsets">http://www.w3.org/TR/REC-xml/#charsets</a>.\r
27239             </para>\r
27240             <para>\r
27241             This method replaces any illegal characters in the input string\r
27242             with the mask string specified.\r
27243             </para>\r
27244             </remarks>\r
27245         </member>\r
27246         <member name="M:log4net.Util.Transform.CountSubstrings(System.String,System.String)">\r
27247             <summary>\r
27248             Count the number of times that the substring occurs in the text\r
27249             </summary>\r
27250             <param name="text">the text to search</param>\r
27251             <param name="substring">the substring to find</param>\r
27252             <returns>the number of times the substring occurs in the text</returns>\r
27253             <remarks>\r
27254             <para>\r
27255             The substring is assumed to be non repeating within itself.\r
27256             </para>\r
27257             </remarks>\r
27258         </member>\r
27259         <member name="T:log4net.Util.WindowsSecurityContext">\r
27260             <summary>\r
27261             Impersonate a Windows Account\r
27262             </summary>\r
27263             <remarks>\r
27264             <para>\r
27265             This <see cref="T:log4net.Core.SecurityContext"/> impersonates a Windows account.\r
27266             </para>\r
27267             <para>\r
27268             How the impersonation is done depends on the value of <see cref="M:log4net.Util.WindowsSecurityContext.Impersonate(System.Object)"/>.\r
27269             This allows the context to either impersonate a set of user credentials specified \r
27270             using username, domain name and password or to revert to the process credentials.\r
27271             </para>\r
27272             </remarks>\r
27273         </member>\r
27274         <member name="M:log4net.Util.WindowsSecurityContext.#ctor">\r
27275             <summary>\r
27276             Default constructor\r
27277             </summary>\r
27278             <remarks>\r
27279             <para>\r
27280             Default constructor\r
27281             </para>\r
27282             </remarks>\r
27283         </member>\r
27284         <member name="M:log4net.Util.WindowsSecurityContext.ActivateOptions">\r
27285             <summary>\r
27286             Initialize the SecurityContext based on the options set.\r
27287             </summary>\r
27288             <remarks>\r
27289             <para>\r
27290             This is part of the <see cref="T:log4net.Core.IOptionHandler"/> delayed object\r
27291             activation scheme. The <see cref="M:log4net.Util.WindowsSecurityContext.ActivateOptions"/> method must \r
27292             be called on this object after the configuration properties have\r
27293             been set. Until <see cref="M:log4net.Util.WindowsSecurityContext.ActivateOptions"/> is called this\r
27294             object is in an undefined state and must not be used. \r
27295             </para>\r
27296             <para>\r
27297             If any of the configuration properties are modified then \r
27298             <see cref="M:log4net.Util.WindowsSecurityContext.ActivateOptions"/> must be called again.\r
27299             </para>\r
27300             <para>\r
27301             The security context will try to Logon the specified user account and\r
27302             capture a primary token for impersonation.\r
27303             </para>\r
27304             </remarks>\r
27305             <exception cref="T:System.ArgumentNullException">The required <see cref="P:log4net.Util.WindowsSecurityContext.UserName"/>, \r
27306             <see cref="P:log4net.Util.WindowsSecurityContext.DomainName"/> or <see cref="P:log4net.Util.WindowsSecurityContext.Password"/> properties were not specified.</exception>\r
27307         </member>\r
27308         <member name="M:log4net.Util.WindowsSecurityContext.Impersonate(System.Object)">\r
27309             <summary>\r
27310             Impersonate the Windows account specified by the <see cref="P:log4net.Util.WindowsSecurityContext.UserName"/> and <see cref="P:log4net.Util.WindowsSecurityContext.DomainName"/> properties.\r
27311             </summary>\r
27312             <param name="state">caller provided state</param>\r
27313             <returns>\r
27314             An <see cref="T:System.IDisposable"/> instance that will revoke the impersonation of this SecurityContext\r
27315             </returns>\r
27316             <remarks>\r
27317             <para>\r
27318             Depending on the <see cref="P:log4net.Util.WindowsSecurityContext.Credentials"/> property either\r
27319             impersonate a user using credentials supplied or revert \r
27320             to the process credentials.\r
27321             </para>\r
27322             </remarks>\r
27323         </member>\r
27324         <member name="M:log4net.Util.WindowsSecurityContext.LogonUser(System.String,System.String,System.String)">\r
27325             <summary>\r
27326             Create a <see cref="T:System.Security.Principal.WindowsIdentity"/> given the userName, domainName and password.\r
27327             </summary>\r
27328             <param name="userName">the user name</param>\r
27329             <param name="domainName">the domain name</param>\r
27330             <param name="password">the password</param>\r
27331             <returns>the <see cref="T:System.Security.Principal.WindowsIdentity"/> for the account specified</returns>\r
27332             <remarks>\r
27333             <para>\r
27334             Uses the Windows API call LogonUser to get a principal token for the account. This\r
27335             token is used to initialize the WindowsIdentity.\r
27336             </para>\r
27337             </remarks>\r
27338         </member>\r
27339         <member name="P:log4net.Util.WindowsSecurityContext.Credentials">\r
27340             <summary>\r
27341             Gets or sets the impersonation mode for this security context\r
27342             </summary>\r
27343             <value>\r
27344             The impersonation mode for this security context\r
27345             </value>\r
27346             <remarks>\r
27347             <para>\r
27348             Impersonate either a user with user credentials or\r
27349             revert this thread to the credentials of the process.\r
27350             The value is one of the <see cref="T:log4net.Util.WindowsSecurityContext.ImpersonationMode"/>\r
27351             enum.\r
27352             </para>\r
27353             <para>\r
27354             The default value is <see cref="F:log4net.Util.WindowsSecurityContext.ImpersonationMode.User"/>\r
27355             </para>\r
27356             <para>\r
27357             When the mode is set to <see cref="F:log4net.Util.WindowsSecurityContext.ImpersonationMode.User"/>\r
27358             the user's credentials are established using the\r
27359             <see cref="P:log4net.Util.WindowsSecurityContext.UserName"/>, <see cref="P:log4net.Util.WindowsSecurityContext.DomainName"/> and <see cref="P:log4net.Util.WindowsSecurityContext.Password"/>\r
27360             values.\r
27361             </para>\r
27362             <para>\r
27363             When the mode is set to <see cref="F:log4net.Util.WindowsSecurityContext.ImpersonationMode.Process"/>\r
27364             no other properties need to be set. If the calling thread is \r
27365             impersonating then it will be reverted back to the process credentials.\r
27366             </para>\r
27367             </remarks>\r
27368         </member>\r
27369         <member name="P:log4net.Util.WindowsSecurityContext.UserName">\r
27370             <summary>\r
27371             Gets or sets the Windows username for this security context\r
27372             </summary>\r
27373             <value>\r
27374             The Windows username for this security context\r
27375             </value>\r
27376             <remarks>\r
27377             <para>\r
27378             This property must be set if <see cref="P:log4net.Util.WindowsSecurityContext.Credentials"/>\r
27379             is set to <see cref="F:log4net.Util.WindowsSecurityContext.ImpersonationMode.User"/> (the default setting).\r
27380             </para>\r
27381             </remarks>\r
27382         </member>\r
27383         <member name="P:log4net.Util.WindowsSecurityContext.DomainName">\r
27384             <summary>\r
27385             Gets or sets the Windows domain name for this security context\r
27386             </summary>\r
27387             <value>\r
27388             The Windows domain name for this security context\r
27389             </value>\r
27390             <remarks>\r
27391             <para>\r
27392             The default value for <see cref="P:log4net.Util.WindowsSecurityContext.DomainName"/> is the local machine name\r
27393             taken from the <see cref="P:System.Environment.MachineName"/> property.\r
27394             </para>\r
27395             <para>\r
27396             This property must be set if <see cref="P:log4net.Util.WindowsSecurityContext.Credentials"/>\r
27397             is set to <see cref="F:log4net.Util.WindowsSecurityContext.ImpersonationMode.User"/> (the default setting).\r
27398             </para>\r
27399             </remarks>\r
27400         </member>\r
27401         <member name="P:log4net.Util.WindowsSecurityContext.Password">\r
27402             <summary>\r
27403             Sets the password for the Windows account specified by the <see cref="P:log4net.Util.WindowsSecurityContext.UserName"/> and <see cref="P:log4net.Util.WindowsSecurityContext.DomainName"/> properties.\r
27404             </summary>\r
27405             <value>\r
27406             The password for the Windows account specified by the <see cref="P:log4net.Util.WindowsSecurityContext.UserName"/> and <see cref="P:log4net.Util.WindowsSecurityContext.DomainName"/> properties.\r
27407             </value>\r
27408             <remarks>\r
27409             <para>\r
27410             This property must be set if <see cref="P:log4net.Util.WindowsSecurityContext.Credentials"/>\r
27411             is set to <see cref="F:log4net.Util.WindowsSecurityContext.ImpersonationMode.User"/> (the default setting).\r
27412             </para>\r
27413             </remarks>\r
27414         </member>\r
27415         <member name="T:log4net.Util.WindowsSecurityContext.ImpersonationMode">\r
27416             <summary>\r
27417             The impersonation modes for the <see cref="T:log4net.Util.WindowsSecurityContext"/>\r
27418             </summary>\r
27419             <remarks>\r
27420             <para>\r
27421             See the <see cref="P:log4net.Util.WindowsSecurityContext.Credentials"/> property for\r
27422             details.\r
27423             </para>\r
27424             </remarks>\r
27425         </member>\r
27426         <member name="F:log4net.Util.WindowsSecurityContext.ImpersonationMode.User">\r
27427             <summary>\r
27428             Impersonate a user using the credentials supplied\r
27429             </summary>\r
27430         </member>\r
27431         <member name="F:log4net.Util.WindowsSecurityContext.ImpersonationMode.Process">\r
27432             <summary>\r
27433             Revert this the thread to the credentials of the process\r
27434             </summary>\r
27435         </member>\r
27436         <member name="T:log4net.Util.WindowsSecurityContext.DisposableImpersonationContext">\r
27437             <summary>\r
27438             Adds <see cref="T:System.IDisposable"/> to <see cref="T:System.Security.Principal.WindowsImpersonationContext"/>\r
27439             </summary>\r
27440             <remarks>\r
27441             <para>\r
27442             Helper class to expose the <see cref="T:System.Security.Principal.WindowsImpersonationContext"/>\r
27443             through the <see cref="T:System.IDisposable"/> interface.\r
27444             </para>\r
27445             </remarks>\r
27446         </member>\r
27447         <member name="M:log4net.Util.WindowsSecurityContext.DisposableImpersonationContext.#ctor(System.Security.Principal.WindowsImpersonationContext)">\r
27448             <summary>\r
27449             Constructor\r
27450             </summary>\r
27451             <param name="impersonationContext">the impersonation context being wrapped</param>\r
27452             <remarks>\r
27453             <para>\r
27454             Constructor\r
27455             </para>\r
27456             </remarks>\r
27457         </member>\r
27458         <member name="M:log4net.Util.WindowsSecurityContext.DisposableImpersonationContext.Dispose">\r
27459             <summary>\r
27460             Revert the impersonation\r
27461             </summary>\r
27462             <remarks>\r
27463             <para>\r
27464             Revert the impersonation\r
27465             </para>\r
27466             </remarks>\r
27467         </member>\r
27468         <member name="T:log4net.GlobalContext">\r
27469             <summary>\r
27470             The log4net Global Context.\r
27471             </summary>\r
27472             <remarks>\r
27473             <para>\r
27474             The <c>GlobalContext</c> provides a location for global debugging \r
27475             information to be stored.\r
27476             </para>\r
27477             <para>\r
27478             The global context has a properties map and these properties can \r
27479             be included in the output of log messages. The <see cref="T:log4net.Layout.PatternLayout"/>\r
27480             supports selecting and outputing these properties.\r
27481             </para>\r
27482             <para>\r
27483             By default the <c>log4net:HostName</c> property is set to the name of \r
27484             the current machine.\r
27485             </para>\r
27486             </remarks>\r
27487             <example>\r
27488             <code lang="C#">\r
27489             GlobalContext.Properties["hostname"] = Environment.MachineName;\r
27490             </code>\r
27491             </example>\r
27492             <threadsafety static="true" instance="true"/>\r
27493             <author>Nicko Cadell</author>\r
27494         </member>\r
27495         <member name="M:log4net.GlobalContext.#ctor">\r
27496             <summary>\r
27497             Private Constructor. \r
27498             </summary>\r
27499             <remarks>\r
27500             Uses a private access modifier to prevent instantiation of this class.\r
27501             </remarks>\r
27502         </member>\r
27503         <member name="F:log4net.GlobalContext.s_properties">\r
27504             <summary>\r
27505             The global context properties instance\r
27506             </summary>\r
27507         </member>\r
27508         <member name="P:log4net.GlobalContext.Properties">\r
27509             <summary>\r
27510             The global properties map.\r
27511             </summary>\r
27512             <value>\r
27513             The global properties map.\r
27514             </value>\r
27515             <remarks>\r
27516             <para>\r
27517             The global properties map.\r
27518             </para>\r
27519             </remarks>\r
27520         </member>\r
27521         <member name="T:log4net.LogicalThreadContext">\r
27522             <summary>\r
27523             The log4net Logical Thread Context.\r
27524             </summary>\r
27525             <remarks>\r
27526             <para>\r
27527             The <c>LogicalThreadContext</c> provides a location for <see cref="T:System.Runtime.Remoting.Messaging.CallContext"/> specific debugging \r
27528             information to be stored.\r
27529             The <c>LogicalThreadContext</c> properties override any <see cref="T:log4net.ThreadContext"/> or <see cref="T:log4net.GlobalContext"/>\r
27530             properties with the same name.\r
27531             </para>\r
27532             <para>\r
27533             The Logical Thread Context has a properties map and a stack.\r
27534             The properties and stack can \r
27535             be included in the output of log messages. The <see cref="T:log4net.Layout.PatternLayout"/>\r
27536             supports selecting and outputting these properties.\r
27537             </para>\r
27538             <para>\r
27539             The Logical Thread Context provides a diagnostic context for the current call context. \r
27540             This is an instrument for distinguishing interleaved log\r
27541             output from different sources. Log output is typically interleaved\r
27542             when a server handles multiple clients near-simultaneously.\r
27543             </para>\r
27544             <para>\r
27545             The Logical Thread Context is managed on a per <see cref="T:System.Runtime.Remoting.Messaging.CallContext"/> basis.\r
27546             </para>\r
27547             </remarks>\r
27548             <example>Example of using the thread context properties to store a username.\r
27549             <code lang="C#">\r
27550             LogicalThreadContext.Properties["user"] = userName;\r
27551             log.Info("This log message has a LogicalThreadContext Property called 'user'");\r
27552             </code>\r
27553             </example>\r
27554             <example>Example of how to push a message into the context stack\r
27555             <code lang="C#">\r
27556             using(LogicalThreadContext.Stacks["LDC"].Push("my context message"))\r
27557             {\r
27558                 log.Info("This log message has a LogicalThreadContext Stack message that includes 'my context message'");\r
27559             \r
27560             } // at the end of the using block the message is automatically popped \r
27561             </code>\r
27562             </example>\r
27563             <threadsafety static="true" instance="true"/>\r
27564             <author>Nicko Cadell</author>\r
27565         </member>\r
27566         <member name="M:log4net.LogicalThreadContext.#ctor">\r
27567             <summary>\r
27568             Private Constructor. \r
27569             </summary>\r
27570             <remarks>\r
27571             <para>\r
27572             Uses a private access modifier to prevent instantiation of this class.\r
27573             </para>\r
27574             </remarks>\r
27575         </member>\r
27576         <member name="F:log4net.LogicalThreadContext.s_properties">\r
27577             <summary>\r
27578             The thread context properties instance\r
27579             </summary>\r
27580         </member>\r
27581         <member name="F:log4net.LogicalThreadContext.s_stacks">\r
27582             <summary>\r
27583             The thread context stacks instance\r
27584             </summary>\r
27585         </member>\r
27586         <member name="P:log4net.LogicalThreadContext.Properties">\r
27587             <summary>\r
27588             The thread properties map\r
27589             </summary>\r
27590             <value>\r
27591             The thread properties map\r
27592             </value>\r
27593             <remarks>\r
27594             <para>\r
27595             The <c>LogicalThreadContext</c> properties override any <see cref="T:log4net.ThreadContext"/> \r
27596             or <see cref="T:log4net.GlobalContext"/> properties with the same name.\r
27597             </para>\r
27598             </remarks>\r
27599         </member>\r
27600         <member name="P:log4net.LogicalThreadContext.Stacks">\r
27601             <summary>\r
27602             The thread stacks\r
27603             </summary>\r
27604             <value>\r
27605             stack map\r
27606             </value>\r
27607             <remarks>\r
27608             <para>\r
27609             The logical thread stacks.\r
27610             </para>\r
27611             </remarks>\r
27612         </member>\r
27613         <member name="T:log4net.LogManager">\r
27614             <summary>\r
27615             This class is used by client applications to request logger instances.\r
27616             </summary>\r
27617             <remarks>\r
27618             <para>\r
27619             This class has static methods that are used by a client to request\r
27620             a logger instance. The <see cref="M:log4net.LogManager.GetLogger(System.String)"/> method is \r
27621             used to retrieve a logger.\r
27622             </para>\r
27623             <para>\r
27624             See the <see cref="T:log4net.ILog"/> interface for more details.\r
27625             </para>\r
27626             </remarks>\r
27627             <example>Simple example of logging messages\r
27628             <code lang="C#">\r
27629             ILog log = LogManager.GetLogger("application-log");\r
27630             \r
27631             log.Info("Application Start");\r
27632             log.Debug("This is a debug message");\r
27633             \r
27634             if (log.IsDebugEnabled)\r
27635             {\r
27636                 log.Debug("This is another debug message");\r
27637             }\r
27638             </code>\r
27639             </example>\r
27640             <threadsafety static="true" instance="true"/>\r
27641             <seealso cref="T:log4net.ILog"/>\r
27642             <author>Nicko Cadell</author>\r
27643             <author>Gert Driesen</author>\r
27644         </member>\r
27645         <member name="M:log4net.LogManager.#ctor">\r
27646             <summary>\r
27647             Initializes a new instance of the <see cref="T:log4net.LogManager"/> class. \r
27648             </summary>\r
27649             <remarks>\r
27650             Uses a private access modifier to prevent instantiation of this class.\r
27651             </remarks>\r
27652         </member>\r
27653         <member name="M:log4net.LogManager.Exists(System.String)">\r
27654             <overloads>Returns the named logger if it exists.</overloads>\r
27655             <summary>\r
27656             Returns the named logger if it exists.\r
27657             </summary>\r
27658             <remarks>\r
27659             <para>\r
27660             If the named logger exists (in the default repository) then it\r
27661             returns a reference to the logger, otherwise it returns <c>null</c>.\r
27662             </para>\r
27663             </remarks>\r
27664             <param name="name">The fully qualified logger name to look for.</param>\r
27665             <returns>The logger found, or <c>null</c> if no logger could be found.</returns>\r
27666         </member>\r
27667         <member name="M:log4net.LogManager.Exists(System.String,System.String)">\r
27668             <summary>\r
27669             Returns the named logger if it exists.\r
27670             </summary>\r
27671             <remarks>\r
27672             <para>\r
27673             If the named logger exists (in the specified repository) then it\r
27674             returns a reference to the logger, otherwise it returns\r
27675             <c>null</c>.\r
27676             </para>\r
27677             </remarks>\r
27678             <param name="repository">The repository to lookup in.</param>\r
27679             <param name="name">The fully qualified logger name to look for.</param>\r
27680             <returns>\r
27681             The logger found, or <c>null</c> if the logger doesn't exist in the specified \r
27682             repository.\r
27683             </returns>\r
27684         </member>\r
27685         <member name="M:log4net.LogManager.Exists(System.Reflection.Assembly,System.String)">\r
27686             <summary>\r
27687             Returns the named logger if it exists.\r
27688             </summary>\r
27689             <remarks>\r
27690             <para>\r
27691             If the named logger exists (in the repository for the specified assembly) then it\r
27692             returns a reference to the logger, otherwise it returns\r
27693             <c>null</c>.\r
27694             </para>\r
27695             </remarks>\r
27696             <param name="repositoryAssembly">The assembly to use to lookup the repository.</param>\r
27697             <param name="name">The fully qualified logger name to look for.</param>\r
27698             <returns>\r
27699             The logger, or <c>null</c> if the logger doesn't exist in the specified\r
27700             assembly's repository.\r
27701             </returns>\r
27702         </member>\r
27703         <member name="M:log4net.LogManager.GetCurrentLoggers">\r
27704             <overloads>Get the currently defined loggers.</overloads>\r
27705             <summary>\r
27706             Returns all the currently defined loggers in the default repository.\r
27707             </summary>\r
27708             <remarks>\r
27709             <para>The root logger is <b>not</b> included in the returned array.</para>\r
27710             </remarks>\r
27711             <returns>All the defined loggers.</returns>\r
27712         </member>\r
27713         <member name="M:log4net.LogManager.GetCurrentLoggers(System.String)">\r
27714             <summary>\r
27715             Returns all the currently defined loggers in the specified repository.\r
27716             </summary>\r
27717             <param name="repository">The repository to lookup in.</param>\r
27718             <remarks>\r
27719             The root logger is <b>not</b> included in the returned array.\r
27720             </remarks>\r
27721             <returns>All the defined loggers.</returns>\r
27722         </member>\r
27723         <member name="M:log4net.LogManager.GetCurrentLoggers(System.Reflection.Assembly)">\r
27724             <summary>\r
27725             Returns all the currently defined loggers in the specified assembly's repository.\r
27726             </summary>\r
27727             <param name="repositoryAssembly">The assembly to use to lookup the repository.</param>\r
27728             <remarks>\r
27729             The root logger is <b>not</b> included in the returned array.\r
27730             </remarks>\r
27731             <returns>All the defined loggers.</returns>\r
27732         </member>\r
27733         <member name="M:log4net.LogManager.GetLogger(System.String)">\r
27734             <overloads>Get or create a logger.</overloads>\r
27735             <summary>\r
27736             Retrieves or creates a named logger.\r
27737             </summary>\r
27738             <remarks>\r
27739             <para>\r
27740             Retrieves a logger named as the <paramref name="name"/>\r
27741             parameter. If the named logger already exists, then the\r
27742             existing instance will be returned. Otherwise, a new instance is\r
27743             created.\r
27744             </para>\r
27745             <para>By default, loggers do not have a set level but inherit\r
27746             it from the hierarchy. This is one of the central features of\r
27747             log4net.\r
27748             </para>\r
27749             </remarks>\r
27750             <param name="name">The name of the logger to retrieve.</param>\r
27751             <returns>The logger with the name specified.</returns>\r
27752         </member>\r
27753         <member name="M:log4net.LogManager.GetLogger(System.String,System.String)">\r
27754             <summary>\r
27755             Retrieves or creates a named logger.\r
27756             </summary>\r
27757             <remarks>\r
27758             <para>\r
27759             Retrieve a logger named as the <paramref name="name"/>\r
27760             parameter. If the named logger already exists, then the\r
27761             existing instance will be returned. Otherwise, a new instance is\r
27762             created.\r
27763             </para>\r
27764             <para>\r
27765             By default, loggers do not have a set level but inherit\r
27766             it from the hierarchy. This is one of the central features of\r
27767             log4net.\r
27768             </para>\r
27769             </remarks>\r
27770             <param name="repository">The repository to lookup in.</param>\r
27771             <param name="name">The name of the logger to retrieve.</param>\r
27772             <returns>The logger with the name specified.</returns>\r
27773         </member>\r
27774         <member name="M:log4net.LogManager.GetLogger(System.Reflection.Assembly,System.String)">\r
27775             <summary>\r
27776             Retrieves or creates a named logger.\r
27777             </summary>\r
27778             <remarks>\r
27779             <para>\r
27780             Retrieve a logger named as the <paramref name="name"/>\r
27781             parameter. If the named logger already exists, then the\r
27782             existing instance will be returned. Otherwise, a new instance is\r
27783             created.\r
27784             </para>\r
27785             <para>\r
27786             By default, loggers do not have a set level but inherit\r
27787             it from the hierarchy. This is one of the central features of\r
27788             log4net.\r
27789             </para>\r
27790             </remarks>\r
27791             <param name="repositoryAssembly">The assembly to use to lookup the repository.</param>\r
27792             <param name="name">The name of the logger to retrieve.</param>\r
27793             <returns>The logger with the name specified.</returns>\r
27794         </member>\r
27795         <member name="M:log4net.LogManager.GetLogger(System.Type)">\r
27796             <summary>\r
27797             Shorthand for <see cref="M:log4net.LogManager.GetLogger(System.String)"/>.\r
27798             </summary>\r
27799             <remarks>\r
27800             Get the logger for the fully qualified name of the type specified.\r
27801             </remarks>\r
27802             <param name="type">The full name of <paramref name="type"/> will be used as the name of the logger to retrieve.</param>\r
27803             <returns>The logger with the name specified.</returns>\r
27804         </member>\r
27805         <member name="M:log4net.LogManager.GetLogger(System.String,System.Type)">\r
27806             <summary>\r
27807             Shorthand for <see cref="M:log4net.LogManager.GetLogger(System.String)"/>.\r
27808             </summary>\r
27809             <remarks>\r
27810             Gets the logger for the fully qualified name of the type specified.\r
27811             </remarks>\r
27812             <param name="repository">The repository to lookup in.</param>\r
27813             <param name="type">The full name of <paramref name="type"/> will be used as the name of the logger to retrieve.</param>\r
27814             <returns>The logger with the name specified.</returns>\r
27815         </member>\r
27816         <member name="M:log4net.LogManager.GetLogger(System.Reflection.Assembly,System.Type)">\r
27817             <summary>\r
27818             Shorthand for <see cref="M:log4net.LogManager.GetLogger(System.String)"/>.\r
27819             </summary>\r
27820             <remarks>\r
27821             Gets the logger for the fully qualified name of the type specified.\r
27822             </remarks>\r
27823             <param name="repositoryAssembly">The assembly to use to lookup the repository.</param>\r
27824             <param name="type">The full name of <paramref name="type"/> will be used as the name of the logger to retrieve.</param>\r
27825             <returns>The logger with the name specified.</returns>\r
27826         </member>\r
27827         <member name="M:log4net.LogManager.Shutdown">\r
27828             <summary>\r
27829             Shuts down the log4net system.\r
27830             </summary>\r
27831             <remarks>\r
27832             <para>\r
27833             Calling this method will <b>safely</b> close and remove all\r
27834             appenders in all the loggers including root contained in all the\r
27835             default repositories.\r
27836             </para>\r
27837             <para>\r
27838             Some appenders need to be closed before the application exists. \r
27839             Otherwise, pending logging events might be lost.\r
27840             </para>\r
27841             <para>The <c>shutdown</c> method is careful to close nested\r
27842             appenders before closing regular appenders. This is allows\r
27843             configurations where a regular appender is attached to a logger\r
27844             and again to a nested appender.\r
27845             </para>\r
27846             </remarks>\r
27847         </member>\r
27848         <member name="M:log4net.LogManager.ShutdownRepository">\r
27849             <overloads>Shutdown a logger repository.</overloads>\r
27850             <summary>\r
27851             Shuts down the default repository.\r
27852             </summary>\r
27853             <remarks>\r
27854             <para>\r
27855             Calling this method will <b>safely</b> close and remove all\r
27856             appenders in all the loggers including root contained in the\r
27857             default repository.\r
27858             </para>\r
27859             <para>Some appenders need to be closed before the application exists. \r
27860             Otherwise, pending logging events might be lost.\r
27861             </para>\r
27862             <para>The <c>shutdown</c> method is careful to close nested\r
27863             appenders before closing regular appenders. This is allows\r
27864             configurations where a regular appender is attached to a logger\r
27865             and again to a nested appender.\r
27866             </para>\r
27867             </remarks>\r
27868         </member>\r
27869         <member name="M:log4net.LogManager.ShutdownRepository(System.String)">\r
27870             <summary>\r
27871             Shuts down the repository for the repository specified.\r
27872             </summary>\r
27873             <remarks>\r
27874             <para>\r
27875             Calling this method will <b>safely</b> close and remove all\r
27876             appenders in all the loggers including root contained in the\r
27877             <paramref name="repository"/> specified.\r
27878             </para>\r
27879             <para>\r
27880             Some appenders need to be closed before the application exists. \r
27881             Otherwise, pending logging events might be lost.\r
27882             </para>\r
27883             <para>The <c>shutdown</c> method is careful to close nested\r
27884             appenders before closing regular appenders. This is allows\r
27885             configurations where a regular appender is attached to a logger\r
27886             and again to a nested appender.\r
27887             </para>\r
27888             </remarks>\r
27889             <param name="repository">The repository to shutdown.</param>\r
27890         </member>\r
27891         <member name="M:log4net.LogManager.ShutdownRepository(System.Reflection.Assembly)">\r
27892             <summary>\r
27893             Shuts down the repository specified.\r
27894             </summary>\r
27895             <remarks>\r
27896             <para>\r
27897             Calling this method will <b>safely</b> close and remove all\r
27898             appenders in all the loggers including root contained in the\r
27899             repository. The repository is looked up using\r
27900             the <paramref name="repositoryAssembly"/> specified.\r
27901             </para>\r
27902             <para>\r
27903             Some appenders need to be closed before the application exists. \r
27904             Otherwise, pending logging events might be lost.\r
27905             </para>\r
27906             <para>\r
27907             The <c>shutdown</c> method is careful to close nested\r
27908             appenders before closing regular appenders. This is allows\r
27909             configurations where a regular appender is attached to a logger\r
27910             and again to a nested appender.\r
27911             </para>\r
27912             </remarks>\r
27913             <param name="repositoryAssembly">The assembly to use to lookup the repository.</param>\r
27914         </member>\r
27915         <member name="M:log4net.LogManager.ResetConfiguration">\r
27916             <overloads>Reset the configuration of a repository</overloads>\r
27917             <summary>\r
27918             Resets all values contained in this repository instance to their defaults.\r
27919             </summary>\r
27920             <remarks>\r
27921             <para>\r
27922             Resets all values contained in the repository instance to their\r
27923             defaults.  This removes all appenders from all loggers, sets\r
27924             the level of all non-root loggers to <c>null</c>,\r
27925             sets their additivity flag to <c>true</c> and sets the level\r
27926             of the root logger to <see cref="F:log4net.Core.Level.Debug"/>. Moreover,\r
27927             message disabling is set to its default "off" value.\r
27928             </para>             \r
27929             </remarks>\r
27930         </member>\r
27931         <member name="M:log4net.LogManager.ResetConfiguration(System.String)">\r
27932             <summary>\r
27933             Resets all values contained in this repository instance to their defaults.\r
27934             </summary>\r
27935             <remarks>\r
27936             <para>\r
27937             Reset all values contained in the repository instance to their\r
27938             defaults.  This removes all appenders from all loggers, sets\r
27939             the level of all non-root loggers to <c>null</c>,\r
27940             sets their additivity flag to <c>true</c> and sets the level\r
27941             of the root logger to <see cref="F:log4net.Core.Level.Debug"/>. Moreover,\r
27942             message disabling is set to its default "off" value.\r
27943             </para>             \r
27944             </remarks>\r
27945             <param name="repository">The repository to reset.</param>\r
27946         </member>\r
27947         <member name="M:log4net.LogManager.ResetConfiguration(System.Reflection.Assembly)">\r
27948             <summary>\r
27949             Resets all values contained in this repository instance to their defaults.\r
27950             </summary>\r
27951             <remarks>\r
27952             <para>\r
27953             Reset all values contained in the repository instance to their\r
27954             defaults.  This removes all appenders from all loggers, sets\r
27955             the level of all non-root loggers to <c>null</c>,\r
27956             sets their additivity flag to <c>true</c> and sets the level\r
27957             of the root logger to <see cref="F:log4net.Core.Level.Debug"/>. Moreover,\r
27958             message disabling is set to its default "off" value.\r
27959             </para>             \r
27960             </remarks>\r
27961             <param name="repositoryAssembly">The assembly to use to lookup the repository to reset.</param>\r
27962         </member>\r
27963         <member name="M:log4net.LogManager.GetLoggerRepository">\r
27964             <overloads>Get the logger repository.</overloads>\r
27965             <summary>\r
27966             Returns the default <see cref="T:log4net.Repository.ILoggerRepository"/> instance.\r
27967             </summary>\r
27968             <remarks>\r
27969             <para>\r
27970             Gets the <see cref="T:log4net.Repository.ILoggerRepository"/> for the repository specified\r
27971             by the callers assembly (<see cref="M:System.Reflection.Assembly.GetCallingAssembly"/>).\r
27972             </para>\r
27973             </remarks>\r
27974             <returns>The <see cref="T:log4net.Repository.ILoggerRepository"/> instance for the default repository.</returns>\r
27975         </member>\r
27976         <member name="M:log4net.LogManager.GetLoggerRepository(System.String)">\r
27977             <summary>\r
27978             Returns the default <see cref="T:log4net.Repository.ILoggerRepository"/> instance.\r
27979             </summary>\r
27980             <returns>The default <see cref="T:log4net.Repository.ILoggerRepository"/> instance.</returns>\r
27981             <remarks>\r
27982             <para>\r
27983             Gets the <see cref="T:log4net.Repository.ILoggerRepository"/> for the repository specified\r
27984             by the <paramref name="repository"/> argument.\r
27985             </para>\r
27986             </remarks>\r
27987             <param name="repository">The repository to lookup in.</param>\r
27988         </member>\r
27989         <member name="M:log4net.LogManager.GetLoggerRepository(System.Reflection.Assembly)">\r
27990             <summary>\r
27991             Returns the default <see cref="T:log4net.Repository.ILoggerRepository"/> instance.\r
27992             </summary>\r
27993             <returns>The default <see cref="T:log4net.Repository.ILoggerRepository"/> instance.</returns>\r
27994             <remarks>\r
27995             <para>\r
27996             Gets the <see cref="T:log4net.Repository.ILoggerRepository"/> for the repository specified\r
27997             by the <paramref name="repositoryAssembly"/> argument.\r
27998             </para>\r
27999             </remarks>\r
28000             <param name="repositoryAssembly">The assembly to use to lookup the repository.</param>\r
28001         </member>\r
28002         <member name="M:log4net.LogManager.GetRepository">\r
28003             <overloads>Get a logger repository.</overloads>\r
28004             <summary>\r
28005             Returns the default <see cref="T:log4net.Repository.ILoggerRepository"/> instance.\r
28006             </summary>\r
28007             <remarks>\r
28008             <para>\r
28009             Gets the <see cref="T:log4net.Repository.ILoggerRepository"/> for the repository specified\r
28010             by the callers assembly (<see cref="M:System.Reflection.Assembly.GetCallingAssembly"/>).\r
28011             </para>\r
28012             </remarks>\r
28013             <returns>The <see cref="T:log4net.Repository.ILoggerRepository"/> instance for the default repository.</returns>\r
28014         </member>\r
28015         <member name="M:log4net.LogManager.GetRepository(System.String)">\r
28016             <summary>\r
28017             Returns the default <see cref="T:log4net.Repository.ILoggerRepository"/> instance.\r
28018             </summary>\r
28019             <returns>The default <see cref="T:log4net.Repository.ILoggerRepository"/> instance.</returns>\r
28020             <remarks>\r
28021             <para>\r
28022             Gets the <see cref="T:log4net.Repository.ILoggerRepository"/> for the repository specified\r
28023             by the <paramref name="repository"/> argument.\r
28024             </para>\r
28025             </remarks>\r
28026             <param name="repository">The repository to lookup in.</param>\r
28027         </member>\r
28028         <member name="M:log4net.LogManager.GetRepository(System.Reflection.Assembly)">\r
28029             <summary>\r
28030             Returns the default <see cref="T:log4net.Repository.ILoggerRepository"/> instance.\r
28031             </summary>\r
28032             <returns>The default <see cref="T:log4net.Repository.ILoggerRepository"/> instance.</returns>\r
28033             <remarks>\r
28034             <para>\r
28035             Gets the <see cref="T:log4net.Repository.ILoggerRepository"/> for the repository specified\r
28036             by the <paramref name="repositoryAssembly"/> argument.\r
28037             </para>\r
28038             </remarks>\r
28039             <param name="repositoryAssembly">The assembly to use to lookup the repository.</param>\r
28040         </member>\r
28041         <member name="M:log4net.LogManager.CreateDomain(System.Type)">\r
28042             <overloads>Create a domain</overloads>\r
28043             <summary>\r
28044             Creates a repository with the specified repository type.\r
28045             </summary>\r
28046             <remarks>\r
28047             <para>\r
28048             <b>CreateDomain is obsolete. Use CreateRepository instead of CreateDomain.</b>\r
28049             </para>\r
28050             <para>\r
28051             The <see cref="T:log4net.Repository.ILoggerRepository"/> created will be associated with the repository\r
28052             specified such that a call to <see cref="M:log4net.LogManager.GetRepository"/> will return \r
28053             the same repository instance.\r
28054             </para>\r
28055             </remarks>\r
28056             <param name="repositoryType">A <see cref="T:System.Type"/> that implements <see cref="T:log4net.Repository.ILoggerRepository"/>\r
28057             and has a no arg constructor. An instance of this type will be created to act\r
28058             as the <see cref="T:log4net.Repository.ILoggerRepository"/> for the repository specified.</param>\r
28059             <returns>The <see cref="T:log4net.Repository.ILoggerRepository"/> created for the repository.</returns>\r
28060         </member>\r
28061         <member name="M:log4net.LogManager.CreateRepository(System.Type)">\r
28062             <overloads>Create a logger repository.</overloads>\r
28063             <summary>\r
28064             Creates a repository with the specified repository type.\r
28065             </summary>\r
28066             <param name="repositoryType">A <see cref="T:System.Type"/> that implements <see cref="T:log4net.Repository.ILoggerRepository"/>\r
28067             and has a no arg constructor. An instance of this type will be created to act\r
28068             as the <see cref="T:log4net.Repository.ILoggerRepository"/> for the repository specified.</param>\r
28069             <returns>The <see cref="T:log4net.Repository.ILoggerRepository"/> created for the repository.</returns>\r
28070             <remarks>\r
28071             <para>\r
28072             The <see cref="T:log4net.Repository.ILoggerRepository"/> created will be associated with the repository\r
28073             specified such that a call to <see cref="M:log4net.LogManager.GetRepository"/> will return \r
28074             the same repository instance.\r
28075             </para>\r
28076             </remarks>\r
28077         </member>\r
28078         <member name="M:log4net.LogManager.CreateDomain(System.String)">\r
28079             <summary>\r
28080             Creates a repository with the specified name.\r
28081             </summary>\r
28082             <remarks>\r
28083             <para>\r
28084             <b>CreateDomain is obsolete. Use CreateRepository instead of CreateDomain.</b>\r
28085             </para>\r
28086             <para>\r
28087             Creates the default type of <see cref="T:log4net.Repository.ILoggerRepository"/> which is a\r
28088             <see cref="T:log4net.Repository.Hierarchy.Hierarchy"/> object.\r
28089             </para>\r
28090             <para>\r
28091             The <paramref name="repository"/> name must be unique. Repositories cannot be redefined.\r
28092             An <see cref="T:System.Exception"/> will be thrown if the repository already exists.\r
28093             </para>\r
28094             </remarks>\r
28095             <param name="repository">The name of the repository, this must be unique amongst repositories.</param>\r
28096             <returns>The <see cref="T:log4net.Repository.ILoggerRepository"/> created for the repository.</returns>\r
28097             <exception cref="T:log4net.Core.LogException">The specified repository already exists.</exception>\r
28098         </member>\r
28099         <member name="M:log4net.LogManager.CreateRepository(System.String)">\r
28100             <summary>\r
28101             Creates a repository with the specified name.\r
28102             </summary>\r
28103             <remarks>\r
28104             <para>\r
28105             Creates the default type of <see cref="T:log4net.Repository.ILoggerRepository"/> which is a\r
28106             <see cref="T:log4net.Repository.Hierarchy.Hierarchy"/> object.\r
28107             </para>\r
28108             <para>\r
28109             The <paramref name="repository"/> name must be unique. Repositories cannot be redefined.\r
28110             An <see cref="T:System.Exception"/> will be thrown if the repository already exists.\r
28111             </para>\r
28112             </remarks>\r
28113             <param name="repository">The name of the repository, this must be unique amongst repositories.</param>\r
28114             <returns>The <see cref="T:log4net.Repository.ILoggerRepository"/> created for the repository.</returns>\r
28115             <exception cref="T:log4net.Core.LogException">The specified repository already exists.</exception>\r
28116         </member>\r
28117         <member name="M:log4net.LogManager.CreateDomain(System.String,System.Type)">\r
28118             <summary>\r
28119             Creates a repository with the specified name and repository type.\r
28120             </summary>\r
28121             <remarks>\r
28122             <para>\r
28123             <b>CreateDomain is obsolete. Use CreateRepository instead of CreateDomain.</b>\r
28124             </para>\r
28125             <para>\r
28126             The <paramref name="repository"/> name must be unique. Repositories cannot be redefined.\r
28127             An <see cref="T:System.Exception"/> will be thrown if the repository already exists.\r
28128             </para>\r
28129             </remarks>\r
28130             <param name="repository">The name of the repository, this must be unique to the repository.</param>\r
28131             <param name="repositoryType">A <see cref="T:System.Type"/> that implements <see cref="T:log4net.Repository.ILoggerRepository"/>\r
28132             and has a no arg constructor. An instance of this type will be created to act\r
28133             as the <see cref="T:log4net.Repository.ILoggerRepository"/> for the repository specified.</param>\r
28134             <returns>The <see cref="T:log4net.Repository.ILoggerRepository"/> created for the repository.</returns>\r
28135             <exception cref="T:log4net.Core.LogException">The specified repository already exists.</exception>\r
28136         </member>\r
28137         <member name="M:log4net.LogManager.CreateRepository(System.String,System.Type)">\r
28138             <summary>\r
28139             Creates a repository with the specified name and repository type.\r
28140             </summary>\r
28141             <remarks>\r
28142             <para>\r
28143             The <paramref name="repository"/> name must be unique. Repositories cannot be redefined.\r
28144             An <see cref="T:System.Exception"/> will be thrown if the repository already exists.\r
28145             </para>\r
28146             </remarks>\r
28147             <param name="repository">The name of the repository, this must be unique to the repository.</param>\r
28148             <param name="repositoryType">A <see cref="T:System.Type"/> that implements <see cref="T:log4net.Repository.ILoggerRepository"/>\r
28149             and has a no arg constructor. An instance of this type will be created to act\r
28150             as the <see cref="T:log4net.Repository.ILoggerRepository"/> for the repository specified.</param>\r
28151             <returns>The <see cref="T:log4net.Repository.ILoggerRepository"/> created for the repository.</returns>\r
28152             <exception cref="T:log4net.Core.LogException">The specified repository already exists.</exception>\r
28153         </member>\r
28154         <member name="M:log4net.LogManager.CreateDomain(System.Reflection.Assembly,System.Type)">\r
28155             <summary>\r
28156             Creates a repository for the specified assembly and repository type.\r
28157             </summary>\r
28158             <remarks>\r
28159             <para>\r
28160             <b>CreateDomain is obsolete. Use CreateRepository instead of CreateDomain.</b>\r
28161             </para>\r
28162             <para>\r
28163             The <see cref="T:log4net.Repository.ILoggerRepository"/> created will be associated with the repository\r
28164             specified such that a call to <see cref="M:log4net.LogManager.GetRepository(System.Reflection.Assembly)"/> with the\r
28165             same assembly specified will return the same repository instance.\r
28166             </para>\r
28167             </remarks>\r
28168             <param name="repositoryAssembly">The assembly to use to get the name of the repository.</param>\r
28169             <param name="repositoryType">A <see cref="T:System.Type"/> that implements <see cref="T:log4net.Repository.ILoggerRepository"/>\r
28170             and has a no arg constructor. An instance of this type will be created to act\r
28171             as the <see cref="T:log4net.Repository.ILoggerRepository"/> for the repository specified.</param>\r
28172             <returns>The <see cref="T:log4net.Repository.ILoggerRepository"/> created for the repository.</returns>\r
28173         </member>\r
28174         <member name="M:log4net.LogManager.CreateRepository(System.Reflection.Assembly,System.Type)">\r
28175             <summary>\r
28176             Creates a repository for the specified assembly and repository type.\r
28177             </summary>\r
28178             <remarks>\r
28179             <para>\r
28180             The <see cref="T:log4net.Repository.ILoggerRepository"/> created will be associated with the repository\r
28181             specified such that a call to <see cref="M:log4net.LogManager.GetRepository(System.Reflection.Assembly)"/> with the\r
28182             same assembly specified will return the same repository instance.\r
28183             </para>\r
28184             </remarks>\r
28185             <param name="repositoryAssembly">The assembly to use to get the name of the repository.</param>\r
28186             <param name="repositoryType">A <see cref="T:System.Type"/> that implements <see cref="T:log4net.Repository.ILoggerRepository"/>\r
28187             and has a no arg constructor. An instance of this type will be created to act\r
28188             as the <see cref="T:log4net.Repository.ILoggerRepository"/> for the repository specified.</param>\r
28189             <returns>The <see cref="T:log4net.Repository.ILoggerRepository"/> created for the repository.</returns>\r
28190         </member>\r
28191         <member name="M:log4net.LogManager.GetAllRepositories">\r
28192             <summary>\r
28193             Gets the list of currently defined repositories.\r
28194             </summary>\r
28195             <remarks>\r
28196             <para>\r
28197             Get an array of all the <see cref="T:log4net.Repository.ILoggerRepository"/> objects that have been created.\r
28198             </para>\r
28199             </remarks>\r
28200             <returns>An array of all the known <see cref="T:log4net.Repository.ILoggerRepository"/> objects.</returns>\r
28201         </member>\r
28202         <member name="M:log4net.LogManager.WrapLogger(log4net.Core.ILogger)">\r
28203             <summary>\r
28204             Looks up the wrapper object for the logger specified.\r
28205             </summary>\r
28206             <param name="logger">The logger to get the wrapper for.</param>\r
28207             <returns>The wrapper for the logger specified.</returns>\r
28208         </member>\r
28209         <member name="M:log4net.LogManager.WrapLoggers(log4net.Core.ILogger[])">\r
28210             <summary>\r
28211             Looks up the wrapper objects for the loggers specified.\r
28212             </summary>\r
28213             <param name="loggers">The loggers to get the wrappers for.</param>\r
28214             <returns>The wrapper objects for the loggers specified.</returns>\r
28215         </member>\r
28216         <member name="M:log4net.LogManager.WrapperCreationHandler(log4net.Core.ILogger)">\r
28217             <summary>\r
28218             Create the <see cref="T:log4net.Core.ILoggerWrapper"/> objects used by\r
28219             this manager.\r
28220             </summary>\r
28221             <param name="logger">The logger to wrap.</param>\r
28222             <returns>The wrapper for the logger specified.</returns>\r
28223         </member>\r
28224         <member name="F:log4net.LogManager.s_wrapperMap">\r
28225             <summary>\r
28226             The wrapper map to use to hold the <see cref="T:log4net.Core.LogImpl"/> objects.\r
28227             </summary>\r
28228         </member>\r
28229         <member name="T:log4net.MDC">\r
28230             <summary>\r
28231             Implementation of Mapped Diagnostic Contexts.\r
28232             </summary>\r
28233             <remarks>\r
28234             <note>\r
28235             <para>\r
28236             The MDC is deprecated and has been replaced by the <see cref="P:log4net.ThreadContext.Properties"/>.\r
28237             The current MDC implementation forwards to the <c>ThreadContext.Properties</c>.\r
28238             </para>\r
28239             </note>\r
28240             <para>\r
28241             The MDC class is similar to the <see cref="T:log4net.NDC"/> class except that it is\r
28242             based on a map instead of a stack. It provides <i>mapped\r
28243             diagnostic contexts</i>. A <i>Mapped Diagnostic Context</i>, or\r
28244             MDC in short, is an instrument for distinguishing interleaved log\r
28245             output from different sources. Log output is typically interleaved\r
28246             when a server handles multiple clients near-simultaneously.\r
28247             </para>\r
28248             <para>\r
28249             The MDC is managed on a per thread basis.\r
28250             </para>\r
28251             </remarks>\r
28252             <threadsafety static="true" instance="true"/>\r
28253             <author>Nicko Cadell</author>\r
28254             <author>Gert Driesen</author>\r
28255         </member>\r
28256         <member name="M:log4net.MDC.#ctor">\r
28257             <summary>\r
28258             Initializes a new instance of the <see cref="T:log4net.MDC"/> class. \r
28259             </summary>\r
28260             <remarks>\r
28261             Uses a private access modifier to prevent instantiation of this class.\r
28262             </remarks>\r
28263         </member>\r
28264         <member name="M:log4net.MDC.Get(System.String)">\r
28265             <summary>\r
28266             Gets the context value identified by the <paramref name="key"/> parameter.\r
28267             </summary>\r
28268             <param name="key">The key to lookup in the MDC.</param>\r
28269             <returns>The string value held for the key, or a <c>null</c> reference if no corresponding value is found.</returns>\r
28270             <remarks>\r
28271             <note>\r
28272             <para>\r
28273             The MDC is deprecated and has been replaced by the <see cref="P:log4net.ThreadContext.Properties"/>.\r
28274             The current MDC implementation forwards to the <c>ThreadContext.Properties</c>.\r
28275             </para>\r
28276             </note>\r
28277             <para>\r
28278             If the <paramref name="key"/> parameter does not look up to a\r
28279             previously defined context then <c>null</c> will be returned.\r
28280             </para>\r
28281             </remarks>\r
28282         </member>\r
28283         <member name="M:log4net.MDC.Set(System.String,System.String)">\r
28284             <summary>\r
28285             Add an entry to the MDC\r
28286             </summary>\r
28287             <param name="key">The key to store the value under.</param>\r
28288             <param name="value">The value to store.</param>\r
28289             <remarks>\r
28290             <note>\r
28291             <para>\r
28292             The MDC is deprecated and has been replaced by the <see cref="P:log4net.ThreadContext.Properties"/>.\r
28293             The current MDC implementation forwards to the <c>ThreadContext.Properties</c>.\r
28294             </para>\r
28295             </note>\r
28296             <para>\r
28297             Puts a context value (the <paramref name="val"/> parameter) as identified\r
28298             with the <paramref name="key"/> parameter into the current thread's\r
28299             context map.\r
28300             </para>\r
28301             <para>\r
28302             If a value is already defined for the <paramref name="key"/>\r
28303             specified then the value will be replaced. If the <paramref name="val"/> \r
28304             is specified as <c>null</c> then the key value mapping will be removed.\r
28305             </para>\r
28306             </remarks>\r
28307         </member>\r
28308         <member name="M:log4net.MDC.Remove(System.String)">\r
28309             <summary>\r
28310             Removes the key value mapping for the key specified.\r
28311             </summary>\r
28312             <param name="key">The key to remove.</param>\r
28313             <remarks>\r
28314             <note>\r
28315             <para>\r
28316             The MDC is deprecated and has been replaced by the <see cref="P:log4net.ThreadContext.Properties"/>.\r
28317             The current MDC implementation forwards to the <c>ThreadContext.Properties</c>.\r
28318             </para>\r
28319             </note>\r
28320             <para>\r
28321             Remove the specified entry from this thread's MDC\r
28322             </para>\r
28323             </remarks>\r
28324         </member>\r
28325         <member name="M:log4net.MDC.Clear">\r
28326             <summary>\r
28327             Clear all entries in the MDC\r
28328             </summary>\r
28329             <remarks>\r
28330             <note>\r
28331             <para>\r
28332             The MDC is deprecated and has been replaced by the <see cref="P:log4net.ThreadContext.Properties"/>.\r
28333             The current MDC implementation forwards to the <c>ThreadContext.Properties</c>.\r
28334             </para>\r
28335             </note>\r
28336             <para>\r
28337             Remove all the entries from this thread's MDC\r
28338             </para>\r
28339             </remarks>\r
28340         </member>\r
28341         <member name="T:log4net.NDC">\r
28342             <summary>\r
28343             Implementation of Nested Diagnostic Contexts.\r
28344             </summary>\r
28345             <remarks>\r
28346             <note>\r
28347             <para>\r
28348             The NDC is deprecated and has been replaced by the <see cref="P:log4net.ThreadContext.Stacks"/>.\r
28349             The current NDC implementation forwards to the <c>ThreadContext.Stacks["NDC"]</c>.\r
28350             </para>\r
28351             </note>\r
28352             <para>\r
28353             A Nested Diagnostic Context, or NDC in short, is an instrument\r
28354             to distinguish interleaved log output from different sources. Log\r
28355             output is typically interleaved when a server handles multiple\r
28356             clients near-simultaneously.\r
28357             </para>\r
28358             <para>\r
28359             Interleaved log output can still be meaningful if each log entry\r
28360             from different contexts had a distinctive stamp. This is where NDCs\r
28361             come into play.\r
28362             </para>\r
28363             <para>\r
28364             Note that NDCs are managed on a per thread basis. The NDC class\r
28365             is made up of static methods that operate on the context of the\r
28366             calling thread.\r
28367             </para>\r
28368             </remarks>\r
28369             <example>How to push a message into the context\r
28370             <code lang="C#">\r
28371             using(NDC.Push("my context message"))\r
28372             {\r
28373                 ... all log calls will have 'my context message' included ...\r
28374             \r
28375             } // at the end of the using block the message is automatically removed \r
28376             </code>\r
28377             </example>\r
28378             <threadsafety static="true" instance="true"/>\r
28379             <author>Nicko Cadell</author>\r
28380             <author>Gert Driesen</author>\r
28381         </member>\r
28382         <member name="M:log4net.NDC.#ctor">\r
28383             <summary>\r
28384             Initializes a new instance of the <see cref="T:log4net.NDC"/> class. \r
28385             </summary>\r
28386             <remarks>\r
28387             Uses a private access modifier to prevent instantiation of this class.\r
28388             </remarks>\r
28389         </member>\r
28390         <member name="M:log4net.NDC.Clear">\r
28391             <summary>\r
28392             Clears all the contextual information held on the current thread.\r
28393             </summary>\r
28394             <remarks>\r
28395             <note>\r
28396             <para>\r
28397             The NDC is deprecated and has been replaced by the <see cref="P:log4net.ThreadContext.Stacks"/>.\r
28398             The current NDC implementation forwards to the <c>ThreadContext.Stacks["NDC"]</c>.\r
28399             </para>\r
28400             </note>\r
28401             <para>\r
28402             Clears the stack of NDC data held on the current thread.\r
28403             </para>\r
28404             </remarks>\r
28405         </member>\r
28406         <member name="M:log4net.NDC.CloneStack">\r
28407             <summary>\r
28408             Creates a clone of the stack of context information.\r
28409             </summary>\r
28410             <returns>A clone of the context info for this thread.</returns>\r
28411             <remarks>\r
28412             <note>\r
28413             <para>\r
28414             The NDC is deprecated and has been replaced by the <see cref="P:log4net.ThreadContext.Stacks"/>.\r
28415             The current NDC implementation forwards to the <c>ThreadContext.Stacks["NDC"]</c>.\r
28416             </para>\r
28417             </note>\r
28418             <para>\r
28419             The results of this method can be passed to the <see cref="M:log4net.NDC.Inherit(System.Collections.Stack)"/> \r
28420             method to allow child threads to inherit the context of their \r
28421             parent thread.\r
28422             </para>\r
28423             </remarks>\r
28424         </member>\r
28425         <member name="M:log4net.NDC.Inherit(System.Collections.Stack)">\r
28426             <summary>\r
28427             Inherits the contextual information from another thread.\r
28428             </summary>\r
28429             <param name="stack">The context stack to inherit.</param>\r
28430             <remarks>\r
28431             <note>\r
28432             <para>\r
28433             The NDC is deprecated and has been replaced by the <see cref="P:log4net.ThreadContext.Stacks"/>.\r
28434             The current NDC implementation forwards to the <c>ThreadContext.Stacks["NDC"]</c>.\r
28435             </para>\r
28436             </note>\r
28437             <para>\r
28438             This thread will use the context information from the stack\r
28439             supplied. This can be used to initialize child threads with\r
28440             the same contextual information as their parent threads. These\r
28441             contexts will <b>NOT</b> be shared. Any further contexts that\r
28442             are pushed onto the stack will not be visible to the other.\r
28443             Call <see cref="M:log4net.NDC.CloneStack"/> to obtain a stack to pass to\r
28444             this method.\r
28445             </para>\r
28446             </remarks>\r
28447         </member>\r
28448         <member name="M:log4net.NDC.Pop">\r
28449             <summary>\r
28450             Removes the top context from the stack.\r
28451             </summary>\r
28452             <returns>\r
28453             The message in the context that was removed from the top \r
28454             of the stack.\r
28455             </returns>\r
28456             <remarks>\r
28457             <note>\r
28458             <para>\r
28459             The NDC is deprecated and has been replaced by the <see cref="P:log4net.ThreadContext.Stacks"/>.\r
28460             The current NDC implementation forwards to the <c>ThreadContext.Stacks["NDC"]</c>.\r
28461             </para>\r
28462             </note>\r
28463             <para>\r
28464             Remove the top context from the stack, and return\r
28465             it to the caller. If the stack is empty then an\r
28466             empty string (not <c>null</c>) is returned.\r
28467             </para>\r
28468             </remarks>\r
28469         </member>\r
28470         <member name="M:log4net.NDC.Push(System.String)">\r
28471             <summary>\r
28472             Pushes a new context message.\r
28473             </summary>\r
28474             <param name="message">The new context message.</param>\r
28475             <returns>\r
28476             An <see cref="T:System.IDisposable"/> that can be used to clean up \r
28477             the context stack.\r
28478             </returns>\r
28479             <remarks>\r
28480             <note>\r
28481             <para>\r
28482             The NDC is deprecated and has been replaced by the <see cref="P:log4net.ThreadContext.Stacks"/>.\r
28483             The current NDC implementation forwards to the <c>ThreadContext.Stacks["NDC"]</c>.\r
28484             </para>\r
28485             </note>\r
28486             <para>\r
28487             Pushes a new context onto the context stack. An <see cref="T:System.IDisposable"/>\r
28488             is returned that can be used to clean up the context stack. This\r
28489             can be easily combined with the <c>using</c> keyword to scope the\r
28490             context.\r
28491             </para>\r
28492             </remarks>\r
28493             <example>Simple example of using the <c>Push</c> method with the <c>using</c> keyword.\r
28494             <code lang="C#">\r
28495             using(log4net.NDC.Push("NDC_Message"))\r
28496             {\r
28497                 log.Warn("This should have an NDC message");\r
28498             }\r
28499             </code>\r
28500             </example>\r
28501         </member>\r
28502         <member name="M:log4net.NDC.Remove">\r
28503             <summary>\r
28504             Removes the context information for this thread. It is\r
28505             not required to call this method.\r
28506             </summary>\r
28507             <remarks>\r
28508             <note>\r
28509             <para>\r
28510             The NDC is deprecated and has been replaced by the <see cref="P:log4net.ThreadContext.Stacks"/>.\r
28511             The current NDC implementation forwards to the <c>ThreadContext.Stacks["NDC"]</c>.\r
28512             </para>\r
28513             </note>\r
28514             <para>\r
28515             This method is not implemented.\r
28516             </para>\r
28517             </remarks>\r
28518         </member>\r
28519         <member name="M:log4net.NDC.SetMaxDepth(System.Int32)">\r
28520             <summary>\r
28521             Forces the stack depth to be at most <paramref name="maxDepth"/>.\r
28522             </summary>\r
28523             <param name="maxDepth">The maximum depth of the stack</param>\r
28524             <remarks>\r
28525             <note>\r
28526             <para>\r
28527             The NDC is deprecated and has been replaced by the <see cref="P:log4net.ThreadContext.Stacks"/>.\r
28528             The current NDC implementation forwards to the <c>ThreadContext.Stacks["NDC"]</c>.\r
28529             </para>\r
28530             </note>\r
28531             <para>\r
28532             Forces the stack depth to be at most <paramref name="maxDepth"/>.\r
28533             This may truncate the head of the stack. This only affects the \r
28534             stack in the current thread. Also it does not prevent it from\r
28535             growing, it only sets the maximum depth at the time of the\r
28536             call. This can be used to return to a known context depth.\r
28537             </para>\r
28538             </remarks>\r
28539         </member>\r
28540         <member name="P:log4net.NDC.Depth">\r
28541             <summary>\r
28542             Gets the current context depth.\r
28543             </summary>\r
28544             <value>The current context depth.</value>\r
28545             <remarks>\r
28546             <note>\r
28547             <para>\r
28548             The NDC is deprecated and has been replaced by the <see cref="P:log4net.ThreadContext.Stacks"/>.\r
28549             The current NDC implementation forwards to the <c>ThreadContext.Stacks["NDC"]</c>.\r
28550             </para>\r
28551             </note>\r
28552             <para>\r
28553             The number of context values pushed onto the context stack.\r
28554             </para>\r
28555             <para>\r
28556             Used to record the current depth of the context. This can then \r
28557             be restored using the <see cref="M:log4net.NDC.SetMaxDepth(System.Int32)"/> method.\r
28558             </para>\r
28559             </remarks>\r
28560             <seealso cref="M:log4net.NDC.SetMaxDepth(System.Int32)"/>\r
28561         </member>\r
28562         <member name="T:log4net.ThreadContext">\r
28563             <summary>\r
28564             The log4net Thread Context.\r
28565             </summary>\r
28566             <remarks>\r
28567             <para>\r
28568             The <c>ThreadContext</c> provides a location for thread specific debugging \r
28569             information to be stored.\r
28570             The <c>ThreadContext</c> properties override any <see cref="T:log4net.GlobalContext"/>\r
28571             properties with the same name.\r
28572             </para>\r
28573             <para>\r
28574             The thread context has a properties map and a stack.\r
28575             The properties and stack can \r
28576             be included in the output of log messages. The <see cref="T:log4net.Layout.PatternLayout"/>\r
28577             supports selecting and outputting these properties.\r
28578             </para>\r
28579             <para>\r
28580             The Thread Context provides a diagnostic context for the current thread. \r
28581             This is an instrument for distinguishing interleaved log\r
28582             output from different sources. Log output is typically interleaved\r
28583             when a server handles multiple clients near-simultaneously.\r
28584             </para>\r
28585             <para>\r
28586             The Thread Context is managed on a per thread basis.\r
28587             </para>\r
28588             </remarks>\r
28589             <example>Example of using the thread context properties to store a username.\r
28590             <code lang="C#">\r
28591             ThreadContext.Properties["user"] = userName;\r
28592             log.Info("This log message has a ThreadContext Property called 'user'");\r
28593             </code>\r
28594             </example>\r
28595             <example>Example of how to push a message into the context stack\r
28596             <code lang="C#">\r
28597             using(ThreadContext.Stacks["NDC"].Push("my context message"))\r
28598             {\r
28599                 log.Info("This log message has a ThreadContext Stack message that includes 'my context message'");\r
28600             \r
28601             } // at the end of the using block the message is automatically popped \r
28602             </code>\r
28603             </example>\r
28604             <threadsafety static="true" instance="true"/>\r
28605             <author>Nicko Cadell</author>\r
28606         </member>\r
28607         <member name="M:log4net.ThreadContext.#ctor">\r
28608             <summary>\r
28609             Private Constructor. \r
28610             </summary>\r
28611             <remarks>\r
28612             <para>\r
28613             Uses a private access modifier to prevent instantiation of this class.\r
28614             </para>\r
28615             </remarks>\r
28616         </member>\r
28617         <member name="F:log4net.ThreadContext.s_properties">\r
28618             <summary>\r
28619             The thread context properties instance\r
28620             </summary>\r
28621         </member>\r
28622         <member name="F:log4net.ThreadContext.s_stacks">\r
28623             <summary>\r
28624             The thread context stacks instance\r
28625             </summary>\r
28626         </member>\r
28627         <member name="P:log4net.ThreadContext.Properties">\r
28628             <summary>\r
28629             The thread properties map\r
28630             </summary>\r
28631             <value>\r
28632             The thread properties map\r
28633             </value>\r
28634             <remarks>\r
28635             <para>\r
28636             The <c>ThreadContext</c> properties override any <see cref="T:log4net.GlobalContext"/>\r
28637             properties with the same name.\r
28638             </para>\r
28639             </remarks>\r
28640         </member>\r
28641         <member name="P:log4net.ThreadContext.Stacks">\r
28642             <summary>\r
28643             The thread stacks\r
28644             </summary>\r
28645             <value>\r
28646             stack map\r
28647             </value>\r
28648             <remarks>\r
28649             <para>\r
28650             The thread local stacks.\r
28651             </para>\r
28652             </remarks>\r
28653         </member>\r
28654     </members>\r
28655 </doc>\r