2002-07-19 Tim Coleman <tim@timcoleman.com>
[mono.git] / mcs / class / System.Web.Services / System.Web.Services.Description / OperationBindingCollection.cs
1 // \r
2 // System.Web.Services.Description.OperationBindingCollection.cs\r
3 //\r
4 // Author:\r
5 //   Tim Coleman (tim@timcoleman.com)\r
6 //\r
7 // Copyright (C) Tim Coleman, 2002\r
8 //\r
9 \r
10 namespace System.Web.Services.Description {\r
11         public sealed class OperationBindingCollection : ServiceDescriptionBaseCollection {\r
12 \r
13                 #region Fields\r
14         \r
15                 Binding binding;\r
16 \r
17                 #endregion // Fields\r
18 \r
19                 #region Constructors\r
20 \r
21                 internal OperationBindingCollection (Binding binding)\r
22                 {\r
23                         this.binding = binding;\r
24                 }\r
25 \r
26                 #endregion // Constructors\r
27 \r
28                 #region Properties\r
29 \r
30                 public OperationBinding this [int index] {\r
31                         get { \r
32                                 if (index < 0 || index > Count)\r
33                                         throw new ArgumentOutOfRangeException ();\r
34                                 return (OperationBinding) List[index]; \r
35                         }\r
36                 }\r
37 \r
38                 #endregion // Properties\r
39 \r
40                 #region Methods\r
41 \r
42                 public int Add (OperationBinding bindingOperation) \r
43                 {\r
44                         Insert (Count, bindingOperation);\r
45                         return (Count - 1);\r
46                 }\r
47 \r
48                 public bool Contains (OperationBinding bindingOperation)\r
49                 {\r
50                         return List.Contains (bindingOperation);\r
51                 }\r
52 \r
53                 public void CopyTo (OperationBinding[] array, int index) \r
54                 {\r
55                         List.CopyTo (array, index);\r
56                 }\r
57 \r
58                 public int IndexOf (OperationBinding bindingOperation)\r
59                 {\r
60                         return List.IndexOf (bindingOperation);\r
61                 }\r
62 \r
63                 public void Insert (int index, OperationBinding bindingOperation)\r
64                 {\r
65                         SetParent (bindingOperation, binding);\r
66                         List.Insert (index, bindingOperation);\r
67                 }\r
68         \r
69                 public void Remove (OperationBinding bindingOperation)\r
70                 {\r
71                         List.Remove (bindingOperation);\r
72                 }\r
73 \r
74                 protected override void SetParent (object value, object parent)\r
75                 {\r
76                         ((OperationBinding) value).SetParent ((Binding) parent);\r
77                 }\r
78                         \r
79                 #endregion // Methods\r
80         }\r
81 }\r