1 // Author: Dwivedi, Ajay kumar
\r
4 using System.Collections;
\r
8 namespace System.Xml.Schema
\r
11 /// Summary description for XmlSchemaCollection.
\r
13 public sealed class XmlSchemaCollection : ICollection, IEnumerable
\r
16 private Hashtable htable;
\r
17 private XmlNameTable ntable;
\r
20 public XmlSchemaCollection()
\r
22 htable = new Hashtable();
\r
23 ntable = new NameTable();
\r
25 public XmlSchemaCollection(XmlNameTable nametable)
\r
27 htable = new Hashtable();
\r
36 return this.htable.Count;
\r
39 public XmlSchema this[ string ns ]
\r
43 return (XmlSchema) this.htable[ns];
\r
46 public XmlNameTable NameTable
\r
55 public event ValidationEventHandler ValidationEventHandler;
\r
59 public XmlSchema Add(string ns, XmlReader reader)
\r
64 public XmlSchema Add(string ns, string uri)
\r
69 public XmlSchema Add(XmlSchema schema)
\r
74 public void Add(XmlSchemaCollection schema)
\r
76 XmlSchemaCollectionEnumerator xenum = schema.GetEnumerator();
\r
77 while(xenum.MoveNext())
\r
79 this.Add(xenum.Current);
\r
83 public bool Contains(string ns)
\r
85 return this.htable.Contains(ns);
\r
87 public bool Contains(System.Xml.Schema.XmlSchema schema)
\r
89 return this.htable.Contains(schema.TargetNamespace);
\r
91 public void CopyTo(System.Xml.Schema.XmlSchema[] array, int index)
\r
95 public XmlSchemaCollectionEnumerator GetEnumerator()
\r
97 return new XmlSchemaCollectionEnumerator(this.htable);
\r
102 void ICollection.CopyTo(Array array, int index)
\r
105 bool ICollection.IsSynchronized
\r
107 get { return false; }
\r
109 IEnumerator IEnumerable.GetEnumerator()
\r
111 return this.htable.GetEnumerator();
\r
113 Object ICollection.SyncRoot
\r
115 get { return this; }
\r