DiscoveryDocumentSerializer.cs: The class must be internal.
[mono.git] / mcs / class / System.Web.Services / System.Web.Services.Discovery / DiscoveryReferenceCollection.cs
index bf8a5702bd6220ffddf21d818b50fe47524ef4bb..ec81f3dadfc33d7e924db715e3460286e97d387b 100755 (executable)
@@ -3,57 +3,58 @@
 //\r
 // Author:\r
 //   Dave Bettin (javabettin@yahoo.com)\r
+//   Tim Coleman (tim@timcoleman.com)\r
 //\r
 // Copyright (C) Dave Bettin, 2002\r
+// Copyright (C) Tim Coleman, 2002\r
 //\r
 \r
 using System.Collections;\r
-using System.Reflection;\r
 \r
 namespace System.Web.Services.Discovery {\r
-\r
        public sealed class DiscoveryReferenceCollection : CollectionBase {\r
 \r
                #region Constructors\r
 \r
-               [MonoTODO]\r
                public DiscoveryReferenceCollection () \r
+                       : base ()\r
                {\r
-                       throw new NotImplementedException ();\r
                }\r
                \r
                #endregion // Constructors\r
 \r
                #region Properties\r
 \r
-               public DiscoveryReference this[int i] {\r
-                       [MonoTODO]\r
-                       get { throw new NotImplementedException (); }\r
-                       \r
-                       [MonoTODO]\r
-                       set { throw new NotImplementedException (); }\r
+               public DiscoveryReference this [int i] {\r
+                       get { \r
+                               if (i < 0 || i >= Count)\r
+                                       throw new ArgumentOutOfRangeException ();\r
+                               return (DiscoveryReference) InnerList [i]; \r
+                       }\r
+                       set {\r
+                               if (i < 0 || i >= Count)\r
+                                       throw new ArgumentOutOfRangeException ();\r
+                               InnerList [i] = value;\r
+                       }\r
                }\r
                \r
                #endregion // Properties\r
 \r
                #region Methods\r
 \r
-               [MonoTODO]\r
                public int Add (DiscoveryReference value)\r
                {\r
-                        throw new NotImplementedException ();\r
+                       return InnerList.Add (value);\r
                }\r
 \r
-               [MonoTODO]\r
                public bool Contains (DiscoveryReference value)\r
                {\r
-                        throw new NotImplementedException ();\r
+                       return InnerList.Contains (value);\r
                }\r
                \r
-               [MonoTODO]\r
                public void Remove (DiscoveryReference value)\r
                {\r
-                        throw new NotImplementedException ();\r
+                       InnerList.Remove (value);\r
                }\r
 \r
                #endregion // Methods\r