2002-03-08 Mike Kestner <mkestner@speakeasy.net>
authorMike Kestner <mkestner@gmail.com>
Fri, 8 Mar 2002 23:43:05 +0000 (23:43 -0000)
committerMike Kestner <mkestner@gmail.com>
Fri, 8 Mar 2002 23:43:05 +0000 (23:43 -0000)
* XmlNode.cs (Item): Implemented both indexers.

svn path=/trunk/mcs/; revision=3009

mcs/class/System.XML/System.Xml/ChangeLog
mcs/class/System.XML/System.Xml/XmlNode.cs

index 2f63971be68b52d5e22da91bff547be8a3b8a794..6b79000d426863ad1d59d1ea7fece3628b966de4 100644 (file)
@@ -1,3 +1,7 @@
+2002-03-08  Mike Kestner  <mkestner@speakeasy.net>
+
+       * XmlNode.cs (Item): Implemented both indexers.
+
 2002-03-08  Jason Diamond  <jason@injektilo.org>
 
        * DomEncodingType.cs, TreePosition.cs, XPathNodeType.cs, XmlDataType.cs,
index 0773cdaa350aec2f9df606fe811668276e2e4b42..88bddc770e8f3f7c8ebf56b80670155d341b2451 100644 (file)
@@ -82,16 +82,33 @@ namespace System.Xml
                        get { throw new NotImplementedException (); }
                }
 
-               [MonoTODO]
                [System.Runtime.CompilerServices.IndexerName("Item")]
                public virtual XmlElement this [string name] {
-                       get { throw new NotImplementedException (); }
+                       get { 
+                               foreach (XmlNode node in ChildNodes) {
+                                       if ((node.NodeType == XmlNodeType.Element) &&
+                                           (node.Name == name)) {
+                                               return (XmlElement) node;
+                                       }
+                               }
+
+                               return null;
+                       }
                }
 
-               [MonoTODO]
                [System.Runtime.CompilerServices.IndexerName("Item")]
                public virtual XmlElement this [string localname, string ns] {
-                       get { throw new NotImplementedException (); }
+                       get { 
+                               foreach (XmlNode node in ChildNodes) {
+                                       if ((node.NodeType == XmlNodeType.Element) &&
+                                           (node.LocalName == localname) && 
+                                           (node.NamespaceURI == ns)) {
+                                               return (XmlElement) node;
+                                       }
+                               }
+
+                               return null;
+                       }
                }
 
                public virtual XmlNode LastChild {