X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=mcs%2Fclass%2FSystem.Data%2FSystem.Data%2FInternalDataCollectionBase.cs;h=a63ba275c54f9b9e33ab2c8f74a991577b3fff06;hb=c21950a927ac0f18190708b5c8d5ccd297bab68c;hp=6de239f8cd00a7df480a47167da8b2bcfa421efb;hpb=2744f2972e4c4f4bda65c02b1b50ddc0862d2fdb;p=mono.git diff --git a/mcs/class/System.Data/System.Data/InternalDataCollectionBase.cs b/mcs/class/System.Data/System.Data/InternalDataCollectionBase.cs index 6de239f8cd0..a63ba275c54 100644 --- a/mcs/class/System.Data/System.Data/InternalDataCollectionBase.cs +++ b/mcs/class/System.Data/System.Data/InternalDataCollectionBase.cs @@ -9,9 +9,34 @@ // DataConstraintCollection // // Author: -// Daniel Morgan +// Daniel Morgan +// Tim Coleman // -// (C) Ximian, Inc. 2002 +// (C) Copyright 2002 Daniel Morgan +// (C) Copyright 2002 Tim Coleman +// + +// +// Copyright (C) 2004 Novell, Inc (http://www.novell.com) +// +// Permission is hereby granted, free of charge, to any person obtaining +// a copy of this software and associated documentation files (the +// "Software"), to deal in the Software without restriction, including +// without limitation the rights to use, copy, modify, merge, publish, +// distribute, sublicense, and/or sell copies of the Software, and to +// permit persons to whom the Software is furnished to do so, subject to +// the following conditions: +// +// The above copyright notice and this permission notice shall be +// included in all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. // using System; @@ -26,71 +51,92 @@ namespace System.Data /// to represent a collection of /// relations, tables, rows, columns, and constraints /// - public class InternalDataCollectionBase : ICollection, IEnumerable { - // Fields - private ArrayList list; + public class InternalDataCollectionBase : ICollection, IEnumerable + { + #region Fields + + private ArrayList list = null; private bool readOnly = false; private bool synchronized = false; - // Constructor - [MonoTODO] - public InternalDataCollectionBase() { - // FIXME: TODO + #endregion + + #region Constructors + + public InternalDataCollectionBase() + { list = new ArrayList(); } - + + #endregion + + #region Properties + + /// + /// Gets the total number of elements in a collection. + /// + [Browsable (false)] public virtual int Count { - [MonoTODO] - get { - return list.Count; - } + get { return list.Count; } } + /// + /// Gets a value indicating whether the InternalDataCollectionBase is read-only. + /// + [Browsable (false)] public bool IsReadOnly { - [MonoTODO] - get { - return readOnly; - } + get { return readOnly; } } + /// + /// Gets a value indicating whether the InternalDataCollectionBase is synchronized. + /// + [Browsable (false)] public bool IsSynchronized { - [MonoTODO] - get { - return synchronized; - } + get { return synchronized; } } - public object SyncRoot { - [MonoTODO] - get { - // FIXME: how do we sync? - throw new NotImplementedException (); - } + /// + /// Gets the items of the collection as a list. + /// + protected virtual ArrayList List { + get { return list; } } - protected virtual ArrayList List { - [MonoTODO] + /// + /// Gets an object that can be used to synchronize the collection. + /// + [Browsable (false)] + public object SyncRoot { get { - return list; + return this; } } - [MonoTODO] - public void CopyTo(Array ar, int index) { - } + #endregion + + #region Methods + + /// + /// Copies all the elements in the current InternalDataCollectionBase to a one- + /// dimensional Array, starting at the specified InternalDataCollectionBase index. + /// + public void CopyTo(Array ar, int index) + { + list.CopyTo (ar, index); - [MonoTODO] - public IEnumerator GetEnumerator() { - throw new NotImplementedException (); } - //[MonoTODO] - //~InternalDataCollectionBase() { - // - //} + /// + /// Gets an IEnumerator for the collection. + /// + public IEnumerator GetEnumerator() + { + return list.GetEnumerator (); + } + #endregion } - }