2002-07-23 Tim Coleman <tim@timcoleman.com>
[mono.git] / mcs / class / System.Web.Services / System.Web.Services.Description / OperationBinding.cs
1 // \r
2 // System.Web.Services.Description.OperationBinding.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 using System.Web.Services.Configuration;\r
11 using System.Xml.Serialization;\r
12 \r
13 namespace System.Web.Services.Description {\r
14         [XmlFormatExtensionPoint ("Extensions")]\r
15         public sealed class OperationBinding : DocumentableItem {\r
16 \r
17                 #region Fields\r
18 \r
19                 Binding binding;\r
20                 ServiceDescriptionFormatExtensionCollection extensions;\r
21                 FaultBindingCollection faults;\r
22                 InputBinding input;\r
23                 string name;\r
24                 OutputBinding output;\r
25 \r
26                 #endregion // Fields\r
27 \r
28                 #region Constructors\r
29                 \r
30                 public OperationBinding ()\r
31                 {\r
32                         extensions = new ServiceDescriptionFormatExtensionCollection (this);\r
33                         faults = new FaultBindingCollection (this);\r
34                         input = null;\r
35                         name = String.Empty;\r
36                         output = null;\r
37                 }\r
38                 \r
39                 #endregion // Constructors\r
40 \r
41                 #region Properties\r
42         \r
43                 public Binding Binding {\r
44                         get { return binding; }\r
45                 }\r
46 \r
47                 [XmlIgnore]\r
48                 public ServiceDescriptionFormatExtensionCollection Extensions {\r
49                         get { return extensions; }\r
50                 }\r
51 \r
52                 [XmlElement ("fault")]\r
53                 public FaultBindingCollection Faults {\r
54                         get { return faults; }\r
55                 }\r
56 \r
57                 [XmlElement ("input")]\r
58                 public InputBinding Input {\r
59                         get { return input; }\r
60                         set { input = value; }\r
61                 }\r
62 \r
63                 [XmlAttribute ("name", DataType = "NCName")]\r
64                 public string Name {\r
65                         get { return name; }\r
66                         set { name = value; }\r
67                 }\r
68 \r
69                 [XmlElement ("output")]\r
70                 public OutputBinding Output {\r
71                         get { return output; }\r
72                         set { output= value; }\r
73                 }\r
74 \r
75                 #endregion // Properties\r
76 \r
77                 #region Methods\r
78 \r
79                 internal void SetParent (Binding binding) \r
80                 {\r
81                         this.binding = binding; \r
82                 } \r
83 \r
84                 #endregion\r
85         }\r
86 }\r