copying the latest Sys.Web.Services from trunk.
[mono.git] / mcs / class / System.Web / System.Web / HttpClientCertificate.cs
1 // \r
2 // System.Web.HttpClientCertificate\r
3 //\r
4 // Author:\r
5 //   Patrik Torstensson (Patrik.Torstensson@labs2.com)\r
6 //\r
7
8 //
9 // Permission is hereby granted, free of charge, to any person obtaining
10 // a copy of this software and associated documentation files (the
11 // "Software"), to deal in the Software without restriction, including
12 // without limitation the rights to use, copy, modify, merge, publish,
13 // distribute, sublicense, and/or sell copies of the Software, and to
14 // permit persons to whom the Software is furnished to do so, subject to
15 // the following conditions:
16 // 
17 // The above copyright notice and this permission notice shall be
18 // included in all copies or substantial portions of the Software.
19 // 
20 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
21 // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
22 // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
23 // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
24 // LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
25 // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
26 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
27 //
28 using System;\r
29 using System.Web;\r
30 using System.Collections.Specialized;\r
31 \r
32 namespace System.Web {\r
33    [MonoTODO()]\r
34    public class HttpClientCertificate : NameValueCollection {\r
35       //private HttpContext _Context;\r
36       private byte [] _BinaryIssuer;\r
37       private int _CertEncoding;\r
38       private byte [] _Certificate;\r
39       private string _Cookie;\r
40       private int _Flags;\r
41       private string _Issuer;      \r
42       private int _KeySize;\r
43       private byte [] _PublicKey;\r
44       private int _SecretKeySize;\r
45       private string _SerialNumber;\r
46       private string _ServerIssuer;\r
47       private string _ServerSubject;\r
48       private string _Subject;\r
49 \r
50       private DateTime _ValidFrom;\r
51       private DateTime _ValidTo;\r
52 \r
53       [MonoTODO("Decode ceritificate from Server variables.. CGI standard?")]\r
54       internal HttpClientCertificate(HttpContext Context) {\r
55          //_Context = Context; not used
56          _Flags = 0;\r
57       }\r
58 \r
59       public byte [] BinaryIssuer {\r
60          get {\r
61             return _BinaryIssuer;\r
62          }\r
63       }\r
64 \r
65       public int CertEncoding {\r
66          get {\r
67             return _CertEncoding;\r
68          }\r
69       }\r
70 \r
71       public byte [] Certificate {\r
72          get {\r
73             return _Certificate;\r
74          }\r
75       }\r
76 \r
77       public string Cookie {\r
78          get {\r
79             return _Cookie;\r
80          }\r
81       }\r
82 \r
83       public int Flags {\r
84          get {\r
85             return _Flags;\r
86          }\r
87       }\r
88 \r
89       [MonoTODO()]\r
90       public bool IsPresent {\r
91          get {\r
92             return false;\r
93          }\r
94       }\r
95 \r
96       public string Issuer {\r
97          get {\r
98             return _Issuer;\r
99          }\r
100       }\r
101 \r
102       [MonoTODO()]\r
103       public bool IsValid {\r
104          get {\r
105             return false;\r
106          }\r
107       }\r
108 \r
109       public int KeySize {\r
110          get {\r
111             return _KeySize;\r
112          }\r
113       }\r
114 \r
115       public byte [] PublicKey {\r
116          get {\r
117             return _PublicKey;\r
118          }\r
119       }\r
120 \r
121       public int SecretKeySize {\r
122          get {\r
123             return _SecretKeySize;\r
124          }\r
125       }\r
126 \r
127       public string SerialNumber {\r
128          get {\r
129             return _SerialNumber;\r
130          }\r
131       }\r
132 \r
133       public string ServerIssuer {\r
134          get {\r
135             return _ServerIssuer;\r
136          }\r
137       }\r
138 \r
139       public string ServerSubject { \r
140          get {\r
141             return _ServerSubject;\r
142          }\r
143       }\r
144 \r
145       public string Subject { \r
146          get {\r
147             return _Subject;\r
148          }\r
149       }\r
150 \r
151       public DateTime ValidFrom {\r
152          get {\r
153             return _ValidFrom;\r
154          }\r
155       }\r
156 \r
157       public DateTime ValidUntil {\r
158          get {\r
159             return _ValidTo;\r
160          }\r
161       }\r
162 \r
163       [MonoTODO()]\r
164       public override string Get(string s) {\r
165          throw new NotImplementedException();\r
166       }\r
167    }\r
168 }\r