New test.
[mono.git] / mcs / class / System.Data / System.Data.Configuration.jvm / ObjectNameResolversCollection.cs
1 // 
2 // System.Data.Configuration.ObjectNameResolversCollection.cs
3 //
4 // Authors:
5 //      Konstantin Triger <kostat@mainsoft.com>
6 //      
7 // (C) 2005 Mainsoft Corporation (http://www.mainsoft.com)
8 //
9
10 //
11 // Permission is hereby granted, free of charge, to any person obtaining
12 // a copy of this software and associated documentation files (the
13 // "Software"), to deal in the Software without restriction, including
14 // without limitation the rights to use, copy, modify, merge, publish,
15 // distribute, sublicense, and/or sell copies of the Software, and to
16 // permit persons to whom the Software is furnished to do so, subject to
17 // the following conditions:
18 // 
19 // The above copyright notice and this permission notice shall be
20 // included in all copies or substantial portions of the Software.
21 // 
22 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
23 // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
24 // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
25 // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
26 // LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
27 // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
28 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
29 //\r
30 \r
31 using System.Collections;\r
32 using System.Configuration;\r
33 using System.Xml;\r
34 using System.Text.RegularExpressions;\r
35 \r
36 namespace System.Data.Configuration {\r
37         sealed class ObjectNameResolversCollection : IEnumerable, ICollection {\r
38 \r
39                 ArrayList _resolvers;\r
40 \r
41                 #region ctors\r
42 \r
43                 internal ObjectNameResolversCollection(ObjectNameResolversCollection parent) {\r
44                         _resolvers = new ArrayList();\r
45 \r
46                         if (parent != null)\r
47                                 _resolvers.AddRange(parent);\r
48                 }\r
49 \r
50                 #endregion\r
51 \r
52                 #region methods\r
53 \r
54                 internal void Add(ObjectNameResolver value) {\r
55                         _resolvers.Add(value);\r
56                 }\r
57 \r
58                 internal void Sort() {\r
59                         _resolvers.Sort();\r
60                 }\r
61 \r
62                 #endregion\r
63 \r
64                 #region props\r
65 \r
66                 internal ObjectNameResolver this[int index] {\r
67                         get {\r
68                                 return (ObjectNameResolver)_resolvers[index];\r
69                         }\r
70                 }\r
71 \r
72                 #endregion\r
73 \r
74                 #region IEnumerable Members\r
75 \r
76                 public IEnumerator GetEnumerator() {\r
77                         // TODO:  Add ObjectNameResolversCollection.GetEnumerator implementation\r
78                         return _resolvers.GetEnumerator();\r
79                 }\r
80 \r
81                 #endregion\r
82 \r
83                 #region ICollection Members\r
84 \r
85                 public bool IsSynchronized {\r
86                         get {\r
87                                 // TODO:  Add ObjectNameResolversCollection.IsSynchronized getter implementation\r
88                                 return _resolvers.IsSynchronized;\r
89                         }\r
90                 }\r
91 \r
92                 public int Count {\r
93                         get {\r
94                                 // TODO:  Add ObjectNameResolversCollection.Count getter implementation\r
95                                 return _resolvers.Count;\r
96                         }\r
97                 }\r
98 \r
99                 public void CopyTo(Array array, int index) {\r
100                         // TODO:  Add ObjectNameResolversCollection.CopyTo implementation\r
101                         _resolvers.CopyTo(array, index);\r
102                 }\r
103 \r
104                 public object SyncRoot {\r
105                         get {\r
106                                 // TODO:  Add ObjectNameResolversCollection.SyncRoot getter implementation\r
107                                 return _resolvers.SyncRoot;\r
108                         }\r
109                 }\r
110 \r
111                 #endregion\r
112         }\r
113 \r
114 }