nicko 2005/06/15 10:54:21
Modified: src/Repository/Hierarchy XmlHierarchyConfigurator.cs
Log:
Applied patch for LOG4NET-34 Allow xml config values to be set via
XmlNodeType.CDATA or XmlNodeType.Text rather than just value=xxx
Revision Changes Path
1.17 +24 -3
logging-log4net/src/Repository/Hierarchy/XmlHierarchyConfigurator.cs
Index: XmlHierarchyConfigurator.cs
===================================================================
RCS file:
/home/cvs/logging-log4net/src/Repository/Hierarchy/XmlHierarchyConfigurator.cs,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -r1.16 -r1.17
--- XmlHierarchyConfigurator.cs 17 Jan 2005 20:18:47 -0000 1.16
+++ XmlHierarchyConfigurator.cs 15 Jun 2005 17:54:21 -0000 1.17
@@ -23,8 +23,6 @@
using System.Xml;
using log4net.Appender;
-using log4net.Layout;
-using log4net.Filter;
using log4net.Util;
using log4net.Core;
using log4net.ObjectRenderer;
@@ -591,10 +589,33 @@
}
else
{
+ string propertyValue = null;
+
if (element.GetAttributeNode(VALUE_ATTR) !=
null)
{
- string propertyValue =
element.GetAttribute(VALUE_ATTR);
+ propertyValue =
element.GetAttribute(VALUE_ATTR);
+ }
+ else if (element.HasChildNodes)
+ {
+ // Concatenate the CDATA and Text nodes
together
+ foreach(XmlNode childNode in
element.ChildNodes)
+ {
+ if (childNode.NodeType ==
XmlNodeType.CDATA || childNode.NodeType == XmlNodeType.Text)
+ {
+ if (propertyValue ==
null)
+ {
+ propertyValue =
childNode.InnerText;
+ }
+ else
+ {
+ propertyValue
+= childNode.InnerText;
+ }
+ }
+ }
+ }
+ if(propertyValue != null)
+ {
#if !NETCF
try
{